@cuemath/leap 2.8.52 → 2.8.53-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 (1074) hide show
  1. package/dist/assets/line-icons/icons/alert.js +3 -3
  2. package/dist/assets/line-icons/icons/alert.js.map +1 -1
  3. package/dist/assets/line-icons/icons/back.js +4 -4
  4. package/dist/assets/line-icons/icons/back.js.map +1 -1
  5. package/dist/assets/line-icons/icons/back2.js +3 -3
  6. package/dist/assets/line-icons/icons/back2.js.map +1 -1
  7. package/dist/assets/line-icons/icons/bin.js +8 -8
  8. package/dist/assets/line-icons/icons/bin.js.map +1 -1
  9. package/dist/assets/line-icons/icons/bin2.js +4 -4
  10. package/dist/assets/line-icons/icons/bin2.js.map +1 -1
  11. package/dist/assets/line-icons/icons/book-closed.js +3 -3
  12. package/dist/assets/line-icons/icons/book-closed.js.map +1 -1
  13. package/dist/assets/line-icons/icons/book.js +4 -4
  14. package/dist/assets/line-icons/icons/book.js.map +1 -1
  15. package/dist/assets/line-icons/icons/book2.js +3 -3
  16. package/dist/assets/line-icons/icons/book2.js.map +1 -1
  17. package/dist/assets/line-icons/icons/bookmark-stroke-icon.js.map +1 -1
  18. package/dist/assets/line-icons/icons/bookmark.js +2 -2
  19. package/dist/assets/line-icons/icons/bookmark.js.map +1 -1
  20. package/dist/assets/line-icons/icons/bulb.js +8 -8
  21. package/dist/assets/line-icons/icons/bulb.js.map +1 -1
  22. package/dist/assets/line-icons/icons/bulb2.js +3 -3
  23. package/dist/assets/line-icons/icons/bulb2.js.map +1 -1
  24. package/dist/assets/line-icons/icons/calculator.js.map +1 -1
  25. package/dist/assets/line-icons/icons/calendar.js +3 -3
  26. package/dist/assets/line-icons/icons/calendar.js.map +1 -1
  27. package/dist/assets/line-icons/icons/carat-left.js.map +1 -1
  28. package/dist/assets/line-icons/icons/carat-right.js.map +1 -1
  29. package/dist/assets/line-icons/icons/chat.js +4 -4
  30. package/dist/assets/line-icons/icons/chat.js.map +1 -1
  31. package/dist/assets/line-icons/icons/check.js +4 -4
  32. package/dist/assets/line-icons/icons/check.js.map +1 -1
  33. package/dist/assets/line-icons/icons/check2.js +3 -3
  34. package/dist/assets/line-icons/icons/check2.js.map +1 -1
  35. package/dist/assets/line-icons/icons/chevron-down.js +6 -6
  36. package/dist/assets/line-icons/icons/chevron-down.js.map +1 -1
  37. package/dist/assets/line-icons/icons/chevron-left.js +4 -4
  38. package/dist/assets/line-icons/icons/chevron-left.js.map +1 -1
  39. package/dist/assets/line-icons/icons/chevron-right.js +6 -6
  40. package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
  41. package/dist/assets/line-icons/icons/circle-back.js.map +1 -1
  42. package/dist/assets/line-icons/icons/clear-all.js.map +1 -1
  43. package/dist/assets/line-icons/icons/clipboard.js +5 -5
  44. package/dist/assets/line-icons/icons/clipboard.js.map +1 -1
  45. package/dist/assets/line-icons/icons/clock.js +3 -3
  46. package/dist/assets/line-icons/icons/clock.js.map +1 -1
  47. package/dist/assets/line-icons/icons/clock2.js +5 -5
  48. package/dist/assets/line-icons/icons/clock2.js.map +1 -1
  49. package/dist/assets/line-icons/icons/closed-eye.js.map +1 -1
  50. package/dist/assets/line-icons/icons/code.js +3 -3
  51. package/dist/assets/line-icons/icons/code.js.map +1 -1
  52. package/dist/assets/line-icons/icons/copy.js +4 -4
  53. package/dist/assets/line-icons/icons/copy.js.map +1 -1
  54. package/dist/assets/line-icons/icons/cross.js +4 -4
  55. package/dist/assets/line-icons/icons/cross.js.map +1 -1
  56. package/dist/assets/line-icons/icons/cue-rocket.js +2 -2
  57. package/dist/assets/line-icons/icons/cue-rocket.js.map +1 -1
  58. package/dist/assets/line-icons/icons/cuemath-logo.js +2 -2
  59. package/dist/assets/line-icons/icons/cuemath-logo.js.map +1 -1
  60. package/dist/assets/line-icons/icons/cursor.js.map +1 -1
  61. package/dist/assets/line-icons/icons/dash-arrow.js +3 -3
  62. package/dist/assets/line-icons/icons/dash-arrow.js.map +1 -1
  63. package/dist/assets/line-icons/icons/down.js +2 -2
  64. package/dist/assets/line-icons/icons/down.js.map +1 -1
  65. package/dist/assets/line-icons/icons/download.js.map +1 -1
  66. package/dist/assets/line-icons/icons/draft.js +4 -4
  67. package/dist/assets/line-icons/icons/draft.js.map +1 -1
  68. package/dist/assets/line-icons/icons/drag.js +3 -3
  69. package/dist/assets/line-icons/icons/drag.js.map +1 -1
  70. package/dist/assets/line-icons/icons/edit-star.js +5 -5
  71. package/dist/assets/line-icons/icons/edit-star.js.map +1 -1
  72. package/dist/assets/line-icons/icons/edit.js +5 -5
  73. package/dist/assets/line-icons/icons/edit.js.map +1 -1
  74. package/dist/assets/line-icons/icons/edit2.js +2 -2
  75. package/dist/assets/line-icons/icons/edit2.js.map +1 -1
  76. package/dist/assets/line-icons/icons/equation.js.map +1 -1
  77. package/dist/assets/line-icons/icons/eraser.js +3 -3
  78. package/dist/assets/line-icons/icons/eraser.js.map +1 -1
  79. package/dist/assets/line-icons/icons/eye.js +4 -4
  80. package/dist/assets/line-icons/icons/eye.js.map +1 -1
  81. package/dist/assets/line-icons/icons/eye2.js +2 -2
  82. package/dist/assets/line-icons/icons/eye2.js.map +1 -1
  83. package/dist/assets/line-icons/icons/game.js +3 -3
  84. package/dist/assets/line-icons/icons/game.js.map +1 -1
  85. package/dist/assets/line-icons/icons/hand.js +2 -2
  86. package/dist/assets/line-icons/icons/hand.js.map +1 -1
  87. package/dist/assets/line-icons/icons/help.js +3 -3
  88. package/dist/assets/line-icons/icons/help.js.map +1 -1
  89. package/dist/assets/line-icons/icons/highlighter.js +4 -4
  90. package/dist/assets/line-icons/icons/highlighter.js.map +1 -1
  91. package/dist/assets/line-icons/icons/home.js +3 -3
  92. package/dist/assets/line-icons/icons/home.js.map +1 -1
  93. package/dist/assets/line-icons/icons/image.js +3 -3
  94. package/dist/assets/line-icons/icons/image.js.map +1 -1
  95. package/dist/assets/line-icons/icons/info.js +3 -3
  96. package/dist/assets/line-icons/icons/info.js.map +1 -1
  97. package/dist/assets/line-icons/icons/info2.js +3 -3
  98. package/dist/assets/line-icons/icons/info2.js.map +1 -1
  99. package/dist/assets/line-icons/icons/left.js +3 -3
  100. package/dist/assets/line-icons/icons/left.js.map +1 -1
  101. package/dist/assets/line-icons/icons/lock.js +3 -3
  102. package/dist/assets/line-icons/icons/lock.js.map +1 -1
  103. package/dist/assets/line-icons/icons/lock2.js +2 -2
  104. package/dist/assets/line-icons/icons/lock2.js.map +1 -1
  105. package/dist/assets/line-icons/icons/minus.js +2 -2
  106. package/dist/assets/line-icons/icons/minus.js.map +1 -1
  107. package/dist/assets/line-icons/icons/minus2.js +3 -3
  108. package/dist/assets/line-icons/icons/minus2.js.map +1 -1
  109. package/dist/assets/line-icons/icons/mistake.js +3 -3
  110. package/dist/assets/line-icons/icons/mistake.js.map +1 -1
  111. package/dist/assets/line-icons/icons/mobile.js +3 -3
  112. package/dist/assets/line-icons/icons/mobile.js.map +1 -1
  113. package/dist/assets/line-icons/icons/more-vertical.js +3 -3
  114. package/dist/assets/line-icons/icons/more-vertical.js.map +1 -1
  115. package/dist/assets/line-icons/icons/next.js +5 -5
  116. package/dist/assets/line-icons/icons/next.js.map +1 -1
  117. package/dist/assets/line-icons/icons/next2.js +4 -4
  118. package/dist/assets/line-icons/icons/next2.js.map +1 -1
  119. package/dist/assets/line-icons/icons/pan.js.map +1 -1
  120. package/dist/assets/line-icons/icons/pencil.js +3 -3
  121. package/dist/assets/line-icons/icons/pencil.js.map +1 -1
  122. package/dist/assets/line-icons/icons/play.js +5 -5
  123. package/dist/assets/line-icons/icons/play.js.map +1 -1
  124. package/dist/assets/line-icons/icons/play2.js +5 -5
  125. package/dist/assets/line-icons/icons/play2.js.map +1 -1
  126. package/dist/assets/line-icons/icons/plus.js +4 -4
  127. package/dist/assets/line-icons/icons/plus.js.map +1 -1
  128. package/dist/assets/line-icons/icons/plus2.js +3 -3
  129. package/dist/assets/line-icons/icons/plus2.js.map +1 -1
  130. package/dist/assets/line-icons/icons/pointer.js +2 -2
  131. package/dist/assets/line-icons/icons/pointer.js.map +1 -1
  132. package/dist/assets/line-icons/icons/practice.js +2 -2
  133. package/dist/assets/line-icons/icons/practice.js.map +1 -1
  134. package/dist/assets/line-icons/icons/progress.js +3 -3
  135. package/dist/assets/line-icons/icons/progress.js.map +1 -1
  136. package/dist/assets/line-icons/icons/question-letter.js +3 -3
  137. package/dist/assets/line-icons/icons/question-letter.js.map +1 -1
  138. package/dist/assets/line-icons/icons/question.js +5 -5
  139. package/dist/assets/line-icons/icons/question.js.map +1 -1
  140. package/dist/assets/line-icons/icons/redo.js +4 -4
  141. package/dist/assets/line-icons/icons/redo.js.map +1 -1
  142. package/dist/assets/line-icons/icons/right.js +3 -3
  143. package/dist/assets/line-icons/icons/right.js.map +1 -1
  144. package/dist/assets/line-icons/icons/ruler.js +3 -3
  145. package/dist/assets/line-icons/icons/ruler.js.map +1 -1
  146. package/dist/assets/line-icons/icons/scribble.js.map +1 -1
  147. package/dist/assets/line-icons/icons/search.js +3 -3
  148. package/dist/assets/line-icons/icons/search.js.map +1 -1
  149. package/dist/assets/line-icons/icons/sheet.js +9 -9
  150. package/dist/assets/line-icons/icons/sheet.js.map +1 -1
  151. package/dist/assets/line-icons/icons/sketch.js +4 -4
  152. package/dist/assets/line-icons/icons/sketch.js.map +1 -1
  153. package/dist/assets/line-icons/icons/skip.js +6 -6
  154. package/dist/assets/line-icons/icons/skip.js.map +1 -1
  155. package/dist/assets/line-icons/icons/skip2.js +4 -4
  156. package/dist/assets/line-icons/icons/skip2.js.map +1 -1
  157. package/dist/assets/line-icons/icons/square-dots.js.map +1 -1
  158. package/dist/assets/line-icons/icons/star.js +3 -3
  159. package/dist/assets/line-icons/icons/star.js.map +1 -1
  160. package/dist/assets/line-icons/icons/star2.js +3 -3
  161. package/dist/assets/line-icons/icons/star2.js.map +1 -1
  162. package/dist/assets/line-icons/icons/striked-eye.js +4 -4
  163. package/dist/assets/line-icons/icons/striked-eye.js.map +1 -1
  164. package/dist/assets/line-icons/icons/switch-icon.js +4 -4
  165. package/dist/assets/line-icons/icons/switch-icon.js.map +1 -1
  166. package/dist/assets/line-icons/icons/text-icon.js.map +1 -1
  167. package/dist/assets/line-icons/icons/tick.js +2 -2
  168. package/dist/assets/line-icons/icons/tick.js.map +1 -1
  169. package/dist/assets/line-icons/icons/tri-dots.js.map +1 -1
  170. package/dist/assets/line-icons/icons/tri2-dots.js.map +1 -1
  171. package/dist/assets/line-icons/icons/trophy.js +3 -3
  172. package/dist/assets/line-icons/icons/trophy.js.map +1 -1
  173. package/dist/assets/line-icons/icons/tutoring.js +4 -4
  174. package/dist/assets/line-icons/icons/tutoring.js.map +1 -1
  175. package/dist/assets/line-icons/icons/undo.js +4 -4
  176. package/dist/assets/line-icons/icons/undo.js.map +1 -1
  177. package/dist/assets/line-icons/icons/unlock.js +4 -4
  178. package/dist/assets/line-icons/icons/unlock.js.map +1 -1
  179. package/dist/assets/line-icons/icons/up.js +3 -3
  180. package/dist/assets/line-icons/icons/up.js.map +1 -1
  181. package/dist/assets/line-icons/icons/upload.js.map +1 -1
  182. package/dist/assets/line-icons/icons/user.js +3 -3
  183. package/dist/assets/line-icons/icons/user.js.map +1 -1
  184. package/dist/assets/line-icons/icons/user2.js +2 -2
  185. package/dist/assets/line-icons/icons/user2.js.map +1 -1
  186. package/dist/assets/line-icons/icons/zoom-in.js.map +1 -1
  187. package/dist/assets/line-icons/icons/zoom-out.js.map +1 -1
  188. package/dist/constants/country.js.map +1 -1
  189. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker-context.js.map +1 -1
  190. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js +14 -14
  191. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js.map +1 -1
  192. package/dist/features/blockers/multi-tab-blocker/use-is-tab-blocked.js +2 -2
  193. package/dist/features/blockers/multi-tab-blocker/use-is-tab-blocked.js.map +1 -1
  194. package/dist/features/chapters/api/chapter.js.map +1 -1
  195. package/dist/features/chapters/chapter/chapter.js +20 -20
  196. package/dist/features/chapters/chapter/chapter.js.map +1 -1
  197. package/dist/features/chapters/chapter/comps/chapter-banner/chapter-banner-styled.js.map +1 -1
  198. package/dist/features/chapters/chapter/comps/chapter-banner/chapter-banner.js.map +1 -1
  199. package/dist/features/chapters/chapter/comps/core-lessons/core-lessons-styled.js.map +1 -1
  200. package/dist/features/chapters/chapter/comps/core-lessons/core-lessons.js.map +1 -1
  201. package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources-styled.js.map +1 -1
  202. package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources.js.map +1 -1
  203. package/dist/features/chapters/chapter/comps/supplementary-resources/utils.js.map +1 -1
  204. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
  205. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  206. package/dist/features/chapters/chapters-list/chapters-list.js +13 -13
  207. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  208. package/dist/features/chapters/lpar-chapter/block-section/block-section-styled.js.map +1 -1
  209. package/dist/features/chapters/lpar-chapter/block-section/block-section.js.map +1 -1
  210. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-action.js.map +1 -1
  211. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-header.js.map +1 -1
  212. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-utils.js +1 -1
  213. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-utils.js.map +1 -1
  214. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
  215. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item-utils.js.map +1 -1
  216. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map +1 -1
  217. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js +4 -4
  218. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js.map +1 -1
  219. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary-utils.js.map +1 -1
  220. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary.js +15 -15
  221. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary.js.map +1 -1
  222. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/summary-module.js.map +1 -1
  223. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/student-actions/student-actions.js.map +1 -1
  224. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/teacher-actions/teacher-actions.js.map +1 -1
  225. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/context-menu-helper-styled.js.map +1 -1
  226. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/menu-element.js.map +1 -1
  227. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/reward-n-actions-styled.js.map +1 -1
  228. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/reward-n-actions.js.map +1 -1
  229. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions-utils.js.map +1 -1
  230. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js +18 -18
  231. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js.map +1 -1
  232. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js +11 -11
  233. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
  234. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-icon.js.map +1 -1
  235. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-utils.js.map +1 -1
  236. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
  237. package/dist/features/chapters/lpar-chapter/comps/chapter-progress.js.map +1 -1
  238. package/dist/features/chapters/lpar-chapter/comps/tab-section.js.map +1 -1
  239. package/dist/features/chapters/lpar-chapter/constants/index.js +22 -5
  240. package/dist/features/chapters/lpar-chapter/constants/index.js.map +1 -1
  241. package/dist/features/chapters/lpar-chapter/constants/puzzle-card.js.map +1 -1
  242. package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/chapter-banner.js.map +1 -1
  243. package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/lpar-chapter-banner-styled.js.map +1 -1
  244. package/dist/features/chapters/lpar-chapter/lpar-chapter-styled.js.map +1 -1
  245. package/dist/features/chapters/lpar-chapter/lpar-chapter.js +26 -26
  246. package/dist/features/chapters/lpar-chapter/lpar-chapter.js.map +1 -1
  247. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/cue-coins.js.map +1 -1
  248. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card-styled.js.map +1 -1
  249. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js +1 -1
  250. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js.map +1 -1
  251. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section-utils.js.map +1 -1
  252. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section.js.map +1 -1
  253. package/dist/features/chapters/lpar-chapter/utils/index.js.map +1 -1
  254. package/dist/features/chapters/lpar-milestone-chapter/block-section/block-section.js.map +1 -1
  255. package/dist/features/chapters/lpar-milestone-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
  256. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/rewards-n-actions.js.map +1 -1
  257. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/student-actions.js.map +1 -1
  258. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions.js.map +1 -1
  259. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-info.js.map +1 -1
  260. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
  261. package/dist/features/chapters/lpar-milestone-chapter/extra-practice-section/extra-practice-section.js.map +1 -1
  262. package/dist/features/chapters/lpar-milestone-chapter/lpar-milestone-chapter.js +21 -21
  263. package/dist/features/chapters/lpar-milestone-chapter/lpar-milestone-chapter.js.map +1 -1
  264. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card-util.js.map +1 -1
  265. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js +1 -1
  266. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js.map +1 -1
  267. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-section.js.map +1 -1
  268. package/dist/features/circle-games/game-launcher/comps/card-container/card-container-styled.js.map +1 -1
  269. package/dist/features/circle-games/game-launcher/comps/card-container/card-container.js.map +1 -1
  270. package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js.map +1 -1
  271. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card-styled.js.map +1 -1
  272. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js +6 -6
  273. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
  274. package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode.js.map +1 -1
  275. package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star.js.map +1 -1
  276. package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star.js.map +1 -1
  277. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js +6 -6
  278. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js +4 -4
  279. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
  280. package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js.map +1 -1
  281. package/dist/features/circle-games/game-launcher/dal/use-post-update-circle-journey-dal/use-post-update-circle-journey-dal.js.map +1 -1
  282. package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
  283. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
  284. package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
  285. package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
  286. package/dist/features/circle-games/games/web-view/web-view.js.map +1 -1
  287. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
  288. package/dist/features/circle-games/leaderboard/comps/banner/banner-styled.js.map +1 -1
  289. package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
  290. package/dist/features/circle-games/leaderboard/comps/info-bar/info-bar.js.map +1 -1
  291. package/dist/features/circle-games/leaderboard/comps/leaderboard-item/leaderboard-item.js.map +1 -1
  292. package/dist/features/circle-games/leaderboard/comps/navigation-button/navigation-button.js.map +1 -1
  293. package/dist/features/circle-games/leaderboard/comps/progress-item/progress-item.js.map +1 -1
  294. package/dist/features/circle-games/leaderboard/comps/progress-list-item/progress-list-item.js +1 -1
  295. package/dist/features/circle-games/leaderboard/comps/progress-list-item/progress-list-item.js.map +1 -1
  296. package/dist/features/circle-games/leaderboard/comps/streak-reduction-infobar/streak-reduction-infobar.js.map +1 -1
  297. package/dist/features/circle-games/leaderboard/comps/timer/timer.js.map +1 -1
  298. package/dist/features/circle-games/leaderboard/comps/with-grade/with-grade.js.map +1 -1
  299. package/dist/features/circle-games/leaderboard/dal/use-get-leaderboard-dal/use-get-leaderboard-dal.js.map +1 -1
  300. package/dist/features/circle-games/leaderboard/hooks/use-intersection-observer/use-intersection-observer.tsx.js.map +1 -1
  301. package/dist/features/circle-games/leaderboard/hooks/use-timer/use-timer.js.map +1 -1
  302. package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
  303. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
  304. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js.map +1 -1
  305. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js.map +1 -1
  306. package/dist/features/circle-games/sign-up/comp/input-wrapper/input-wrapper.js.map +1 -1
  307. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.js +3 -3
  308. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.js.map +1 -1
  309. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.styled.js.map +1 -1
  310. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen-styled.js +1 -1
  311. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
  312. package/dist/features/circle-games/sign-up/comp/username-input/username-input.js.map +1 -1
  313. package/dist/features/circle-games/sign-up/dal/create-user-dal/create-user-dal.js.map +1 -1
  314. package/dist/features/circle-games/sign-up/dal/update-user-dal/update-user-dal.js.map +1 -1
  315. package/dist/features/circle-games/sign-up/dal/validate-username-dal/validate-username-dal.js.map +1 -1
  316. package/dist/features/circle-games/sign-up/helper.js.map +1 -1
  317. package/dist/features/circle-games/sign-up/sign-up.js +8 -8
  318. package/dist/features/circle-games/sign-up/sign-up.js.map +1 -1
  319. package/dist/features/circle-games/utils/streak-reduction-localstorage-util.js.map +1 -1
  320. package/dist/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.js +18 -18
  321. package/dist/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.js.map +1 -1
  322. package/dist/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.js +11 -11
  323. package/dist/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.js.map +1 -1
  324. package/dist/features/communication/pub-sub/core.js.map +1 -1
  325. package/dist/features/communication/pub-sub/hooks.js +1 -1
  326. package/dist/features/communication/pub-sub/hooks.js.map +1 -1
  327. package/dist/features/cue-canvas/cue-canvas-context.js +8 -5
  328. package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
  329. package/dist/features/cue-canvas/cue-canvas-core.js +55 -22
  330. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  331. package/dist/features/cue-canvas/cue-canvas-helpers.js +56 -40
  332. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  333. package/dist/features/cue-canvas/cue-canvas-provider.js +16 -14
  334. package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
  335. package/dist/features/cue-canvas/cue-canvas.js +32 -32
  336. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  337. package/dist/features/cue-canvas/cue-cavas-styled.js +86 -78
  338. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  339. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +14 -14
  340. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
  341. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js +14 -10
  342. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js.map +1 -1
  343. package/dist/features/cue-canvas/hooks/use-height-extender.js.map +1 -1
  344. package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -1
  345. package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -1
  346. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -1
  347. package/dist/features/cue-canvas/toolbar/icon-map.js +34 -32
  348. package/dist/features/cue-canvas/toolbar/icon-map.js.map +1 -1
  349. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -1
  350. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -1
  351. package/dist/features/cue-canvas/toolbar/toolbar.js +10 -10
  352. package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
  353. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
  354. package/dist/features/extra-practice/extra-practice.js +21 -21
  355. package/dist/features/extra-practice/extra-practice.js.map +1 -1
  356. package/dist/features/extra-practice/list/list-constants.js.map +1 -1
  357. package/dist/features/extra-practice/list/list-styled.js.map +1 -1
  358. package/dist/features/extra-practice/list/list.js.map +1 -1
  359. package/dist/features/hooks/use-audio-player.js.map +1 -1
  360. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js +3 -3
  361. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js.map +1 -1
  362. package/dist/features/hooks/use-drag-helper.js.map +1 -1
  363. package/dist/features/hooks/use-force-reload.js +7 -7
  364. package/dist/features/hooks/use-force-reload.js.map +1 -1
  365. package/dist/features/hooks/use-is-unmounted.js.map +1 -1
  366. package/dist/features/hooks/use-lazy-ref.js.map +1 -1
  367. package/dist/features/hooks/use-previous.js.map +1 -1
  368. package/dist/features/hooks/use-zoom-disable.js +3 -3
  369. package/dist/features/hooks/use-zoom-disable.js.map +1 -1
  370. package/dist/features/journey/comps/coachmark/coachmark-styled.js.map +1 -1
  371. package/dist/features/journey/comps/coachmark/coachmark.js +1 -1
  372. package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
  373. package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
  374. package/dist/features/maintenance/maintenance.js +5 -5
  375. package/dist/features/maintenance/maintenance.js.map +1 -1
  376. package/dist/features/milestone/constants.js +15 -11
  377. package/dist/features/milestone/constants.js.map +1 -1
  378. package/dist/features/milestone/create/api/goal-submit.js.map +1 -1
  379. package/dist/features/milestone/create/api/milestone-bulk.js.map +1 -1
  380. package/dist/features/milestone/create/api/milestone-submit.js.map +1 -1
  381. package/dist/features/milestone/create/comps/add-custom-chapter/add-custom-chapter.js.map +1 -1
  382. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js.map +1 -1
  383. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js.map +1 -1
  384. package/dist/features/milestone/create/comps/add-custom-chapter/search-chapter/search-chapters.js.map +1 -1
  385. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapter-item.js.map +1 -1
  386. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapters-styled.js.map +1 -1
  387. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapters.js.map +1 -1
  388. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js.map +1 -1
  389. package/dist/features/milestone/create/comps/body-layout/body-layout.js.map +1 -1
  390. package/dist/features/milestone/create/comps/chapter-item/chapter-item-styled.js.map +1 -1
  391. package/dist/features/milestone/create/comps/chapter-item/chapter-item.js.map +1 -1
  392. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/category-card.js.map +1 -1
  393. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js.map +1 -1
  394. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-styled.js.map +1 -1
  395. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-selection.js.map +1 -1
  396. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapters-list.js.map +1 -1
  397. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js.map +1 -1
  398. package/dist/features/milestone/create/comps/chapters-selection-step/use-chapter-list-update.js.map +1 -1
  399. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js.map +1 -1
  400. package/dist/features/milestone/create/comps/class-details-step/class-details-selectors.js.map +1 -1
  401. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js.map +1 -1
  402. package/dist/features/milestone/create/comps/class-details-step/class-details-styled.js.map +1 -1
  403. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js.map +1 -1
  404. package/dist/features/milestone/create/comps/confirmation-modals/chapter-clearance-confirmation.js +9 -9
  405. package/dist/features/milestone/create/comps/confirmation-modals/chapter-clearance-confirmation.js.map +1 -1
  406. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation-utils.js.map +1 -1
  407. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation.js +14 -14
  408. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation.js.map +1 -1
  409. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector-styled.js.map +1 -1
  410. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector-view.js.map +1 -1
  411. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector.js.map +1 -1
  412. package/dist/features/milestone/create/comps/info-points/info-points.js.map +1 -1
  413. package/dist/features/milestone/create/comps/milestone-progress/milestone-progress.js.map +1 -1
  414. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map +1 -1
  415. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js.map +1 -1
  416. package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js.map +1 -1
  417. package/dist/features/milestone/create/comps/sheets-list/sheets-list.js.map +1 -1
  418. package/dist/features/milestone/create/comps/test-type-step/category-component-styled.js.map +1 -1
  419. package/dist/features/milestone/create/comps/test-type-step/category-component.js.map +1 -1
  420. package/dist/features/milestone/create/comps/test-type-step/test-type-step-constants.js.map +1 -1
  421. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js.map +1 -1
  422. package/dist/features/milestone/create/comps/test-type-step/test-type-utils.js.map +1 -1
  423. package/dist/features/milestone/create/milestone-create-constants.js.map +1 -1
  424. package/dist/features/milestone/create/milestone-create-container.js +25 -25
  425. package/dist/features/milestone/create/milestone-create-container.js.map +1 -1
  426. package/dist/features/milestone/create/milestone-create-form-tree.js +2 -2
  427. package/dist/features/milestone/create/milestone-create-form-tree.js.map +1 -1
  428. package/dist/features/milestone/create/milestone-create-helpers.js +3 -3
  429. package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
  430. package/dist/features/milestone/create/milestone-create-hooks.js.map +1 -1
  431. package/dist/features/milestone/create/milestone-create-styled.js.map +1 -1
  432. package/dist/features/milestone/create/milestone-create.js +20 -19
  433. package/dist/features/milestone/create/milestone-create.js.map +1 -1
  434. package/dist/features/milestone/create/styled-comps/progressive-loader.js +1 -1
  435. package/dist/features/milestone/create/styled-comps/progressive-loader.js.map +1 -1
  436. package/dist/features/milestone/create/submit-modal/submit-modal.js +9 -9
  437. package/dist/features/milestone/create/submit-modal/submit-modal.js.map +1 -1
  438. package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal-styled.js.map +1 -1
  439. package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal.js.map +1 -1
  440. package/dist/features/milestone/create/submit-modal/use-submit-milestone.js.map +1 -1
  441. package/dist/features/milestone/create/utils/index.js.map +1 -1
  442. package/dist/features/milestone/edit/comps/delete-milestone/confirm-delete.js.map +1 -1
  443. package/dist/features/milestone/edit/comps/delete-milestone/styled.js.map +1 -1
  444. package/dist/features/milestone/edit/comps/edit-milestone-modal/edit-milestone.js.map +1 -1
  445. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +44 -43
  446. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  447. package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader-styled.js.map +1 -1
  448. package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader.js.map +1 -1
  449. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js +27 -27
  450. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js.map +1 -1
  451. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-helpers.js.map +1 -1
  452. package/dist/features/milestone/edit/goal-edit-container.js +21 -21
  453. package/dist/features/milestone/edit/goal-edit-container.js.map +1 -1
  454. package/dist/features/milestone/edit/goal-edit-helpers.js +3 -3
  455. package/dist/features/milestone/edit/goal-edit-helpers.js.map +1 -1
  456. package/dist/features/milestone/edit/milestone-edit-container.js +23 -23
  457. package/dist/features/milestone/edit/milestone-edit-container.js.map +1 -1
  458. package/dist/features/milestone/edit/milestone-edit-helpers.js.map +1 -1
  459. package/dist/features/milestone/hooks/use-submit-goal-creation.js.map +1 -1
  460. package/dist/features/milestone/milestone-action-widget/milestone-action-widget-styled.js.map +1 -1
  461. package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js +15 -15
  462. package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js.map +1 -1
  463. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
  464. package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
  465. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
  466. package/dist/features/milestone/milestone-list-container/filter-milestones.js.map +1 -1
  467. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  468. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-loader/milestone-loader.js.map +1 -1
  469. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js.map +1 -1
  470. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  471. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-utils.js.map +1 -1
  472. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/use-goal-draft-publish.js.map +1 -1
  473. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  474. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
  475. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  476. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
  477. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js +2 -2
  478. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js.map +1 -1
  479. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  480. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  481. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js.map +1 -1
  482. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
  483. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
  484. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
  485. package/dist/features/milestone/milestone-list-container/milestone-list/no-active-milestone/no-active-milestone.js.map +1 -1
  486. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +21 -21
  487. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  488. package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js.map +1 -1
  489. package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js.map +1 -1
  490. package/dist/features/milestone/milestone-resources/resources-assign/api/lpar-resource-assign.js.map +1 -1
  491. package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item-styled.js.map +1 -1
  492. package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item.js.map +1 -1
  493. package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item.js.map +1 -1
  494. package/dist/features/milestone/milestone-resources/resources-assign/resource-items/no-resource-screen.js.map +1 -1
  495. package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items.js.map +1 -1
  496. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign-styled.js.map +1 -1
  497. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js +39 -39
  498. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map +1 -1
  499. package/dist/features/milestone/milestone-resources/resources-assign/utils.js.map +1 -1
  500. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
  501. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  502. package/dist/features/milestone/milestone-tests/tests-creation/api/test-sheet-assign.js.map +1 -1
  503. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item-styled.js.map +1 -1
  504. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item.js.map +1 -1
  505. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-selection.js.map +1 -1
  506. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js.map +1 -1
  507. 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
  508. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card-styled.js.map +1 -1
  509. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
  510. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js.map +1 -1
  511. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js +28 -28
  512. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js.map +1 -1
  513. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
  514. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +1 -1
  515. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +1 -1
  516. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -1
  517. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -1
  518. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js.map +1 -1
  519. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -1
  520. package/dist/features/milestone/outcome/api/milestone-achievement.js +3 -3
  521. package/dist/features/milestone/outcome/api/milestone-outcome.js.map +1 -1
  522. package/dist/features/milestone/outcome/comps/achievement/achievement-constants.js.map +1 -1
  523. package/dist/features/milestone/outcome/comps/achievement/achievement-container-styled.js.map +1 -1
  524. package/dist/features/milestone/outcome/comps/achievement/achievement-container.js +3 -3
  525. package/dist/features/milestone/outcome/comps/achievement/achievement-container.js.map +1 -1
  526. package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js +13 -13
  527. package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js.map +1 -1
  528. package/dist/features/milestone/outcome/comps/achievement/share-instructions-modal.js +20 -20
  529. package/dist/features/milestone/outcome/comps/achievement/share-instructions-modal.js.map +1 -1
  530. package/dist/features/milestone/outcome/comps/outcome-collection/dynamic-input-handler.js.map +1 -1
  531. package/dist/features/milestone/outcome/comps/outcome-collection/input-descriptor.js.map +1 -1
  532. package/dist/features/milestone/outcome/comps/outcome-collection/input-handler.js.map +1 -1
  533. package/dist/features/milestone/outcome/comps/outcome-collection/milestone-outcome-collection-container.js.map +1 -1
  534. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-collection-helper.js.map +1 -1
  535. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-form/outcome-form-helpers.js.map +1 -1
  536. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-form/outcome-form.js.map +1 -1
  537. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-styled.js.map +1 -1
  538. package/dist/features/milestone/outcome/comps/outcome-collection/rank-inputs/index.js.map +1 -1
  539. package/dist/features/milestone/outcome/comps/outcome-collection/score-marks-input/index.js.map +1 -1
  540. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-container.js.map +1 -1
  541. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-form.js.map +1 -1
  542. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-styled.js.map +1 -1
  543. package/dist/features/milestone/outcome/comps/past-milestone/question.js.map +1 -1
  544. package/dist/features/milestone/outcome/milestone-outcome-container.js +23 -23
  545. package/dist/features/milestone/outcome/milestone-outcome-container.js.map +1 -1
  546. package/dist/features/milestone/outcome/milestone-outcome-styled.js.map +1 -1
  547. package/dist/features/milestone/outcome/outcome-helpers.js.map +1 -1
  548. package/dist/features/milestone/start/milestone-start.js +3 -3
  549. package/dist/features/milestone/start/milestone-start.js.map +1 -1
  550. package/dist/features/pointer-sync/hooks/use-pointer-sync.js +13 -13
  551. package/dist/features/pointer-sync/hooks/use-pointer-sync.js.map +1 -1
  552. package/dist/features/pointer-sync/pointer.js +7 -7
  553. package/dist/features/pointer-sync/pointer.js.map +1 -1
  554. package/dist/features/post-game-stats/accuracy/accuracy-styled.js +5 -5
  555. package/dist/features/post-game-stats/accuracy/accuracy-styled.js.map +1 -1
  556. package/dist/features/post-game-stats/accuracy/accuracy-utils.js.map +1 -1
  557. package/dist/features/post-game-stats/accuracy/accuracy.js +3 -3
  558. package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
  559. package/dist/features/post-game-stats/clock/clock-styled.js +1 -1
  560. package/dist/features/post-game-stats/clock/clock-styled.js.map +1 -1
  561. package/dist/features/post-game-stats/clock/clock.js +3 -3
  562. package/dist/features/post-game-stats/clock/clock.js.map +1 -1
  563. package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc.js +13 -12
  564. package/dist/features/post-game-stats/digital-meter/comp/animated-arc/animated-arc.js.map +1 -1
  565. package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js +11 -11
  566. package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js.map +1 -1
  567. package/dist/features/post-game-stats/digital-meter/digital-meter.js +7 -7
  568. package/dist/features/post-game-stats/digital-meter/digital-meter.js.map +1 -1
  569. package/dist/features/post-game-stats/digital-meter/helper.js.map +1 -1
  570. package/dist/features/post-game-stats/number-count-animation/number-count-animation.js.map +1 -1
  571. package/dist/features/post-game-stats/points/points.js.map +1 -1
  572. package/dist/features/post-game-stats/post-game-stats.js.map +1 -1
  573. package/dist/features/post-game-stats/streak/streak-styled.js +5 -5
  574. package/dist/features/post-game-stats/streak/streak-styled.js.map +1 -1
  575. package/dist/features/post-game-stats/streak/streak.js +1 -1
  576. package/dist/features/post-game-stats/streak/streak.js.map +1 -1
  577. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator-styled.js.map +1 -1
  578. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator.js +13 -13
  579. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator.js.map +1 -1
  580. package/dist/features/sheet-tools/tool-header/tool-header-styled.js.map +1 -1
  581. package/dist/features/sheet-tools/tool-header/tool-header.js +14 -14
  582. package/dist/features/sheet-tools/tool-header/tool-header.js.map +1 -1
  583. package/dist/features/sheets/comps/sheet-button/index.js.map +1 -1
  584. package/dist/features/sheets/comps/sheet-button/styled.js.map +1 -1
  585. package/dist/features/sheets/comps/sheet-button/variant.js.map +1 -1
  586. package/dist/features/sheets/constants/sheet.js.map +1 -1
  587. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/context-menu-helper-styled.js.map +1 -1
  588. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/menu-element-styled.js.map +1 -1
  589. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/menu-element.js.map +1 -1
  590. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/target-element.js.map +1 -1
  591. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js +41 -41
  592. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js.map +1 -1
  593. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-styled.js.map +1 -1
  594. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-utils.js +3 -4
  595. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-utils.js.map +1 -1
  596. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-view.js.map +1 -1
  597. package/dist/features/sheets/lessons-list/lesson-item/lesson-item.js.map +1 -1
  598. package/dist/features/sheets/lessons-list/lessons-list.js.map +1 -1
  599. package/dist/features/sheets/reference-sheet/reference-sheet.js +14 -14
  600. package/dist/features/sheets/reference-sheet/reference-sheet.js.map +1 -1
  601. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js.map +1 -1
  602. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +1 -1
  603. package/dist/features/sheets/resources-list/resource-item/resource-item.js +19 -19
  604. package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
  605. package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -1
  606. package/dist/features/sheets/resources-list/resource-item/utils.js.map +1 -1
  607. package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
  608. package/dist/features/sheets/resources-list/styled.js.map +1 -1
  609. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/menu-element/menu-element.js.map +1 -1
  610. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/target-element/target-element.js.map +1 -1
  611. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-styled.js.map +1 -1
  612. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-utils.js.map +1 -1
  613. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions.js.map +1 -1
  614. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js +33 -33
  615. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js.map +1 -1
  616. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +2 -0
  617. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
  618. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js +30 -30
  619. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js.map +1 -1
  620. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-icon.js.map +1 -1
  621. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-styled.js.map +1 -1
  622. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-tag.js.map +1 -1
  623. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-utils.js.map +1 -1
  624. package/dist/features/sheets/sheets-list/sheet-item/sheet-item.js.map +1 -1
  625. package/dist/features/sheets/sheets-list/sheets-list.js +15 -15
  626. package/dist/features/sheets/sheets-list/sheets-list.js.map +1 -1
  627. package/dist/features/sheets/utils/is-v3-worksheet.js +10 -14
  628. package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
  629. package/dist/features/student-details/class-details/class-details-utils.js.map +1 -1
  630. package/dist/features/student-details/class-details/class-details.js.map +1 -1
  631. package/dist/features/student-details/student-details-styled.js.map +1 -1
  632. package/dist/features/student-details/student-details-utils.js.map +1 -1
  633. package/dist/features/student-details/student-details.js +17 -17
  634. package/dist/features/student-details/student-details.js.map +1 -1
  635. package/dist/features/student-details/wins-preview/wins-preview-styled.js.map +1 -1
  636. package/dist/features/student-details/wins-preview/wins-preview.js.map +1 -1
  637. package/dist/features/talk-meter/helper.js.map +1 -1
  638. package/dist/features/talk-meter/hooks/use-talk-meter.js.map +1 -1
  639. package/dist/features/talk-meter/ripple/index.js +1 -1
  640. package/dist/features/talk-meter/ripple/index.js.map +1 -1
  641. package/dist/features/talk-meter/talk-meter-styled.js +1 -1
  642. package/dist/features/talk-meter/talk-meter-styled.js.map +1 -1
  643. package/dist/features/talk-meter/talk-meter-view/talk-meter-view.js +14 -12
  644. package/dist/features/talk-meter/talk-meter-view/talk-meter-view.js.map +1 -1
  645. package/dist/features/talk-meter/talk-meter.js +23 -23
  646. package/dist/features/talk-meter/talk-meter.js.map +1 -1
  647. package/dist/features/trial-session/api/course-stream.js.map +1 -1
  648. package/dist/features/trial-session/comps/about-cuemath/about-cuemath-constants.js.map +1 -1
  649. package/dist/features/trial-session/comps/about-cuemath/index.js.map +1 -1
  650. package/dist/features/trial-session/comps/additional-info/additional-info.js.map +1 -1
  651. package/dist/features/trial-session/comps/av-panels/student-av-panel/student-av-panel.js.map +1 -1
  652. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
  653. package/dist/features/trial-session/comps/background-grid/background-grid-styled.js.map +1 -1
  654. package/dist/features/trial-session/comps/background-grid/background-grid-utils.js.map +1 -1
  655. package/dist/features/trial-session/comps/background-grid/background-grid.js.map +1 -1
  656. package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
  657. package/dist/features/trial-session/comps/clock/clock.js.map +1 -1
  658. package/dist/features/trial-session/comps/communication-slide/index.js.map +1 -1
  659. package/dist/features/trial-session/comps/countdown-progress-bar/countdown-progress-bar.js.map +1 -1
  660. package/dist/features/trial-session/comps/cue-tips/cues/cues-styled.js +6 -6
  661. package/dist/features/trial-session/comps/cue-tips/cues/index.js.map +1 -1
  662. package/dist/features/trial-session/comps/cue-tips/tips/index.js.map +1 -1
  663. package/dist/features/trial-session/comps/cue-tips/tips/tips-styled.js.map +1 -1
  664. package/dist/features/trial-session/comps/learning-plan/index.js.map +1 -1
  665. package/dist/features/trial-session/comps/learning-plan/learning-plan-styled.js.map +1 -1
  666. package/dist/features/trial-session/comps/learning-plan/use-learning-plan-scroll-sync.js.map +1 -1
  667. package/dist/features/trial-session/comps/learning-session/learning-session-constants.js.map +1 -1
  668. package/dist/features/trial-session/comps/learning-session/learning-session-styled.js.map +1 -1
  669. package/dist/features/trial-session/comps/learning-session/learning-session.js.map +1 -1
  670. package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
  671. package/dist/features/trial-session/comps/navigation-bar/navigation-bar-styled.js.map +1 -1
  672. package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
  673. package/dist/features/trial-session/comps/offering-information/offering-information-styled.js.map +1 -1
  674. package/dist/features/trial-session/comps/offering-information/offering-information.js.map +1 -1
  675. package/dist/features/trial-session/comps/pricing/board-comp.js.map +1 -1
  676. package/dist/features/trial-session/comps/pricing/pricing-styled.js.map +1 -1
  677. package/dist/features/trial-session/comps/pricing/pricing.js.map +1 -1
  678. package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
  679. package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
  680. package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
  681. package/dist/features/trial-session/comps/session-overview/session-overview-styled.js.map +1 -1
  682. package/dist/features/trial-session/comps/session-overview/session-overview-utils.js.map +1 -1
  683. package/dist/features/trial-session/comps/session-overview/session-overview.js.map +1 -1
  684. package/dist/features/trial-session/comps/session-report/report-card.js.map +1 -1
  685. package/dist/features/trial-session/comps/session-report/session-report.js +3 -3
  686. package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
  687. package/dist/features/trial-session/comps/slide-header/index.js.map +1 -1
  688. package/dist/features/trial-session/comps/solutions/index.js.map +1 -1
  689. package/dist/features/trial-session/comps/solutions/solutions.styled.js +5 -5
  690. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
  691. package/dist/features/trial-session/comps/student-feedback/student-feedback-constants.js.map +1 -1
  692. package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js.map +1 -1
  693. package/dist/features/trial-session/comps/student-feedback/student-feedback.js +3 -3
  694. package/dist/features/trial-session/comps/student-feedback/student-feedback.js.map +1 -1
  695. package/dist/features/trial-session/comps/student-info/student-info-styled.js.map +1 -1
  696. package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
  697. package/dist/features/trial-session/comps/student-personalization/student-personalization.js +7 -7
  698. package/dist/features/trial-session/comps/student-personalization/student-personalization.js.map +1 -1
  699. package/dist/features/trial-session/comps/student-profile/student-profile-styled.js.map +1 -1
  700. package/dist/features/trial-session/comps/student-profile/student-profile-utils.js.map +1 -1
  701. package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
  702. package/dist/features/trial-session/comps/teacher-intro/teacher-intro-constants.js.map +1 -1
  703. package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js.map +1 -1
  704. package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
  705. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-launch-screen/trial-circle-game-launch-screen.js.map +1 -1
  706. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js.map +1 -1
  707. package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
  708. package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
  709. package/dist/features/trial-session/helper.js.map +1 -1
  710. package/dist/features/trial-session/hooks/use-class-time-alerts.js.map +1 -1
  711. package/dist/features/trial-session/hooks/use-left-panel-button-state.js.map +1 -1
  712. package/dist/features/trial-session/hooks/use-trial-session-navigation.js +86 -76
  713. package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
  714. package/dist/features/trial-session/left-panel/index.js.map +1 -1
  715. package/dist/features/trial-session/right-panel/index.js.map +1 -1
  716. package/dist/features/trial-session/right-panel/right-panel-styled.js.map +1 -1
  717. package/dist/features/trial-session/trial-session-view.js.map +1 -1
  718. package/dist/features/trial-session/trial-session.js +6 -6
  719. package/dist/features/trial-session/trial-session.js.map +1 -1
  720. package/dist/features/ui/accordion-section/accordion-section.js +13 -13
  721. package/dist/features/ui/accordion-section/accordion-section.js.map +1 -1
  722. package/dist/features/ui/arc-button/arc-button.js.map +1 -1
  723. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js +21 -20
  724. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js.map +1 -1
  725. package/dist/features/ui/arrow-tooltip/arrow-tooltip-util.js.map +1 -1
  726. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +14 -14
  727. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  728. package/dist/features/ui/avatar/avatar-types.js +5 -5
  729. package/dist/features/ui/avatar/avatar.js +11 -11
  730. package/dist/features/ui/avatar/avatar.js.map +1 -1
  731. package/dist/features/ui/avatar/layers/base/variant-1.js.map +1 -1
  732. package/dist/features/ui/avatar/layers/eyes/variant-1.js.map +1 -1
  733. package/dist/features/ui/avatar/layers/eyes/variant-10.js.map +1 -1
  734. package/dist/features/ui/avatar/layers/eyes/variant-11.js.map +1 -1
  735. package/dist/features/ui/avatar/layers/eyes/variant-12.js.map +1 -1
  736. package/dist/features/ui/avatar/layers/eyes/variant-13.js.map +1 -1
  737. package/dist/features/ui/avatar/layers/eyes/variant-14.js.map +1 -1
  738. package/dist/features/ui/avatar/layers/eyes/variant-15.js.map +1 -1
  739. package/dist/features/ui/avatar/layers/eyes/variant-16.js.map +1 -1
  740. package/dist/features/ui/avatar/layers/eyes/variant-17.js.map +1 -1
  741. package/dist/features/ui/avatar/layers/eyes/variant-18.js.map +1 -1
  742. package/dist/features/ui/avatar/layers/eyes/variant-2.js.map +1 -1
  743. package/dist/features/ui/avatar/layers/eyes/variant-3.js.map +1 -1
  744. package/dist/features/ui/avatar/layers/eyes/variant-4.js.map +1 -1
  745. package/dist/features/ui/avatar/layers/eyes/variant-5.js.map +1 -1
  746. package/dist/features/ui/avatar/layers/eyes/variant-6.js.map +1 -1
  747. package/dist/features/ui/avatar/layers/eyes/variant-7.js.map +1 -1
  748. package/dist/features/ui/avatar/layers/eyes/variant-8.js.map +1 -1
  749. package/dist/features/ui/avatar/layers/eyes/variant-9.js.map +1 -1
  750. package/dist/features/ui/avatar/layers/hair/variant-1.js.map +1 -1
  751. package/dist/features/ui/avatar/layers/hair/variant-10.js.map +1 -1
  752. package/dist/features/ui/avatar/layers/hair/variant-2.js.map +1 -1
  753. package/dist/features/ui/avatar/layers/hair/variant-3.js.map +1 -1
  754. package/dist/features/ui/avatar/layers/hair/variant-4.js.map +1 -1
  755. package/dist/features/ui/avatar/layers/hair/variant-5.js.map +1 -1
  756. package/dist/features/ui/avatar/layers/hair/variant-6.js.map +1 -1
  757. package/dist/features/ui/avatar/layers/hair/variant-7.js.map +1 -1
  758. package/dist/features/ui/avatar/layers/hair/variant-8.js.map +1 -1
  759. package/dist/features/ui/avatar/layers/hair/variant-9.js.map +1 -1
  760. package/dist/features/ui/avatar/layers/mouth/variant-1.js.map +1 -1
  761. package/dist/features/ui/avatar/layers/mouth/variant-10.js.map +1 -1
  762. package/dist/features/ui/avatar/layers/mouth/variant-11.js.map +1 -1
  763. package/dist/features/ui/avatar/layers/mouth/variant-12.js.map +1 -1
  764. package/dist/features/ui/avatar/layers/mouth/variant-13.js.map +1 -1
  765. package/dist/features/ui/avatar/layers/mouth/variant-14.js.map +1 -1
  766. package/dist/features/ui/avatar/layers/mouth/variant-15.js.map +1 -1
  767. package/dist/features/ui/avatar/layers/mouth/variant-16.js.map +1 -1
  768. package/dist/features/ui/avatar/layers/mouth/variant-17.js.map +1 -1
  769. package/dist/features/ui/avatar/layers/mouth/variant-18.js.map +1 -1
  770. package/dist/features/ui/avatar/layers/mouth/variant-2.js.map +1 -1
  771. package/dist/features/ui/avatar/layers/mouth/variant-3.js.map +1 -1
  772. package/dist/features/ui/avatar/layers/mouth/variant-4.js.map +1 -1
  773. package/dist/features/ui/avatar/layers/mouth/variant-5.js.map +1 -1
  774. package/dist/features/ui/avatar/layers/mouth/variant-6.js.map +1 -1
  775. package/dist/features/ui/avatar/layers/mouth/variant-7.js.map +1 -1
  776. package/dist/features/ui/avatar/layers/mouth/variant-8.js.map +1 -1
  777. package/dist/features/ui/avatar/layers/mouth/variant-9.js.map +1 -1
  778. package/dist/features/ui/buttons/button/button-styled.js.map +1 -1
  779. package/dist/features/ui/buttons/button/button.js +25 -25
  780. package/dist/features/ui/buttons/button/button.js.map +1 -1
  781. package/dist/features/ui/buttons/clickable/clickable.js +9 -9
  782. package/dist/features/ui/buttons/clickable/clickable.js.map +1 -1
  783. package/dist/features/ui/buttons/icon-button/icon-button-styled.js.map +1 -1
  784. package/dist/features/ui/buttons/icon-button/icon-button.js +14 -14
  785. package/dist/features/ui/buttons/icon-button/icon-button.js.map +1 -1
  786. package/dist/features/ui/buttons/text-button/text-button-styled.js.map +1 -1
  787. package/dist/features/ui/buttons/text-button/text-button.js +19 -19
  788. package/dist/features/ui/buttons/text-button/text-button.js.map +1 -1
  789. package/dist/features/ui/callout/callout.js +10 -10
  790. package/dist/features/ui/callout/callout.js.map +1 -1
  791. package/dist/features/ui/constants/z-index.js +2 -0
  792. package/dist/features/ui/constants/z-index.js.map +1 -1
  793. package/dist/features/ui/context/context.js.map +1 -1
  794. package/dist/features/ui/context/use-tracking-context.js +2 -2
  795. package/dist/features/ui/context/use-tracking-context.js.map +1 -1
  796. package/dist/features/ui/context-menu/context-menu.js +13 -13
  797. package/dist/features/ui/context-menu/context-menu.js.map +1 -1
  798. package/dist/features/ui/error/error.js +11 -11
  799. package/dist/features/ui/error/error.js.map +1 -1
  800. package/dist/features/ui/grade-selector/grade-selector-styled.js.map +1 -1
  801. package/dist/features/ui/grade-selector/grade-selector.js.map +1 -1
  802. package/dist/features/ui/grade-selector/grade-tab.js.map +1 -1
  803. package/dist/features/ui/hooks/use-click-handler.js.map +1 -1
  804. package/dist/features/ui/hooks/use-context-menu-click-handler.js +17 -17
  805. package/dist/features/ui/hooks/use-context-menu-click-handler.js.map +1 -1
  806. package/dist/features/ui/hooks/use-response-handler.js.map +1 -1
  807. package/dist/features/ui/image/image.js.map +1 -1
  808. package/dist/features/ui/inputs/base-input/base-input-styled.js.map +1 -1
  809. package/dist/features/ui/inputs/base-input/base-input.js.map +1 -1
  810. package/dist/features/ui/inputs/base-select-input/base-select-input-styled.js.map +1 -1
  811. package/dist/features/ui/inputs/base-select-input/base-select-input.js.map +1 -1
  812. package/dist/features/ui/inputs/base-select-input/select-option/select-option.js.map +1 -1
  813. package/dist/features/ui/inputs/base-select-input/select-section/select-section-styled.js.map +1 -1
  814. package/dist/features/ui/inputs/base-select-input/select-section/select-section.js.map +1 -1
  815. package/dist/features/ui/inputs/cascading-select-input/cascading-select-input.js +23 -23
  816. package/dist/features/ui/inputs/cascading-select-input/cascading-select-input.js.map +1 -1
  817. package/dist/features/ui/inputs/checkbox-input/checkbox-input-styled.js.map +1 -1
  818. package/dist/features/ui/inputs/checkbox-input/checkbox-input.js +20 -20
  819. package/dist/features/ui/inputs/checkbox-input/checkbox-input.js.map +1 -1
  820. package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js +16 -16
  821. package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js.map +1 -1
  822. package/dist/features/ui/inputs/google-places-search-input/google-places-search-input.js +6 -6
  823. package/dist/features/ui/inputs/google-places-search-input/google-places-search-input.js.map +1 -1
  824. package/dist/features/ui/inputs/num-range-input/num-range-input.js +4 -4
  825. package/dist/features/ui/inputs/num-range-input/num-range-input.js.map +1 -1
  826. package/dist/features/ui/inputs/percentile-input/percentile-input.js +21 -21
  827. package/dist/features/ui/inputs/percentile-input/percentile-input.js.map +1 -1
  828. package/dist/features/ui/inputs/percentile-input/percentile-styled.js.map +1 -1
  829. package/dist/features/ui/inputs/radio-input/radio-input.js +14 -14
  830. package/dist/features/ui/inputs/radio-input/radio-input.js.map +1 -1
  831. package/dist/features/ui/inputs/radio-input/radio-option/radio-option-styled.js.map +1 -1
  832. package/dist/features/ui/inputs/radio-input/radio-option/radio-option.js.map +1 -1
  833. package/dist/features/ui/inputs/searchable-input/searchable-input-styled.js.map +1 -1
  834. package/dist/features/ui/inputs/searchable-input/searchable-input.js +3 -3
  835. package/dist/features/ui/inputs/searchable-input/searchable-input.js.map +1 -1
  836. package/dist/features/ui/inputs/searchable-select-input/searchable-select-input.js +17 -17
  837. package/dist/features/ui/inputs/searchable-select-input/searchable-select-input.js.map +1 -1
  838. package/dist/features/ui/inputs/searchable-select-input/use-filtered-options.js.map +1 -1
  839. package/dist/features/ui/inputs/select-input/select-input.js +3 -3
  840. package/dist/features/ui/inputs/select-input/select-input.js.map +1 -1
  841. package/dist/features/ui/inputs/text-input/text-input-styled.js.map +1 -1
  842. package/dist/features/ui/inputs/text-input/text-input.js +33 -33
  843. package/dist/features/ui/inputs/text-input/text-input.js.map +1 -1
  844. package/dist/features/ui/layout/flex-view.js +23 -23
  845. package/dist/features/ui/layout/flex-view.js.map +1 -1
  846. package/dist/features/ui/loader/app-loader/app-loader.js +3 -3
  847. package/dist/features/ui/loader/app-loader/app-loader.js.map +1 -1
  848. package/dist/features/ui/lottie-animation/helper.js.map +1 -1
  849. package/dist/features/ui/lottie-animation/lottie-animation.js.map +1 -1
  850. package/dist/features/ui/nudge/nudge.js +9 -9
  851. package/dist/features/ui/nudge/nudge.js.map +1 -1
  852. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js +1 -1
  853. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js.map +1 -1
  854. package/dist/features/ui/perfect-hits/perfect-hits-styled.js +1 -1
  855. package/dist/features/ui/perfect-hits/perfect-hits.js.map +1 -1
  856. package/dist/features/ui/radio-cards/radio-card-option/radio-card-option-styled.js.map +1 -1
  857. package/dist/features/ui/radio-cards/radio-card-option/radio-card-option.js.map +1 -1
  858. package/dist/features/ui/radio-cards/radio-cards.js +15 -15
  859. package/dist/features/ui/radio-cards/radio-cards.js.map +1 -1
  860. package/dist/features/ui/section-list/section-list.js +9 -9
  861. package/dist/features/ui/section-list/section-list.js.map +1 -1
  862. package/dist/features/ui/selection-cards/selection-card-option/selection-card-option-styled.js.map +1 -1
  863. package/dist/features/ui/selection-cards/selection-card-option/selection-card-option.js.map +1 -1
  864. package/dist/features/ui/selection-cards/selection-cards.js +18 -18
  865. package/dist/features/ui/selection-cards/selection-cards.js.map +1 -1
  866. package/dist/features/ui/separator/separator.js +6 -6
  867. package/dist/features/ui/separator/separator.js.map +1 -1
  868. package/dist/features/ui/stepper/stepper-styled.js.map +1 -1
  869. package/dist/features/ui/stepper/stepper.js +7 -7
  870. package/dist/features/ui/stepper/stepper.js.map +1 -1
  871. package/dist/features/ui/streak-icon/streak-icon.js +14 -14
  872. package/dist/features/ui/streak-icon/streak-icon.js.map +1 -1
  873. package/dist/features/ui/superscript/superscript.js.map +1 -1
  874. package/dist/features/ui/tab/tab-styled.js.map +1 -1
  875. package/dist/features/ui/tab/tab.js +17 -17
  876. package/dist/features/ui/tab/tab.js.map +1 -1
  877. package/dist/features/ui/tag/tag-styled.js.map +1 -1
  878. package/dist/features/ui/tag/tag.js +4 -4
  879. package/dist/features/ui/tag/tag.js.map +1 -1
  880. package/dist/features/ui/text/text.js +24 -23
  881. package/dist/features/ui/text/text.js.map +1 -1
  882. package/dist/features/ui/theme/arrow-tooltip.js.map +1 -1
  883. package/dist/features/ui/theme/button.js.map +1 -1
  884. package/dist/features/ui/theme/checkbox.js.map +1 -1
  885. package/dist/features/ui/theme/get-theme.js.map +1 -1
  886. package/dist/features/ui/theme/input.js.map +1 -1
  887. package/dist/features/ui/theme/layout.js.map +1 -1
  888. package/dist/features/ui/theme/tab.js.map +1 -1
  889. package/dist/features/ui/theme/text-button.js.map +1 -1
  890. package/dist/features/ui/theme/text.js.map +1 -1
  891. package/dist/features/ui/time-left-timeline/time-left-timeline-styled.js.map +1 -1
  892. package/dist/features/ui/time-left-timeline/time-left-timeline.js +16 -16
  893. package/dist/features/ui/time-left-timeline/time-left-timeline.js.map +1 -1
  894. package/dist/features/ui/timers/countdown-timer/countdown-timer.js +15 -15
  895. package/dist/features/ui/timers/countdown-timer/countdown-timer.js.map +1 -1
  896. package/dist/features/ui/video/index.js +3 -3
  897. package/dist/features/ui/video/index.js.map +1 -1
  898. package/dist/features/ui/video/styled.js.map +1 -1
  899. package/dist/features/utils/load-script.js +9 -9
  900. package/dist/features/utils/load-script.js.map +1 -1
  901. package/dist/features/utils/utils.js.map +1 -1
  902. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js +25 -25
  903. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js.map +1 -1
  904. package/dist/features/worksheet/learnosity-preloader/use-download-script.js.map +1 -1
  905. package/dist/features/worksheet/learnosity-preloader/use-is-learnosity-loaded.js +2 -2
  906. package/dist/features/worksheet/learnosity-preloader/use-is-learnosity-loaded.js.map +1 -1
  907. package/dist/features/worksheet/user-pointer-pin/hooks/use-user-location.js.map +1 -1
  908. package/dist/features/worksheet/user-pointer-pin/user-pin.js.map +1 -1
  909. package/dist/features/worksheet/worksheet/constants.js.map +1 -1
  910. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js.map +1 -1
  911. package/dist/features/worksheet/worksheet/hooks/use-get-active-question-id.js.map +1 -1
  912. package/dist/features/worksheet/worksheet/hooks/use-learnosity-append.js.map +1 -1
  913. package/dist/features/worksheet/worksheet/hooks/use-learnosity.js.map +1 -1
  914. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
  915. package/dist/features/worksheet/worksheet/hooks/use-time-on-questions.js.map +1 -1
  916. package/dist/features/worksheet/worksheet/hooks/use-worksheet-data-helper.js.map +1 -1
  917. package/dist/features/worksheet/worksheet/question-tips.js.map +1 -1
  918. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  919. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-intervention.js.map +1 -1
  920. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review-available.js.map +1 -1
  921. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review.js.map +1 -1
  922. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-student-submission.js.map +1 -1
  923. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-assignment.js.map +1 -1
  924. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-skip.js.map +1 -1
  925. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker.js.map +1 -1
  926. package/dist/features/worksheet/worksheet/worksheet-container.js +17 -17
  927. package/dist/features/worksheet/worksheet/worksheet-container.js.map +1 -1
  928. package/dist/features/worksheet/worksheet/worksheet-helpers.js +4 -4
  929. package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
  930. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-navigation/worksheet-item-navigation.js.map +1 -1
  931. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number-styled.js.map +1 -1
  932. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js.map +1 -1
  933. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation-styled.js.map +1 -1
  934. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js.map +1 -1
  935. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js +2 -2
  936. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js.map +1 -1
  937. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
  938. package/dist/features/worksheet/worksheet/worksheet-permissions/sheet-locked.js.map +1 -1
  939. package/dist/features/worksheet/worksheet/worksheet-question/header/header-tags.js.map +1 -1
  940. package/dist/features/worksheet/worksheet/worksheet-question/header/header.js.map +1 -1
  941. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
  942. package/dist/features/worksheet/worksheet/worksheet-question/learnosity-question.js.map +1 -1
  943. package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop-styled.js.map +1 -1
  944. package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop.js.map +1 -1
  945. package/dist/features/worksheet/worksheet/worksheet-question/subjective-feedback.js.map +1 -1
  946. package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js.map +1 -1
  947. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js.map +1 -1
  948. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/advanced-practice-intro.js.map +1 -1
  949. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/basic-practice-intro.js.map +1 -1
  950. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/exit-ticket-intro.js.map +1 -1
  951. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/regular-practice-intro.js.map +1 -1
  952. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js.map +1 -1
  953. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  954. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -1
  955. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +1 -1
  956. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
  957. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary-styled.js.map +1 -1
  958. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js.map +1 -1
  959. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js.map +1 -1
  960. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +1 -1
  961. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +1 -1
  962. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js.map +1 -1
  963. package/dist/features/worksheet/worksheet/worksheet-styled.js +4 -4
  964. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  965. package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js.map +1 -1
  966. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
  967. package/dist/features/worksheet/worksheet/worksheet.js +5 -5
  968. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  969. package/dist/features/worksheet/worksheet-preview/api/get-preview-worksheet.js.map +1 -1
  970. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js +16 -16
  971. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
  972. package/dist/features/worksheet/worksheet-preview/worksheet-preview-styled.js.map +1 -1
  973. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  974. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js +16 -16
  975. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js.map +1 -1
  976. package/dist/helpers/date-time.js.map +1 -1
  977. package/dist/helpers/get-device-details.js.map +1 -1
  978. package/dist/helpers/label-text.js.map +1 -1
  979. package/dist/index.d.ts +1 -0
  980. package/dist/index.js +481 -481
  981. package/dist/node_modules/@cuemath/analytics-v2/dist/constants.js.map +1 -1
  982. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -1
  983. package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -1
  984. package/dist/node_modules/date-fns/_lib/format/formatters.js +2 -0
  985. package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -1
  986. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -1
  987. package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -1
  988. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -1
  989. package/dist/node_modules/date-fns/addDays.js.map +1 -1
  990. package/dist/node_modules/date-fns/addMonths.js.map +1 -1
  991. package/dist/node_modules/date-fns/constructNow.js.map +1 -1
  992. package/dist/node_modules/date-fns/eachMonthOfInterval.js.map +1 -1
  993. package/dist/node_modules/date-fns/format.js.map +1 -1
  994. package/dist/node_modules/date-fns/getDefaultOptions.js.map +1 -1
  995. package/dist/node_modules/date-fns/getISODay.js.map +1 -1
  996. package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -1
  997. package/dist/node_modules/date-fns/getWeekYear.js.map +1 -1
  998. package/dist/node_modules/date-fns/isAfter.js.map +1 -1
  999. package/dist/node_modules/date-fns/lastDayOfMonth.js.map +1 -1
  1000. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -1
  1001. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -1
  1002. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -1
  1003. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -1
  1004. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -1
  1005. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -1
  1006. package/dist/node_modules/date-fns/parse/_lib/Parser.js.map +1 -1
  1007. package/dist/node_modules/date-fns/parse/_lib/Setter.js.map +1 -1
  1008. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js.map +1 -1
  1009. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js.map +1 -1
  1010. package/dist/node_modules/date-fns/parse/_lib/parsers/DateParser.js.map +1 -1
  1011. package/dist/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js.map +1 -1
  1012. package/dist/node_modules/date-fns/parse/_lib/parsers/DayParser.js.map +1 -1
  1013. package/dist/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js.map +1 -1
  1014. package/dist/node_modules/date-fns/parse/_lib/parsers/EraParser.js.map +1 -1
  1015. package/dist/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js.map +1 -1
  1016. package/dist/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js.map +1 -1
  1017. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js.map +1 -1
  1018. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js.map +1 -1
  1019. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js.map +1 -1
  1020. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js.map +1 -1
  1021. package/dist/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js.map +1 -1
  1022. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js.map +1 -1
  1023. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js.map +1 -1
  1024. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js.map +1 -1
  1025. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js.map +1 -1
  1026. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js.map +1 -1
  1027. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js.map +1 -1
  1028. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js.map +1 -1
  1029. package/dist/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js.map +1 -1
  1030. package/dist/node_modules/date-fns/parse/_lib/parsers/MonthParser.js.map +1 -1
  1031. package/dist/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js.map +1 -1
  1032. package/dist/node_modules/date-fns/parse/_lib/parsers/SecondParser.js.map +1 -1
  1033. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js.map +1 -1
  1034. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js.map +1 -1
  1035. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js.map +1 -1
  1036. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js.map +1 -1
  1037. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js.map +1 -1
  1038. package/dist/node_modules/date-fns/parse/_lib/parsers/YearParser.js.map +1 -1
  1039. package/dist/node_modules/date-fns/parse/_lib/utils.js.map +1 -1
  1040. package/dist/node_modules/date-fns/parse.js.map +1 -1
  1041. package/dist/node_modules/date-fns/setDay.js.map +1 -1
  1042. package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -1
  1043. package/dist/node_modules/date-fns/startOfWeek.js.map +1 -1
  1044. package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -1
  1045. package/dist/node_modules/date-fns/transpose.js.map +1 -1
  1046. package/dist/node_modules/fast-equals/dist/esm/index.js +133 -174
  1047. package/dist/node_modules/fast-equals/dist/esm/index.js.map +1 -1
  1048. package/dist/node_modules/filter-obj/index.js.map +1 -1
  1049. package/dist/node_modules/humanize-plus/dist/humanize.js.map +1 -1
  1050. package/dist/node_modules/lodash.debounce/index.js.map +1 -1
  1051. package/dist/node_modules/lodash.isequal/index.js +1 -1
  1052. package/dist/node_modules/lodash.isequal/index.js.map +1 -1
  1053. package/dist/node_modules/lodash.throttle/index.js.map +1 -1
  1054. package/dist/node_modules/query-string/base.js +1 -1
  1055. package/dist/node_modules/query-string/base.js.map +1 -1
  1056. package/dist/node_modules/query-string/node_modules/decode-uri-component/index.js.map +1 -0
  1057. package/dist/node_modules/split-on-first/index.js.map +1 -1
  1058. package/dist/node_modules/ua-parser-js/src/ua-parser.js +3 -3
  1059. package/dist/node_modules/ua-parser-js/src/ua-parser.js.map +1 -1
  1060. package/dist/node_modules/uuid/dist/esm-browser/regex.js +5 -0
  1061. package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
  1062. package/dist/node_modules/uuid/dist/esm-browser/rng.js +2 -3
  1063. package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
  1064. package/dist/node_modules/uuid/dist/esm-browser/stringify.js +10 -6
  1065. package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
  1066. package/dist/node_modules/uuid/dist/esm-browser/v4.js +9 -12
  1067. package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
  1068. package/dist/node_modules/uuid/dist/esm-browser/validate.js +8 -0
  1069. package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
  1070. package/package.json +3 -2
  1071. package/dist/node_modules/decode-uri-component/index.js.map +0 -1
  1072. package/dist/node_modules/uuid/dist/esm-browser/native.js +0 -7
  1073. package/dist/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
  1074. /package/dist/node_modules/{decode-uri-component → query-string/node_modules/decode-uri-component}/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-item-number.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.tsx"],"sourcesContent":["import type { IWorksheetItemNumberProps, TItemState } from './worksheet-item-number-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useMemo } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../../assets/illustrations/illustrations';\nimport BookmarkIcon from '../../../../../assets/line-icons/icons/bookmark';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { TOP_NAVIGATION_HEIGHT } from '../../constants';\nimport * as Styled from './worksheet-item-number-styled';\n\nconst WorksheetItemNumber: FC<IWorksheetItemNumberProps> = memo(\n ({\n placement,\n item,\n isOptional,\n responses,\n validation,\n onItemNumberClick,\n canShowUserPin,\n teacherValidationEnabled,\n summaryVisible,\n maximumAttempts,\n }) => {\n const { firstQuestion, isActive, isUnlocked, questionIds } = item;\n const { item_number, item_display_number } = firstQuestion;\n const { itemState, markedForReview }: { itemState: TItemState; markedForReview: boolean } =\n useMemo(() => {\n const totalQuestion = questionIds.length;\n let state: TItemState = 'unanswered';\n const {\n correctQuestions,\n incorrectQuestions,\n editedQuestions,\n markedForReviewQuestions,\n skippedQuestions,\n } = questionIds.reduce(\n (acc, questionId) => {\n const response = responses[questionId];\n\n if (!response) {\n return acc;\n }\n\n const { responseEdited, score: responseScore, validatedByTeacher } = response;\n const isAttempted =\n responseScore && 'score' in responseScore && 'max_score' in responseScore;\n const isCorrect = responseScore?.score === responseScore?.max_score;\n\n if (validation) {\n if (responseEdited && maximumAttempts !== -1) {\n acc.editedQuestions++;\n } else if (teacherValidationEnabled) {\n if (validatedByTeacher) acc.correctQuestions++;\n else if (isAttempted) {\n acc[isCorrect ? 'correctQuestions' : 'incorrectQuestions']++;\n }\n } else if (isAttempted) {\n acc[isCorrect ? 'correctQuestions' : 'incorrectQuestions']++;\n }\n } else {\n if (responseEdited) {\n acc.editedQuestions++;\n }\n }\n\n if (response.markedForReview) acc.markedForReviewQuestions++;\n\n if (response.skipped) acc.skippedQuestions++;\n\n return acc;\n },\n {\n correctQuestions: 0,\n incorrectQuestions: 0,\n editedQuestions: 0,\n markedForReviewQuestions: 0,\n skippedQuestions: 0,\n },\n );\n\n if (editedQuestions > 0) state = 'answered';\n else if (skippedQuestions > 0) state = 'skipped';\n else if (incorrectQuestions > 0) state = validation ? 'incorrect' : 'answered';\n else if (correctQuestions === totalQuestion) state = validation ? 'correct' : 'answered';\n else if (correctQuestions > 0 && correctQuestions < totalQuestion) state = 'answered';\n\n return {\n itemState: state,\n markedForReview: markedForReviewQuestions > 0,\n };\n }, [maximumAttempts, questionIds, responses, teacherValidationEnabled, validation]);\n\n const handleItemNumberClick = useCallback(() => {\n onItemNumberClick(firstQuestion.response_id);\n }, [firstQuestion.response_id, onItemNumberClick]);\n\n const itemTextColor = useMemo(\n () => ((!isActive || summaryVisible) && itemState === 'answered' ? 'WHITE' : 'BLACK'),\n [isActive, itemState, summaryVisible],\n );\n\n return (\n <Clickable label=\"Item Number\" disabled={!isUnlocked} onClick={handleItemNumberClick}>\n <FlexView $height={TOP_NAVIGATION_HEIGHT} $justifyContent=\"center\">\n <Styled.ItemNumberWrapper\n className={`worksheet-item-number-${item_number}`}\n $itemState={isUnlocked ? itemState : 'disabled'}\n $isActive={isActive}\n $placement={placement}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $summaryVisible={summaryVisible}\n >\n <Text\n $renderAs={placement === 'top' ? 'body3' : 'body1'}\n $color={itemTextColor}\n $opacity={isUnlocked ? 1 : 0.5}\n >\n {item_display_number}\n </Text>\n {markedForReview && (\n <Styled.BookmarkWrapper>\n <BookmarkIcon />\n </Styled.BookmarkWrapper>\n )}\n {canShowUserPin && (\n <Styled.UserPin width={20} height={20} src={ILLUSTRATIONS.USER_PIN} />\n )}\n {itemState === 'correct' && <Styled.ItemStatus src={ILLUSTRATIONS.TICK_GREEN} />}\n {['incorrect', 'skipped'].includes(itemState) && (\n <Styled.ItemStatus src={ILLUSTRATIONS.CAUTION} />\n )}\n {itemState === 'unanswered' && isOptional && <Styled.OptionalTag />}\n </Styled.ItemNumberWrapper>\n </FlexView>\n </Clickable>\n );\n },\n);\n\nexport default WorksheetItemNumber;\n"],"names":["WorksheetItemNumber","memo","placement","item","isOptional","responses","validation","onItemNumberClick","canShowUserPin","teacherValidationEnabled","summaryVisible","maximumAttempts","firstQuestion","isActive","isUnlocked","questionIds","item_number","item_display_number","itemState","markedForReview","useMemo","totalQuestion","state","correctQuestions","incorrectQuestions","editedQuestions","markedForReviewQuestions","skippedQuestions","acc","questionId","response","responseEdited","responseScore","validatedByTeacher","isAttempted","isCorrect","handleItemNumberClick","useCallback","itemTextColor","jsx","Clickable","FlexView","TOP_NAVIGATION_HEIGHT","jsxs","Styled.ItemNumberWrapper","Text","Styled.BookmarkWrapper","BookmarkIcon","Styled.UserPin","ILLUSTRATIONS","Styled.ItemStatus","Styled.OptionalTag"],"mappings":"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"}
1
+ {"version":3,"file":"worksheet-item-number.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.tsx"],"sourcesContent":["import type { IWorksheetItemNumberProps, TItemState } from './worksheet-item-number-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useMemo } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../../assets/illustrations/illustrations';\nimport BookmarkIcon from '../../../../../assets/line-icons/icons/bookmark';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { TOP_NAVIGATION_HEIGHT } from '../../constants';\nimport * as Styled from './worksheet-item-number-styled';\n\nconst WorksheetItemNumber: FC<IWorksheetItemNumberProps> = memo(\n ({\n placement,\n item,\n isOptional,\n responses,\n validation,\n onItemNumberClick,\n canShowUserPin,\n teacherValidationEnabled,\n summaryVisible,\n maximumAttempts,\n }) => {\n const { firstQuestion, isActive, isUnlocked, questionIds } = item;\n const { item_number, item_display_number } = firstQuestion;\n const { itemState, markedForReview }: { itemState: TItemState; markedForReview: boolean } =\n useMemo(() => {\n const totalQuestion = questionIds.length;\n let state: TItemState = 'unanswered';\n const {\n correctQuestions,\n incorrectQuestions,\n editedQuestions,\n markedForReviewQuestions,\n skippedQuestions,\n } = questionIds.reduce(\n (acc, questionId) => {\n const response = responses[questionId];\n\n if (!response) {\n return acc;\n }\n\n const { responseEdited, score: responseScore, validatedByTeacher } = response;\n const isAttempted =\n responseScore && 'score' in responseScore && 'max_score' in responseScore;\n const isCorrect = responseScore?.score === responseScore?.max_score;\n\n if (validation) {\n if (responseEdited && maximumAttempts !== -1) {\n acc.editedQuestions++;\n } else if (teacherValidationEnabled) {\n if (validatedByTeacher) acc.correctQuestions++;\n else if (isAttempted) {\n acc[isCorrect ? 'correctQuestions' : 'incorrectQuestions']++;\n }\n } else if (isAttempted) {\n acc[isCorrect ? 'correctQuestions' : 'incorrectQuestions']++;\n }\n } else {\n if (responseEdited) {\n acc.editedQuestions++;\n }\n }\n\n if (response.markedForReview) acc.markedForReviewQuestions++;\n\n if (response.skipped) acc.skippedQuestions++;\n\n return acc;\n },\n {\n correctQuestions: 0,\n incorrectQuestions: 0,\n editedQuestions: 0,\n markedForReviewQuestions: 0,\n skippedQuestions: 0,\n },\n );\n\n if (editedQuestions > 0) state = 'answered';\n else if (skippedQuestions > 0) state = 'skipped';\n else if (incorrectQuestions > 0) state = validation ? 'incorrect' : 'answered';\n else if (correctQuestions === totalQuestion) state = validation ? 'correct' : 'answered';\n else if (correctQuestions > 0 && correctQuestions < totalQuestion) state = 'answered';\n\n return {\n itemState: state,\n markedForReview: markedForReviewQuestions > 0,\n };\n }, [maximumAttempts, questionIds, responses, teacherValidationEnabled, validation]);\n\n const handleItemNumberClick = useCallback(() => {\n onItemNumberClick(firstQuestion.response_id);\n }, [firstQuestion.response_id, onItemNumberClick]);\n\n const itemTextColor = useMemo(\n () => ((!isActive || summaryVisible) && itemState === 'answered' ? 'WHITE' : 'BLACK'),\n [isActive, itemState, summaryVisible],\n );\n\n return (\n <Clickable label=\"Item Number\" disabled={!isUnlocked} onClick={handleItemNumberClick}>\n <FlexView $height={TOP_NAVIGATION_HEIGHT} $justifyContent=\"center\">\n <Styled.ItemNumberWrapper\n className={`worksheet-item-number-${item_number}`}\n $itemState={isUnlocked ? itemState : 'disabled'}\n $isActive={isActive}\n $placement={placement}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $summaryVisible={summaryVisible}\n >\n <Text\n $renderAs={placement === 'top' ? 'body3' : 'body1'}\n $color={itemTextColor}\n $opacity={isUnlocked ? 1 : 0.5}\n >\n {item_display_number}\n </Text>\n {markedForReview && (\n <Styled.BookmarkWrapper>\n <BookmarkIcon />\n </Styled.BookmarkWrapper>\n )}\n {canShowUserPin && (\n <Styled.UserPin width={20} height={20} src={ILLUSTRATIONS.USER_PIN} />\n )}\n {itemState === 'correct' && <Styled.ItemStatus src={ILLUSTRATIONS.TICK_GREEN} />}\n {['incorrect', 'skipped'].includes(itemState) && (\n <Styled.ItemStatus src={ILLUSTRATIONS.CAUTION} />\n )}\n {itemState === 'unanswered' && isOptional && <Styled.OptionalTag />}\n </Styled.ItemNumberWrapper>\n </FlexView>\n </Clickable>\n );\n },\n);\n\nexport default WorksheetItemNumber;\n"],"names":["WorksheetItemNumber","memo","placement","item","isOptional","responses","validation","onItemNumberClick","canShowUserPin","teacherValidationEnabled","summaryVisible","maximumAttempts","firstQuestion","isActive","isUnlocked","questionIds","item_number","item_display_number","itemState","markedForReview","useMemo","totalQuestion","state","correctQuestions","incorrectQuestions","editedQuestions","markedForReviewQuestions","skippedQuestions","acc","questionId","response","responseEdited","responseScore","validatedByTeacher","isAttempted","isCorrect","handleItemNumberClick","useCallback","itemTextColor","jsx","Clickable","FlexView","TOP_NAVIGATION_HEIGHT","jsxs","Styled.ItemNumberWrapper","Text","Styled.BookmarkWrapper","BookmarkIcon","Styled.UserPin","ILLUSTRATIONS","Styled.ItemStatus","Styled.OptionalTag"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-navigation-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport { TOP_NAVIGATION_ARROW_WIDTH } from '../constants';\n\nconst Container = styled(FlexView)`\n position: relative;\n overflow: hidden;\n`;\n\nconst BackgroundLayer = styled(FlexView)`\n position: absolute;\n top: 0;\n width: 50%;\n height: 100%;\n z-index: -1;\n`;\n\nconst LeftContainerBackground = styled(BackgroundLayer)`\n left: 0;\n`;\n\nconst RightContainerBackground = styled(BackgroundLayer)`\n right: 0;\n`;\n\nconst SectionWrapper = styled(FlexView)<{ $hasBorder: boolean }>(\n ({ theme, $hasBorder }) => `\n align-items: center;\n border-left: ${$hasBorder ? `2px solid ${theme.colors.WHITE}` : 'none'};\n`,\n);\n\nconst ArrowWrapper = styled(FlexView)`\n position: absolute;\n top: 0;\n bottom: 0;\n backdrop-filter: blur(20px);\n align-items: center;\n width: ${TOP_NAVIGATION_ARROW_WIDTH}px;\n`;\n\nconst LeftArrowWrapper = styled(ArrowWrapper)`\n left: 0;\n border-right: 2px solid white;\n`;\n\nconst RightArrowWrapper = styled(ArrowWrapper)`\n right: 0;\n border-left: 2px solid white;\n`;\n\nexport {\n Container,\n LeftContainerBackground,\n RightContainerBackground,\n SectionWrapper,\n LeftArrowWrapper,\n RightArrowWrapper,\n};\n"],"names":["Container","styled","FlexView","BackgroundLayer","LeftContainerBackground","RightContainerBackground","SectionWrapper","theme","$hasBorder","ArrowWrapper","TOP_NAVIGATION_ARROW_WIDTH","LeftArrowWrapper","RightArrowWrapper"],"mappings":";;;AAKM,MAAAA,IAAYC,EAAOC,CAAQ;AAAA;AAAA;AAAA,GAK3BC,IAAkBF,EAAOC,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQjCE,IAA0BH,EAAOE,CAAe;AAAA;AAAA,GAIhDE,IAA2BJ,EAAOE,CAAe;AAAA;AAAA,GAIjDG,IAAiBL,EAAOC,CAAQ;AAAA,EACpC,CAAC,EAAE,OAAAK,GAAO,YAAAC,QAAiB;AAAA;AAAA,iBAEZA,IAAa,aAAaD,EAAM,OAAO,KAAK,KAAK,MAAM;AAAA;AAExE,GAEME,IAAeR,EAAOC,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAMzBQ,CAA0B;AAAA,GAG/BC,IAAmBV,EAAOQ,CAAY;AAAA;AAAA;AAAA,GAKtCG,IAAoBX,EAAOQ,CAAY;AAAA;AAAA;AAAA;"}
1
+ {"version":3,"file":"worksheet-navigation-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport { TOP_NAVIGATION_ARROW_WIDTH } from '../constants';\n\nconst Container = styled(FlexView)`\n position: relative;\n overflow: hidden;\n`;\n\nconst BackgroundLayer = styled(FlexView)`\n position: absolute;\n top: 0;\n width: 50%;\n height: 100%;\n z-index: -1;\n`;\n\nconst LeftContainerBackground = styled(BackgroundLayer)`\n left: 0;\n`;\n\nconst RightContainerBackground = styled(BackgroundLayer)`\n right: 0;\n`;\n\nconst SectionWrapper = styled(FlexView)<{ $hasBorder: boolean }>(\n ({ theme, $hasBorder }) => `\n align-items: center;\n border-left: ${$hasBorder ? `2px solid ${theme.colors.WHITE}` : 'none'};\n`,\n);\n\nconst ArrowWrapper = styled(FlexView)`\n position: absolute;\n top: 0;\n bottom: 0;\n backdrop-filter: blur(20px);\n align-items: center;\n width: ${TOP_NAVIGATION_ARROW_WIDTH}px;\n`;\n\nconst LeftArrowWrapper = styled(ArrowWrapper)`\n left: 0;\n border-right: 2px solid white;\n`;\n\nconst RightArrowWrapper = styled(ArrowWrapper)`\n right: 0;\n border-left: 2px solid white;\n`;\n\nexport {\n Container,\n LeftContainerBackground,\n RightContainerBackground,\n SectionWrapper,\n LeftArrowWrapper,\n RightArrowWrapper,\n};\n"],"names":["Container","styled","FlexView","BackgroundLayer","LeftContainerBackground","RightContainerBackground","SectionWrapper","theme","$hasBorder","ArrowWrapper","TOP_NAVIGATION_ARROW_WIDTH","LeftArrowWrapper","RightArrowWrapper"],"mappings":";;;AAKM,MAAAA,IAAYC,EAAOC,CAAQ;AAAA;AAAA;AAAA,GAK3BC,IAAkBF,EAAOC,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQjCE,IAA0BH,EAAOE,CAAe;AAAA;AAAA,GAIhDE,IAA2BJ,EAAOE,CAAe;AAAA;AAAA,GAIjDG,IAAiBL,EAAOC,CAAQ;AAAA,EACpC,CAAC,EAAE,OAAAK,GAAO,YAAAC,EAAA,MAAiB;AAAA;AAAA,iBAEZA,IAAa,aAAaD,EAAM,OAAO,KAAK,KAAK,MAAM;AAAA;AAExE,GAEME,IAAeR,EAAOC,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAMzBQ,CAA0B;AAAA,GAG/BC,IAAmBV,EAAOQ,CAAY;AAAA;AAAA;AAAA,GAKtCG,IAAoBX,EAAOQ,CAAY;AAAA;AAAA;AAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-navigation.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.tsx"],"sourcesContent":["import type { IWorksheetItemNumberProps } from './worksheet-item-number/worksheet-item-number-types';\nimport type { IWorksheetNavigationProps } from './worksheet-navigation-types';\nimport type { FC } from 'react';\n\nimport { memo, useMemo } from 'react';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport useRemoteUserLocation from '../../user-pointer-pin/hooks/use-user-location';\nimport WorksheetItemNavigation from './worksheet-item-navigation/worksheet-item-navigation';\nimport WorksheetItemNumber from './worksheet-item-number/worksheet-item-number';\nimport WorksheetSectionNavigation from './worksheet-section-navigation/worksheet-section-navigation';\n\nconst WorksheetNavigation: FC<IWorksheetNavigationProps> = memo(\n ({\n placement,\n questions,\n responses,\n activeQuestionIndex,\n lastUnlockedQuestionIndex,\n behavior,\n onItemNumberClick,\n userType,\n summaryVisible,\n }) => {\n const { validation, teacherValidationEnabled, maximumAttempts } = behavior;\n const activeItemNumber = questions[activeQuestionIndex]?.item_number;\n const { peerItemNumber } = useRemoteUserLocation({\n questions,\n activeQuestionIndex,\n userType,\n });\n\n const items = useMemo(\n () =>\n questions.reduce(\n (acc, question, questionIndex) => {\n const { item_number, response_id } = question;\n const item = acc[item_number];\n const isUnlocked =\n userType === 'TEACHER' ? true : questionIndex <= lastUnlockedQuestionIndex;\n\n if (!item) {\n acc.push({\n firstQuestion: question,\n isActive: questionIndex === activeQuestionIndex,\n isUnlocked,\n questionIds: [response_id],\n });\n } else {\n item.isActive = item.isActive || questionIndex === activeQuestionIndex;\n item.isUnlocked = item.isUnlocked || isUnlocked;\n item.questionIds.push(response_id);\n }\n\n return acc;\n },\n [] as IWorksheetItemNumberProps['item'][],\n ),\n [activeQuestionIndex, lastUnlockedQuestionIndex, questions, userType],\n );\n\n if (placement === 'bottom') {\n return (\n <FlexView $flexGapX={1} $flexDirection=\"row\" $flexWrap>\n {items.map(item => (\n <WorksheetItemNumber\n key={item.firstQuestion.response_id}\n responses={responses}\n validation={validation}\n placement={placement}\n item={item}\n onItemNumberClick={onItemNumberClick}\n summaryVisible={summaryVisible}\n maximumAttempts={maximumAttempts}\n />\n ))}\n </FlexView>\n );\n }\n\n if (teacherValidationEnabled) {\n return (\n <WorksheetSectionNavigation\n userType={userType}\n activeItemNumber={activeItemNumber}\n items={items}\n responses={responses}\n validation={validation}\n peerItemNumber={peerItemNumber}\n onItemNumberClick={onItemNumberClick}\n maximumAttempts={maximumAttempts}\n />\n );\n }\n\n return (\n <WorksheetItemNavigation\n activeItemNumber={activeItemNumber}\n items={items}\n responses={responses}\n validation={validation}\n peerItemNumber={peerItemNumber}\n summaryVisible={summaryVisible}\n onItemNumberClick={onItemNumberClick}\n maximumAttempts={maximumAttempts}\n />\n );\n },\n);\n\nexport default WorksheetNavigation;\n"],"names":["WorksheetNavigation","memo","placement","questions","responses","activeQuestionIndex","lastUnlockedQuestionIndex","behavior","onItemNumberClick","userType","summaryVisible","validation","teacherValidationEnabled","maximumAttempts","activeItemNumber","_a","peerItemNumber","useRemoteUserLocation","items","useMemo","acc","question","questionIndex","item_number","response_id","item","isUnlocked","jsx","FlexView","WorksheetItemNumber","WorksheetSectionNavigation","WorksheetItemNavigation"],"mappings":";;;;;;;AAYA,MAAMA,IAAqDC;AAAA,EACzD,CAAC;AAAA,IACC,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,2BAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,MACI;;AACJ,UAAM,EAAE,YAAAC,GAAY,0BAAAC,GAA0B,iBAAAC,EAAoB,IAAAN,GAC5DO,KAAmBC,IAAAZ,EAAUE,CAAmB,MAA7B,gBAAAU,EAAgC,aACnD,EAAE,gBAAAC,EAAe,IAAIC,EAAsB;AAAA,MAC/C,WAAAd;AAAA,MACA,qBAAAE;AAAA,MACA,UAAAI;AAAA,IAAA,CACD,GAEKS,IAAQC;AAAA,MACZ,MACEhB,EAAU;AAAA,QACR,CAACiB,GAAKC,GAAUC,MAAkB;AAC1B,gBAAA,EAAE,aAAAC,GAAa,aAAAC,EAAA,IAAgBH,GAC/BI,IAAOL,EAAIG,CAAW,GACtBG,IACJjB,MAAa,YAAY,KAAOa,KAAiBhB;AAEnD,iBAAKmB,KAQEA,EAAA,WAAWA,EAAK,YAAYH,MAAkBjB,GAC9CoB,EAAA,aAAaA,EAAK,cAAcC,GAChCD,EAAA,YAAY,KAAKD,CAAW,KATjCJ,EAAI,KAAK;AAAA,YACP,eAAeC;AAAA,YACf,UAAUC,MAAkBjB;AAAA,YAC5B,YAAAqB;AAAA,YACA,aAAa,CAACF,CAAW;AAAA,UAAA,CAC1B,GAOIJ;AAAA,QACT;AAAA,QACA,CAAA;AAAA,MACF;AAAA,MACF,CAACf,GAAqBC,GAA2BH,GAAWM,CAAQ;AAAA,IACtE;AAEA,WAAIP,MAAc,WAEd,gBAAAyB,EAACC,GAAS,EAAA,WAAW,GAAG,gBAAe,OAAM,WAAS,IACnD,UAAMV,EAAA,IAAI,CACTO,MAAA,gBAAAE;AAAA,MAACE;AAAA,MAAA;AAAA,QAEC,WAAAzB;AAAA,QACA,YAAAO;AAAA,QACA,WAAAT;AAAA,QACA,MAAAuB;AAAA,QACA,mBAAAjB;AAAA,QACA,gBAAAE;AAAA,QACA,iBAAAG;AAAA,MAAA;AAAA,MAPKY,EAAK,cAAc;AAAA,IAS3B,CAAA,GACH,IAIAb,IAEA,gBAAAe;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,UAAArB;AAAA,QACA,kBAAAK;AAAA,QACA,OAAAI;AAAA,QACA,WAAAd;AAAA,QACA,YAAAO;AAAA,QACA,gBAAAK;AAAA,QACA,mBAAAR;AAAA,QACA,iBAAAK;AAAA,MAAA;AAAA,IACF,IAKF,gBAAAc;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,kBAAAjB;AAAA,QACA,OAAAI;AAAA,QACA,WAAAd;AAAA,QACA,YAAAO;AAAA,QACA,gBAAAK;AAAA,QACA,gBAAAN;AAAA,QACA,mBAAAF;AAAA,QACA,iBAAAK;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"worksheet-navigation.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.tsx"],"sourcesContent":["import type { IWorksheetItemNumberProps } from './worksheet-item-number/worksheet-item-number-types';\nimport type { IWorksheetNavigationProps } from './worksheet-navigation-types';\nimport type { FC } from 'react';\n\nimport { memo, useMemo } from 'react';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport useRemoteUserLocation from '../../user-pointer-pin/hooks/use-user-location';\nimport WorksheetItemNavigation from './worksheet-item-navigation/worksheet-item-navigation';\nimport WorksheetItemNumber from './worksheet-item-number/worksheet-item-number';\nimport WorksheetSectionNavigation from './worksheet-section-navigation/worksheet-section-navigation';\n\nconst WorksheetNavigation: FC<IWorksheetNavigationProps> = memo(\n ({\n placement,\n questions,\n responses,\n activeQuestionIndex,\n lastUnlockedQuestionIndex,\n behavior,\n onItemNumberClick,\n userType,\n summaryVisible,\n }) => {\n const { validation, teacherValidationEnabled, maximumAttempts } = behavior;\n const activeItemNumber = questions[activeQuestionIndex]?.item_number;\n const { peerItemNumber } = useRemoteUserLocation({\n questions,\n activeQuestionIndex,\n userType,\n });\n\n const items = useMemo(\n () =>\n questions.reduce(\n (acc, question, questionIndex) => {\n const { item_number, response_id } = question;\n const item = acc[item_number];\n const isUnlocked =\n userType === 'TEACHER' ? true : questionIndex <= lastUnlockedQuestionIndex;\n\n if (!item) {\n acc.push({\n firstQuestion: question,\n isActive: questionIndex === activeQuestionIndex,\n isUnlocked,\n questionIds: [response_id],\n });\n } else {\n item.isActive = item.isActive || questionIndex === activeQuestionIndex;\n item.isUnlocked = item.isUnlocked || isUnlocked;\n item.questionIds.push(response_id);\n }\n\n return acc;\n },\n [] as IWorksheetItemNumberProps['item'][],\n ),\n [activeQuestionIndex, lastUnlockedQuestionIndex, questions, userType],\n );\n\n if (placement === 'bottom') {\n return (\n <FlexView $flexGapX={1} $flexDirection=\"row\" $flexWrap>\n {items.map(item => (\n <WorksheetItemNumber\n key={item.firstQuestion.response_id}\n responses={responses}\n validation={validation}\n placement={placement}\n item={item}\n onItemNumberClick={onItemNumberClick}\n summaryVisible={summaryVisible}\n maximumAttempts={maximumAttempts}\n />\n ))}\n </FlexView>\n );\n }\n\n if (teacherValidationEnabled) {\n return (\n <WorksheetSectionNavigation\n userType={userType}\n activeItemNumber={activeItemNumber}\n items={items}\n responses={responses}\n validation={validation}\n peerItemNumber={peerItemNumber}\n onItemNumberClick={onItemNumberClick}\n maximumAttempts={maximumAttempts}\n />\n );\n }\n\n return (\n <WorksheetItemNavigation\n activeItemNumber={activeItemNumber}\n items={items}\n responses={responses}\n validation={validation}\n peerItemNumber={peerItemNumber}\n summaryVisible={summaryVisible}\n onItemNumberClick={onItemNumberClick}\n maximumAttempts={maximumAttempts}\n />\n );\n },\n);\n\nexport default WorksheetNavigation;\n"],"names":["WorksheetNavigation","memo","placement","questions","responses","activeQuestionIndex","lastUnlockedQuestionIndex","behavior","onItemNumberClick","userType","summaryVisible","validation","teacherValidationEnabled","maximumAttempts","activeItemNumber","_a","peerItemNumber","useRemoteUserLocation","items","useMemo","acc","question","questionIndex","item_number","response_id","item","isUnlocked","jsx","FlexView","WorksheetItemNumber","WorksheetSectionNavigation","WorksheetItemNavigation"],"mappings":";;;;;;;AAYA,MAAMA,IAAqDC;AAAA,EACzD,CAAC;AAAA,IACC,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,2BAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,MACI;;AACJ,UAAM,EAAE,YAAAC,GAAY,0BAAAC,GAA0B,iBAAAC,EAAA,IAAoBN,GAC5DO,KAAmBC,IAAAZ,EAAUE,CAAmB,MAA7B,gBAAAU,EAAgC,aACnD,EAAE,gBAAAC,EAAe,IAAIC,EAAsB;AAAA,MAC/C,WAAAd;AAAA,MACA,qBAAAE;AAAA,MACA,UAAAI;AAAA,IAAA,CACD,GAEKS,IAAQC;AAAA,MACZ,MACEhB,EAAU;AAAA,QACR,CAACiB,GAAKC,GAAUC,MAAkB;AAC1B,gBAAA,EAAE,aAAAC,GAAa,aAAAC,EAAgB,IAAAH,GAC/BI,IAAOL,EAAIG,CAAW,GACtBG,IACJjB,MAAa,YAAY,KAAOa,KAAiBhB;AAEnD,iBAAKmB,KAQEA,EAAA,WAAWA,EAAK,YAAYH,MAAkBjB,GAC9CoB,EAAA,aAAaA,EAAK,cAAcC,GAChCD,EAAA,YAAY,KAAKD,CAAW,KATjCJ,EAAI,KAAK;AAAA,YACP,eAAeC;AAAA,YACf,UAAUC,MAAkBjB;AAAA,YAC5B,YAAAqB;AAAA,YACA,aAAa,CAACF,CAAW;AAAA,UAAA,CAC1B,GAOIJ;AAAA,QACT;AAAA,QACA,CAAC;AAAA,MACH;AAAA,MACF,CAACf,GAAqBC,GAA2BH,GAAWM,CAAQ;AAAA,IAAA;AAGtE,WAAIP,MAAc,WAEd,gBAAAyB,EAACC,GAAS,EAAA,WAAW,GAAG,gBAAe,OAAM,WAAS,IACnD,UAAMV,EAAA,IAAI,CACTO,MAAA,gBAAAE;AAAA,MAACE;AAAA,MAAA;AAAA,QAEC,WAAAzB;AAAA,QACA,YAAAO;AAAA,QACA,WAAAT;AAAA,QACA,MAAAuB;AAAA,QACA,mBAAAjB;AAAA,QACA,gBAAAE;AAAA,QACA,iBAAAG;AAAA,MAAA;AAAA,MAPKY,EAAK,cAAc;AAAA,IAS3B,CAAA,EACH,CAAA,IAIAb,IAEA,gBAAAe;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,UAAArB;AAAA,QACA,kBAAAK;AAAA,QACA,OAAAI;AAAA,QACA,WAAAd;AAAA,QACA,YAAAO;AAAA,QACA,gBAAAK;AAAA,QACA,mBAAAR;AAAA,QACA,iBAAAK;AAAA,MAAA;AAAA,IAAA,IAMJ,gBAAAc;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,kBAAAjB;AAAA,QACA,OAAAI;AAAA,QACA,WAAAd;AAAA,QACA,YAAAO;AAAA,QACA,gBAAAK;AAAA,QACA,gBAAAN;AAAA,QACA,mBAAAF;AAAA,QACA,iBAAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
@@ -6,7 +6,7 @@ import J from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
6
6
  import y from "../../../../ui/buttons/clickable/clickable.js";
7
7
  import K from "../../../../ui/layout/flex-view.js";
8
8
  import { TOP_NAVIGATION_ARROW_WIDTH as O } from "../../constants.js";
9
- import { getNavigationSectionBackgroundColor as S, getNavigationSectionName as Y, getNavigationSectionIcon as Z } from "../../worksheet-helpers.js";
9
+ import { getNavigationSectionBackgroundColor as S, getNavigationSectionIcon as Y, getNavigationSectionName as Z } from "../../worksheet-helpers.js";
10
10
  import tt from "../worksheet-item-number/worksheet-item-number.js";
11
11
  import { Container as et, LeftContainerBackground as it, RightContainerBackground as nt, SectionWrapper as ot, RightArrowWrapper as rt, LeftArrowWrapper as st } from "../worksheet-navigation-styled.js";
12
12
  const wt = X((B) => {
@@ -73,7 +73,7 @@ const wt = X((B) => {
73
73
  ),
74
74
  /* @__PURE__ */ i(K, { ref: g, $flexDirection: "row", children: c.map(({ sectionName: t, items: e }, o) => {
75
75
  var u, f;
76
- const r = Z(t), a = Y(t), n = (u = e[0]) == null ? void 0 : u.firstQuestion;
76
+ const r = Y(t), a = Z(t), n = (u = e[0]) == null ? void 0 : u.firstQuestion;
77
77
  return (n == null ? void 0 : n.is_optional) && ((f = s[n.response_id]) == null ? void 0 : f.assignStatus) === "skipped" ? null : /* @__PURE__ */ E(
78
78
  ot,
79
79
  {
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-section-navigation.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.tsx"],"sourcesContent":["import type { TSectionName } from '../../worksheet-types';\nimport type { IWorksheetItemNavigationProps } from '../worksheet-navigation-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport LeftIcon from '../../../../../assets/line-icons/icons/left';\nimport RightIcon from '../../../../../assets/line-icons/icons/right';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport { TOP_NAVIGATION_ARROW_WIDTH } from '../../constants';\nimport {\n getNavigationSectionBackgroundColor,\n getNavigationSectionIcon,\n getNavigationSectionName,\n} from '../../worksheet-helpers';\nimport WorksheetItemNumber from '../worksheet-item-number/worksheet-item-number';\nimport * as Styled from '../worksheet-navigation-styled';\n\nconst WorksheetSectionNavigation: FC<IWorksheetItemNavigationProps> = memo(props => {\n const {\n activeItemNumber,\n items,\n responses,\n validation,\n userType,\n peerItemNumber,\n onItemNumberClick,\n maximumAttempts,\n } = props;\n const [isOverflowing, setIsOverflowing] = useState(false);\n const [visibleSection, setVisibleSection] = useState<'left' | 'right'>('left');\n const containerRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const sections = useMemo(() => {\n return items.reduce(\n (acc, item, itemIndex) => {\n const { section_name } = item.firstQuestion;\n const prevItemSectionName = items[itemIndex - 1]?.firstQuestion.section_name;\n const lastSection = acc[acc.length - 1];\n\n if (section_name === 'overview') {\n return acc;\n }\n\n if (section_name !== prevItemSectionName) {\n if (\n !item.firstQuestion.is_optional ||\n userType === 'TEACHER' ||\n responses[item.firstQuestion.response_id]?.assignStatus === 'assigned'\n ) {\n return [\n ...acc,\n {\n sectionName: section_name,\n items: [item],\n },\n ];\n }\n\n return acc;\n }\n\n if (\n !item.firstQuestion.is_optional ||\n userType === 'TEACHER' ||\n responses[item.firstQuestion.response_id]?.assignStatus === 'assigned'\n ) {\n lastSection?.items.push(item);\n }\n\n return acc;\n },\n [] as Array<{\n sectionName?: TSectionName;\n items: (typeof items)[number][];\n }>,\n );\n }, [items, responses, userType]);\n const visibleItemsCount = useMemo(\n () => sections.reduce((acc, section) => acc + section.items.length, 0),\n [sections],\n );\n const activeSectionName = activeItemNumber\n ? items[activeItemNumber]?.firstQuestion.section_name\n : undefined;\n\n const toggleVisibleSection = useCallback(() => {\n setVisibleSection(prevVisibleSection => (prevVisibleSection === 'left' ? 'right' : 'left'));\n }, []);\n\n useLayoutEffect(() => {\n const containerEl = containerRef.current;\n const contentEl = contentRef.current;\n\n if (containerEl && contentEl) {\n if (contentEl.clientWidth > containerEl.clientWidth) {\n setIsOverflowing(true);\n }\n }\n }, [visibleItemsCount]);\n\n useEffect(() => {\n const contentEl = contentRef.current;\n\n if (activeSectionName !== undefined && isOverflowing && contentEl) {\n const sectionEl = contentEl.querySelector(`.worksheet-section-${activeSectionName}`);\n\n if (sectionEl) {\n setVisibleSection(prevVisibleSection => {\n const { left, right } = sectionEl.getBoundingClientRect();\n\n if (\n prevVisibleSection === 'left' &&\n right + TOP_NAVIGATION_ARROW_WIDTH + 16 > contentEl.clientWidth\n ) {\n return 'right';\n }\n\n if (prevVisibleSection === 'right' && left - TOP_NAVIGATION_ARROW_WIDTH - 16 < 0) {\n return 'left';\n }\n\n return prevVisibleSection;\n });\n }\n }\n }, [activeSectionName, isOverflowing]);\n\n return (\n <Styled.Container\n ref={containerRef}\n $alignItems={isOverflowing ? `flex-${visibleSection === 'left' ? 'start' : 'end'}` : 'center'}\n >\n <Styled.LeftContainerBackground\n $background={getNavigationSectionBackgroundColor(sections[0]?.sectionName)}\n />\n <Styled.RightContainerBackground\n $background={getNavigationSectionBackgroundColor(\n sections[sections.length - 1]?.sectionName,\n )}\n />\n <FlexView ref={contentRef} $flexDirection=\"row\">\n {sections.map(({ sectionName, items: sectionItems }, sectionIndex) => {\n const SectionIcon = getNavigationSectionIcon(sectionName);\n const sectionTooltip = getNavigationSectionName(sectionName);\n const firstQuestion = sectionItems[0]?.firstQuestion;\n const sectionSkipped =\n firstQuestion?.is_optional &&\n responses[firstQuestion.response_id]?.assignStatus === 'skipped';\n\n if (sectionSkipped) {\n return null;\n }\n\n return (\n <Styled.SectionWrapper\n key={sectionName}\n className={`worksheet-section-${sectionName}`}\n $background={getNavigationSectionBackgroundColor(sectionName)}\n $hasBorder={sectionIndex > 0}\n $gutterX={1}\n $flexDirection=\"row\"\n $flexGapX={0.75}\n >\n <ArrowTooltip tooltipItem={sectionTooltip} position=\"bottom\" renderAs=\"primary\">\n <SectionIcon width={24} height={24} />\n </ArrowTooltip>\n {sectionItems.map(item => {\n const {\n firstQuestion: { response_id, item_number, is_optional },\n } = item;\n const isSkipped = is_optional\n ? responses[response_id]?.assignStatus === 'skipped'\n : false;\n\n if (isSkipped) {\n return null;\n }\n\n return (\n <WorksheetItemNumber\n key={response_id}\n item={item}\n responses={responses}\n validation={validation}\n placement=\"top\"\n onItemNumberClick={onItemNumberClick}\n canShowUserPin={item_number === peerItemNumber}\n isOptional={is_optional}\n teacherValidationEnabled\n maximumAttempts={maximumAttempts}\n />\n );\n })}\n </Styled.SectionWrapper>\n );\n })}\n </FlexView>\n {isOverflowing && visibleSection === 'left' && (\n <Clickable label=\"Worksheet Nav Right Arrow\" onClick={toggleVisibleSection}>\n <Styled.RightArrowWrapper $justifyContent=\"center\">\n <RightIcon width={24} height={24} />\n </Styled.RightArrowWrapper>\n </Clickable>\n )}\n {isOverflowing && visibleSection === 'right' && (\n <Clickable label=\"Worksheet Nav Left Arrow\" onClick={toggleVisibleSection}>\n <Styled.LeftArrowWrapper $justifyContent=\"center\">\n <LeftIcon width={24} height={24} />\n </Styled.LeftArrowWrapper>\n </Clickable>\n )}\n </Styled.Container>\n );\n});\n\nexport default WorksheetSectionNavigation;\n"],"names":["WorksheetSectionNavigation","memo","props","activeItemNumber","items","responses","validation","userType","peerItemNumber","onItemNumberClick","maximumAttempts","isOverflowing","setIsOverflowing","useState","visibleSection","setVisibleSection","containerRef","useRef","contentRef","sections","useMemo","acc","item","itemIndex","section_name","prevItemSectionName","_a","lastSection","_b","_c","visibleItemsCount","section","activeSectionName","toggleVisibleSection","useCallback","prevVisibleSection","useLayoutEffect","containerEl","contentEl","useEffect","sectionEl","left","right","TOP_NAVIGATION_ARROW_WIDTH","jsxs","Styled.Container","jsx","Styled.LeftContainerBackground","getNavigationSectionBackgroundColor","Styled.RightContainerBackground","FlexView","sectionName","sectionItems","sectionIndex","SectionIcon","getNavigationSectionIcon","sectionTooltip","getNavigationSectionName","firstQuestion","Styled.SectionWrapper","ArrowTooltip","response_id","item_number","is_optional","WorksheetItemNumber","Clickable","Styled.RightArrowWrapper","RightIcon","Styled.LeftArrowWrapper","LeftIcon"],"mappings":"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"}
1
+ {"version":3,"file":"worksheet-section-navigation.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.tsx"],"sourcesContent":["import type { TSectionName } from '../../worksheet-types';\nimport type { IWorksheetItemNavigationProps } from '../worksheet-navigation-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport LeftIcon from '../../../../../assets/line-icons/icons/left';\nimport RightIcon from '../../../../../assets/line-icons/icons/right';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport { TOP_NAVIGATION_ARROW_WIDTH } from '../../constants';\nimport {\n getNavigationSectionBackgroundColor,\n getNavigationSectionIcon,\n getNavigationSectionName,\n} from '../../worksheet-helpers';\nimport WorksheetItemNumber from '../worksheet-item-number/worksheet-item-number';\nimport * as Styled from '../worksheet-navigation-styled';\n\nconst WorksheetSectionNavigation: FC<IWorksheetItemNavigationProps> = memo(props => {\n const {\n activeItemNumber,\n items,\n responses,\n validation,\n userType,\n peerItemNumber,\n onItemNumberClick,\n maximumAttempts,\n } = props;\n const [isOverflowing, setIsOverflowing] = useState(false);\n const [visibleSection, setVisibleSection] = useState<'left' | 'right'>('left');\n const containerRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const sections = useMemo(() => {\n return items.reduce(\n (acc, item, itemIndex) => {\n const { section_name } = item.firstQuestion;\n const prevItemSectionName = items[itemIndex - 1]?.firstQuestion.section_name;\n const lastSection = acc[acc.length - 1];\n\n if (section_name === 'overview') {\n return acc;\n }\n\n if (section_name !== prevItemSectionName) {\n if (\n !item.firstQuestion.is_optional ||\n userType === 'TEACHER' ||\n responses[item.firstQuestion.response_id]?.assignStatus === 'assigned'\n ) {\n return [\n ...acc,\n {\n sectionName: section_name,\n items: [item],\n },\n ];\n }\n\n return acc;\n }\n\n if (\n !item.firstQuestion.is_optional ||\n userType === 'TEACHER' ||\n responses[item.firstQuestion.response_id]?.assignStatus === 'assigned'\n ) {\n lastSection?.items.push(item);\n }\n\n return acc;\n },\n [] as Array<{\n sectionName?: TSectionName;\n items: (typeof items)[number][];\n }>,\n );\n }, [items, responses, userType]);\n const visibleItemsCount = useMemo(\n () => sections.reduce((acc, section) => acc + section.items.length, 0),\n [sections],\n );\n const activeSectionName = activeItemNumber\n ? items[activeItemNumber]?.firstQuestion.section_name\n : undefined;\n\n const toggleVisibleSection = useCallback(() => {\n setVisibleSection(prevVisibleSection => (prevVisibleSection === 'left' ? 'right' : 'left'));\n }, []);\n\n useLayoutEffect(() => {\n const containerEl = containerRef.current;\n const contentEl = contentRef.current;\n\n if (containerEl && contentEl) {\n if (contentEl.clientWidth > containerEl.clientWidth) {\n setIsOverflowing(true);\n }\n }\n }, [visibleItemsCount]);\n\n useEffect(() => {\n const contentEl = contentRef.current;\n\n if (activeSectionName !== undefined && isOverflowing && contentEl) {\n const sectionEl = contentEl.querySelector(`.worksheet-section-${activeSectionName}`);\n\n if (sectionEl) {\n setVisibleSection(prevVisibleSection => {\n const { left, right } = sectionEl.getBoundingClientRect();\n\n if (\n prevVisibleSection === 'left' &&\n right + TOP_NAVIGATION_ARROW_WIDTH + 16 > contentEl.clientWidth\n ) {\n return 'right';\n }\n\n if (prevVisibleSection === 'right' && left - TOP_NAVIGATION_ARROW_WIDTH - 16 < 0) {\n return 'left';\n }\n\n return prevVisibleSection;\n });\n }\n }\n }, [activeSectionName, isOverflowing]);\n\n return (\n <Styled.Container\n ref={containerRef}\n $alignItems={isOverflowing ? `flex-${visibleSection === 'left' ? 'start' : 'end'}` : 'center'}\n >\n <Styled.LeftContainerBackground\n $background={getNavigationSectionBackgroundColor(sections[0]?.sectionName)}\n />\n <Styled.RightContainerBackground\n $background={getNavigationSectionBackgroundColor(\n sections[sections.length - 1]?.sectionName,\n )}\n />\n <FlexView ref={contentRef} $flexDirection=\"row\">\n {sections.map(({ sectionName, items: sectionItems }, sectionIndex) => {\n const SectionIcon = getNavigationSectionIcon(sectionName);\n const sectionTooltip = getNavigationSectionName(sectionName);\n const firstQuestion = sectionItems[0]?.firstQuestion;\n const sectionSkipped =\n firstQuestion?.is_optional &&\n responses[firstQuestion.response_id]?.assignStatus === 'skipped';\n\n if (sectionSkipped) {\n return null;\n }\n\n return (\n <Styled.SectionWrapper\n key={sectionName}\n className={`worksheet-section-${sectionName}`}\n $background={getNavigationSectionBackgroundColor(sectionName)}\n $hasBorder={sectionIndex > 0}\n $gutterX={1}\n $flexDirection=\"row\"\n $flexGapX={0.75}\n >\n <ArrowTooltip tooltipItem={sectionTooltip} position=\"bottom\" renderAs=\"primary\">\n <SectionIcon width={24} height={24} />\n </ArrowTooltip>\n {sectionItems.map(item => {\n const {\n firstQuestion: { response_id, item_number, is_optional },\n } = item;\n const isSkipped = is_optional\n ? responses[response_id]?.assignStatus === 'skipped'\n : false;\n\n if (isSkipped) {\n return null;\n }\n\n return (\n <WorksheetItemNumber\n key={response_id}\n item={item}\n responses={responses}\n validation={validation}\n placement=\"top\"\n onItemNumberClick={onItemNumberClick}\n canShowUserPin={item_number === peerItemNumber}\n isOptional={is_optional}\n teacherValidationEnabled\n maximumAttempts={maximumAttempts}\n />\n );\n })}\n </Styled.SectionWrapper>\n );\n })}\n </FlexView>\n {isOverflowing && visibleSection === 'left' && (\n <Clickable label=\"Worksheet Nav Right Arrow\" onClick={toggleVisibleSection}>\n <Styled.RightArrowWrapper $justifyContent=\"center\">\n <RightIcon width={24} height={24} />\n </Styled.RightArrowWrapper>\n </Clickable>\n )}\n {isOverflowing && visibleSection === 'right' && (\n <Clickable label=\"Worksheet Nav Left Arrow\" onClick={toggleVisibleSection}>\n <Styled.LeftArrowWrapper $justifyContent=\"center\">\n <LeftIcon width={24} height={24} />\n </Styled.LeftArrowWrapper>\n </Clickable>\n )}\n </Styled.Container>\n );\n});\n\nexport default WorksheetSectionNavigation;\n"],"names":["WorksheetSectionNavigation","memo","props","activeItemNumber","items","responses","validation","userType","peerItemNumber","onItemNumberClick","maximumAttempts","isOverflowing","setIsOverflowing","useState","visibleSection","setVisibleSection","containerRef","useRef","contentRef","sections","useMemo","acc","item","itemIndex","section_name","prevItemSectionName","_a","lastSection","_b","_c","visibleItemsCount","section","activeSectionName","toggleVisibleSection","useCallback","prevVisibleSection","useLayoutEffect","containerEl","contentEl","useEffect","sectionEl","left","right","TOP_NAVIGATION_ARROW_WIDTH","jsxs","Styled.Container","jsx","Styled.LeftContainerBackground","getNavigationSectionBackgroundColor","Styled.RightContainerBackground","FlexView","sectionName","sectionItems","sectionIndex","SectionIcon","getNavigationSectionIcon","sectionTooltip","getNavigationSectionName","firstQuestion","Styled.SectionWrapper","ArrowTooltip","response_id","item_number","is_optional","WorksheetItemNumber","Clickable","Styled.RightArrowWrapper","RightIcon","Styled.LeftArrowWrapper","LeftIcon"],"mappings":"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"}
@@ -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,EAAA;AACV,EAAA,CACF,EACF,CAAA,GAGaD,IAAAW,EAAKb,CAAK;"}
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 +1 @@
1
- {"version":3,"file":"sheet-locked.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-permissions/sheet-locked.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\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 SheetLocked = ({ onHomeClick }: { onHomeClick: () => void }) => {\n const {\n layout: { gutter },\n } = useTheme();\n\n return (\n <BaseWrapper $background=\"BLACK_75\">\n <FlexView $alignItems=\"center\">\n <Separator heightX={4} />\n <img\n alt=\"locked-img\"\n src={ILLUSTRATIONS.LOCKED}\n width={gutter * 12.5}\n height={gutter * 12.5}\n />\n <Text $renderAs=\"h6\" $color=\"WHITE\">\n The sheet is locked. Come back later\n </Text>\n <Separator heightX={1} />\n <Button label=\"Home\" onClick={onHomeClick} renderAs=\"primary\" size=\"regular\" widthX={14} />\n </FlexView>\n </BaseWrapper>\n );\n};\n\nexport default memo(SheetLocked);\n"],"names":["SheetLocked","onHomeClick","gutter","useTheme","BaseWrapper","jsxs","FlexView","jsx","Separator","ILLUSTRATIONS","Text","Button","sheetLocked","memo"],"mappings":";;;;;;;;;AAUA,MAAMA,IAAc,CAAC,EAAE,aAAAC,QAA+C;AAC9D,QAAA;AAAA,IACJ,QAAQ,EAAE,QAAAC,EAAO;AAAA,MACfC,EAAS;AAEb,2BACGC,GAAY,EAAA,aAAY,YACvB,UAAC,gBAAAC,EAAAC,GAAA,EAAS,aAAY,UACpB,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAD;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAI;AAAA,QACJ,KAAKE,EAAc;AAAA,QACnB,OAAOP,IAAS;AAAA,QAChB,QAAQA,IAAS;AAAA,MAAA;AAAA,IACnB;AAAA,sBACCQ,GAAK,EAAA,WAAU,MAAK,QAAO,SAAQ,UAEpC,wCAAA;AAAA,IACA,gBAAAH,EAACC,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAD,EAACI,GAAO,EAAA,OAAM,QAAO,SAASV,GAAa,UAAS,WAAU,MAAK,WAAU,QAAQ,GAAI,CAAA;AAAA,EAAA,EAAA,CAC3F,EACF,CAAA;AAEJ,GAEeW,IAAAC,EAAKb,CAAW;"}
1
+ {"version":3,"file":"sheet-locked.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-permissions/sheet-locked.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\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 SheetLocked = ({ onHomeClick }: { onHomeClick: () => void }) => {\n const {\n layout: { gutter },\n } = useTheme();\n\n return (\n <BaseWrapper $background=\"BLACK_75\">\n <FlexView $alignItems=\"center\">\n <Separator heightX={4} />\n <img\n alt=\"locked-img\"\n src={ILLUSTRATIONS.LOCKED}\n width={gutter * 12.5}\n height={gutter * 12.5}\n />\n <Text $renderAs=\"h6\" $color=\"WHITE\">\n The sheet is locked. Come back later\n </Text>\n <Separator heightX={1} />\n <Button label=\"Home\" onClick={onHomeClick} renderAs=\"primary\" size=\"regular\" widthX={14} />\n </FlexView>\n </BaseWrapper>\n );\n};\n\nexport default memo(SheetLocked);\n"],"names":["SheetLocked","onHomeClick","gutter","useTheme","BaseWrapper","jsxs","FlexView","jsx","Separator","ILLUSTRATIONS","Text","Button","sheetLocked","memo"],"mappings":";;;;;;;;;AAUA,MAAMA,IAAc,CAAC,EAAE,aAAAC,QAA+C;AAC9D,QAAA;AAAA,IACJ,QAAQ,EAAE,QAAAC,EAAO;AAAA,MACfC,EAAS;AAEb,2BACGC,GAAY,EAAA,aAAY,YACvB,UAAC,gBAAAC,EAAAC,GAAA,EAAS,aAAY,UACpB,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAD;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAI;AAAA,QACJ,KAAKE,EAAc;AAAA,QACnB,OAAOP,IAAS;AAAA,QAChB,QAAQA,IAAS;AAAA,MAAA;AAAA,IACnB;AAAA,sBACCQ,GAAK,EAAA,WAAU,MAAK,QAAO,SAAQ,UAEpC,wCAAA;AAAA,IACA,gBAAAH,EAACC,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAD,EAACI,GAAO,EAAA,OAAM,QAAO,SAASV,GAAa,UAAS,WAAU,MAAK,WAAU,QAAQ,GAAI,CAAA;AAAA,EAAA,EAC3F,CAAA,EACF,CAAA;AAEJ,GAEeW,IAAAC,EAAKb,CAAW;"}
@@ -1 +1 @@
1
- {"version":3,"file":"header-tags.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/header-tags.tsx"],"sourcesContent":["import type { TInstructorStimulus, TItemType } from '../../worksheet-types';\nimport type { TWorksheetQuestionPaperColor } from '../worksheet-question-types';\n\nimport { memo, useMemo, type FC } from 'react';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Separator from '../../../../ui/separator/separator';\nimport Text from '../../../../ui/text/text';\nimport { getQuestionBorderColor } from '../../worksheet-helpers';\n\ninterface IHeaderTag {\n itemType?: TItemType;\n paperColor?: TWorksheetQuestionPaperColor;\n instructorStimulus?: TInstructorStimulus;\n}\n\nconst getItemType = (itemType?: string, instructorStimulus?: TInstructorStimulus) => {\n switch (itemType) {\n case 'learning-we-do':\n return 'We Do';\n case 'learning-your-turn':\n return 'Your Turn';\n case 'learning-explore':\n return 'Explore';\n }\n\n switch (instructorStimulus?.toLowerCase()) {\n case 'try':\n return 'Try';\n case 'learn':\n return 'Learn';\n case 'apply':\n return 'Apply';\n }\n\n return null;\n};\n\nconst HeaderTag: FC<IHeaderTag> = memo(({ itemType, paperColor, instructorStimulus }) => {\n const itemTypeLabel = useMemo(\n () => getItemType(itemType, instructorStimulus),\n [instructorStimulus, itemType],\n );\n\n if (itemTypeLabel) {\n return (\n <>\n <Separator width={4} />\n <FlexView\n $borderRadius={12}\n $background={getQuestionBorderColor(paperColor ?? 'yellow', true)}\n $gutter={8}\n $height=\"fit-content\"\n >\n <Separator height={2} />\n <Text $renderAs=\"eyebrow2\">{itemTypeLabel}</Text>\n </FlexView>\n </>\n );\n }\n\n return null;\n});\n\nexport default HeaderTag;\n"],"names":["getItemType","itemType","instructorStimulus","HeaderTag","memo","paperColor","itemTypeLabel","useMemo","jsxs","Fragment","jsx","Separator","FlexView","getQuestionBorderColor","Text"],"mappings":";;;;;;AAgBA,MAAMA,IAAc,CAACC,GAAmBC,MAA6C;AACnF,UAAQD,GAAU;AAAA,IAChB,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,EAAA;AAGH,UAAAC,KAAA,gBAAAA,EAAoB,eAAe;AAAA,IACzC,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,EAAA;AAGJ,SAAA;AACT,GAEMC,IAA4BC,EAAK,CAAC,EAAE,UAAAH,GAAU,YAAAI,GAAY,oBAAAH,QAAyB;AACvF,QAAMI,IAAgBC;AAAA,IACpB,MAAMP,EAAYC,GAAUC,CAAkB;AAAA,IAC9C,CAACA,GAAoBD,CAAQ;AAAA,EAC/B;AAEA,SAAIK,IAGE,gBAAAE,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,OAAO,EAAG,CAAA;AAAA,IACrB,gBAAAH;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,eAAe;AAAA,QACf,aAAaC,EAAuBR,KAAc,UAAU,EAAI;AAAA,QAChE,SAAS;AAAA,QACT,SAAQ;AAAA,QAER,UAAA;AAAA,UAAC,gBAAAK,EAAAC,GAAA,EAAU,QAAQ,EAAG,CAAA;AAAA,UACrB,gBAAAD,EAAAI,GAAA,EAAK,WAAU,YAAY,UAAcR,EAAA,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAC5C,GACF,IAIG;AACT,CAAC;"}
1
+ {"version":3,"file":"header-tags.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/header-tags.tsx"],"sourcesContent":["import type { TInstructorStimulus, TItemType } from '../../worksheet-types';\nimport type { TWorksheetQuestionPaperColor } from '../worksheet-question-types';\n\nimport { memo, useMemo, type FC } from 'react';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Separator from '../../../../ui/separator/separator';\nimport Text from '../../../../ui/text/text';\nimport { getQuestionBorderColor } from '../../worksheet-helpers';\n\ninterface IHeaderTag {\n itemType?: TItemType;\n paperColor?: TWorksheetQuestionPaperColor;\n instructorStimulus?: TInstructorStimulus;\n}\n\nconst getItemType = (itemType?: string, instructorStimulus?: TInstructorStimulus) => {\n switch (itemType) {\n case 'learning-we-do':\n return 'We Do';\n case 'learning-your-turn':\n return 'Your Turn';\n case 'learning-explore':\n return 'Explore';\n }\n\n switch (instructorStimulus?.toLowerCase()) {\n case 'try':\n return 'Try';\n case 'learn':\n return 'Learn';\n case 'apply':\n return 'Apply';\n }\n\n return null;\n};\n\nconst HeaderTag: FC<IHeaderTag> = memo(({ itemType, paperColor, instructorStimulus }) => {\n const itemTypeLabel = useMemo(\n () => getItemType(itemType, instructorStimulus),\n [instructorStimulus, itemType],\n );\n\n if (itemTypeLabel) {\n return (\n <>\n <Separator width={4} />\n <FlexView\n $borderRadius={12}\n $background={getQuestionBorderColor(paperColor ?? 'yellow', true)}\n $gutter={8}\n $height=\"fit-content\"\n >\n <Separator height={2} />\n <Text $renderAs=\"eyebrow2\">{itemTypeLabel}</Text>\n </FlexView>\n </>\n );\n }\n\n return null;\n});\n\nexport default HeaderTag;\n"],"names":["getItemType","itemType","instructorStimulus","HeaderTag","memo","paperColor","itemTypeLabel","useMemo","jsxs","Fragment","jsx","Separator","FlexView","getQuestionBorderColor","Text"],"mappings":";;;;;;AAgBA,MAAMA,IAAc,CAACC,GAAmBC,MAA6C;AACnF,UAAQD,GAAU;AAAA,IAChB,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,EACX;AAEQ,UAAAC,KAAA,gBAAAA,EAAoB,eAAe;AAAA,IACzC,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,IACT,KAAK;AACI,aAAA;AAAA,EACX;AAEO,SAAA;AACT,GAEMC,IAA4BC,EAAK,CAAC,EAAE,UAAAH,GAAU,YAAAI,GAAY,oBAAAH,QAAyB;AACvF,QAAMI,IAAgBC;AAAA,IACpB,MAAMP,EAAYC,GAAUC,CAAkB;AAAA,IAC9C,CAACA,GAAoBD,CAAQ;AAAA,EAAA;AAG/B,SAAIK,IAGE,gBAAAE,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAU,OAAO,EAAG,CAAA;AAAA,IACrB,gBAAAH;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,eAAe;AAAA,QACf,aAAaC,EAAuBR,KAAc,UAAU,EAAI;AAAA,QAChE,SAAS;AAAA,QACT,SAAQ;AAAA,QAER,UAAA;AAAA,UAAC,gBAAAK,EAAAC,GAAA,EAAU,QAAQ,EAAG,CAAA;AAAA,UACrB,gBAAAD,EAAAI,GAAA,EAAK,WAAU,YAAY,UAAcR,GAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAC5C;AAAA,EACF,EAAA,CAAA,IAIG;AACT,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/header.tsx"],"sourcesContent":["import type { IQuestionHeaderProps } from '../worksheet-question-types';\n\nimport { memo, useCallback, useMemo, type FC } from 'react';\n\nimport BookmarkIcon from '../../../../../assets/line-icons/icons/bookmark';\nimport BookmarkStrokeIcon from '../../../../../assets/line-icons/icons/bookmark-stroke-icon';\nimport MistakeIcon from '../../../../../assets/line-icons/icons/mistake';\nimport Skip2Icon from '../../../../../assets/line-icons/icons/skip2';\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 { TOP_NAVIGATION_HEIGHT } from '../../constants';\nimport { getQuestionBorderColor } from '../../worksheet-helpers';\nimport * as Styled from '../worksheet-question-styled';\nimport HeaderTag from './header-tags';\nimport ValidatedAnimation from './validated-animation';\n\nconst QuestionHeader: FC<IQuestionHeaderProps> = memo(\n ({\n paperColor,\n actionbarHeight,\n behavior,\n onMarkForReview,\n question,\n response,\n userType,\n onResolveDoubt,\n canResolveDoubt,\n layout,\n worksheetCompleted,\n }) => {\n const { topOffset, questionsScrollable, navigationBar } = layout;\n const teacherValidated = response?.validatedByTeacher ?? false;\n const markedForReview = response?.markedForReview ?? false;\n const attempts = (response?.attemptsHistory || []).length ?? 0;\n const { canMarkForReview, teacherValidationEnabled } = behavior;\n const {\n item_display_number,\n question_number,\n total_questions: totalQuestions,\n response_id: responseId,\n item_type: itemType,\n instructor_stimulus: instructorStimulus,\n } = question;\n\n const questionNumber = `${item_display_number}${\n totalQuestions > 1 ? String.fromCharCode('a'.charCodeAt(0) + question_number) : ''\n }`;\n\n const handleMarkForReview = useCallback(\n () => onMarkForReview(responseId, true),\n [onMarkForReview, responseId],\n );\n\n const handleUnmarkForReview = useCallback(\n () => onMarkForReview(responseId, false),\n [onMarkForReview, responseId],\n );\n\n const canShowResolveButton = useMemo(() => {\n const { score, max_score: maxScore } = response?.score || {};\n\n if (worksheetCompleted && onResolveDoubt && !response?.doubtResolved) {\n if (response?.skipped) {\n return true;\n }\n\n if (response?.responseEdited && score !== maxScore) {\n return true;\n }\n\n return false;\n }\n }, [onResolveDoubt, response, worksheetCompleted]);\n\n const handleDoubtResolve = useCallback(() => {\n if (onResolveDoubt) {\n onResolveDoubt(responseId);\n }\n }, [onResolveDoubt, responseId]);\n\n if (questionsScrollable || !canMarkForReview) {\n return (\n <Styled.QuestionHeaderWrapper\n $flexDirection=\"row\"\n $topOffset={topOffset + navigationBar === 'top' ? TOP_NAVIGATION_HEIGHT : 0}\n $actionbarHeight={actionbarHeight}\n $justifyContent=\"space-between\"\n >\n <FlexView $flexDirection=\"row\">\n <FlexView\n $position=\"relative\"\n $background={getQuestionBorderColor(paperColor ?? 'yellow', true)}\n $widthX={2.5}\n $heightX={2.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadiusX={0.5}\n $marginBottom={18}\n >\n <Text $renderAs=\"body1Medium\">{questionNumber}</Text>\n {teacherValidationEnabled && (\n <Styled.QuestionValidationAnimationWrapper>\n <ValidatedAnimation validated={teacherValidated} />\n </Styled.QuestionValidationAnimationWrapper>\n )}\n </FlexView>\n {canShowResolveButton && (\n <FlexView $gutterX={0.5} $gapX={0.2}>\n <Button\n renderAs=\"secondary\"\n label={`Mark as Resolved`}\n onClick={handleDoubtResolve}\n disabled={!canResolveDoubt}\n size=\"xsmall\"\n iconPosition=\"left\"\n Icon={response?.skipped ? Skip2Icon : MistakeIcon}\n />\n </FlexView>\n )}\n <Separator width={5} />\n {!!attempts && userType === 'TEACHER' && (\n <FlexView\n $flexDirection=\"row\"\n $background=\"WHITE\"\n $flexGapX={0.25}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadiusX={0.5}\n $marginBottom={18}\n $gutterX={0.5}\n >\n <Text $renderAs=\"body1\">Attempts:</Text>\n <Text $renderAs=\"body1Medium\">{attempts}</Text>\n </FlexView>\n )}\n <HeaderTag\n itemType={itemType}\n instructorStimulus={instructorStimulus}\n paperColor={paperColor}\n />\n </FlexView>\n </Styled.QuestionHeaderWrapper>\n );\n }\n\n return (\n <Styled.ItemHeader\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $background=\"YELLOW_1\"\n $marginBottom={18}\n >\n <Styled.ItemHeaderTag>\n <Text $renderAs=\"eyebrow1\">Question {item_display_number}</Text>\n </Styled.ItemHeaderTag>\n {canMarkForReview && (\n <Button\n renderAs=\"secondary\"\n label={`Mark${markedForReview ? 'ed' : ''} for review`}\n onClick={markedForReview ? handleUnmarkForReview : handleMarkForReview}\n size=\"xsmall\"\n iconPosition=\"left\"\n Icon={markedForReview ? BookmarkIcon : BookmarkStrokeIcon}\n />\n )}\n </Styled.ItemHeader>\n );\n },\n);\n\nexport default QuestionHeader;\n"],"names":["QuestionHeader","memo","paperColor","actionbarHeight","behavior","onMarkForReview","question","response","userType","onResolveDoubt","canResolveDoubt","layout","worksheetCompleted","topOffset","questionsScrollable","navigationBar","teacherValidated","markedForReview","attempts","canMarkForReview","teacherValidationEnabled","item_display_number","question_number","totalQuestions","responseId","itemType","instructorStimulus","questionNumber","handleMarkForReview","useCallback","handleUnmarkForReview","canShowResolveButton","useMemo","score","maxScore","handleDoubtResolve","jsx","Styled.QuestionHeaderWrapper","TOP_NAVIGATION_HEIGHT","jsxs","FlexView","getQuestionBorderColor","Text","Styled.QuestionValidationAnimationWrapper","ValidatedAnimation","Button","Skip2Icon","MistakeIcon","Separator","HeaderTag","Styled.ItemHeader","Styled.ItemHeaderTag","BookmarkIcon","BookmarkStrokeIcon"],"mappings":"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"}
1
+ {"version":3,"file":"header.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/header.tsx"],"sourcesContent":["import type { IQuestionHeaderProps } from '../worksheet-question-types';\n\nimport { memo, useCallback, useMemo, type FC } from 'react';\n\nimport BookmarkIcon from '../../../../../assets/line-icons/icons/bookmark';\nimport BookmarkStrokeIcon from '../../../../../assets/line-icons/icons/bookmark-stroke-icon';\nimport MistakeIcon from '../../../../../assets/line-icons/icons/mistake';\nimport Skip2Icon from '../../../../../assets/line-icons/icons/skip2';\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 { TOP_NAVIGATION_HEIGHT } from '../../constants';\nimport { getQuestionBorderColor } from '../../worksheet-helpers';\nimport * as Styled from '../worksheet-question-styled';\nimport HeaderTag from './header-tags';\nimport ValidatedAnimation from './validated-animation';\n\nconst QuestionHeader: FC<IQuestionHeaderProps> = memo(\n ({\n paperColor,\n actionbarHeight,\n behavior,\n onMarkForReview,\n question,\n response,\n userType,\n onResolveDoubt,\n canResolveDoubt,\n layout,\n worksheetCompleted,\n }) => {\n const { topOffset, questionsScrollable, navigationBar } = layout;\n const teacherValidated = response?.validatedByTeacher ?? false;\n const markedForReview = response?.markedForReview ?? false;\n const attempts = (response?.attemptsHistory || []).length ?? 0;\n const { canMarkForReview, teacherValidationEnabled } = behavior;\n const {\n item_display_number,\n question_number,\n total_questions: totalQuestions,\n response_id: responseId,\n item_type: itemType,\n instructor_stimulus: instructorStimulus,\n } = question;\n\n const questionNumber = `${item_display_number}${\n totalQuestions > 1 ? String.fromCharCode('a'.charCodeAt(0) + question_number) : ''\n }`;\n\n const handleMarkForReview = useCallback(\n () => onMarkForReview(responseId, true),\n [onMarkForReview, responseId],\n );\n\n const handleUnmarkForReview = useCallback(\n () => onMarkForReview(responseId, false),\n [onMarkForReview, responseId],\n );\n\n const canShowResolveButton = useMemo(() => {\n const { score, max_score: maxScore } = response?.score || {};\n\n if (worksheetCompleted && onResolveDoubt && !response?.doubtResolved) {\n if (response?.skipped) {\n return true;\n }\n\n if (response?.responseEdited && score !== maxScore) {\n return true;\n }\n\n return false;\n }\n }, [onResolveDoubt, response, worksheetCompleted]);\n\n const handleDoubtResolve = useCallback(() => {\n if (onResolveDoubt) {\n onResolveDoubt(responseId);\n }\n }, [onResolveDoubt, responseId]);\n\n if (questionsScrollable || !canMarkForReview) {\n return (\n <Styled.QuestionHeaderWrapper\n $flexDirection=\"row\"\n $topOffset={topOffset + navigationBar === 'top' ? TOP_NAVIGATION_HEIGHT : 0}\n $actionbarHeight={actionbarHeight}\n $justifyContent=\"space-between\"\n >\n <FlexView $flexDirection=\"row\">\n <FlexView\n $position=\"relative\"\n $background={getQuestionBorderColor(paperColor ?? 'yellow', true)}\n $widthX={2.5}\n $heightX={2.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadiusX={0.5}\n $marginBottom={18}\n >\n <Text $renderAs=\"body1Medium\">{questionNumber}</Text>\n {teacherValidationEnabled && (\n <Styled.QuestionValidationAnimationWrapper>\n <ValidatedAnimation validated={teacherValidated} />\n </Styled.QuestionValidationAnimationWrapper>\n )}\n </FlexView>\n {canShowResolveButton && (\n <FlexView $gutterX={0.5} $gapX={0.2}>\n <Button\n renderAs=\"secondary\"\n label={`Mark as Resolved`}\n onClick={handleDoubtResolve}\n disabled={!canResolveDoubt}\n size=\"xsmall\"\n iconPosition=\"left\"\n Icon={response?.skipped ? Skip2Icon : MistakeIcon}\n />\n </FlexView>\n )}\n <Separator width={5} />\n {!!attempts && userType === 'TEACHER' && (\n <FlexView\n $flexDirection=\"row\"\n $background=\"WHITE\"\n $flexGapX={0.25}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadiusX={0.5}\n $marginBottom={18}\n $gutterX={0.5}\n >\n <Text $renderAs=\"body1\">Attempts:</Text>\n <Text $renderAs=\"body1Medium\">{attempts}</Text>\n </FlexView>\n )}\n <HeaderTag\n itemType={itemType}\n instructorStimulus={instructorStimulus}\n paperColor={paperColor}\n />\n </FlexView>\n </Styled.QuestionHeaderWrapper>\n );\n }\n\n return (\n <Styled.ItemHeader\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $background=\"YELLOW_1\"\n $marginBottom={18}\n >\n <Styled.ItemHeaderTag>\n <Text $renderAs=\"eyebrow1\">Question {item_display_number}</Text>\n </Styled.ItemHeaderTag>\n {canMarkForReview && (\n <Button\n renderAs=\"secondary\"\n label={`Mark${markedForReview ? 'ed' : ''} for review`}\n onClick={markedForReview ? handleUnmarkForReview : handleMarkForReview}\n size=\"xsmall\"\n iconPosition=\"left\"\n Icon={markedForReview ? BookmarkIcon : BookmarkStrokeIcon}\n />\n )}\n </Styled.ItemHeader>\n );\n },\n);\n\nexport default QuestionHeader;\n"],"names":["QuestionHeader","memo","paperColor","actionbarHeight","behavior","onMarkForReview","question","response","userType","onResolveDoubt","canResolveDoubt","layout","worksheetCompleted","topOffset","questionsScrollable","navigationBar","teacherValidated","markedForReview","attempts","canMarkForReview","teacherValidationEnabled","item_display_number","question_number","totalQuestions","responseId","itemType","instructorStimulus","questionNumber","handleMarkForReview","useCallback","handleUnmarkForReview","canShowResolveButton","useMemo","score","maxScore","handleDoubtResolve","jsx","Styled.QuestionHeaderWrapper","TOP_NAVIGATION_HEIGHT","jsxs","FlexView","getQuestionBorderColor","Text","Styled.QuestionValidationAnimationWrapper","ValidatedAnimation","Button","Skip2Icon","MistakeIcon","Separator","HeaderTag","Styled.ItemHeader","Styled.ItemHeaderTag","BookmarkIcon","BookmarkStrokeIcon"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validated-animation.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/validated-animation.tsx"],"sourcesContent":["import type { FC } from 'react';\n\nimport { memo, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport { LOTTIE } from '../../../../../assets/lottie/lottie';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\n\ninterface IValidatedAnimationProps {\n validated: boolean;\n}\n\nconst animationSettings = { name: 'validated', loop: false };\n\nconst ValidatedAnimation: FC<IValidatedAnimationProps> = memo(({ validated }) => {\n const [validatedOnMount] = useState(validated);\n\n if (validatedOnMount) {\n return (\n <FlexView $width={40} $height={40} $alignItems=\"center\" $justifyContent=\"center\">\n <FlexView\n $borderRadius={10}\n $background=\"REAL_BLACK\"\n $width={20}\n $height={20}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <Check2Icon color=\"WHITE\" width={16} height={16} />\n </FlexView>\n </FlexView>\n );\n }\n\n if (!validatedOnMount && validated) {\n return <LottieAnimation src={LOTTIE.TEACHER_VALIDATION} settings={animationSettings} />;\n }\n\n return null;\n});\n\nexport default ValidatedAnimation;\n"],"names":["animationSettings","ValidatedAnimation","memo","validated","validatedOnMount","useState","jsx","FlexView","Check2Icon","LottieAnimation","LOTTIE"],"mappings":";;;;;;AAaA,MAAMA,IAAoB,EAAE,MAAM,aAAa,MAAM,GAAM,GAErDC,IAAmDC,EAAK,CAAC,EAAE,WAAAC,QAAgB;AAC/E,QAAM,CAACC,CAAgB,IAAIC,EAASF,CAAS;AAE7C,SAAIC,IAEA,gBAAAE,EAACC,KAAS,QAAQ,IAAI,SAAS,IAAI,aAAY,UAAS,iBAAgB,UACtE,UAAA,gBAAAD;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAe;AAAA,MACf,aAAY;AAAA,MACZ,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAEhB,4BAACC,GAAW,EAAA,OAAM,SAAQ,OAAO,IAAI,QAAQ,GAAI,CAAA;AAAA,IAAA;AAAA,EAAA,GAErD,IAIA,CAACJ,KAAoBD,sBACfM,GAAgB,EAAA,KAAKC,EAAO,oBAAoB,UAAUV,GAAmB,IAGhF;AACT,CAAC;"}
1
+ {"version":3,"file":"validated-animation.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/header/validated-animation.tsx"],"sourcesContent":["import type { FC } from 'react';\n\nimport { memo, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport { LOTTIE } from '../../../../../assets/lottie/lottie';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\n\ninterface IValidatedAnimationProps {\n validated: boolean;\n}\n\nconst animationSettings = { name: 'validated', loop: false };\n\nconst ValidatedAnimation: FC<IValidatedAnimationProps> = memo(({ validated }) => {\n const [validatedOnMount] = useState(validated);\n\n if (validatedOnMount) {\n return (\n <FlexView $width={40} $height={40} $alignItems=\"center\" $justifyContent=\"center\">\n <FlexView\n $borderRadius={10}\n $background=\"REAL_BLACK\"\n $width={20}\n $height={20}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n <Check2Icon color=\"WHITE\" width={16} height={16} />\n </FlexView>\n </FlexView>\n );\n }\n\n if (!validatedOnMount && validated) {\n return <LottieAnimation src={LOTTIE.TEACHER_VALIDATION} settings={animationSettings} />;\n }\n\n return null;\n});\n\nexport default ValidatedAnimation;\n"],"names":["animationSettings","ValidatedAnimation","memo","validated","validatedOnMount","useState","jsx","FlexView","Check2Icon","LottieAnimation","LOTTIE"],"mappings":";;;;;;AAaA,MAAMA,IAAoB,EAAE,MAAM,aAAa,MAAM,GAAM,GAErDC,IAAmDC,EAAK,CAAC,EAAE,WAAAC,QAAgB;AAC/E,QAAM,CAACC,CAAgB,IAAIC,EAASF,CAAS;AAE7C,SAAIC,IAEA,gBAAAE,EAACC,KAAS,QAAQ,IAAI,SAAS,IAAI,aAAY,UAAS,iBAAgB,UACtE,UAAA,gBAAAD;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAe;AAAA,MACf,aAAY;AAAA,MACZ,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAEhB,4BAACC,GAAW,EAAA,OAAM,SAAQ,OAAO,IAAI,QAAQ,IAAI;AAAA,IAAA;AAAA,EAErD,EAAA,CAAA,IAIA,CAACJ,KAAoBD,sBACfM,GAAgB,EAAA,KAAKC,EAAO,oBAAoB,UAAUV,EAAmB,CAAA,IAGhF;AACT,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"learnosity-question.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/learnosity-question.tsx"],"sourcesContent":["import type { ILearnosityQuestionResponse } from '../worksheet-types';\nimport type { ILearnosityQuestionProps } from './worksheet-question-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useRef } from 'react';\n\nimport useLearnosityAppend from '../hooks/use-learnosity-append';\nimport * as Styled from './worksheet-question-styled';\n\nconst LearnosityQuestion: FC<ILearnosityQuestionProps> = memo(\n ({\n signedRequest,\n appended,\n canRender,\n canForceAppend,\n question,\n response,\n learnosity,\n isConceptIntro,\n }) => {\n const containerElementRef = useRef<HTMLDivElement>(null);\n const latestQuestionResponseRef = useRef<ILearnosityQuestionResponse | undefined>(response);\n const { forceAppend } = useLearnosityAppend(signedRequest);\n\n const updateResponse = useCallback(\n (newResponse: ILearnosityQuestionResponse) => {\n window.requestAnimationFrame(() => {\n const questionElement = document.createElement('div');\n\n questionElement.classList.add('learnosity-response');\n questionElement.classList.add(`question-${question.response_id}`);\n // Drawing questions looks for already appended path elements with id, if present it will not append the path, to overcome this issue we are adding temp to the id\n containerElementRef.current?.children[0]?.querySelectorAll('svg path').forEach(path => {\n path.id = `${path.id} + temp`;\n });\n\n containerElementRef.current?.append(questionElement);\n forceAppend({\n question,\n response: newResponse,\n callback: error => {\n if (error) return;\n\n containerElementRef.current?.children[0]?.remove();\n\n if (\n latestQuestionResponseRef.current &&\n latestQuestionResponseRef.current !== newResponse\n )\n updateResponse(latestQuestionResponseRef.current);\n else latestQuestionResponseRef.current = undefined;\n },\n });\n });\n },\n [forceAppend, question],\n );\n\n const appendQuestionCalledRef = useRef(false);\n\n useEffect(() => {\n let requestId: number;\n\n if (canRender) {\n if (!appendQuestionCalledRef.current) {\n requestId = window.requestAnimationFrame(() => {\n const appenndableResponse = latestQuestionResponseRef.current ?? response;\n\n appendQuestionCalledRef.current = true;\n learnosity.appendQuestion({\n questions: [question],\n ...(appenndableResponse\n ? {\n responses: {\n [question.response_id]: {\n // Learnosity is mutating the response object, so we need to clone it\n ...appenndableResponse,\n },\n },\n }\n : {}),\n });\n });\n }\n }\n\n return () => {\n if (requestId) window.cancelAnimationFrame(requestId);\n };\n }, [canRender, learnosity, question, response]);\n\n useEffect(() => {\n if (appended) {\n latestQuestionResponseRef.current = undefined;\n }\n }, [appended]);\n\n useEffect(() => {\n if (appended && response && canForceAppend) {\n if (response !== latestQuestionResponseRef.current) {\n if (!latestQuestionResponseRef.current) {\n latestQuestionResponseRef.current = response;\n updateResponse(response);\n } else {\n latestQuestionResponseRef.current = response;\n }\n }\n }\n }, [appended, canForceAppend, response, updateResponse]);\n\n return (\n <Styled.LearnosityQuestionContainer\n ref={containerElementRef}\n $isConceptIntro={isConceptIntro}\n $isTeacher={canForceAppend}\n >\n <div className={`learnosity-response question-${question.response_id}`} />\n </Styled.LearnosityQuestionContainer>\n );\n },\n);\n\nexport default LearnosityQuestion;\n"],"names":["LearnosityQuestion","memo","signedRequest","appended","canRender","canForceAppend","question","response","learnosity","isConceptIntro","containerElementRef","useRef","latestQuestionResponseRef","forceAppend","useLearnosityAppend","updateResponse","useCallback","newResponse","questionElement","_b","_a","path","_c","error","appendQuestionCalledRef","useEffect","requestId","appenndableResponse","jsx","Styled.LearnosityQuestionContainer"],"mappings":";;;;AASA,MAAMA,IAAmDC;AAAA,EACvD,CAAC;AAAA,IACC,eAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,MACI;AACE,UAAAC,IAAsBC,EAAuB,IAAI,GACjDC,IAA4BD,EAAgDJ,CAAQ,GACpF,EAAE,aAAAM,EAAA,IAAgBC,EAAoBZ,CAAa,GAEnDa,IAAiBC;AAAA,MACrB,CAACC,MAA6C;AAC5C,eAAO,sBAAsB,MAAM;;AAC3B,gBAAAC,IAAkB,SAAS,cAAc,KAAK;AAEpC,UAAAA,EAAA,UAAU,IAAI,qBAAqB,GACnDA,EAAgB,UAAU,IAAI,YAAYZ,EAAS,WAAW,EAAE,IAE5Ca,KAAAC,IAAAV,EAAA,YAAA,gBAAAU,EAAS,SAAS,OAAlB,QAAAD,EAAsB,iBAAiB,YAAY,QAAQ,CAAQE,MAAA;AAChF,YAAAA,EAAA,KAAK,GAAGA,EAAK,EAAE;AAAA,UAAA,KAGFC,IAAAZ,EAAA,YAAA,QAAAY,EAAS,OAAOJ,IACxBL,EAAA;AAAA,YACV,UAAAP;AAAA,YACA,UAAUW;AAAA,YACV,UAAU,CAASM,MAAA;;AACjB,cAAIA,OAEJJ,KAAAC,IAAAV,EAAoB,YAApB,gBAAAU,EAA6B,SAAS,OAAtC,QAAAD,EAA0C,UAGxCP,EAA0B,WAC1BA,EAA0B,YAAYK,IAEtCF,EAAeH,EAA0B,OAAO,MACnB,UAAU;AAAA,YAAA;AAAA,UAC3C,CACD;AAAA,QAAA,CACF;AAAA,MACH;AAAA,MACA,CAACC,GAAaP,CAAQ;AAAA,IACxB,GAEMkB,IAA0Bb,EAAO,EAAK;AAE5C,WAAAc,EAAU,MAAM;AACV,UAAAC;AAEJ,aAAItB,MACGoB,EAAwB,YACfE,IAAA,OAAO,sBAAsB,MAAM;AACvC,cAAAC,IAAsBf,EAA0B,WAAWL;AAEjE,QAAAiB,EAAwB,UAAU,IAClChB,EAAW,eAAe;AAAA,UACxB,WAAW,CAACF,CAAQ;AAAA,UACpB,GAAIqB,IACA;AAAA,YACE,WAAW;AAAA,cACT,CAACrB,EAAS,WAAW,GAAG;AAAA;AAAA,gBAEtB,GAAGqB;AAAA,cAAA;AAAA,YACL;AAAA,UACF,IAEF,CAAA;AAAA,QAAC,CACN;AAAA,MAAA,CACF,KAIE,MAAM;AACP,QAAAD,KAAkB,OAAA,qBAAqBA,CAAS;AAAA,MACtD;AAAA,OACC,CAACtB,GAAWI,GAAYF,GAAUC,CAAQ,CAAC,GAE9CkB,EAAU,MAAM;AACd,MAAItB,MACFS,EAA0B,UAAU;AAAA,IACtC,GACC,CAACT,CAAQ,CAAC,GAEbsB,EAAU,MAAM;AACV,MAAAtB,KAAYI,KAAYF,KACtBE,MAAaK,EAA0B,YACpCA,EAA0B,UAI7BA,EAA0B,UAAUL,KAHpCK,EAA0B,UAAUL,GACpCQ,EAAeR,CAAQ;AAAA,OAM5B,CAACJ,GAAUE,GAAgBE,GAAUQ,CAAc,CAAC,GAGrD,gBAAAa;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,KAAKnB;AAAA,QACL,iBAAiBD;AAAA,QACjB,YAAYJ;AAAA,QAEZ,4BAAC,OAAI,EAAA,WAAW,gCAAgCC,EAAS,WAAW,GAAI,CAAA;AAAA,MAAA;AAAA,IAC1E;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"learnosity-question.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/learnosity-question.tsx"],"sourcesContent":["import type { ILearnosityQuestionResponse } from '../worksheet-types';\nimport type { ILearnosityQuestionProps } from './worksheet-question-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useEffect, useRef } from 'react';\n\nimport useLearnosityAppend from '../hooks/use-learnosity-append';\nimport * as Styled from './worksheet-question-styled';\n\nconst LearnosityQuestion: FC<ILearnosityQuestionProps> = memo(\n ({\n signedRequest,\n appended,\n canRender,\n canForceAppend,\n question,\n response,\n learnosity,\n isConceptIntro,\n }) => {\n const containerElementRef = useRef<HTMLDivElement>(null);\n const latestQuestionResponseRef = useRef<ILearnosityQuestionResponse | undefined>(response);\n const { forceAppend } = useLearnosityAppend(signedRequest);\n\n const updateResponse = useCallback(\n (newResponse: ILearnosityQuestionResponse) => {\n window.requestAnimationFrame(() => {\n const questionElement = document.createElement('div');\n\n questionElement.classList.add('learnosity-response');\n questionElement.classList.add(`question-${question.response_id}`);\n // Drawing questions looks for already appended path elements with id, if present it will not append the path, to overcome this issue we are adding temp to the id\n containerElementRef.current?.children[0]?.querySelectorAll('svg path').forEach(path => {\n path.id = `${path.id} + temp`;\n });\n\n containerElementRef.current?.append(questionElement);\n forceAppend({\n question,\n response: newResponse,\n callback: error => {\n if (error) return;\n\n containerElementRef.current?.children[0]?.remove();\n\n if (\n latestQuestionResponseRef.current &&\n latestQuestionResponseRef.current !== newResponse\n )\n updateResponse(latestQuestionResponseRef.current);\n else latestQuestionResponseRef.current = undefined;\n },\n });\n });\n },\n [forceAppend, question],\n );\n\n const appendQuestionCalledRef = useRef(false);\n\n useEffect(() => {\n let requestId: number;\n\n if (canRender) {\n if (!appendQuestionCalledRef.current) {\n requestId = window.requestAnimationFrame(() => {\n const appenndableResponse = latestQuestionResponseRef.current ?? response;\n\n appendQuestionCalledRef.current = true;\n learnosity.appendQuestion({\n questions: [question],\n ...(appenndableResponse\n ? {\n responses: {\n [question.response_id]: {\n // Learnosity is mutating the response object, so we need to clone it\n ...appenndableResponse,\n },\n },\n }\n : {}),\n });\n });\n }\n }\n\n return () => {\n if (requestId) window.cancelAnimationFrame(requestId);\n };\n }, [canRender, learnosity, question, response]);\n\n useEffect(() => {\n if (appended) {\n latestQuestionResponseRef.current = undefined;\n }\n }, [appended]);\n\n useEffect(() => {\n if (appended && response && canForceAppend) {\n if (response !== latestQuestionResponseRef.current) {\n if (!latestQuestionResponseRef.current) {\n latestQuestionResponseRef.current = response;\n updateResponse(response);\n } else {\n latestQuestionResponseRef.current = response;\n }\n }\n }\n }, [appended, canForceAppend, response, updateResponse]);\n\n return (\n <Styled.LearnosityQuestionContainer\n ref={containerElementRef}\n $isConceptIntro={isConceptIntro}\n $isTeacher={canForceAppend}\n >\n <div className={`learnosity-response question-${question.response_id}`} />\n </Styled.LearnosityQuestionContainer>\n );\n },\n);\n\nexport default LearnosityQuestion;\n"],"names":["LearnosityQuestion","memo","signedRequest","appended","canRender","canForceAppend","question","response","learnosity","isConceptIntro","containerElementRef","useRef","latestQuestionResponseRef","forceAppend","useLearnosityAppend","updateResponse","useCallback","newResponse","questionElement","_b","_a","path","_c","error","appendQuestionCalledRef","useEffect","requestId","appenndableResponse","jsx","Styled.LearnosityQuestionContainer"],"mappings":";;;;AASA,MAAMA,IAAmDC;AAAA,EACvD,CAAC;AAAA,IACC,eAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,MACI;AACE,UAAAC,IAAsBC,EAAuB,IAAI,GACjDC,IAA4BD,EAAgDJ,CAAQ,GACpF,EAAE,aAAAM,EAAA,IAAgBC,EAAoBZ,CAAa,GAEnDa,IAAiBC;AAAA,MACrB,CAACC,MAA6C;AAC5C,eAAO,sBAAsB,MAAM;;AAC3B,gBAAAC,IAAkB,SAAS,cAAc,KAAK;AAEpC,UAAAA,EAAA,UAAU,IAAI,qBAAqB,GACnDA,EAAgB,UAAU,IAAI,YAAYZ,EAAS,WAAW,EAAE,IAE5Ca,KAAAC,IAAAV,EAAA,YAAA,gBAAAU,EAAS,SAAS,OAAlB,QAAAD,EAAsB,iBAAiB,YAAY,QAAQ,CAAQE,MAAA;AAChF,YAAAA,EAAA,KAAK,GAAGA,EAAK,EAAE;AAAA,UAAA,KAGFC,IAAAZ,EAAA,YAAA,QAAAY,EAAS,OAAOJ,IACxBL,EAAA;AAAA,YACV,UAAAP;AAAA,YACA,UAAUW;AAAA,YACV,UAAU,CAASM,MAAA;;AACjB,cAAIA,OAEJJ,KAAAC,IAAAV,EAAoB,YAApB,gBAAAU,EAA6B,SAAS,OAAtC,QAAAD,EAA0C,UAGxCP,EAA0B,WAC1BA,EAA0B,YAAYK,IAEtCF,EAAeH,EAA0B,OAAO,MACnB,UAAU;AAAA,YAC3C;AAAA,UAAA,CACD;AAAA,QAAA,CACF;AAAA,MACH;AAAA,MACA,CAACC,GAAaP,CAAQ;AAAA,IAAA,GAGlBkB,IAA0Bb,EAAO,EAAK;AAE5C,WAAAc,EAAU,MAAM;AACV,UAAAC;AAEJ,aAAItB,MACGoB,EAAwB,YACfE,IAAA,OAAO,sBAAsB,MAAM;AACvC,cAAAC,IAAsBf,EAA0B,WAAWL;AAEjE,QAAAiB,EAAwB,UAAU,IAClChB,EAAW,eAAe;AAAA,UACxB,WAAW,CAACF,CAAQ;AAAA,UACpB,GAAIqB,IACA;AAAA,YACE,WAAW;AAAA,cACT,CAACrB,EAAS,WAAW,GAAG;AAAA;AAAA,gBAEtB,GAAGqB;AAAA,cACL;AAAA,YACF;AAAA,UAAA,IAEF,CAAC;AAAA,QAAA,CACN;AAAA,MAAA,CACF,KAIE,MAAM;AACP,QAAAD,KAAkB,OAAA,qBAAqBA,CAAS;AAAA,MAAA;AAAA,OAErD,CAACtB,GAAWI,GAAYF,GAAUC,CAAQ,CAAC,GAE9CkB,EAAU,MAAM;AACd,MAAItB,MACFS,EAA0B,UAAU;AAAA,IACtC,GACC,CAACT,CAAQ,CAAC,GAEbsB,EAAU,MAAM;AACV,MAAAtB,KAAYI,KAAYF,KACtBE,MAAaK,EAA0B,YACpCA,EAA0B,UAI7BA,EAA0B,UAAUL,KAHpCK,EAA0B,UAAUL,GACpCQ,EAAeR,CAAQ;AAAA,OAM5B,CAACJ,GAAUE,GAAgBE,GAAUQ,CAAc,CAAC,GAGrD,gBAAAa;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,KAAKnB;AAAA,QACL,iBAAiBD;AAAA,QACjB,YAAYJ;AAAA,QAEZ,4BAAC,OAAI,EAAA,WAAW,gCAAgCC,EAAS,WAAW,IAAI;AAAA,MAAA;AAAA,IAAA;AAAA,EAG9E;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"question-backdrop-styled.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop-styled.ts"],"sourcesContent":["import type { TColorNames } from '../../../../ui/types';\n\nimport styled from 'styled-components';\n\ninterface IAbsoluteCircleProps {\n $backgroundColor: string;\n $width: number;\n}\n\nconst AbsoluteCircle = styled.div<IAbsoluteCircleProps>(\n ({ theme, $backgroundColor, $width }) => `\n position: absolute;\n --div-width: ${$width}px;\n width: var(--div-width);\n height: var(--div-width);\n bottom: calc(712px * 0.225);\n left: 50%;\n transform: translate(-50%, 50%);\n border-radius: 50%;\n background-color: ${theme.colors[$backgroundColor as TColorNames]};\n `,\n);\n\ninterface IAbsoluteFillProps {\n $backgroundColor: string;\n}\n\nconst AbsoluteFill = styled.div<IAbsoluteFillProps>(\n ({ theme, $backgroundColor }) => `\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n background-color: ${theme.colors[$backgroundColor as TColorNames]};\n border-radius: 12px;\n overflow: hidden;\n `,\n);\n\nconst ChildrenWrapper = styled.div`\n position: absolute;\n width: 100%;\n left: 0;\n bottom: 180px;\n`;\n\nexport { AbsoluteCircle, AbsoluteFill, ChildrenWrapper };\n"],"names":["AbsoluteCircle","styled","theme","$backgroundColor","$width","AbsoluteFill","ChildrenWrapper"],"mappings":";AASA,MAAMA,IAAiBC,EAAO;AAAA,EAC5B,CAAC,EAAE,OAAAC,GAAO,kBAAAC,GAAkB,QAAAC,QAAa;AAAA;AAAA,mBAExBA,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAODF,EAAM,OAAOC,CAA+B,CAAC;AAAA;AAErE,GAMME,IAAeJ,EAAO;AAAA,EAC1B,CAAC,EAAE,OAAAC,GAAO,kBAAAC,QAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAMXD,EAAM,OAAOC,CAA+B,CAAC;AAAA;AAAA;AAAA;AAIrE,GAEMG,IAAkBL,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;"}
1
+ {"version":3,"file":"question-backdrop-styled.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop-styled.ts"],"sourcesContent":["import type { TColorNames } from '../../../../ui/types';\n\nimport styled from 'styled-components';\n\ninterface IAbsoluteCircleProps {\n $backgroundColor: string;\n $width: number;\n}\n\nconst AbsoluteCircle = styled.div<IAbsoluteCircleProps>(\n ({ theme, $backgroundColor, $width }) => `\n position: absolute;\n --div-width: ${$width}px;\n width: var(--div-width);\n height: var(--div-width);\n bottom: calc(712px * 0.225);\n left: 50%;\n transform: translate(-50%, 50%);\n border-radius: 50%;\n background-color: ${theme.colors[$backgroundColor as TColorNames]};\n `,\n);\n\ninterface IAbsoluteFillProps {\n $backgroundColor: string;\n}\n\nconst AbsoluteFill = styled.div<IAbsoluteFillProps>(\n ({ theme, $backgroundColor }) => `\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n background-color: ${theme.colors[$backgroundColor as TColorNames]};\n border-radius: 12px;\n overflow: hidden;\n `,\n);\n\nconst ChildrenWrapper = styled.div`\n position: absolute;\n width: 100%;\n left: 0;\n bottom: 180px;\n`;\n\nexport { AbsoluteCircle, AbsoluteFill, ChildrenWrapper };\n"],"names":["AbsoluteCircle","styled","theme","$backgroundColor","$width","AbsoluteFill","ChildrenWrapper"],"mappings":";AASA,MAAMA,IAAiBC,EAAO;AAAA,EAC5B,CAAC,EAAE,OAAAC,GAAO,kBAAAC,GAAkB,QAAAC,EAAa,MAAA;AAAA;AAAA,mBAExBA,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAODF,EAAM,OAAOC,CAA+B,CAAC;AAAA;AAErE,GAMME,IAAeJ,EAAO;AAAA,EAC1B,CAAC,EAAE,OAAAC,GAAO,kBAAAC,EAAA,MAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAMXD,EAAM,OAAOC,CAA+B,CAAC;AAAA;AAAA;AAAA;AAIrE,GAEMG,IAAkBL,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"question-backdrop.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop.tsx"],"sourcesContent":["import type { TWorksheetQuestionPaperColor } from '../worksheet-question-types';\nimport type { FC, PropsWithChildren } from 'react';\n\nimport { memo } from 'react';\n\nimport * as Styled from './question-backdrop-styled';\n\ninterface IQuestionBackdropProps {\n paperColor: TWorksheetQuestionPaperColor;\n}\n\nconst QuestionBackdrop: FC<PropsWithChildren<IQuestionBackdropProps>> = memo(\n ({ paperColor, children }) => {\n return (\n <>\n <Styled.AbsoluteFill $backgroundColor={`${paperColor.toUpperCase()}_3`}>\n <Styled.AbsoluteCircle\n $backgroundColor={`${paperColor.toUpperCase()}_2`}\n $width={792 * 1.2}\n />\n <Styled.AbsoluteCircle\n $backgroundColor={`${paperColor.toUpperCase()}_1`}\n $width={792 * 0.9}\n />\n {children && <Styled.ChildrenWrapper>{children}</Styled.ChildrenWrapper>}\n </Styled.AbsoluteFill>\n </>\n );\n },\n);\n\nexport default QuestionBackdrop;\n"],"names":["QuestionBackdrop","memo","paperColor","children","jsx","Fragment","jsxs","Styled.AbsoluteFill","Styled.AbsoluteCircle","Styled.ChildrenWrapper"],"mappings":";;;AAWA,MAAMA,IAAkEC;AAAA,EACtE,CAAC,EAAE,YAAAC,GAAY,UAAAC,QAEX,gBAAAC,EAAAC,GAAA,EACE,UAAC,gBAAAC,EAAAC,GAAA,EAAoB,kBAAkB,GAAGL,EAAW,YAAa,CAAA,MAChE,UAAA;AAAA,IAAA,gBAAAE;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,kBAAkB,GAAGN,EAAW,YAAA,CAAa;AAAA,QAC7C,QAAQ,MAAM;AAAA,MAAA;AAAA,IAChB;AAAA,IACA,gBAAAE;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,kBAAkB,GAAGN,EAAW,YAAA,CAAa;AAAA,QAC7C,QAAQ,MAAM;AAAA,MAAA;AAAA,IAChB;AAAA,IACCC,KAAY,gBAAAC,EAACK,GAAA,EAAwB,UAAAN,EAAS,CAAA;AAAA,EAAA,EAAA,CACjD,EACF,CAAA;AAGN;"}
1
+ {"version":3,"file":"question-backdrop.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop.tsx"],"sourcesContent":["import type { TWorksheetQuestionPaperColor } from '../worksheet-question-types';\nimport type { FC, PropsWithChildren } from 'react';\n\nimport { memo } from 'react';\n\nimport * as Styled from './question-backdrop-styled';\n\ninterface IQuestionBackdropProps {\n paperColor: TWorksheetQuestionPaperColor;\n}\n\nconst QuestionBackdrop: FC<PropsWithChildren<IQuestionBackdropProps>> = memo(\n ({ paperColor, children }) => {\n return (\n <>\n <Styled.AbsoluteFill $backgroundColor={`${paperColor.toUpperCase()}_3`}>\n <Styled.AbsoluteCircle\n $backgroundColor={`${paperColor.toUpperCase()}_2`}\n $width={792 * 1.2}\n />\n <Styled.AbsoluteCircle\n $backgroundColor={`${paperColor.toUpperCase()}_1`}\n $width={792 * 0.9}\n />\n {children && <Styled.ChildrenWrapper>{children}</Styled.ChildrenWrapper>}\n </Styled.AbsoluteFill>\n </>\n );\n },\n);\n\nexport default QuestionBackdrop;\n"],"names":["QuestionBackdrop","memo","paperColor","children","jsx","Fragment","jsxs","Styled.AbsoluteFill","Styled.AbsoluteCircle","Styled.ChildrenWrapper"],"mappings":";;;AAWA,MAAMA,IAAkEC;AAAA,EACtE,CAAC,EAAE,YAAAC,GAAY,UAAAC,QAEX,gBAAAC,EAAAC,GAAA,EACE,UAAC,gBAAAC,EAAAC,GAAA,EAAoB,kBAAkB,GAAGL,EAAW,YAAa,CAAA,MAChE,UAAA;AAAA,IAAA,gBAAAE;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,kBAAkB,GAAGN,EAAW,YAAA,CAAa;AAAA,QAC7C,QAAQ,MAAM;AAAA,MAAA;AAAA,IAChB;AAAA,IACA,gBAAAE;AAAA,MAACI;AAAAA,MAAA;AAAA,QACC,kBAAkB,GAAGN,EAAW,YAAA,CAAa;AAAA,QAC7C,QAAQ,MAAM;AAAA,MAAA;AAAA,IAChB;AAAA,IACCC,KAAY,gBAAAC,EAACK,GAAA,EAAwB,UAAAN,EAAS,CAAA;AAAA,EAAA,EACjD,CAAA,EACF,CAAA;AAGN;"}
@@ -1 +1 @@
1
- {"version":3,"file":"subjective-feedback.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-feedback.tsx"],"sourcesContent":["import type { ISubjectiveQuestionReviewProps, IFile } from './subjective-review';\nimport type { FC } from 'react';\n\nimport { pluralize } from 'humanize-plus';\nimport { memo, useCallback, useMemo, useState } from 'react';\n\nimport DownIcon from '../../../../assets/line-icons/icons/down';\nimport UpIcon from '../../../../assets/line-icons/icons/up';\nimport Button from '../../../ui/buttons/button/button';\nimport Clickable from '../../../ui/buttons/clickable/clickable';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport useS3ImageUploadHelper from '../hooks/use-s3-helper';\nimport { TextArea, FileInput, FileInputLabel } from './subjective-styled';\n\nconst QUERY = { type: 'subjective_response' };\n\nconst SubjectiveQuestionFeedback: FC<ISubjectiveQuestionReviewProps> = memo(\n ({\n responses,\n response,\n nextQuestionId,\n responseId,\n studentId,\n onAddReviewComment,\n openImagesReviewModal,\n handleReviewSubmit,\n isSubmittingReview,\n }) => {\n const { score: responseScore } = response ?? {};\n const { max_score: maxScore, score } = responseScore ?? {};\n const isAttempted = responseScore && 'score' in responseScore && 'max_score' in responseScore;\n const [comment, setComment] = useState(response?.teacherReview?.reviewComment ?? '');\n const [isUploading, setIsUploading] = useState<boolean>(false);\n const [scored, setScored] = useState(score ?? 0.0);\n const [selectedImages, setSelectedImage] = useState<(string | IFile)[]>(\n response?.teacherReview?.images ?? [],\n );\n const noOfImages = selectedImages.length;\n const isSaveDisabled = useMemo(() => {\n if (\n response?.teacherReview?.reviewComment === comment &&\n response.teacherReview.images?.length === selectedImages.length &&\n response.score?.score === scored\n ) {\n return true;\n }\n\n return false;\n }, [comment, response, scored, selectedImages.length]);\n\n const canSubmitReview = useMemo(() => {\n if (!responses) return false;\n\n let canSubmit = true;\n\n for (const item of Object.values(responses)) {\n const currResponse = item.response;\n\n const isCurrItemAttempted = !!currResponse;\n const currentItemReviewed =\n (item.teacherReview?.images && item.teacherReview?.images?.length > 0) ||\n !!item.teacherReview?.reviewComment;\n\n if (isCurrItemAttempted && !currentItemReviewed) {\n canSubmit = false;\n break;\n }\n }\n\n return canSubmit;\n }, [responses]);\n\n const uploadImages = useS3ImageUploadHelper({\n studentId,\n query: QUERY,\n });\n\n const onCommentChange = useCallback((e: { target: { value: string } }) => {\n setComment(e.target.value);\n }, []);\n\n const onScoreUp = useCallback(() => {\n setScored(scored + 0.5);\n }, [scored]);\n\n const onScoreDown = useCallback(() => {\n setScored(scored - 0.5);\n }, [scored]);\n\n const onSuccess = useCallback(\n (images?: string[]) => {\n setIsUploading(false);\n const reponseImages = selectedImages.filter(item => typeof item === 'string');\n const allImages = images ? [...reponseImages, ...images] : reponseImages;\n\n if (images) {\n setSelectedImage(allImages);\n }\n onAddReviewComment?.(responseId, {\n score: {\n score: scored,\n max_score: maxScore as number,\n },\n teacherReview: {\n reviewComment: comment,\n images: allImages,\n },\n });\n },\n [comment, maxScore, onAddReviewComment, responseId, scored, selectedImages],\n );\n\n const handleSave = useCallback(() => {\n const imagesToUpload = selectedImages.filter(images => typeof images !== 'string');\n\n if (imagesToUpload.length > 0) {\n setIsUploading(true);\n uploadImages({\n fileKey: `subjective-responses/${responseId}/`,\n onSuccess: onSuccess,\n onError: () => {},\n images: imagesToUpload,\n });\n } else {\n onSuccess();\n }\n }, [onSuccess, responseId, selectedImages, uploadImages]);\n\n const updateImages = useCallback(\n ({ filteredImages }: { filteredImages: string[]; newImages: IFile[] }) => {\n setSelectedImage(filteredImages);\n },\n [],\n );\n\n const openImagesModal = useCallback(() => {\n const previewImages = selectedImages.map(item => {\n if (typeof item === 'string') return item;\n\n return item.url;\n });\n\n if (!previewImages) return;\n\n openImagesReviewModal?.({\n isReviewed: false,\n disableScoreForm: false,\n imageUrls: previewImages,\n filteredImageUrls: updateImages,\n uploadedImages: selectedImages,\n });\n }, [openImagesReviewModal, updateImages, selectedImages]);\n\n const onSelectImages = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const { files } = e.currentTarget;\n\n if (!files) return;\n\n const newFilesList = Array.from(files).map(file => {\n const url = URL.createObjectURL(file);\n\n return { file, url };\n });\n\n setSelectedImage(prevImages => [...prevImages, ...newFilesList]);\n }, []);\n\n if (!response) {\n return null;\n }\n\n if (!isAttempted && nextQuestionId) {\n return <Text $renderAs=\"body1\"> The student did not attempt this questions.</Text>;\n }\n\n return (\n <>\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\">\n <FlexView>\n <Text $renderAs=\"body3\">Score (out of {maxScore})</Text>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\" $gapX={0.5}>\n <FlexView\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $borderColor=\"BLACK\"\n $width={50}\n $height={50}\n $background=\"WHITE\"\n >\n <Text $renderAs=\"body1\">{scored}</Text>\n </FlexView>\n <Separator width={16} />\n <FlexView $background=\"WHITE\" $gutterX={0.5} $gapX={0.5}>\n <Clickable label=\"up\" onClick={onScoreUp} disabled={scored === maxScore}>\n <UpIcon />\n </Clickable>\n <Separator height={16} />\n <Clickable label=\"down\" onClick={onScoreDown} disabled={scored === 0}>\n <DownIcon />\n </Clickable>\n </FlexView>\n </FlexView>\n </FlexView>\n <FlexView>\n <Text $renderAs=\"body1\">Comments</Text>\n <Separator heightX={1} />\n <TextArea value={comment} onChange={onCommentChange} />\n </FlexView>\n <FlexView $alignItems=\"center\">\n <Text $renderAs=\"body1\">\n Upload Images <small>(max 12)</small>\n </Text>\n <Separator heightX={1} />\n <FileInputLabel htmlFor={`files${responseId}`}>Browse</FileInputLabel>\n <Separator heightX={1} />\n <FileInput\n type=\"file\"\n accept=\".jpeg, .jpg, .png\"\n id={`files${responseId}`}\n multiple\n onChange={onSelectImages}\n />\n <TextButton\n onClick={openImagesModal}\n label={noOfImages ? `${noOfImages} ${pluralize(noOfImages, 'file')}` : 'No files'}\n />\n </FlexView>\n </FlexView>\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gutterX={1}\n $gapX={1}\n >\n <Button\n widthX={6}\n renderAs=\"secondary\"\n size=\"small\"\n label=\"Save\"\n onClick={handleSave}\n busy={isUploading}\n disabled={isSaveDisabled}\n />\n <Separator width={20} />\n {!nextQuestionId && (\n <Button\n widthX={6}\n renderAs=\"secondary\"\n size=\"small\"\n label=\"Submit Review\"\n onClick={handleReviewSubmit}\n busy={isSubmittingReview}\n disabled={!canSubmitReview}\n />\n )}\n </FlexView>\n </>\n );\n },\n);\n\nexport default SubjectiveQuestionFeedback;\n"],"names":["QUERY","SubjectiveQuestionFeedback","memo","responses","response","nextQuestionId","responseId","studentId","onAddReviewComment","openImagesReviewModal","handleReviewSubmit","isSubmittingReview","responseScore","maxScore","score","isAttempted","comment","setComment","useState","_a","isUploading","setIsUploading","scored","setScored","selectedImages","setSelectedImage","_b","noOfImages","isSaveDisabled","useMemo","_c","canSubmitReview","canSubmit","item","isCurrItemAttempted","currentItemReviewed","_d","uploadImages","useS3ImageUploadHelper","onCommentChange","useCallback","e","onScoreUp","onScoreDown","onSuccess","images","reponseImages","allImages","handleSave","imagesToUpload","updateImages","filteredImages","openImagesModal","previewImages","onSelectImages","files","newFilesList","file","url","prevImages","jsx","Text","jsxs","Fragment","FlexView","Separator","Clickable","UpIcon","DownIcon","TextArea","FileInputLabel","FileInput","TextButton","pluralize","Button"],"mappings":"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"}
1
+ {"version":3,"file":"subjective-feedback.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-feedback.tsx"],"sourcesContent":["import type { ISubjectiveQuestionReviewProps, IFile } from './subjective-review';\nimport type { FC } from 'react';\n\nimport { pluralize } from 'humanize-plus';\nimport { memo, useCallback, useMemo, useState } from 'react';\n\nimport DownIcon from '../../../../assets/line-icons/icons/down';\nimport UpIcon from '../../../../assets/line-icons/icons/up';\nimport Button from '../../../ui/buttons/button/button';\nimport Clickable from '../../../ui/buttons/clickable/clickable';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport useS3ImageUploadHelper from '../hooks/use-s3-helper';\nimport { TextArea, FileInput, FileInputLabel } from './subjective-styled';\n\nconst QUERY = { type: 'subjective_response' };\n\nconst SubjectiveQuestionFeedback: FC<ISubjectiveQuestionReviewProps> = memo(\n ({\n responses,\n response,\n nextQuestionId,\n responseId,\n studentId,\n onAddReviewComment,\n openImagesReviewModal,\n handleReviewSubmit,\n isSubmittingReview,\n }) => {\n const { score: responseScore } = response ?? {};\n const { max_score: maxScore, score } = responseScore ?? {};\n const isAttempted = responseScore && 'score' in responseScore && 'max_score' in responseScore;\n const [comment, setComment] = useState(response?.teacherReview?.reviewComment ?? '');\n const [isUploading, setIsUploading] = useState<boolean>(false);\n const [scored, setScored] = useState(score ?? 0.0);\n const [selectedImages, setSelectedImage] = useState<(string | IFile)[]>(\n response?.teacherReview?.images ?? [],\n );\n const noOfImages = selectedImages.length;\n const isSaveDisabled = useMemo(() => {\n if (\n response?.teacherReview?.reviewComment === comment &&\n response.teacherReview.images?.length === selectedImages.length &&\n response.score?.score === scored\n ) {\n return true;\n }\n\n return false;\n }, [comment, response, scored, selectedImages.length]);\n\n const canSubmitReview = useMemo(() => {\n if (!responses) return false;\n\n let canSubmit = true;\n\n for (const item of Object.values(responses)) {\n const currResponse = item.response;\n\n const isCurrItemAttempted = !!currResponse;\n const currentItemReviewed =\n (item.teacherReview?.images && item.teacherReview?.images?.length > 0) ||\n !!item.teacherReview?.reviewComment;\n\n if (isCurrItemAttempted && !currentItemReviewed) {\n canSubmit = false;\n break;\n }\n }\n\n return canSubmit;\n }, [responses]);\n\n const uploadImages = useS3ImageUploadHelper({\n studentId,\n query: QUERY,\n });\n\n const onCommentChange = useCallback((e: { target: { value: string } }) => {\n setComment(e.target.value);\n }, []);\n\n const onScoreUp = useCallback(() => {\n setScored(scored + 0.5);\n }, [scored]);\n\n const onScoreDown = useCallback(() => {\n setScored(scored - 0.5);\n }, [scored]);\n\n const onSuccess = useCallback(\n (images?: string[]) => {\n setIsUploading(false);\n const reponseImages = selectedImages.filter(item => typeof item === 'string');\n const allImages = images ? [...reponseImages, ...images] : reponseImages;\n\n if (images) {\n setSelectedImage(allImages);\n }\n onAddReviewComment?.(responseId, {\n score: {\n score: scored,\n max_score: maxScore as number,\n },\n teacherReview: {\n reviewComment: comment,\n images: allImages,\n },\n });\n },\n [comment, maxScore, onAddReviewComment, responseId, scored, selectedImages],\n );\n\n const handleSave = useCallback(() => {\n const imagesToUpload = selectedImages.filter(images => typeof images !== 'string');\n\n if (imagesToUpload.length > 0) {\n setIsUploading(true);\n uploadImages({\n fileKey: `subjective-responses/${responseId}/`,\n onSuccess: onSuccess,\n onError: () => {},\n images: imagesToUpload,\n });\n } else {\n onSuccess();\n }\n }, [onSuccess, responseId, selectedImages, uploadImages]);\n\n const updateImages = useCallback(\n ({ filteredImages }: { filteredImages: string[]; newImages: IFile[] }) => {\n setSelectedImage(filteredImages);\n },\n [],\n );\n\n const openImagesModal = useCallback(() => {\n const previewImages = selectedImages.map(item => {\n if (typeof item === 'string') return item;\n\n return item.url;\n });\n\n if (!previewImages) return;\n\n openImagesReviewModal?.({\n isReviewed: false,\n disableScoreForm: false,\n imageUrls: previewImages,\n filteredImageUrls: updateImages,\n uploadedImages: selectedImages,\n });\n }, [openImagesReviewModal, updateImages, selectedImages]);\n\n const onSelectImages = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const { files } = e.currentTarget;\n\n if (!files) return;\n\n const newFilesList = Array.from(files).map(file => {\n const url = URL.createObjectURL(file);\n\n return { file, url };\n });\n\n setSelectedImage(prevImages => [...prevImages, ...newFilesList]);\n }, []);\n\n if (!response) {\n return null;\n }\n\n if (!isAttempted && nextQuestionId) {\n return <Text $renderAs=\"body1\"> The student did not attempt this questions.</Text>;\n }\n\n return (\n <>\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\">\n <FlexView>\n <Text $renderAs=\"body3\">Score (out of {maxScore})</Text>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\" $gapX={0.5}>\n <FlexView\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $borderColor=\"BLACK\"\n $width={50}\n $height={50}\n $background=\"WHITE\"\n >\n <Text $renderAs=\"body1\">{scored}</Text>\n </FlexView>\n <Separator width={16} />\n <FlexView $background=\"WHITE\" $gutterX={0.5} $gapX={0.5}>\n <Clickable label=\"up\" onClick={onScoreUp} disabled={scored === maxScore}>\n <UpIcon />\n </Clickable>\n <Separator height={16} />\n <Clickable label=\"down\" onClick={onScoreDown} disabled={scored === 0}>\n <DownIcon />\n </Clickable>\n </FlexView>\n </FlexView>\n </FlexView>\n <FlexView>\n <Text $renderAs=\"body1\">Comments</Text>\n <Separator heightX={1} />\n <TextArea value={comment} onChange={onCommentChange} />\n </FlexView>\n <FlexView $alignItems=\"center\">\n <Text $renderAs=\"body1\">\n Upload Images <small>(max 12)</small>\n </Text>\n <Separator heightX={1} />\n <FileInputLabel htmlFor={`files${responseId}`}>Browse</FileInputLabel>\n <Separator heightX={1} />\n <FileInput\n type=\"file\"\n accept=\".jpeg, .jpg, .png\"\n id={`files${responseId}`}\n multiple\n onChange={onSelectImages}\n />\n <TextButton\n onClick={openImagesModal}\n label={noOfImages ? `${noOfImages} ${pluralize(noOfImages, 'file')}` : 'No files'}\n />\n </FlexView>\n </FlexView>\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gutterX={1}\n $gapX={1}\n >\n <Button\n widthX={6}\n renderAs=\"secondary\"\n size=\"small\"\n label=\"Save\"\n onClick={handleSave}\n busy={isUploading}\n disabled={isSaveDisabled}\n />\n <Separator width={20} />\n {!nextQuestionId && (\n <Button\n widthX={6}\n renderAs=\"secondary\"\n size=\"small\"\n label=\"Submit Review\"\n onClick={handleReviewSubmit}\n busy={isSubmittingReview}\n disabled={!canSubmitReview}\n />\n )}\n </FlexView>\n </>\n );\n },\n);\n\nexport default SubjectiveQuestionFeedback;\n"],"names":["QUERY","SubjectiveQuestionFeedback","memo","responses","response","nextQuestionId","responseId","studentId","onAddReviewComment","openImagesReviewModal","handleReviewSubmit","isSubmittingReview","responseScore","maxScore","score","isAttempted","comment","setComment","useState","_a","isUploading","setIsUploading","scored","setScored","selectedImages","setSelectedImage","_b","noOfImages","isSaveDisabled","useMemo","_c","canSubmitReview","canSubmit","item","isCurrItemAttempted","currentItemReviewed","_d","uploadImages","useS3ImageUploadHelper","onCommentChange","useCallback","e","onScoreUp","onScoreDown","onSuccess","images","reponseImages","allImages","handleSave","imagesToUpload","updateImages","filteredImages","openImagesModal","previewImages","onSelectImages","files","newFilesList","file","url","prevImages","jsx","Text","jsxs","Fragment","FlexView","Separator","Clickable","UpIcon","DownIcon","TextArea","FileInputLabel","FileInput","TextButton","pluralize","Button"],"mappings":";;;;;;;;;;;;;AAiBA,MAAMA,KAAQ,EAAE,MAAM,yBAEhBC,KAAiEC;AAAA,EACrE,CAAC;AAAA,IACC,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,oBAAAC;AAAA,EAAA,MACI;;AACJ,UAAM,EAAE,OAAOC,MAAkBR,KAAY,CAAA,GACvC,EAAE,WAAWS,GAAU,OAAAC,EAAM,IAAIF,KAAiB,CAAA,GAClDG,IAAcH,KAAiB,WAAWA,KAAiB,eAAeA,GAC1E,CAACI,GAASC,CAAU,IAAIC,IAASC,IAAAf,KAAA,gBAAAA,EAAU,kBAAV,gBAAAe,EAAyB,kBAAiB,EAAE,GAC7E,CAACC,GAAaC,CAAc,IAAIH,EAAkB,EAAK,GACvD,CAACI,GAAQC,CAAS,IAAIL,EAASJ,KAAS,CAAG,GAC3C,CAACU,GAAgBC,CAAgB,IAAIP;AAAA,QACzCQ,IAAAtB,KAAA,gBAAAA,EAAU,kBAAV,gBAAAsB,EAAyB,WAAU,CAAC;AAAA,IAAA,GAEhCC,IAAaH,EAAe,QAC5BI,IAAiBC,EAAQ,MAAM;;AACnC,eACEV,IAAAf,KAAA,gBAAAA,EAAU,kBAAV,gBAAAe,EAAyB,mBAAkBH,OAC3CU,IAAAtB,EAAS,cAAc,WAAvB,gBAAAsB,EAA+B,YAAWF,EAAe,YACzDM,IAAA1B,EAAS,UAAT,gBAAA0B,EAAgB,WAAUR;AAAA,IAKrB,GACN,CAACN,GAASZ,GAAUkB,GAAQE,EAAe,MAAM,CAAC,GAE/CO,IAAkBF,EAAQ,MAAM;;AAChC,UAAA,CAAC1B,EAAkB,QAAA;AAEvB,UAAI6B,IAAY;AAEhB,iBAAWC,KAAQ,OAAO,OAAO9B,CAAS,GAAG;AAGrC,cAAA+B,IAAsB,CAAC,CAFRD,EAAK,UAGpBE,MACHhB,IAAAc,EAAK,kBAAL,gBAAAd,EAAoB,aAAUW,KAAAJ,IAAAO,EAAK,kBAAL,gBAAAP,EAAoB,WAApB,gBAAAI,EAA4B,UAAS,KACpE,CAAC,GAACM,IAAAH,EAAK,kBAAL,QAAAG,EAAoB;AAEpB,YAAAF,KAAuB,CAACC,GAAqB;AACnC,UAAAH,IAAA;AACZ;AAAA,QACF;AAAA,MACF;AAEO,aAAAA;AAAA,IAAA,GACN,CAAC7B,CAAS,CAAC,GAERkC,IAAeC,GAAuB;AAAA,MAC1C,WAAA/B;AAAA,MACA,OAAOP;AAAA,IAAA,CACR,GAEKuC,IAAkBC,EAAY,CAACC,MAAqC;AAC7D,MAAAxB,EAAAwB,EAAE,OAAO,KAAK;AAAA,IAC3B,GAAG,CAAE,CAAA,GAECC,IAAYF,EAAY,MAAM;AAClC,MAAAjB,EAAUD,IAAS,GAAG;AAAA,IAAA,GACrB,CAACA,CAAM,CAAC,GAELqB,IAAcH,EAAY,MAAM;AACpC,MAAAjB,EAAUD,IAAS,GAAG;AAAA,IAAA,GACrB,CAACA,CAAM,CAAC,GAELsB,IAAYJ;AAAA,MAChB,CAACK,MAAsB;AACrB,QAAAxB,EAAe,EAAK;AACpB,cAAMyB,IAAgBtB,EAAe,OAAO,CAAQS,MAAA,OAAOA,KAAS,QAAQ,GACtEc,IAAYF,IAAS,CAAC,GAAGC,GAAe,GAAGD,CAAM,IAAIC;AAE3D,QAAID,KACFpB,EAAiBsB,CAAS,GAE5BvC,KAAA,QAAAA,EAAqBF,GAAY;AAAA,UAC/B,OAAO;AAAA,YACL,OAAOgB;AAAA,YACP,WAAWT;AAAA,UACb;AAAA,UACA,eAAe;AAAA,YACb,eAAeG;AAAA,YACf,QAAQ+B;AAAA,UACV;AAAA,QAAA;AAAA,MAEJ;AAAA,MACA,CAAC/B,GAASH,GAAUL,GAAoBF,GAAYgB,GAAQE,CAAc;AAAA,IAAA,GAGtEwB,IAAaR,EAAY,MAAM;AACnC,YAAMS,IAAiBzB,EAAe,OAAO,CAAUqB,MAAA,OAAOA,KAAW,QAAQ;AAE7E,MAAAI,EAAe,SAAS,KAC1B5B,EAAe,EAAI,GACNgB,EAAA;AAAA,QACX,SAAS,wBAAwB/B,CAAU;AAAA,QAC3C,WAAAsC;AAAA,QACA,SAAS,MAAM;AAAA,QAAC;AAAA,QAChB,QAAQK;AAAA,MAAA,CACT,KAESL;OAEX,CAACA,GAAWtC,GAAYkB,GAAgBa,CAAY,CAAC,GAElDa,IAAeV;AAAA,MACnB,CAAC,EAAE,gBAAAW,EAAA,MAAuE;AACxE,QAAA1B,EAAiB0B,CAAc;AAAA,MACjC;AAAA,MACA,CAAC;AAAA,IAAA,GAGGC,IAAkBZ,EAAY,MAAM;AAClC,YAAAa,IAAgB7B,EAAe,IAAI,CAAQS,MAC3C,OAAOA,KAAS,WAAiBA,IAE9BA,EAAK,GACb;AAED,MAAKoB,MAEmB5C,KAAA,QAAAA,EAAA;AAAA,QACtB,YAAY;AAAA,QACZ,kBAAkB;AAAA,QAClB,WAAW4C;AAAA,QACX,mBAAmBH;AAAA,QACnB,gBAAgB1B;AAAA,MAAA;AAAA,IAEjB,GAAA,CAACf,GAAuByC,GAAc1B,CAAc,CAAC,GAElD8B,IAAiBd,EAAY,CAACC,MAA2C;AACvE,YAAA,EAAE,OAAAc,EAAM,IAAId,EAAE;AAEpB,UAAI,CAACc,EAAO;AAEZ,YAAMC,IAAe,MAAM,KAAKD,CAAK,EAAE,IAAI,CAAQE,MAAA;AAC3C,cAAAC,IAAM,IAAI,gBAAgBD,CAAI;AAE7B,eAAA,EAAE,MAAAA,GAAM,KAAAC;MAAI,CACpB;AAED,MAAAjC,EAAiB,OAAc,CAAC,GAAGkC,GAAY,GAAGH,CAAY,CAAC;AAAA,IACjE,GAAG,CAAE,CAAA;AAEL,WAAKpD,IAID,CAACW,KAAeV,IACV,gBAAAuD,EAAAC,GAAA,EAAK,WAAU,SAAQ,UAA4C,+CAAA,CAAA,IAKzE,gBAAAC,EAAAC,GAAA,EAAA,UAAA;AAAA,MAAA,gBAAAD,EAACE,GAAS,EAAA,gBAAe,OAAM,iBAAgB,iBAC7C,UAAA;AAAA,QAAA,gBAAAF,EAACE,GACC,EAAA,UAAA;AAAA,UAAC,gBAAAF,EAAAD,GAAA,EAAK,WAAU,SAAQ,UAAA;AAAA,YAAA;AAAA,YAAehD;AAAA,YAAS;AAAA,UAAA,GAAC;AAAA,UACjD,gBAAA+C,EAACK,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,UACtB,gBAAAH,EAAAE,GAAA,EAAS,gBAAe,OAAM,OAAO,KACpC,UAAA;AAAA,YAAA,gBAAAJ;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,iBAAgB;AAAA,gBAChB,aAAY;AAAA,gBACZ,cAAa;AAAA,gBACb,QAAQ;AAAA,gBACR,SAAS;AAAA,gBACT,aAAY;AAAA,gBAEZ,UAAC,gBAAAJ,EAAAC,GAAA,EAAK,WAAU,SAAS,UAAOvC,GAAA;AAAA,cAAA;AAAA,YAClC;AAAA,YACA,gBAAAsC,EAACK,GAAU,EAAA,OAAO,GAAI,CAAA;AAAA,8BACrBD,GAAS,EAAA,aAAY,SAAQ,UAAU,KAAK,OAAO,KAClD,UAAA;AAAA,cAAC,gBAAAJ,EAAAM,GAAA,EAAU,OAAM,MAAK,SAASxB,GAAW,UAAUpB,MAAWT,GAC7D,UAAC,gBAAA+C,EAAAO,IAAA,CAAA,CAAO,EACV,CAAA;AAAA,cACA,gBAAAP,EAACK,GAAU,EAAA,QAAQ,GAAI,CAAA;AAAA,cACvB,gBAAAL,EAACM,GAAU,EAAA,OAAM,QAAO,SAASvB,GAAa,UAAUrB,MAAW,GACjE,UAAC,gBAAAsC,EAAAQ,IAAA,CAAA,CAAS,EACZ,CAAA;AAAA,YAAA,GACF;AAAA,UAAA,GACF;AAAA,QAAA,GACF;AAAA,0BACCJ,GACC,EAAA,UAAA;AAAA,UAAC,gBAAAJ,EAAAC,GAAA,EAAK,WAAU,SAAQ,UAAQ,YAAA;AAAA,UAChC,gBAAAD,EAACK,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,UACtB,gBAAAL,EAAAS,IAAA,EAAS,OAAOrD,GAAS,UAAUuB,GAAiB;AAAA,QAAA,GACvD;AAAA,QACA,gBAAAuB,EAACE,GAAS,EAAA,aAAY,UACpB,UAAA;AAAA,UAAC,gBAAAF,EAAAD,GAAA,EAAK,WAAU,SAAQ,UAAA;AAAA,YAAA;AAAA,YACR,gBAAAD,EAAC,WAAM,UAAQ,WAAA,CAAA;AAAA,UAAA,GAC/B;AAAA,UACA,gBAAAA,EAACK,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,4BACtBK,IAAe,EAAA,SAAS,QAAQhE,CAAU,IAAI,UAAM,UAAA;AAAA,UACrD,gBAAAsD,EAACK,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,UACvB,gBAAAL;AAAA,YAACW;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,QAAO;AAAA,cACP,IAAI,QAAQjE,CAAU;AAAA,cACtB,UAAQ;AAAA,cACR,UAAUgD;AAAA,YAAA;AAAA,UACZ;AAAA,UACA,gBAAAM;AAAA,YAACY;AAAA,YAAA;AAAA,cACC,SAASpB;AAAA,cACT,OAAOzB,IAAa,GAAGA,CAAU,IAAI8C,GAAU,UAAA9C,GAAY,MAAM,CAAC,KAAK;AAAA,YAAA;AAAA,UACzE;AAAA,QAAA,GACF;AAAA,MAAA,GACF;AAAA,MACA,gBAAAmC;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,gBAAe;AAAA,UACf,aAAY;AAAA,UACZ,iBAAgB;AAAA,UAChB,UAAU;AAAA,UACV,OAAO;AAAA,UAEP,UAAA;AAAA,YAAA,gBAAAJ;AAAA,cAACc;AAAA,cAAA;AAAA,gBACC,QAAQ;AAAA,gBACR,UAAS;AAAA,gBACT,MAAK;AAAA,gBACL,OAAM;AAAA,gBACN,SAAS1B;AAAA,gBACT,MAAM5B;AAAA,gBACN,UAAUQ;AAAA,cAAA;AAAA,YACZ;AAAA,YACA,gBAAAgC,EAACK,GAAU,EAAA,OAAO,GAAI,CAAA;AAAA,YACrB,CAAC5D,KACA,gBAAAuD;AAAA,cAACc;AAAA,cAAA;AAAA,gBACC,QAAQ;AAAA,gBACR,UAAS;AAAA,gBACT,MAAK;AAAA,gBACL,OAAM;AAAA,gBACN,SAAShE;AAAA,gBACT,MAAMC;AAAA,gBACN,UAAU,CAACoB;AAAA,cAAA;AAAA,YACb;AAAA,UAAA;AAAA,QAAA;AAAA,MAEJ;AAAA,IACF,EAAA,CAAA,IA1FO;AAAA,EA4FX;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"subjective-review.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-review.tsx"],"sourcesContent":["import type { TUserTypes } from '../../../ui/types';\nimport type { ISubjectiveSheetProps, IWorksheetResponse } from '../worksheet-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport SubjectiveQuestionFeedback from './subjective-feedback';\nimport { Thumbnail, Img, Wrapper } from './subjective-styled';\n\nexport interface ISubjectiveQuestionReviewProps extends ISubjectiveSheetProps {\n responseId: string;\n response?: IWorksheetResponse;\n nextQuestionId?: string;\n studentId: string;\n responses?: Record<string, IWorksheetResponse>;\n userType: TUserTypes;\n}\n\nexport interface IFile {\n file: File;\n url: string;\n}\n\nconst SubjectiveQuestionReview: FC<ISubjectiveQuestionReviewProps> = memo(props => {\n const { response, openImagesReviewModal, isReviewPending, userType } = props;\n\n const comment = response?.teacherReview?.reviewComment;\n const images = response?.teacherReview?.images ?? [];\n\n if (isReviewPending && userType === 'TEACHER') {\n return <SubjectiveQuestionFeedback {...props} />;\n }\n\n return (\n <Wrapper $gapX={0.5}>\n <FlexView $background=\"ORANGE_5\" $widthX={3.8} $heightX={1.5} $justifyContent=\"center\">\n <Text $renderAs=\"body1Medium\" $color=\"WHITE\">\n Review\n </Text>\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Score\n </Text>\n <Text $renderAs=\"body1\">{response?.score?.score ?? 0}</Text>\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Comments\n </Text>\n {comment ? <Text $renderAs=\"body1\">{comment}</Text> : <Text $renderAs=\"body1\"> -- </Text>}\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Files\n </Text>\n <FlexView $flexDirection=\"row\" $flexWrap>\n {images.map(img => {\n return (\n <span>\n <Thumbnail>\n <Img src={img} onClick={() => openImagesReviewModal?.({ image: img })} />\n </Thumbnail>\n </span>\n );\n })}\n </FlexView>\n </FlexView>\n </Wrapper>\n );\n});\n\nexport default SubjectiveQuestionReview;\n"],"names":["SubjectiveQuestionReview","memo","props","response","openImagesReviewModal","isReviewPending","userType","comment","_a","images","_b","jsx","SubjectiveQuestionFeedback","jsxs","Wrapper","FlexView","Text","Separator","_c","img","Thumbnail","Img"],"mappings":";;;;;;;AA0BM,MAAAA,IAA+DC,EAAK,CAASC,MAAA;;AACjF,QAAM,EAAE,UAAAC,GAAU,uBAAAC,GAAuB,iBAAAC,GAAiB,UAAAC,EAAa,IAAAJ,GAEjEK,KAAUC,IAAAL,KAAA,gBAAAA,EAAU,kBAAV,gBAAAK,EAAyB,eACnCC,MAASC,IAAAP,KAAA,gBAAAA,EAAU,kBAAV,gBAAAO,EAAyB,WAAU,CAAC;AAE/C,SAAAL,KAAmBC,MAAa,YAC3B,gBAAAK,EAACC,GAA4B,EAAA,GAAGV,EAAO,CAAA,IAI9C,gBAAAW,EAACC,GAAQ,EAAA,OAAO,KACd,UAAA;AAAA,IAAA,gBAAAH,EAACI,KAAS,aAAY,YAAW,SAAS,KAAK,UAAU,KAAK,iBAAgB,UAC5E,UAAA,gBAAAJ,EAACK,KAAK,WAAU,eAAc,QAAO,SAAQ,mBAE7C,CAAA,GACF;AAAA,IACA,gBAAAL,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,SAAA;AAAA,wBACCA,GAAK,EAAA,WAAU,SAAS,YAAUE,IAAAf,KAAA,gBAAAA,EAAA,UAAA,gBAAAe,EAAO,UAAS,EAAE,CAAA;AAAA,IAAA,GACvD;AAAA,IACA,gBAAAP,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,YAAA;AAAA,MACCT,IAAW,gBAAAI,EAAAK,GAAA,EAAK,WAAU,SAAS,UAAQT,EAAA,CAAA,IAAW,gBAAAI,EAAAK,GAAA,EAAK,WAAU,SAAQ,UAAI,OAAA,CAAA;AAAA,IAAA,GACpF;AAAA,IACA,gBAAAL,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,SAAA;AAAA,MACA,gBAAAL,EAACI,KAAS,gBAAe,OAAM,WAAS,IACrC,UAAAN,EAAO,IAAI,CAAOU,wBAEd,QACC,EAAA,UAAA,gBAAAR,EAACS,GACC,EAAA,UAAA,gBAAAT,EAACU,KAAI,KAAKF,GAAK,SAAS,MAAMf,KAAA,gBAAAA,EAAwB,EAAE,OAAOe,KAAK,CAAG,EACzE,CAAA,GACF,CAEH,EACH,CAAA;AAAA,IAAA,EACF,CAAA;AAAA,EAAA,GACF;AAEJ,CAAC;"}
1
+ {"version":3,"file":"subjective-review.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-review.tsx"],"sourcesContent":["import type { TUserTypes } from '../../../ui/types';\nimport type { ISubjectiveSheetProps, IWorksheetResponse } from '../worksheet-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport SubjectiveQuestionFeedback from './subjective-feedback';\nimport { Thumbnail, Img, Wrapper } from './subjective-styled';\n\nexport interface ISubjectiveQuestionReviewProps extends ISubjectiveSheetProps {\n responseId: string;\n response?: IWorksheetResponse;\n nextQuestionId?: string;\n studentId: string;\n responses?: Record<string, IWorksheetResponse>;\n userType: TUserTypes;\n}\n\nexport interface IFile {\n file: File;\n url: string;\n}\n\nconst SubjectiveQuestionReview: FC<ISubjectiveQuestionReviewProps> = memo(props => {\n const { response, openImagesReviewModal, isReviewPending, userType } = props;\n\n const comment = response?.teacherReview?.reviewComment;\n const images = response?.teacherReview?.images ?? [];\n\n if (isReviewPending && userType === 'TEACHER') {\n return <SubjectiveQuestionFeedback {...props} />;\n }\n\n return (\n <Wrapper $gapX={0.5}>\n <FlexView $background=\"ORANGE_5\" $widthX={3.8} $heightX={1.5} $justifyContent=\"center\">\n <Text $renderAs=\"body1Medium\" $color=\"WHITE\">\n Review\n </Text>\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Score\n </Text>\n <Text $renderAs=\"body1\">{response?.score?.score ?? 0}</Text>\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Comments\n </Text>\n {comment ? <Text $renderAs=\"body1\">{comment}</Text> : <Text $renderAs=\"body1\"> -- </Text>}\n </FlexView>\n <Separator heightX={1} />\n <FlexView $flexDirection=\"row\">\n <Text $renderAs=\"body1\" $widthX={8}>\n Files\n </Text>\n <FlexView $flexDirection=\"row\" $flexWrap>\n {images.map(img => {\n return (\n <span>\n <Thumbnail>\n <Img src={img} onClick={() => openImagesReviewModal?.({ image: img })} />\n </Thumbnail>\n </span>\n );\n })}\n </FlexView>\n </FlexView>\n </Wrapper>\n );\n});\n\nexport default SubjectiveQuestionReview;\n"],"names":["SubjectiveQuestionReview","memo","props","response","openImagesReviewModal","isReviewPending","userType","comment","_a","images","_b","jsx","SubjectiveQuestionFeedback","jsxs","Wrapper","FlexView","Text","Separator","_c","img","Thumbnail","Img"],"mappings":";;;;;;;AA0BM,MAAAA,IAA+DC,EAAK,CAASC,MAAA;;AACjF,QAAM,EAAE,UAAAC,GAAU,uBAAAC,GAAuB,iBAAAC,GAAiB,UAAAC,MAAaJ,GAEjEK,KAAUC,IAAAL,KAAA,gBAAAA,EAAU,kBAAV,gBAAAK,EAAyB,eACnCC,MAASC,IAAAP,KAAA,gBAAAA,EAAU,kBAAV,gBAAAO,EAAyB,WAAU,CAAA;AAE9C,SAAAL,KAAmBC,MAAa,YAC3B,gBAAAK,EAACC,GAA4B,EAAA,GAAGV,EAAO,CAAA,IAI9C,gBAAAW,EAACC,GAAQ,EAAA,OAAO,KACd,UAAA;AAAA,IAAA,gBAAAH,EAACI,KAAS,aAAY,YAAW,SAAS,KAAK,UAAU,KAAK,iBAAgB,UAC5E,UAAA,gBAAAJ,EAACK,KAAK,WAAU,eAAc,QAAO,SAAQ,mBAE7C,CAAA,GACF;AAAA,IACA,gBAAAL,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,SAAA;AAAA,wBACCA,GAAK,EAAA,WAAU,SAAS,YAAUE,IAAAf,KAAA,gBAAAA,EAAA,UAAA,gBAAAe,EAAO,UAAS,GAAE;AAAA,IAAA,GACvD;AAAA,IACA,gBAAAP,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,YAAA;AAAA,MACCT,IAAW,gBAAAI,EAAAK,GAAA,EAAK,WAAU,SAAS,UAAQT,EAAA,CAAA,IAAW,gBAAAI,EAAAK,GAAA,EAAK,WAAU,SAAQ,UAAI,QAAA;AAAA,IAAA,GACpF;AAAA,IACA,gBAAAL,EAACM,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ,EAACE,GAAS,EAAA,gBAAe,OACvB,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAK,EAAA,WAAU,SAAQ,SAAS,GAAG,UAEpC,SAAA;AAAA,MACA,gBAAAL,EAACI,KAAS,gBAAe,OAAM,WAAS,IACrC,UAAAN,EAAO,IAAI,CAAOU,wBAEd,QACC,EAAA,UAAA,gBAAAR,EAACS,GACC,EAAA,UAAA,gBAAAT,EAACU,KAAI,KAAKF,GAAK,SAAS,MAAMf,KAAA,gBAAAA,EAAwB,EAAE,OAAOe,KAAQ,CAAA,GACzE,EACF,CAAA,CAEH,GACH;AAAA,IAAA,GACF;AAAA,EACF,EAAA,CAAA;AAEJ,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"subjective-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\n\nexport const TextArea = styled.textarea(({ theme }) => {\n const { BLACK_75, WHITE } = theme.colors;\n\n return `\n width: 350px;\n height: 100px;\n resize: none;\n font-size: 16px;\n font-weight: 400;\n padding: 10px;\n cursor: 'text'\n border: 1px solid ${BLACK_75};\n border-radius: 3px;\n background-color: ${WHITE};\n`;\n});\n\nexport const FileInput = styled.input`\n color: transparent;\n max-width: 100px;\n display: none;\n`;\n\nexport const FileInputLabel = styled.label`\n border: ${`1px solid #8DD5F1`};\n background: transparent;\n height: 30px;\n border-radius: 4px;\n padding-top: 4px;\n display: block;\n font-size: 14px;\n line-height: 22px;\n font-weight: 700;\n text-align: center;\n font-style: normal;\n color: ${'#8DD5F1'};\n cursor: ${'pointer'};\n width: 110px;\n\n &:hover {\n border: ${'1px solid #1657e4'};\n color: ${'#8DD5F1'};\n }\n`;\n\nexport const UnderlinedText = styled(Text)`\n text-decoration: underline;\n`;\n\nexport const Wrapper = styled(FlexView)`\n border: 1px solid lightgray;\n margin: 12px 0;\n padding: 12px;\n`;\n\nexport const Thumbnail = styled(FlexView)`\n width: 80px;\n height: 80px;\n padding: 3px;\n margin-right: 10px;\n margin-bottom: 10px;\n border: 1px solid #d0d0d0;\n`;\n\nexport const Img = styled.img`\n width: 72px !important;\n height: 72px !important;\n cursor: pointer !important;\n`;\n"],"names":["TextArea","styled","theme","BLACK_75","WHITE","FileInput","FileInputLabel","Text","Wrapper","FlexView","Thumbnail","Img"],"mappings":";;;AAKO,MAAMA,IAAWC,EAAO,SAAS,CAAC,EAAE,OAAAC,QAAY;AACrD,QAAM,EAAE,UAAAC,GAAU,OAAAC,EAAM,IAAIF,EAAM;AAE3B,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAQaC,CAAQ;AAAA;AAAA,sBAERC,CAAK;AAAA;AAE3B,CAAC,GAEYC,IAAYJ,EAAO;AAAA;AAAA;AAAA;AAAA,GAMnBK,IAAiBL,EAAO;AAAA,YACzB,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWpB,SAAS;AAAA,YACR,SAAS;AAAA;AAAA;AAAA;AAAA,cAIP,mBAAmB;AAAA,aACpB,SAAS;AAAA;AAAA;AAIQA,EAAOM,CAAI;AAAA;AAAA;AAI5B,MAAAC,IAAUP,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA,GAMzBC,IAAYT,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAS3BE,IAAMV,EAAO;AAAA;AAAA;AAAA;AAAA;"}
1
+ {"version":3,"file":"subjective-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\n\nexport const TextArea = styled.textarea(({ theme }) => {\n const { BLACK_75, WHITE } = theme.colors;\n\n return `\n width: 350px;\n height: 100px;\n resize: none;\n font-size: 16px;\n font-weight: 400;\n padding: 10px;\n cursor: 'text'\n border: 1px solid ${BLACK_75};\n border-radius: 3px;\n background-color: ${WHITE};\n`;\n});\n\nexport const FileInput = styled.input`\n color: transparent;\n max-width: 100px;\n display: none;\n`;\n\nexport const FileInputLabel = styled.label`\n border: ${`1px solid #8DD5F1`};\n background: transparent;\n height: 30px;\n border-radius: 4px;\n padding-top: 4px;\n display: block;\n font-size: 14px;\n line-height: 22px;\n font-weight: 700;\n text-align: center;\n font-style: normal;\n color: ${'#8DD5F1'};\n cursor: ${'pointer'};\n width: 110px;\n\n &:hover {\n border: ${'1px solid #1657e4'};\n color: ${'#8DD5F1'};\n }\n`;\n\nexport const UnderlinedText = styled(Text)`\n text-decoration: underline;\n`;\n\nexport const Wrapper = styled(FlexView)`\n border: 1px solid lightgray;\n margin: 12px 0;\n padding: 12px;\n`;\n\nexport const Thumbnail = styled(FlexView)`\n width: 80px;\n height: 80px;\n padding: 3px;\n margin-right: 10px;\n margin-bottom: 10px;\n border: 1px solid #d0d0d0;\n`;\n\nexport const Img = styled.img`\n width: 72px !important;\n height: 72px !important;\n cursor: pointer !important;\n`;\n"],"names":["TextArea","styled","theme","BLACK_75","WHITE","FileInput","FileInputLabel","Text","Wrapper","FlexView","Thumbnail","Img"],"mappings":";;;AAKO,MAAMA,IAAWC,EAAO,SAAS,CAAC,EAAE,OAAAC,QAAY;AACrD,QAAM,EAAE,UAAAC,GAAU,OAAAC,MAAUF,EAAM;AAE3B,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAQaC,CAAQ;AAAA;AAAA,sBAERC,CAAK;AAAA;AAE3B,CAAC,GAEYC,IAAYJ,EAAO;AAAA;AAAA;AAAA;AAAA,GAMnBK,IAAiBL,EAAO;AAAA,YACzB,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWpB,SAAS;AAAA,YACR,SAAS;AAAA;AAAA;AAAA;AAAA,cAIP,mBAAmB;AAAA,aACpB,SAAS;AAAA;AAAA;AAIQA,EAAOM,CAAI;AAAA;AAAA;AAI5B,MAAAC,IAAUP,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA,GAMzBC,IAAYT,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAS3BE,IAAMV,EAAO;AAAA;AAAA;AAAA;AAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"advanced-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/advanced-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst AdvancedPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"orange\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Great work!\n </Text>\n <Text $renderAs=\"h2\" $align=\"center\">\n A new challenge awaits!\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default AdvancedPracticeIntro;\n"],"names":["AdvancedPracticeIntro","memo","jsxs","QuestionBackdrop","jsx","Text"],"mappings":";;;;AAKM,MAAAA,IAAwBC,EAAK,MAE/B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA;AAAA,EAAA,gBAAAC,EAACC,KAAK,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAE3D,cAAA,CAAA;AAAA,oBACCA,GAAK,EAAA,WAAU,MAAK,QAAO,UAAS,UAErC,0BAAA,CAAA;AAAA,GACF,CAEH;"}
1
+ {"version":3,"file":"advanced-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/advanced-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst AdvancedPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"orange\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Great work!\n </Text>\n <Text $renderAs=\"h2\" $align=\"center\">\n A new challenge awaits!\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default AdvancedPracticeIntro;\n"],"names":["AdvancedPracticeIntro","memo","jsxs","QuestionBackdrop","jsx","Text"],"mappings":";;;;AAKM,MAAAA,IAAwBC,EAAK,MAE/B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA;AAAA,EAAA,gBAAAC,EAACC,KAAK,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAE3D,cAAA,CAAA;AAAA,oBACCA,GAAK,EAAA,WAAU,MAAK,QAAO,UAAS,UAErC,2BAAA;AACF,EAAA,CAAA,CAEH;"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/basic-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst BasicPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"yellow\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Great job with learning!\n <br />\n Now it is practice time.\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default BasicPracticeIntro;\n"],"names":["BasicPracticeIntro","memo","jsx","QuestionBackdrop","jsxs","Text"],"mappings":";;;;AAKM,MAAAA,IAAqBC,EAAK,MAE5B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA,gBAAAC,EAACC,GAAK,EAAA,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAAA;AAAA,EAAA;AAAA,oBAExD,MAAG,EAAA;AAAA,EAAE;AAAA,EAAA,CAER,EACF,CAAA,CAEH;"}
1
+ {"version":3,"file":"basic-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/basic-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst BasicPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"yellow\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Great job with learning!\n <br />\n Now it is practice time.\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default BasicPracticeIntro;\n"],"names":["BasicPracticeIntro","memo","jsx","QuestionBackdrop","jsxs","Text"],"mappings":";;;;AAKM,MAAAA,IAAqBC,EAAK,MAE5B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA,gBAAAC,EAACC,GAAK,EAAA,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAAA;AAAA,EAAA;AAAA,oBAExD,MAAG,EAAA;AAAA,EAAE;AAAA,EAER,CAAA,EACF,CAAA,CAEH;"}
@@ -1 +1 @@
1
- {"version":3,"file":"exit-ticket-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/exit-ticket-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst ExitTicketIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"purple\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={16}>\n Good job on practice!\n </Text>\n <Text $renderAs=\"h2\" $align=\"center\">\n Time to solve a few\n <br />\n questions on your own!\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default ExitTicketIntro;\n"],"names":["ExitTicketIntro","memo","jsxs","QuestionBackdrop","jsx","Text"],"mappings":";;;;AAKM,MAAAA,IAAkBC,EAAK,MAEzB,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA;AAAA,EAAA,gBAAAC,EAACC,KAAK,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAE3D,wBAAA,CAAA;AAAA,EACC,gBAAAH,EAAAG,GAAA,EAAK,WAAU,MAAK,QAAO,UAAS,UAAA;AAAA,IAAA;AAAA,sBAElC,MAAG,EAAA;AAAA,IAAE;AAAA,EAAA,EAER,CAAA;AAAA,GACF,CAEH;"}
1
+ {"version":3,"file":"exit-ticket-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/exit-ticket-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst ExitTicketIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"purple\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={16}>\n Good job on practice!\n </Text>\n <Text $renderAs=\"h2\" $align=\"center\">\n Time to solve a few\n <br />\n questions on your own!\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default ExitTicketIntro;\n"],"names":["ExitTicketIntro","memo","jsxs","QuestionBackdrop","jsx","Text"],"mappings":";;;;AAKM,MAAAA,IAAkBC,EAAK,MAEzB,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA;AAAA,EAAA,gBAAAC,EAACC,KAAK,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAE3D,wBAAA,CAAA;AAAA,EACC,gBAAAH,EAAAG,GAAA,EAAK,WAAU,MAAK,QAAO,UAAS,UAAA;AAAA,IAAA;AAAA,sBAElC,MAAG,EAAA;AAAA,IAAE;AAAA,EAAA,GAER;AACF,EAAA,CAAA,CAEH;"}
@@ -1 +1 @@
1
- {"version":3,"file":"regular-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/regular-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst RegularPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"yellow\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Good job!\n <br />\n Let’s step up for more practice.\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default RegularPracticeIntro;\n"],"names":["RegularPracticeIntro","memo","jsx","QuestionBackdrop","jsxs","Text"],"mappings":";;;;AAKM,MAAAA,IAAuBC,EAAK,MAE9B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA,gBAAAC,EAACC,GAAK,EAAA,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAAA;AAAA,EAAA;AAAA,oBAExD,MAAG,EAAA;AAAA,EAAE;AAAA,EAAA,CAER,EACF,CAAA,CAEH;"}
1
+ {"version":3,"file":"regular-practice-intro.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-question/system-intros/regular-practice-intro.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport QuestionBackdrop from '../question-backdrop/question-backdrop';\n\nconst RegularPracticeIntro = memo(() => {\n return (\n <QuestionBackdrop paperColor=\"yellow\">\n <Text $renderAs=\"quote\" $align=\"center\" $marginBottom={40}>\n Good job!\n <br />\n Let’s step up for more practice.\n </Text>\n </QuestionBackdrop>\n );\n});\n\nexport default RegularPracticeIntro;\n"],"names":["RegularPracticeIntro","memo","jsx","QuestionBackdrop","jsxs","Text"],"mappings":";;;;AAKM,MAAAA,IAAuBC,EAAK,MAE9B,gBAAAC,EAACC,GAAiB,EAAA,YAAW,UAC3B,UAAA,gBAAAC,EAACC,GAAK,EAAA,WAAU,SAAQ,QAAO,UAAS,eAAe,IAAI,UAAA;AAAA,EAAA;AAAA,oBAExD,MAAG,EAAA;AAAA,EAAE;AAAA,EAER,CAAA,EACF,CAAA,CAEH;"}