@cuemath/leap 3.1.14 → 3.1.15-hg1

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 (1302) 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/apple-icon.js.map +1 -1
  4. package/dist/assets/line-icons/icons/back.js +4 -4
  5. package/dist/assets/line-icons/icons/back.js.map +1 -1
  6. package/dist/assets/line-icons/icons/back2.js +3 -3
  7. package/dist/assets/line-icons/icons/back2.js.map +1 -1
  8. package/dist/assets/line-icons/icons/bin.js +8 -8
  9. package/dist/assets/line-icons/icons/bin.js.map +1 -1
  10. package/dist/assets/line-icons/icons/bin2.js +5 -5
  11. package/dist/assets/line-icons/icons/bin2.js.map +1 -1
  12. package/dist/assets/line-icons/icons/book-closed.js +3 -3
  13. package/dist/assets/line-icons/icons/book-closed.js.map +1 -1
  14. package/dist/assets/line-icons/icons/book.js +4 -4
  15. package/dist/assets/line-icons/icons/book.js.map +1 -1
  16. package/dist/assets/line-icons/icons/book2.js +3 -3
  17. package/dist/assets/line-icons/icons/book2.js.map +1 -1
  18. package/dist/assets/line-icons/icons/bookmark-stroke-icon.js.map +1 -1
  19. package/dist/assets/line-icons/icons/bookmark.js +2 -2
  20. package/dist/assets/line-icons/icons/bookmark.js.map +1 -1
  21. package/dist/assets/line-icons/icons/bulb.js +8 -8
  22. package/dist/assets/line-icons/icons/bulb.js.map +1 -1
  23. package/dist/assets/line-icons/icons/bulb2.js +3 -3
  24. package/dist/assets/line-icons/icons/bulb2.js.map +1 -1
  25. package/dist/assets/line-icons/icons/calculator.js.map +1 -1
  26. package/dist/assets/line-icons/icons/calendar.js +3 -3
  27. package/dist/assets/line-icons/icons/calendar.js.map +1 -1
  28. package/dist/assets/line-icons/icons/carat-left.js.map +1 -1
  29. package/dist/assets/line-icons/icons/carat-right.js.map +1 -1
  30. package/dist/assets/line-icons/icons/chat.js +4 -4
  31. package/dist/assets/line-icons/icons/chat.js.map +1 -1
  32. package/dist/assets/line-icons/icons/check.js +3 -3
  33. package/dist/assets/line-icons/icons/check.js.map +1 -1
  34. package/dist/assets/line-icons/icons/check2.js +3 -3
  35. package/dist/assets/line-icons/icons/check2.js.map +1 -1
  36. package/dist/assets/line-icons/icons/chevron-down.js +6 -6
  37. package/dist/assets/line-icons/icons/chevron-down.js.map +1 -1
  38. package/dist/assets/line-icons/icons/chevron-left.js +4 -4
  39. package/dist/assets/line-icons/icons/chevron-left.js.map +1 -1
  40. package/dist/assets/line-icons/icons/chevron-right.js +6 -6
  41. package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
  42. package/dist/assets/line-icons/icons/circle-back.js.map +1 -1
  43. package/dist/assets/line-icons/icons/clear-all.js.map +1 -1
  44. package/dist/assets/line-icons/icons/clipboard.js +5 -5
  45. package/dist/assets/line-icons/icons/clipboard.js.map +1 -1
  46. package/dist/assets/line-icons/icons/clock.js +3 -3
  47. package/dist/assets/line-icons/icons/clock.js.map +1 -1
  48. package/dist/assets/line-icons/icons/clock2.js +5 -5
  49. package/dist/assets/line-icons/icons/clock2.js.map +1 -1
  50. package/dist/assets/line-icons/icons/closed-eye.js.map +1 -1
  51. package/dist/assets/line-icons/icons/code.js +3 -3
  52. package/dist/assets/line-icons/icons/code.js.map +1 -1
  53. package/dist/assets/line-icons/icons/copy.js +4 -4
  54. package/dist/assets/line-icons/icons/copy.js.map +1 -1
  55. package/dist/assets/line-icons/icons/cross.js +4 -4
  56. package/dist/assets/line-icons/icons/cross.js.map +1 -1
  57. package/dist/assets/line-icons/icons/cue-rocket.js +2 -2
  58. package/dist/assets/line-icons/icons/cue-rocket.js.map +1 -1
  59. package/dist/assets/line-icons/icons/cuemath-logo.js +2 -2
  60. package/dist/assets/line-icons/icons/cuemath-logo.js.map +1 -1
  61. package/dist/assets/line-icons/icons/cursor.js.map +1 -1
  62. package/dist/assets/line-icons/icons/dash-arrow.js +3 -3
  63. package/dist/assets/line-icons/icons/dash-arrow.js.map +1 -1
  64. package/dist/assets/line-icons/icons/down.js +2 -2
  65. package/dist/assets/line-icons/icons/down.js.map +1 -1
  66. package/dist/assets/line-icons/icons/download.js.map +1 -1
  67. package/dist/assets/line-icons/icons/draft.js +4 -4
  68. package/dist/assets/line-icons/icons/draft.js.map +1 -1
  69. package/dist/assets/line-icons/icons/drag.js +3 -3
  70. package/dist/assets/line-icons/icons/drag.js.map +1 -1
  71. package/dist/assets/line-icons/icons/edit-star.js +5 -5
  72. package/dist/assets/line-icons/icons/edit-star.js.map +1 -1
  73. package/dist/assets/line-icons/icons/edit.js +5 -5
  74. package/dist/assets/line-icons/icons/edit.js.map +1 -1
  75. package/dist/assets/line-icons/icons/edit2.js +2 -2
  76. package/dist/assets/line-icons/icons/edit2.js.map +1 -1
  77. package/dist/assets/line-icons/icons/equation.js.map +1 -1
  78. package/dist/assets/line-icons/icons/eraser.js +3 -3
  79. package/dist/assets/line-icons/icons/eraser.js.map +1 -1
  80. package/dist/assets/line-icons/icons/exclamation.js +2 -2
  81. package/dist/assets/line-icons/icons/exclamation.js.map +1 -1
  82. package/dist/assets/line-icons/icons/eye.js +4 -4
  83. package/dist/assets/line-icons/icons/eye.js.map +1 -1
  84. package/dist/assets/line-icons/icons/eye2.js +2 -2
  85. package/dist/assets/line-icons/icons/eye2.js.map +1 -1
  86. package/dist/assets/line-icons/icons/game.js +3 -3
  87. package/dist/assets/line-icons/icons/game.js.map +1 -1
  88. package/dist/assets/line-icons/icons/google-icon.js.map +1 -1
  89. package/dist/assets/line-icons/icons/hand.js +2 -2
  90. package/dist/assets/line-icons/icons/hand.js.map +1 -1
  91. package/dist/assets/line-icons/icons/help.js +3 -3
  92. package/dist/assets/line-icons/icons/help.js.map +1 -1
  93. package/dist/assets/line-icons/icons/highlighter.js +4 -4
  94. package/dist/assets/line-icons/icons/highlighter.js.map +1 -1
  95. package/dist/assets/line-icons/icons/home.js +3 -3
  96. package/dist/assets/line-icons/icons/home.js.map +1 -1
  97. package/dist/assets/line-icons/icons/home2.js.map +1 -1
  98. package/dist/assets/line-icons/icons/image.js +3 -3
  99. package/dist/assets/line-icons/icons/image.js.map +1 -1
  100. package/dist/assets/line-icons/icons/important.js.map +1 -1
  101. package/dist/assets/line-icons/icons/info.js +3 -3
  102. package/dist/assets/line-icons/icons/info.js.map +1 -1
  103. package/dist/assets/line-icons/icons/info2.js +3 -3
  104. package/dist/assets/line-icons/icons/info2.js.map +1 -1
  105. package/dist/assets/line-icons/icons/left.js +3 -3
  106. package/dist/assets/line-icons/icons/left.js.map +1 -1
  107. package/dist/assets/line-icons/icons/lock.js +3 -3
  108. package/dist/assets/line-icons/icons/lock.js.map +1 -1
  109. package/dist/assets/line-icons/icons/lock2.js +2 -2
  110. package/dist/assets/line-icons/icons/lock2.js.map +1 -1
  111. package/dist/assets/line-icons/icons/lock3.js +5 -5
  112. package/dist/assets/line-icons/icons/lock3.js.map +1 -1
  113. package/dist/assets/line-icons/icons/minus.js +2 -2
  114. package/dist/assets/line-icons/icons/minus.js.map +1 -1
  115. package/dist/assets/line-icons/icons/minus2.js +3 -3
  116. package/dist/assets/line-icons/icons/minus2.js.map +1 -1
  117. package/dist/assets/line-icons/icons/mistake.js +3 -3
  118. package/dist/assets/line-icons/icons/mistake.js.map +1 -1
  119. package/dist/assets/line-icons/icons/mobile.js +3 -3
  120. package/dist/assets/line-icons/icons/mobile.js.map +1 -1
  121. package/dist/assets/line-icons/icons/more-vertical.js +3 -3
  122. package/dist/assets/line-icons/icons/more-vertical.js.map +1 -1
  123. package/dist/assets/line-icons/icons/next.js +5 -5
  124. package/dist/assets/line-icons/icons/next.js.map +1 -1
  125. package/dist/assets/line-icons/icons/next2.js +4 -4
  126. package/dist/assets/line-icons/icons/next2.js.map +1 -1
  127. package/dist/assets/line-icons/icons/pan.js.map +1 -1
  128. package/dist/assets/line-icons/icons/pencil.js +3 -3
  129. package/dist/assets/line-icons/icons/pencil.js.map +1 -1
  130. package/dist/assets/line-icons/icons/play.js +5 -5
  131. package/dist/assets/line-icons/icons/play.js.map +1 -1
  132. package/dist/assets/line-icons/icons/play2.js +5 -5
  133. package/dist/assets/line-icons/icons/play2.js.map +1 -1
  134. package/dist/assets/line-icons/icons/plus.js +4 -4
  135. package/dist/assets/line-icons/icons/plus.js.map +1 -1
  136. package/dist/assets/line-icons/icons/plus2.js +3 -3
  137. package/dist/assets/line-icons/icons/plus2.js.map +1 -1
  138. package/dist/assets/line-icons/icons/pointer.js +2 -2
  139. package/dist/assets/line-icons/icons/pointer.js.map +1 -1
  140. package/dist/assets/line-icons/icons/practice.js +2 -2
  141. package/dist/assets/line-icons/icons/practice.js.map +1 -1
  142. package/dist/assets/line-icons/icons/progress.js +3 -3
  143. package/dist/assets/line-icons/icons/progress.js.map +1 -1
  144. package/dist/assets/line-icons/icons/question-letter.js +3 -3
  145. package/dist/assets/line-icons/icons/question-letter.js.map +1 -1
  146. package/dist/assets/line-icons/icons/question.js +5 -5
  147. package/dist/assets/line-icons/icons/question.js.map +1 -1
  148. package/dist/assets/line-icons/icons/redo.js +4 -4
  149. package/dist/assets/line-icons/icons/redo.js.map +1 -1
  150. package/dist/assets/line-icons/icons/right.js +3 -3
  151. package/dist/assets/line-icons/icons/right.js.map +1 -1
  152. package/dist/assets/line-icons/icons/ruler.js +3 -3
  153. package/dist/assets/line-icons/icons/ruler.js.map +1 -1
  154. package/dist/assets/line-icons/icons/scribble.js.map +1 -1
  155. package/dist/assets/line-icons/icons/search.js +3 -3
  156. package/dist/assets/line-icons/icons/search.js.map +1 -1
  157. package/dist/assets/line-icons/icons/share.js.map +1 -1
  158. package/dist/assets/line-icons/icons/sheet.js +9 -9
  159. package/dist/assets/line-icons/icons/sheet.js.map +1 -1
  160. package/dist/assets/line-icons/icons/sketch.js +4 -4
  161. package/dist/assets/line-icons/icons/sketch.js.map +1 -1
  162. package/dist/assets/line-icons/icons/skip-colored.js +5 -5
  163. package/dist/assets/line-icons/icons/skip-colored.js.map +1 -1
  164. package/dist/assets/line-icons/icons/skip.js +6 -6
  165. package/dist/assets/line-icons/icons/skip.js.map +1 -1
  166. package/dist/assets/line-icons/icons/skip2.js +4 -4
  167. package/dist/assets/line-icons/icons/skip2.js.map +1 -1
  168. package/dist/assets/line-icons/icons/square-dots.js.map +1 -1
  169. package/dist/assets/line-icons/icons/star.js +3 -3
  170. package/dist/assets/line-icons/icons/star.js.map +1 -1
  171. package/dist/assets/line-icons/icons/star2.js +3 -3
  172. package/dist/assets/line-icons/icons/star2.js.map +1 -1
  173. package/dist/assets/line-icons/icons/status.js +3 -3
  174. package/dist/assets/line-icons/icons/status.js.map +1 -1
  175. package/dist/assets/line-icons/icons/striked-eye.js +4 -4
  176. package/dist/assets/line-icons/icons/striked-eye.js.map +1 -1
  177. package/dist/assets/line-icons/icons/switch-icon.js +4 -4
  178. package/dist/assets/line-icons/icons/switch-icon.js.map +1 -1
  179. package/dist/assets/line-icons/icons/text-icon.js.map +1 -1
  180. package/dist/assets/line-icons/icons/tick.js +2 -2
  181. package/dist/assets/line-icons/icons/tick.js.map +1 -1
  182. package/dist/assets/line-icons/icons/tile.js.map +1 -1
  183. package/dist/assets/line-icons/icons/tri-dots.js.map +1 -1
  184. package/dist/assets/line-icons/icons/tri2-dots.js.map +1 -1
  185. package/dist/assets/line-icons/icons/trophy.js +3 -3
  186. package/dist/assets/line-icons/icons/trophy.js.map +1 -1
  187. package/dist/assets/line-icons/icons/tutoring.js +4 -4
  188. package/dist/assets/line-icons/icons/tutoring.js.map +1 -1
  189. package/dist/assets/line-icons/icons/undo.js +4 -4
  190. package/dist/assets/line-icons/icons/undo.js.map +1 -1
  191. package/dist/assets/line-icons/icons/unlock.js +4 -4
  192. package/dist/assets/line-icons/icons/unlock.js.map +1 -1
  193. package/dist/assets/line-icons/icons/unlock2.js +4 -4
  194. package/dist/assets/line-icons/icons/unlock2.js.map +1 -1
  195. package/dist/assets/line-icons/icons/up.js +3 -3
  196. package/dist/assets/line-icons/icons/up.js.map +1 -1
  197. package/dist/assets/line-icons/icons/upload.js.map +1 -1
  198. package/dist/assets/line-icons/icons/user.js +3 -3
  199. package/dist/assets/line-icons/icons/user.js.map +1 -1
  200. package/dist/assets/line-icons/icons/user2.js +2 -2
  201. package/dist/assets/line-icons/icons/user2.js.map +1 -1
  202. package/dist/assets/line-icons/icons/zoom-in.js.map +1 -1
  203. package/dist/assets/line-icons/icons/zoom-out.js.map +1 -1
  204. package/dist/constants/country.js.map +1 -1
  205. package/dist/features/auth/account-selector/account-selector.js.map +1 -1
  206. package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
  207. package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js.map +1 -1
  208. package/dist/features/auth/comps/input-status-icon/input-status-icon.js.map +1 -1
  209. package/dist/features/auth/comps/overlay-loader/overlay-loader.js.map +1 -1
  210. package/dist/features/auth/comps/resend-otp/hooks/use-resend-timer.js.map +1 -1
  211. package/dist/features/auth/comps/resend-otp/resend-otp.js.map +1 -1
  212. package/dist/features/auth/comps/tabs/tab-tem/tab-item.js.map +1 -1
  213. package/dist/features/auth/comps/tabs/tabs-styled.js.map +1 -1
  214. package/dist/features/auth/comps/tabs/tabs.js.map +1 -1
  215. package/dist/features/auth/comps/user-list/user-item/user-item.js.map +1 -1
  216. package/dist/features/auth/comps/user-list/user-list-constants.js.map +1 -1
  217. package/dist/features/auth/comps/user-list/user-list.js.map +1 -1
  218. package/dist/features/auth/forgot-password/otp-form/otp-form.js.map +1 -1
  219. package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js.map +1 -1
  220. package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js.map +1 -1
  221. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js.map +1 -1
  222. package/dist/features/auth/login/login-constants.js.map +1 -1
  223. package/dist/features/auth/login/social-account-not-found/social-account-not-found.js +1 -1
  224. package/dist/features/auth/login/social-account-not-found/social-account-not-found.js.map +1 -1
  225. package/dist/features/auth/login/social-login-methods/social-login-methods.js.map +1 -1
  226. package/dist/features/auth/login/username-password-form/username-password-form.js.map +1 -1
  227. package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js.map +1 -1
  228. package/dist/features/auth/signup/claim-user-account/claim-user-account.js.map +1 -1
  229. package/dist/features/auth/signup/custom-input-field/country-selector/country-code-button.js.map +1 -1
  230. package/dist/features/auth/signup/custom-input-field/country-selector/country-list-menu.js.map +1 -1
  231. package/dist/features/auth/signup/custom-input-field/country-selector/country-selector.js.map +1 -1
  232. package/dist/features/auth/signup/custom-input-field/custom-input-field.js.map +1 -1
  233. package/dist/features/auth/signup/custom-input-field/date-picker-input/date-picker-input.js.map +1 -1
  234. package/dist/features/auth/signup/custom-input-field/grade-input/grade-input.js.map +1 -1
  235. package/dist/features/auth/signup/custom-input-field/input-wrapper/input-wrapper.js.map +1 -1
  236. package/dist/features/auth/signup/signup-constants.js.map +1 -1
  237. package/dist/features/auth/signup/signup-methods/signup-methods.js.map +1 -1
  238. package/dist/features/auth/signup/user-type-selector/user-type-card/user-type-card-styled.js.map +1 -1
  239. package/dist/features/auth/signup/user-type-selector/user-type-card/user-type-card.js.map +1 -1
  240. package/dist/features/auth/signup/user-type-selector/user-type-selector.js.map +1 -1
  241. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker-context.js.map +1 -1
  242. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js +14 -14
  243. package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js.map +1 -1
  244. package/dist/features/blockers/multi-tab-blocker/use-is-tab-blocked.js +2 -2
  245. package/dist/features/blockers/multi-tab-blocker/use-is-tab-blocked.js.map +1 -1
  246. package/dist/features/chapters/api/chapter.js.map +1 -1
  247. package/dist/features/chapters/chapter/chapter.js +20 -20
  248. package/dist/features/chapters/chapter/chapter.js.map +1 -1
  249. package/dist/features/chapters/chapter/comps/chapter-banner/chapter-banner-styled.js.map +1 -1
  250. package/dist/features/chapters/chapter/comps/chapter-banner/chapter-banner.js.map +1 -1
  251. package/dist/features/chapters/chapter/comps/core-lessons/core-lessons-styled.js.map +1 -1
  252. package/dist/features/chapters/chapter/comps/core-lessons/core-lessons.js.map +1 -1
  253. package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources-styled.js.map +1 -1
  254. package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources.js.map +1 -1
  255. package/dist/features/chapters/chapter/comps/supplementary-resources/utils.js.map +1 -1
  256. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +3 -3
  257. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
  258. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  259. package/dist/features/chapters/chapters-list/chapters-list.js +11 -11
  260. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  261. package/dist/features/chapters/lpar-chapter/block-section/block-section-styled.js.map +1 -1
  262. package/dist/features/chapters/lpar-chapter/block-section/block-section.js.map +1 -1
  263. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-action.js.map +1 -1
  264. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-header.js.map +1 -1
  265. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-utils.js +1 -1
  266. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-utils.js.map +1 -1
  267. package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
  268. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item-utils.js.map +1 -1
  269. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map +1 -1
  270. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js +4 -4
  271. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js.map +1 -1
  272. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary-utils.js.map +1 -1
  273. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary.js +15 -15
  274. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary.js.map +1 -1
  275. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/summary-module.js.map +1 -1
  276. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/student-actions/student-actions.js.map +1 -1
  277. package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/teacher-actions/teacher-actions.js.map +1 -1
  278. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/context-menu-helper-styled.js.map +1 -1
  279. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/context-menu-helper/menu-element.js.map +1 -1
  280. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/reward-n-actions-styled.js.map +1 -1
  281. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/reward-n-actions.js.map +1 -1
  282. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions-utils.js.map +1 -1
  283. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js.map +1 -1
  284. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js +2 -2
  285. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
  286. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-icon.js.map +1 -1
  287. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-utils.js.map +1 -1
  288. package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
  289. package/dist/features/chapters/lpar-chapter/comps/chapter-progress.js.map +1 -1
  290. package/dist/features/chapters/lpar-chapter/comps/tab-section.js.map +1 -1
  291. package/dist/features/chapters/lpar-chapter/constants/index.js +5 -22
  292. package/dist/features/chapters/lpar-chapter/constants/index.js.map +1 -1
  293. package/dist/features/chapters/lpar-chapter/constants/puzzle-card.js.map +1 -1
  294. package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/chapter-banner.js.map +1 -1
  295. package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/lpar-chapter-banner-styled.js.map +1 -1
  296. package/dist/features/chapters/lpar-chapter/lpar-chapter-styled.js.map +1 -1
  297. package/dist/features/chapters/lpar-chapter/lpar-chapter.js +26 -26
  298. package/dist/features/chapters/lpar-chapter/lpar-chapter.js.map +1 -1
  299. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/cue-coins.js.map +1 -1
  300. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card-styled.js.map +1 -1
  301. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js +1 -1
  302. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js.map +1 -1
  303. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section-utils.js.map +1 -1
  304. package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section.js.map +1 -1
  305. package/dist/features/chapters/lpar-chapter/utils/index.js.map +1 -1
  306. package/dist/features/chapters/lpar-milestone-chapter/block-section/block-section.js.map +1 -1
  307. package/dist/features/chapters/lpar-milestone-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
  308. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/rewards-n-actions.js.map +1 -1
  309. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/student-actions.js.map +1 -1
  310. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions.js.map +1 -1
  311. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-info.js.map +1 -1
  312. package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
  313. package/dist/features/chapters/lpar-milestone-chapter/extra-practice-section/extra-practice-section.js.map +1 -1
  314. package/dist/features/chapters/lpar-milestone-chapter/lpar-milestone-chapter.js +21 -21
  315. package/dist/features/chapters/lpar-milestone-chapter/lpar-milestone-chapter.js.map +1 -1
  316. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card-util.js.map +1 -1
  317. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js +1 -1
  318. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js.map +1 -1
  319. package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-section.js.map +1 -1
  320. package/dist/features/chapters-v2/api/chapter.js.map +1 -1
  321. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
  322. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -1
  323. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +1 -1
  324. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +1 -1
  325. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js.map +1 -1
  326. package/dist/features/chapters-v2/chapter-details/chapter-details.js +21 -21
  327. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
  328. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +1 -1
  329. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
  330. package/dist/features/chapters-v2/comps/node-card/node-card.js.map +1 -1
  331. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.js.map +1 -1
  332. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +1 -1
  333. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +1 -1
  334. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
  335. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +1 -1
  336. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
  337. package/dist/features/chapters-v2/comps/tag/tag.js.map +1 -1
  338. package/dist/features/chapters-v2/constants/node-constants.js +0 -2
  339. package/dist/features/chapters-v2/constants/node-constants.js.map +1 -1
  340. package/dist/features/chapters-v2/utils/index.js.map +1 -1
  341. package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
  342. package/dist/features/circle-games/comps/info-bar/info-bar.js.map +1 -1
  343. package/dist/features/circle-games/game-launcher/comps/card-container/card-container-styled.js.map +1 -1
  344. package/dist/features/circle-games/game-launcher/comps/card-container/card-container.js.map +1 -1
  345. package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js.map +1 -1
  346. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card-styled.js.map +1 -1
  347. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js +10 -10
  348. package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
  349. package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode.js.map +1 -1
  350. package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star.js.map +1 -1
  351. package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star.js.map +1 -1
  352. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js +6 -6
  353. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js +4 -4
  354. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
  355. package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js.map +1 -1
  356. package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
  357. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
  358. package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
  359. package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
  360. package/dist/features/circle-games/games/web-view/web-view.js.map +1 -1
  361. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js +56 -47
  362. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
  363. package/dist/features/circle-games/leaderboard/comps/banner/banner-styled.js.map +1 -1
  364. package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
  365. package/dist/features/circle-games/leaderboard/comps/leaderboard-item/leaderboard-item.js.map +1 -1
  366. package/dist/features/circle-games/leaderboard/comps/navigation-button/navigation-button.js.map +1 -1
  367. package/dist/features/circle-games/leaderboard/comps/progress-item/progress-item.js.map +1 -1
  368. package/dist/features/circle-games/leaderboard/comps/progress-list-item/progress-list-item.js +1 -1
  369. package/dist/features/circle-games/leaderboard/comps/progress-list-item/progress-list-item.js.map +1 -1
  370. package/dist/features/circle-games/leaderboard/comps/streak-reduction-infobar/streak-reduction-infobar.js.map +1 -1
  371. package/dist/features/circle-games/leaderboard/comps/timer/timer.js.map +1 -1
  372. package/dist/features/circle-games/leaderboard/comps/with-grade/with-grade.js.map +1 -1
  373. package/dist/features/circle-games/leaderboard/dal/use-get-leaderboard-dal/use-get-leaderboard-dal.js.map +1 -1
  374. package/dist/features/circle-games/leaderboard/hooks/use-intersection-observer/use-intersection-observer.tsx.js.map +1 -1
  375. package/dist/features/circle-games/leaderboard/hooks/use-timer/use-timer.js.map +1 -1
  376. package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
  377. package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
  378. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js.map +1 -1
  379. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js.map +1 -1
  380. package/dist/features/circle-games/sign-up/comp/input-wrapper/input-wrapper.js.map +1 -1
  381. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.js +3 -3
  382. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.js.map +1 -1
  383. package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.styled.js.map +1 -1
  384. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen-styled.js +1 -1
  385. package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
  386. package/dist/features/circle-games/sign-up/comp/username-input/username-input.js.map +1 -1
  387. package/dist/features/circle-games/sign-up/dal/create-user-dal/create-user-dal.js.map +1 -1
  388. package/dist/features/circle-games/sign-up/dal/update-user-dal/update-user-dal.js.map +1 -1
  389. package/dist/features/circle-games/sign-up/dal/validate-username-dal/validate-username-dal.js.map +1 -1
  390. package/dist/features/circle-games/sign-up/helper.js.map +1 -1
  391. package/dist/features/circle-games/sign-up/sign-up.js +8 -8
  392. package/dist/features/circle-games/sign-up/sign-up.js.map +1 -1
  393. package/dist/features/circle-games/utils/streak-reduction-localstorage-util.js.map +1 -1
  394. package/dist/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.js +18 -18
  395. package/dist/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.js.map +1 -1
  396. package/dist/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.js +11 -11
  397. package/dist/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.js.map +1 -1
  398. package/dist/features/communication/pub-sub/core.js.map +1 -1
  399. package/dist/features/communication/pub-sub/hooks.js +1 -1
  400. package/dist/features/communication/pub-sub/hooks.js.map +1 -1
  401. package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -1
  402. package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
  403. package/dist/features/cue-canvas/cue-canvas-core.js +3 -3
  404. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  405. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  406. package/dist/features/cue-canvas/cue-canvas-provider.js +11 -11
  407. package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
  408. package/dist/features/cue-canvas/cue-canvas.js +13 -13
  409. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  410. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  411. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +22 -22
  412. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
  413. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js.map +1 -1
  414. package/dist/features/cue-canvas/hooks/use-height-extender.js.map +1 -1
  415. package/dist/features/cue-canvas/hooks/use-upload-helper.js.map +1 -1
  416. package/dist/features/cue-canvas/sidebar/homework/helper.js.map +1 -1
  417. package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -1
  418. package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -1
  419. package/dist/features/cue-canvas/sidebar/homework/homework.js.map +1 -1
  420. package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -1
  421. package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -1
  422. package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -1
  423. package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js.map +1 -1
  424. package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js.map +1 -1
  425. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js.map +1 -1
  426. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -1
  427. package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js.map +1 -1
  428. package/dist/features/cue-canvas/sidebar/puzzles/utils.js +10 -11
  429. package/dist/features/cue-canvas/sidebar/puzzles/utils.js.map +1 -1
  430. package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -1
  431. package/dist/features/cue-canvas/sidebar/tiles/tile.js.map +1 -1
  432. package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -1
  433. package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -1
  434. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -1
  435. package/dist/features/cue-canvas/toolbar/icon-map.js +7 -7
  436. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -1
  437. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -1
  438. package/dist/features/cue-canvas/toolbar/toolbar.js +10 -10
  439. package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
  440. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
  441. package/dist/features/extra-practice/extra-practice.js +21 -21
  442. package/dist/features/extra-practice/extra-practice.js.map +1 -1
  443. package/dist/features/extra-practice/list/list-constants.js.map +1 -1
  444. package/dist/features/extra-practice/list/list-styled.js.map +1 -1
  445. package/dist/features/extra-practice/list/list.js.map +1 -1
  446. package/dist/features/homework/card-menu-options.js.map +1 -1
  447. package/dist/features/homework/card-title.js.map +1 -1
  448. package/dist/features/homework/homework-card-view.js.map +1 -1
  449. package/dist/features/homework/homework-card.js +3 -3
  450. package/dist/features/homework/homework-card.js.map +1 -1
  451. package/dist/features/homework/hw-card-list/api/get-homeworks.js.map +1 -1
  452. package/dist/features/homework/hw-card-list/hw-card-list-styled.js.map +1 -1
  453. package/dist/features/homework/hw-card-list/hw-card-list-utils.js.map +1 -1
  454. package/dist/features/homework/hw-card-list/hw-card-list-view.js.map +1 -1
  455. package/dist/features/homework/hw-card-list/hw-card-list.js.map +1 -1
  456. package/dist/features/homework/node-progress.js.map +1 -1
  457. package/dist/features/homework/styles.js.map +1 -1
  458. package/dist/features/homework/utils.js.map +1 -1
  459. package/dist/features/hooks/use-audio-player.js.map +1 -1
  460. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js +3 -3
  461. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js.map +1 -1
  462. package/dist/features/hooks/use-debounce.js.map +1 -1
  463. package/dist/features/hooks/use-drag-helper.js.map +1 -1
  464. package/dist/features/hooks/use-force-reload.js +7 -7
  465. package/dist/features/hooks/use-force-reload.js.map +1 -1
  466. package/dist/features/hooks/use-is-unmounted.js.map +1 -1
  467. package/dist/features/hooks/use-lazy-ref.js.map +1 -1
  468. package/dist/features/hooks/use-previous.js.map +1 -1
  469. package/dist/features/hooks/use-viewport/use-viewport.js +5 -5
  470. package/dist/features/hooks/use-viewport/use-viewport.js.map +1 -1
  471. package/dist/features/hooks/use-zoom-disable.js +3 -3
  472. package/dist/features/hooks/use-zoom-disable.js.map +1 -1
  473. package/dist/features/journey/comps/coachmark/coachmark-styled.js.map +1 -1
  474. package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
  475. package/dist/features/journey/hooks/use-chapter-journey.js +1 -1
  476. package/dist/features/journey/hooks/use-chapter-journey.js.map +1 -1
  477. package/dist/features/journey/hooks/use-get-eligible-journeys-via-route.js.map +1 -1
  478. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js.map +1 -1
  479. package/dist/features/journey/hooks/use-home-page-journey/recent-chapters-mock.js.map +1 -1
  480. package/dist/features/journey/hooks/use-home-page-journey/styles.js.map +1 -1
  481. package/dist/features/journey/hooks/use-home-page-journey/tooltip-item.js.map +1 -1
  482. package/dist/features/journey/hooks/use-home-page-journey/use-home-page-journey.js +1 -1
  483. package/dist/features/journey/hooks/use-home-page-journey/use-home-page-journey.js.map +1 -1
  484. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
  485. package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
  486. package/dist/features/journey/use-journey/journey-styled.js.map +1 -1
  487. package/dist/features/journey/user-journey-api/user-journey-api.js +3 -3
  488. package/dist/features/maintenance/maintenance.js +5 -5
  489. package/dist/features/maintenance/maintenance.js.map +1 -1
  490. package/dist/features/milestone/constants.js +11 -15
  491. package/dist/features/milestone/constants.js.map +1 -1
  492. package/dist/features/milestone/create/api/goal-submit.js.map +1 -1
  493. package/dist/features/milestone/create/api/milestone-bulk.js.map +1 -1
  494. package/dist/features/milestone/create/api/milestone-submit.js.map +1 -1
  495. package/dist/features/milestone/create/comps/add-custom-chapter/add-custom-chapter.js.map +1 -1
  496. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js.map +1 -1
  497. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js.map +1 -1
  498. package/dist/features/milestone/create/comps/add-custom-chapter/search-chapter/search-chapters.js.map +1 -1
  499. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapter-item.js.map +1 -1
  500. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapters-styled.js.map +1 -1
  501. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapters.js.map +1 -1
  502. package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js.map +1 -1
  503. package/dist/features/milestone/create/comps/body-layout/body-layout.js.map +1 -1
  504. package/dist/features/milestone/create/comps/chapter-item/chapter-item-styled.js.map +1 -1
  505. package/dist/features/milestone/create/comps/chapter-item/chapter-item.js.map +1 -1
  506. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/category-card.js.map +1 -1
  507. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js.map +1 -1
  508. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-styled.js.map +1 -1
  509. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-selection.js.map +1 -1
  510. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapters-list.js.map +1 -1
  511. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js +1 -1
  512. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js.map +1 -1
  513. package/dist/features/milestone/create/comps/chapters-selection-step/use-chapter-list-update.js.map +1 -1
  514. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js.map +1 -1
  515. package/dist/features/milestone/create/comps/class-details-step/class-details-selectors.js.map +1 -1
  516. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js.map +1 -1
  517. package/dist/features/milestone/create/comps/class-details-step/class-details-styled.js.map +1 -1
  518. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js.map +1 -1
  519. package/dist/features/milestone/create/comps/confirmation-modals/chapter-clearance-confirmation.js +9 -9
  520. package/dist/features/milestone/create/comps/confirmation-modals/chapter-clearance-confirmation.js.map +1 -1
  521. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation-utils.js.map +1 -1
  522. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation.js +14 -14
  523. package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation.js.map +1 -1
  524. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector-styled.js.map +1 -1
  525. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector-view.js.map +1 -1
  526. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector.js.map +1 -1
  527. package/dist/features/milestone/create/comps/info-points/info-points.js.map +1 -1
  528. package/dist/features/milestone/create/comps/milestone-progress/milestone-progress.js.map +1 -1
  529. package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js.map +1 -1
  530. package/dist/features/milestone/create/comps/sheets-list/sheets-list.js.map +1 -1
  531. package/dist/features/milestone/create/comps/test-type-step/category-component-styled.js.map +1 -1
  532. package/dist/features/milestone/create/comps/test-type-step/category-component.js.map +1 -1
  533. package/dist/features/milestone/create/comps/test-type-step/test-type-step-constants.js.map +1 -1
  534. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js.map +1 -1
  535. package/dist/features/milestone/create/comps/test-type-step/test-type-utils.js.map +1 -1
  536. package/dist/features/milestone/create/milestone-create-constants.js.map +1 -1
  537. package/dist/features/milestone/create/milestone-create-container.js +25 -25
  538. package/dist/features/milestone/create/milestone-create-container.js.map +1 -1
  539. package/dist/features/milestone/create/milestone-create-form-tree.js +2 -2
  540. package/dist/features/milestone/create/milestone-create-form-tree.js.map +1 -1
  541. package/dist/features/milestone/create/milestone-create-helpers.js +3 -3
  542. package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
  543. package/dist/features/milestone/create/milestone-create-hooks.js.map +1 -1
  544. package/dist/features/milestone/create/milestone-create-styled.js.map +1 -1
  545. package/dist/features/milestone/create/milestone-create.js +17 -18
  546. package/dist/features/milestone/create/milestone-create.js.map +1 -1
  547. package/dist/features/milestone/create/styled-comps/progressive-loader.js +1 -1
  548. package/dist/features/milestone/create/styled-comps/progressive-loader.js.map +1 -1
  549. package/dist/features/milestone/create/submit-modal/submit-modal.js +9 -9
  550. package/dist/features/milestone/create/submit-modal/submit-modal.js.map +1 -1
  551. package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal-styled.js.map +1 -1
  552. package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal.js.map +1 -1
  553. package/dist/features/milestone/create/submit-modal/use-submit-milestone.js.map +1 -1
  554. package/dist/features/milestone/create/utils/index.js.map +1 -1
  555. package/dist/features/milestone/edit/comps/delete-milestone/confirm-delete.js.map +1 -1
  556. package/dist/features/milestone/edit/comps/delete-milestone/styled.js.map +1 -1
  557. package/dist/features/milestone/edit/comps/edit-milestone-modal/edit-milestone.js.map +1 -1
  558. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +34 -35
  559. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  560. package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader-styled.js.map +1 -1
  561. package/dist/features/milestone/edit/comps/milestone-edit-loader/milestone-edit-loader.js.map +1 -1
  562. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js +12 -12
  563. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js.map +1 -1
  564. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-helpers.js.map +1 -1
  565. package/dist/features/milestone/edit/goal-edit-container.js +21 -21
  566. package/dist/features/milestone/edit/goal-edit-container.js.map +1 -1
  567. package/dist/features/milestone/edit/goal-edit-helpers.js.map +1 -1
  568. package/dist/features/milestone/edit/milestone-edit-container.js +14 -14
  569. package/dist/features/milestone/edit/milestone-edit-container.js.map +1 -1
  570. package/dist/features/milestone/edit/milestone-edit-helpers.js.map +1 -1
  571. package/dist/features/milestone/hooks/use-submit-goal-creation.js.map +1 -1
  572. package/dist/features/milestone/milestone-action-widget/milestone-action-widget-styled.js.map +1 -1
  573. package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js +15 -15
  574. package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js.map +1 -1
  575. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
  576. package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
  577. package/dist/features/milestone/milestone-list-container/api/get-past-milestone-count.js.map +1 -1
  578. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
  579. package/dist/features/milestone/milestone-list-container/filter-milestones.js.map +1 -1
  580. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  581. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-loader/milestone-loader.js.map +1 -1
  582. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  583. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-utils.js.map +1 -1
  584. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/use-goal-draft-publish.js.map +1 -1
  585. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +2 -2
  586. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  587. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
  588. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  589. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
  590. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  591. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  592. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
  593. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
  594. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
  595. package/dist/features/milestone/milestone-list-container/milestone-list/no-active-milestone/no-active-milestone.js.map +1 -1
  596. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +29 -29
  597. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  598. package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js.map +1 -1
  599. package/dist/features/milestone/milestone-resources/resources-assign/api/goal-resource-assign.js.map +1 -1
  600. package/dist/features/milestone/milestone-resources/resources-assign/api/lpar-resource-assign.js.map +1 -1
  601. package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item-styled.js.map +1 -1
  602. package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item.js.map +1 -1
  603. package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item.js.map +1 -1
  604. package/dist/features/milestone/milestone-resources/resources-assign/resource-items/no-resource-screen.js.map +1 -1
  605. package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items.js.map +1 -1
  606. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign-styled.js.map +1 -1
  607. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js +55 -55
  608. package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map +1 -1
  609. package/dist/features/milestone/milestone-resources/resources-assign/utils.js.map +1 -1
  610. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
  611. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  612. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -1
  613. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js.map +1 -1
  614. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +1 -1
  615. package/dist/features/milestone/milestone-tests/tests-creation/api/test-sheet-assign.js.map +1 -1
  616. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item-styled.js.map +1 -1
  617. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item.js.map +1 -1
  618. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-selection.js.map +1 -1
  619. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js.map +1 -1
  620. 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
  621. 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
  622. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
  623. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js.map +1 -1
  624. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js +9 -9
  625. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js.map +1 -1
  626. package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
  627. package/dist/features/milestone/outcome/api/milestone-achievement.js +3 -3
  628. package/dist/features/milestone/outcome/api/milestone-outcome.js.map +1 -1
  629. package/dist/features/milestone/outcome/comps/achievement/achievement-constants.js.map +1 -1
  630. package/dist/features/milestone/outcome/comps/achievement/achievement-container-styled.js.map +1 -1
  631. package/dist/features/milestone/outcome/comps/achievement/achievement-container.js +3 -3
  632. package/dist/features/milestone/outcome/comps/achievement/achievement-container.js.map +1 -1
  633. package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js +13 -13
  634. package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js.map +1 -1
  635. package/dist/features/milestone/outcome/comps/achievement/share-instructions-modal.js +20 -20
  636. package/dist/features/milestone/outcome/comps/achievement/share-instructions-modal.js.map +1 -1
  637. package/dist/features/milestone/outcome/comps/outcome-collection/dynamic-input-handler.js.map +1 -1
  638. package/dist/features/milestone/outcome/comps/outcome-collection/input-descriptor.js.map +1 -1
  639. package/dist/features/milestone/outcome/comps/outcome-collection/input-handler.js.map +1 -1
  640. package/dist/features/milestone/outcome/comps/outcome-collection/milestone-outcome-collection-container.js.map +1 -1
  641. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-collection-helper.js.map +1 -1
  642. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-form/outcome-form-helpers.js.map +1 -1
  643. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-form/outcome-form.js.map +1 -1
  644. package/dist/features/milestone/outcome/comps/outcome-collection/outcome-styled.js.map +1 -1
  645. package/dist/features/milestone/outcome/comps/outcome-collection/rank-inputs/index.js.map +1 -1
  646. package/dist/features/milestone/outcome/comps/outcome-collection/score-marks-input/index.js.map +1 -1
  647. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-container.js.map +1 -1
  648. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-form.js.map +1 -1
  649. package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-styled.js.map +1 -1
  650. package/dist/features/milestone/outcome/comps/past-milestone/question.js.map +1 -1
  651. package/dist/features/milestone/outcome/milestone-outcome-container.js +23 -23
  652. package/dist/features/milestone/outcome/milestone-outcome-container.js.map +1 -1
  653. package/dist/features/milestone/outcome/milestone-outcome-styled.js.map +1 -1
  654. package/dist/features/milestone/outcome/outcome-helpers.js.map +1 -1
  655. package/dist/features/milestone/start/milestone-start.js +3 -3
  656. package/dist/features/milestone/start/milestone-start.js.map +1 -1
  657. package/dist/features/pointer-sync/hooks/use-pointer-sync.js +13 -13
  658. package/dist/features/pointer-sync/hooks/use-pointer-sync.js.map +1 -1
  659. package/dist/features/pointer-sync/pointer.js +7 -7
  660. package/dist/features/pointer-sync/pointer.js.map +1 -1
  661. package/dist/features/post-game-stats/accuracy/accuracy-styled.js +5 -5
  662. package/dist/features/post-game-stats/accuracy/accuracy-styled.js.map +1 -1
  663. package/dist/features/post-game-stats/accuracy/accuracy-utils.js.map +1 -1
  664. package/dist/features/post-game-stats/accuracy/accuracy.js +3 -3
  665. package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
  666. package/dist/features/post-game-stats/clock/clock-styled.js +1 -1
  667. package/dist/features/post-game-stats/clock/clock-styled.js.map +1 -1
  668. package/dist/features/post-game-stats/clock/clock.js +3 -3
  669. package/dist/features/post-game-stats/clock/clock.js.map +1 -1
  670. package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js +4 -4
  671. package/dist/features/post-game-stats/digital-meter/digital-meter-styled.js.map +1 -1
  672. package/dist/features/post-game-stats/digital-meter/digital-meter.js +13 -13
  673. package/dist/features/post-game-stats/digital-meter/digital-meter.js.map +1 -1
  674. package/dist/features/post-game-stats/number-count-animation/number-count-animation.js.map +1 -1
  675. package/dist/features/post-game-stats/points/points.js.map +1 -1
  676. package/dist/features/post-game-stats/post-game-stats.js.map +1 -1
  677. package/dist/features/post-game-stats/streak/streak-styled.js +5 -5
  678. package/dist/features/post-game-stats/streak/streak-styled.js.map +1 -1
  679. package/dist/features/post-game-stats/streak/streak.js +1 -1
  680. package/dist/features/post-game-stats/streak/streak.js.map +1 -1
  681. package/dist/features/recent-chapters/api/get-recent-chapters.js.map +1 -1
  682. package/dist/features/recent-chapters/recent-chapters-styled.js.map +1 -1
  683. package/dist/features/recent-chapters/recent-chapters.js +13 -13
  684. package/dist/features/recent-chapters/recent-chapters.js.map +1 -1
  685. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator-styled.js.map +1 -1
  686. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator.js +13 -13
  687. package/dist/features/sheet-tools/desmos-calculator/desmos-calculator.js.map +1 -1
  688. package/dist/features/sheet-tools/tool-header/tool-header-styled.js.map +1 -1
  689. package/dist/features/sheet-tools/tool-header/tool-header.js +14 -14
  690. package/dist/features/sheet-tools/tool-header/tool-header.js.map +1 -1
  691. package/dist/features/sheet-v2/resource-list/resource-list.js.map +1 -1
  692. package/dist/features/sheets/comps/sheet-button/index.js.map +1 -1
  693. package/dist/features/sheets/comps/sheet-button/styled.js.map +1 -1
  694. package/dist/features/sheets/comps/sheet-button/variant.js.map +1 -1
  695. package/dist/features/sheets/constants/sheet.js.map +1 -1
  696. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/context-menu-helper-styled.js.map +1 -1
  697. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/menu-element-styled.js.map +1 -1
  698. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/menu-element.js.map +1 -1
  699. package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/target-element.js.map +1 -1
  700. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js.map +1 -1
  701. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-styled.js.map +1 -1
  702. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-utils.js +4 -3
  703. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-utils.js.map +1 -1
  704. package/dist/features/sheets/lessons-list/lesson-item/lesson-item-view.js.map +1 -1
  705. package/dist/features/sheets/lessons-list/lesson-item/lesson-item.js.map +1 -1
  706. package/dist/features/sheets/lessons-list/lessons-list.js.map +1 -1
  707. package/dist/features/sheets/reference-sheet/reference-sheet.js +14 -14
  708. package/dist/features/sheets/reference-sheet/reference-sheet.js.map +1 -1
  709. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js.map +1 -1
  710. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +1 -1
  711. package/dist/features/sheets/resources-list/resource-item/resource-item.js +3 -3
  712. package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
  713. package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -1
  714. package/dist/features/sheets/resources-list/resource-item/utils.js.map +1 -1
  715. package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
  716. package/dist/features/sheets/resources-list/styled.js.map +1 -1
  717. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/menu-element/menu-element.js.map +1 -1
  718. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/target-element/target-element.js.map +1 -1
  719. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-styled.js.map +1 -1
  720. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-utils.js.map +1 -1
  721. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions.js.map +1 -1
  722. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js.map +1 -1
  723. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +3 -6
  724. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
  725. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js.map +1 -1
  726. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-icon.js.map +1 -1
  727. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-styled.js.map +1 -1
  728. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-tag.js.map +1 -1
  729. package/dist/features/sheets/sheets-list/sheet-item/sheet-item-utils.js.map +1 -1
  730. package/dist/features/sheets/sheets-list/sheet-item/sheet-item.js.map +1 -1
  731. package/dist/features/sheets/sheets-list/sheets-list.js +15 -15
  732. package/dist/features/sheets/sheets-list/sheets-list.js.map +1 -1
  733. package/dist/features/student-details/class-details/class-details-utils.js.map +1 -1
  734. package/dist/features/student-details/class-details/class-details.js.map +1 -1
  735. package/dist/features/student-details/student-details-styled.js.map +1 -1
  736. package/dist/features/student-details/student-details-utils.js.map +1 -1
  737. package/dist/features/student-details/student-details.js +17 -17
  738. package/dist/features/student-details/student-details.js.map +1 -1
  739. package/dist/features/student-details/wins-preview/wins-preview-styled.js.map +1 -1
  740. package/dist/features/student-details/wins-preview/wins-preview.js.map +1 -1
  741. package/dist/features/talk-meter/helper.js.map +1 -1
  742. package/dist/features/talk-meter/hooks/use-talk-meter.js.map +1 -1
  743. package/dist/features/talk-meter/ripple/index.js +1 -1
  744. package/dist/features/talk-meter/ripple/index.js.map +1 -1
  745. package/dist/features/talk-meter/talk-meter-styled.js +1 -1
  746. package/dist/features/talk-meter/talk-meter-styled.js.map +1 -1
  747. package/dist/features/talk-meter/talk-meter-view/talk-meter-view.js +12 -14
  748. package/dist/features/talk-meter/talk-meter-view/talk-meter-view.js.map +1 -1
  749. package/dist/features/talk-meter/talk-meter.js +23 -23
  750. package/dist/features/talk-meter/talk-meter.js.map +1 -1
  751. package/dist/features/trial-session/api/course-stream.js.map +1 -1
  752. package/dist/features/trial-session/comps/about-cuemath/about-cuemath-constants.js.map +1 -1
  753. package/dist/features/trial-session/comps/about-cuemath/index.js.map +1 -1
  754. package/dist/features/trial-session/comps/additional-info/additional-info.js.map +1 -1
  755. package/dist/features/trial-session/comps/av-panels/student-av-panel/student-av-panel.js.map +1 -1
  756. package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
  757. package/dist/features/trial-session/comps/background-grid/background-grid-styled.js.map +1 -1
  758. package/dist/features/trial-session/comps/background-grid/background-grid-utils.js.map +1 -1
  759. package/dist/features/trial-session/comps/background-grid/background-grid.js.map +1 -1
  760. package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
  761. package/dist/features/trial-session/comps/clock/clock.js.map +1 -1
  762. package/dist/features/trial-session/comps/communication-slide/index.js.map +1 -1
  763. package/dist/features/trial-session/comps/countdown-progress-bar/countdown-progress-bar.js.map +1 -1
  764. package/dist/features/trial-session/comps/cue-tips/cues/cues-styled.js +6 -6
  765. package/dist/features/trial-session/comps/cue-tips/cues/index.js.map +1 -1
  766. package/dist/features/trial-session/comps/cue-tips/tips/index.js.map +1 -1
  767. package/dist/features/trial-session/comps/cue-tips/tips/tips-styled.js.map +1 -1
  768. package/dist/features/trial-session/comps/learning-plan/index.js.map +1 -1
  769. package/dist/features/trial-session/comps/learning-plan/learning-plan-styled.js.map +1 -1
  770. package/dist/features/trial-session/comps/learning-plan/use-learning-plan-scroll-sync.js.map +1 -1
  771. package/dist/features/trial-session/comps/learning-session/learning-session-constants.js.map +1 -1
  772. package/dist/features/trial-session/comps/learning-session/learning-session-styled.js.map +1 -1
  773. package/dist/features/trial-session/comps/learning-session/learning-session.js.map +1 -1
  774. package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
  775. package/dist/features/trial-session/comps/navigation-bar/navigation-bar-styled.js.map +1 -1
  776. package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
  777. package/dist/features/trial-session/comps/offering-information/offering-information-styled.js.map +1 -1
  778. package/dist/features/trial-session/comps/offering-information/offering-information.js.map +1 -1
  779. package/dist/features/trial-session/comps/pricing/board-comp.js.map +1 -1
  780. package/dist/features/trial-session/comps/pricing/india-pricing/index.js.map +1 -1
  781. package/dist/features/trial-session/comps/pricing/pricing-cards.js.map +1 -1
  782. package/dist/features/trial-session/comps/pricing/pricing-styled.js.map +1 -1
  783. package/dist/features/trial-session/comps/pricing/pricing.js.map +1 -1
  784. package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
  785. package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
  786. package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
  787. package/dist/features/trial-session/comps/session-overview/session-overview-styled.js.map +1 -1
  788. package/dist/features/trial-session/comps/session-overview/session-overview-utils.js.map +1 -1
  789. package/dist/features/trial-session/comps/session-overview/session-overview.js.map +1 -1
  790. package/dist/features/trial-session/comps/session-report/report-card.js.map +1 -1
  791. package/dist/features/trial-session/comps/session-report/session-report.js +3 -3
  792. package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
  793. package/dist/features/trial-session/comps/slide-header/index.js.map +1 -1
  794. package/dist/features/trial-session/comps/solutions/index.js.map +1 -1
  795. package/dist/features/trial-session/comps/solutions/solutions.styled.js +5 -5
  796. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
  797. package/dist/features/trial-session/comps/student-feedback/student-feedback-constants.js.map +1 -1
  798. package/dist/features/trial-session/comps/student-feedback/student-feedback-styled.js.map +1 -1
  799. package/dist/features/trial-session/comps/student-feedback/student-feedback.js +3 -3
  800. package/dist/features/trial-session/comps/student-feedback/student-feedback.js.map +1 -1
  801. package/dist/features/trial-session/comps/student-info/student-info-styled.js.map +1 -1
  802. package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
  803. package/dist/features/trial-session/comps/student-personalization/student-personalization.js +7 -7
  804. package/dist/features/trial-session/comps/student-personalization/student-personalization.js.map +1 -1
  805. package/dist/features/trial-session/comps/student-profile/student-profile-styled.js.map +1 -1
  806. package/dist/features/trial-session/comps/student-profile/student-profile-utils.js.map +1 -1
  807. package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
  808. package/dist/features/trial-session/comps/teacher-intro/teacher-intro-constants.js.map +1 -1
  809. package/dist/features/trial-session/comps/teacher-intro/teacher-intro.js.map +1 -1
  810. package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
  811. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-launch-screen/trial-circle-game-launch-screen.js.map +1 -1
  812. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js.map +1 -1
  813. package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
  814. package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
  815. package/dist/features/trial-session/helper.js.map +1 -1
  816. package/dist/features/trial-session/hooks/use-class-time-alerts.js.map +1 -1
  817. package/dist/features/trial-session/hooks/use-left-panel-button-state.js.map +1 -1
  818. package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
  819. package/dist/features/trial-session/left-panel/index.js.map +1 -1
  820. package/dist/features/trial-session/right-panel/index.js.map +1 -1
  821. package/dist/features/trial-session/right-panel/right-panel-styled.js.map +1 -1
  822. package/dist/features/trial-session/trial-session-view.js.map +1 -1
  823. package/dist/features/trial-session/trial-session.js +6 -6
  824. package/dist/features/trial-session/trial-session.js.map +1 -1
  825. package/dist/features/ui/accordion-section/accordion-section.js +13 -13
  826. package/dist/features/ui/accordion-section/accordion-section.js.map +1 -1
  827. package/dist/features/ui/animated-arc/animated-arc-helpers.js.map +1 -1
  828. package/dist/features/ui/animated-arc/animated-arc.js +12 -12
  829. package/dist/features/ui/animated-arc/animated-arc.js.map +1 -1
  830. package/dist/features/ui/arc-button/arc-button.js.map +1 -1
  831. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js +20 -21
  832. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js.map +1 -1
  833. package/dist/features/ui/arrow-tooltip/arrow-tooltip-util.js.map +1 -1
  834. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +14 -14
  835. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  836. package/dist/features/ui/avatar/avatar-types.js +5 -5
  837. package/dist/features/ui/avatar/avatar.js +11 -11
  838. package/dist/features/ui/avatar/avatar.js.map +1 -1
  839. package/dist/features/ui/avatar/layers/base/variant-1.js.map +1 -1
  840. package/dist/features/ui/avatar/layers/eyes/variant-1.js.map +1 -1
  841. package/dist/features/ui/avatar/layers/eyes/variant-10.js.map +1 -1
  842. package/dist/features/ui/avatar/layers/eyes/variant-11.js.map +1 -1
  843. package/dist/features/ui/avatar/layers/eyes/variant-12.js.map +1 -1
  844. package/dist/features/ui/avatar/layers/eyes/variant-13.js.map +1 -1
  845. package/dist/features/ui/avatar/layers/eyes/variant-14.js.map +1 -1
  846. package/dist/features/ui/avatar/layers/eyes/variant-15.js.map +1 -1
  847. package/dist/features/ui/avatar/layers/eyes/variant-16.js.map +1 -1
  848. package/dist/features/ui/avatar/layers/eyes/variant-17.js.map +1 -1
  849. package/dist/features/ui/avatar/layers/eyes/variant-18.js.map +1 -1
  850. package/dist/features/ui/avatar/layers/eyes/variant-2.js.map +1 -1
  851. package/dist/features/ui/avatar/layers/eyes/variant-3.js.map +1 -1
  852. package/dist/features/ui/avatar/layers/eyes/variant-4.js.map +1 -1
  853. package/dist/features/ui/avatar/layers/eyes/variant-5.js.map +1 -1
  854. package/dist/features/ui/avatar/layers/eyes/variant-6.js.map +1 -1
  855. package/dist/features/ui/avatar/layers/eyes/variant-7.js.map +1 -1
  856. package/dist/features/ui/avatar/layers/eyes/variant-8.js.map +1 -1
  857. package/dist/features/ui/avatar/layers/eyes/variant-9.js.map +1 -1
  858. package/dist/features/ui/avatar/layers/hair/variant-1.js.map +1 -1
  859. package/dist/features/ui/avatar/layers/hair/variant-10.js.map +1 -1
  860. package/dist/features/ui/avatar/layers/hair/variant-2.js.map +1 -1
  861. package/dist/features/ui/avatar/layers/hair/variant-3.js.map +1 -1
  862. package/dist/features/ui/avatar/layers/hair/variant-4.js.map +1 -1
  863. package/dist/features/ui/avatar/layers/hair/variant-5.js.map +1 -1
  864. package/dist/features/ui/avatar/layers/hair/variant-6.js.map +1 -1
  865. package/dist/features/ui/avatar/layers/hair/variant-7.js.map +1 -1
  866. package/dist/features/ui/avatar/layers/hair/variant-8.js.map +1 -1
  867. package/dist/features/ui/avatar/layers/hair/variant-9.js.map +1 -1
  868. package/dist/features/ui/avatar/layers/mouth/variant-1.js.map +1 -1
  869. package/dist/features/ui/avatar/layers/mouth/variant-10.js.map +1 -1
  870. package/dist/features/ui/avatar/layers/mouth/variant-11.js.map +1 -1
  871. package/dist/features/ui/avatar/layers/mouth/variant-12.js.map +1 -1
  872. package/dist/features/ui/avatar/layers/mouth/variant-13.js.map +1 -1
  873. package/dist/features/ui/avatar/layers/mouth/variant-14.js.map +1 -1
  874. package/dist/features/ui/avatar/layers/mouth/variant-15.js.map +1 -1
  875. package/dist/features/ui/avatar/layers/mouth/variant-16.js.map +1 -1
  876. package/dist/features/ui/avatar/layers/mouth/variant-17.js.map +1 -1
  877. package/dist/features/ui/avatar/layers/mouth/variant-18.js.map +1 -1
  878. package/dist/features/ui/avatar/layers/mouth/variant-2.js.map +1 -1
  879. package/dist/features/ui/avatar/layers/mouth/variant-3.js.map +1 -1
  880. package/dist/features/ui/avatar/layers/mouth/variant-4.js.map +1 -1
  881. package/dist/features/ui/avatar/layers/mouth/variant-5.js.map +1 -1
  882. package/dist/features/ui/avatar/layers/mouth/variant-6.js.map +1 -1
  883. package/dist/features/ui/avatar/layers/mouth/variant-7.js.map +1 -1
  884. package/dist/features/ui/avatar/layers/mouth/variant-8.js.map +1 -1
  885. package/dist/features/ui/avatar/layers/mouth/variant-9.js.map +1 -1
  886. package/dist/features/ui/buttons/button/button-styled.js.map +1 -1
  887. package/dist/features/ui/buttons/button/button.js +25 -25
  888. package/dist/features/ui/buttons/button/button.js.map +1 -1
  889. package/dist/features/ui/buttons/clickable/clickable.js +9 -9
  890. package/dist/features/ui/buttons/clickable/clickable.js.map +1 -1
  891. package/dist/features/ui/buttons/icon-button/icon-button-styled.js.map +1 -1
  892. package/dist/features/ui/buttons/icon-button/icon-button.js +14 -14
  893. package/dist/features/ui/buttons/icon-button/icon-button.js.map +1 -1
  894. package/dist/features/ui/buttons/text-button/text-button-styled.js.map +1 -1
  895. package/dist/features/ui/buttons/text-button/text-button.js +19 -19
  896. package/dist/features/ui/buttons/text-button/text-button.js.map +1 -1
  897. package/dist/features/ui/callout/callout.js +10 -10
  898. package/dist/features/ui/callout/callout.js.map +1 -1
  899. package/dist/features/ui/context/context.js.map +1 -1
  900. package/dist/features/ui/context/use-tracking-context.js +2 -2
  901. package/dist/features/ui/context/use-tracking-context.js.map +1 -1
  902. package/dist/features/ui/context-menu/context-menu-styled.js.map +1 -1
  903. package/dist/features/ui/context-menu/context-menu.js +19 -19
  904. package/dist/features/ui/context-menu/context-menu.js.map +1 -1
  905. package/dist/features/ui/error/error.js +12 -12
  906. package/dist/features/ui/error/error.js.map +1 -1
  907. package/dist/features/ui/grade-selector/grade-selector-styled.js.map +1 -1
  908. package/dist/features/ui/grade-selector/grade-selector.js.map +1 -1
  909. package/dist/features/ui/grade-selector/grade-tab.js.map +1 -1
  910. package/dist/features/ui/hooks/use-click-handler.js.map +1 -1
  911. package/dist/features/ui/hooks/use-context-menu-click-handler.js +17 -17
  912. package/dist/features/ui/hooks/use-context-menu-click-handler.js.map +1 -1
  913. package/dist/features/ui/hooks/use-response-handler.js.map +1 -1
  914. package/dist/features/ui/image/image.js +12 -12
  915. package/dist/features/ui/image/image.js.map +1 -1
  916. package/dist/features/ui/inputs/base-input/base-input-styled.js.map +1 -1
  917. package/dist/features/ui/inputs/base-input/base-input.js.map +1 -1
  918. package/dist/features/ui/inputs/base-select-input/base-select-input-styled.js.map +1 -1
  919. package/dist/features/ui/inputs/base-select-input/base-select-input.js.map +1 -1
  920. package/dist/features/ui/inputs/base-select-input/select-option/select-option.js.map +1 -1
  921. package/dist/features/ui/inputs/base-select-input/select-section/select-section-styled.js.map +1 -1
  922. package/dist/features/ui/inputs/base-select-input/select-section/select-section.js.map +1 -1
  923. package/dist/features/ui/inputs/cascading-select-input/cascading-select-input.js +23 -23
  924. package/dist/features/ui/inputs/cascading-select-input/cascading-select-input.js.map +1 -1
  925. package/dist/features/ui/inputs/checkbox-input/checkbox-input-styled.js.map +1 -1
  926. package/dist/features/ui/inputs/checkbox-input/checkbox-input.js +20 -20
  927. package/dist/features/ui/inputs/checkbox-input/checkbox-input.js.map +1 -1
  928. package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js +16 -16
  929. package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js.map +1 -1
  930. package/dist/features/ui/inputs/google-places-search-input/google-places-search-input.js +6 -6
  931. package/dist/features/ui/inputs/google-places-search-input/google-places-search-input.js.map +1 -1
  932. package/dist/features/ui/inputs/num-range-input/num-range-input.js +4 -4
  933. package/dist/features/ui/inputs/num-range-input/num-range-input.js.map +1 -1
  934. package/dist/features/ui/inputs/percentile-input/percentile-input.js +21 -21
  935. package/dist/features/ui/inputs/percentile-input/percentile-input.js.map +1 -1
  936. package/dist/features/ui/inputs/percentile-input/percentile-styled.js.map +1 -1
  937. package/dist/features/ui/inputs/radio-input/radio-input.js +14 -14
  938. package/dist/features/ui/inputs/radio-input/radio-input.js.map +1 -1
  939. package/dist/features/ui/inputs/radio-input/radio-option/radio-option-styled.js.map +1 -1
  940. package/dist/features/ui/inputs/radio-input/radio-option/radio-option.js.map +1 -1
  941. package/dist/features/ui/inputs/searchable-input/searchable-input-styled.js.map +1 -1
  942. package/dist/features/ui/inputs/searchable-input/searchable-input.js +3 -3
  943. package/dist/features/ui/inputs/searchable-input/searchable-input.js.map +1 -1
  944. package/dist/features/ui/inputs/searchable-select-input/searchable-select-input.js +17 -17
  945. package/dist/features/ui/inputs/searchable-select-input/searchable-select-input.js.map +1 -1
  946. package/dist/features/ui/inputs/searchable-select-input/use-filtered-options.js.map +1 -1
  947. package/dist/features/ui/inputs/select-input/select-input.js +3 -3
  948. package/dist/features/ui/inputs/select-input/select-input.js.map +1 -1
  949. package/dist/features/ui/inputs/text-input/text-input-styled.js.map +1 -1
  950. package/dist/features/ui/inputs/text-input/text-input.js +35 -35
  951. package/dist/features/ui/inputs/text-input/text-input.js.map +1 -1
  952. package/dist/features/ui/layout/flex-view.js +23 -23
  953. package/dist/features/ui/layout/flex-view.js.map +1 -1
  954. package/dist/features/ui/loader/app-loader/app-loader.js +3 -3
  955. package/dist/features/ui/loader/app-loader/app-loader.js.map +1 -1
  956. package/dist/features/ui/lottie-animation/helper.js.map +1 -1
  957. package/dist/features/ui/lottie-animation/lottie-animation.js.map +1 -1
  958. package/dist/features/ui/modals/modal-helpers.js.map +1 -1
  959. package/dist/features/ui/modals/modal-provider.js +15 -15
  960. package/dist/features/ui/modals/modal-provider.js.map +1 -1
  961. package/dist/features/ui/modals/modal-styled.js +1 -1
  962. package/dist/features/ui/modals/modal-styled.js.map +1 -1
  963. package/dist/features/ui/modals/modal.js.map +1 -1
  964. package/dist/features/ui/modals/use-modal-actions.js +6 -6
  965. package/dist/features/ui/modals/use-modal-actions.js.map +1 -1
  966. package/dist/features/ui/modals/use-modal-params.js +5 -5
  967. package/dist/features/ui/modals/use-modal-params.js.map +1 -1
  968. package/dist/features/ui/nudge/nudge.js +9 -9
  969. package/dist/features/ui/nudge/nudge.js.map +1 -1
  970. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js +1 -1
  971. package/dist/features/ui/perfect-hits/perfect-hits-helpers.js.map +1 -1
  972. package/dist/features/ui/perfect-hits/perfect-hits-styled.js +1 -1
  973. package/dist/features/ui/perfect-hits/perfect-hits.js.map +1 -1
  974. package/dist/features/ui/radio-cards/radio-card-option/radio-card-option-styled.js.map +1 -1
  975. package/dist/features/ui/radio-cards/radio-card-option/radio-card-option.js.map +1 -1
  976. package/dist/features/ui/radio-cards/radio-cards.js +15 -15
  977. package/dist/features/ui/radio-cards/radio-cards.js.map +1 -1
  978. package/dist/features/ui/section-list/section-list.js +11 -11
  979. package/dist/features/ui/section-list/section-list.js.map +1 -1
  980. package/dist/features/ui/selection-cards/selection-card-option/selection-card-option-styled.js.map +1 -1
  981. package/dist/features/ui/selection-cards/selection-card-option/selection-card-option.js.map +1 -1
  982. package/dist/features/ui/selection-cards/selection-cards.js +18 -18
  983. package/dist/features/ui/selection-cards/selection-cards.js.map +1 -1
  984. package/dist/features/ui/separator/separator.js +6 -6
  985. package/dist/features/ui/separator/separator.js.map +1 -1
  986. package/dist/features/ui/stepper/stepper-styled.js.map +1 -1
  987. package/dist/features/ui/stepper/stepper.js.map +1 -1
  988. package/dist/features/ui/streak-icon/streak-icon.js +14 -14
  989. package/dist/features/ui/streak-icon/streak-icon.js.map +1 -1
  990. package/dist/features/ui/superscript/superscript.js.map +1 -1
  991. package/dist/features/ui/tab/tab-styled.js.map +1 -1
  992. package/dist/features/ui/tab/tab.js +17 -17
  993. package/dist/features/ui/tab/tab.js.map +1 -1
  994. package/dist/features/ui/tag/tag-styled.js.map +1 -1
  995. package/dist/features/ui/tag/tag.js +4 -4
  996. package/dist/features/ui/tag/tag.js.map +1 -1
  997. package/dist/features/ui/text/text.js +23 -24
  998. package/dist/features/ui/text/text.js.map +1 -1
  999. package/dist/features/ui/theme/arrow-tooltip.js.map +1 -1
  1000. package/dist/features/ui/theme/button.js.map +1 -1
  1001. package/dist/features/ui/theme/checkbox.js.map +1 -1
  1002. package/dist/features/ui/theme/get-theme.js.map +1 -1
  1003. package/dist/features/ui/theme/input.js.map +1 -1
  1004. package/dist/features/ui/theme/layout.js.map +1 -1
  1005. package/dist/features/ui/theme/tab.js.map +1 -1
  1006. package/dist/features/ui/theme/text-button.js.map +1 -1
  1007. package/dist/features/ui/theme/text.js.map +1 -1
  1008. package/dist/features/ui/time-left-timeline/time-left-timeline-styled.js.map +1 -1
  1009. package/dist/features/ui/time-left-timeline/time-left-timeline.js +16 -16
  1010. package/dist/features/ui/time-left-timeline/time-left-timeline.js.map +1 -1
  1011. package/dist/features/ui/timers/countdown-timer/countdown-timer.js +15 -15
  1012. package/dist/features/ui/timers/countdown-timer/countdown-timer.js.map +1 -1
  1013. package/dist/features/ui/video/index.js +3 -3
  1014. package/dist/features/ui/video/index.js.map +1 -1
  1015. package/dist/features/ui/video/styled.js.map +1 -1
  1016. package/dist/features/utils/load-script.js +9 -9
  1017. package/dist/features/utils/load-script.js.map +1 -1
  1018. package/dist/features/utils/utils.js.map +1 -1
  1019. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js +47 -47
  1020. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js.map +1 -1
  1021. package/dist/features/worksheet/learnosity-preloader/use-download-script.js.map +1 -1
  1022. package/dist/features/worksheet/learnosity-preloader/use-is-learnosity-loaded.js +2 -2
  1023. package/dist/features/worksheet/learnosity-preloader/use-is-learnosity-loaded.js.map +1 -1
  1024. package/dist/features/worksheet/user-pointer-pin/hooks/use-user-location.js.map +1 -1
  1025. package/dist/features/worksheet/user-pointer-pin/user-pin.js.map +1 -1
  1026. package/dist/features/worksheet/worksheet/constants.js.map +1 -1
  1027. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js.map +1 -1
  1028. package/dist/features/worksheet/worksheet/hooks/use-get-active-question-id.js.map +1 -1
  1029. package/dist/features/worksheet/worksheet/hooks/use-learnosity-append.js.map +1 -1
  1030. package/dist/features/worksheet/worksheet/hooks/use-learnosity.js.map +1 -1
  1031. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
  1032. package/dist/features/worksheet/worksheet/hooks/use-time-on-questions.js.map +1 -1
  1033. package/dist/features/worksheet/worksheet/hooks/use-worksheet-data-helper.js.map +1 -1
  1034. package/dist/features/worksheet/worksheet/question-tips.js.map +1 -1
  1035. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  1036. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-intervention.js.map +1 -1
  1037. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review-available.js.map +1 -1
  1038. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review.js.map +1 -1
  1039. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-student-submission.js.map +1 -1
  1040. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-assignment.js.map +1 -1
  1041. package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-skip.js.map +1 -1
  1042. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker.js.map +1 -1
  1043. package/dist/features/worksheet/worksheet/worksheet-container.js +15 -15
  1044. package/dist/features/worksheet/worksheet/worksheet-container.js.map +1 -1
  1045. package/dist/features/worksheet/worksheet/worksheet-helpers.js +4 -4
  1046. package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
  1047. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-navigation/worksheet-item-navigation.js.map +1 -1
  1048. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number-styled.js.map +1 -1
  1049. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js.map +1 -1
  1050. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation-styled.js.map +1 -1
  1051. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js.map +1 -1
  1052. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js +2 -2
  1053. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js.map +1 -1
  1054. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
  1055. package/dist/features/worksheet/worksheet/worksheet-permissions/sheet-locked.js.map +1 -1
  1056. package/dist/features/worksheet/worksheet/worksheet-question/header/header-tags.js.map +1 -1
  1057. package/dist/features/worksheet/worksheet/worksheet-question/header/header.js.map +1 -1
  1058. package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
  1059. package/dist/features/worksheet/worksheet/worksheet-question/learnosity-question.js.map +1 -1
  1060. package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop-styled.js.map +1 -1
  1061. package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop.js.map +1 -1
  1062. package/dist/features/worksheet/worksheet/worksheet-question/subjective-feedback.js.map +1 -1
  1063. package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js.map +1 -1
  1064. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js.map +1 -1
  1065. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/advanced-practice-intro.js.map +1 -1
  1066. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/basic-practice-intro.js.map +1 -1
  1067. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/exit-ticket-intro.js.map +1 -1
  1068. package/dist/features/worksheet/worksheet/worksheet-question/system-intros/regular-practice-intro.js.map +1 -1
  1069. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js.map +1 -1
  1070. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  1071. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -1
  1072. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +1 -1
  1073. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
  1074. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary-styled.js.map +1 -1
  1075. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js.map +1 -1
  1076. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js.map +1 -1
  1077. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +1 -1
  1078. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +1 -1
  1079. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js.map +1 -1
  1080. package/dist/features/worksheet/worksheet/worksheet-styled.js +4 -4
  1081. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  1082. package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js.map +1 -1
  1083. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
  1084. package/dist/features/worksheet/worksheet/worksheet.js +4 -4
  1085. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  1086. package/dist/features/worksheet/worksheet-preview/api/get-preview-worksheet.js.map +1 -1
  1087. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js +16 -16
  1088. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
  1089. package/dist/features/worksheet/worksheet-preview/worksheet-preview-styled.js.map +1 -1
  1090. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  1091. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js +16 -16
  1092. package/dist/features/worksheet/worksheet-preview/worksheet-preview.js.map +1 -1
  1093. package/dist/helpers/date-time.js.map +1 -1
  1094. package/dist/helpers/get-device-details.js.map +1 -1
  1095. package/dist/helpers/label-text.js.map +1 -1
  1096. package/dist/index.js +576 -576
  1097. package/dist/node_modules/@cuemath/analytics-v2/dist/constants.js.map +1 -1
  1098. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +138 -137
  1099. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -1
  1100. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +220 -194
  1101. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
  1102. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js +15 -13
  1103. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js.map +1 -1
  1104. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +12 -11
  1105. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js.map +1 -1
  1106. package/dist/node_modules/@floating-ui/{react/node_modules/@floating-ui/react-dom → react-dom}/dist/floating-ui.react-dom.js +57 -56
  1107. package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
  1108. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +64 -61
  1109. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -1
  1110. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -1
  1111. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -1
  1112. package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -1
  1113. package/dist/node_modules/date-fns/_lib/format/formatters.js +0 -2
  1114. package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -1
  1115. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -1
  1116. package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -1
  1117. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -1
  1118. package/dist/node_modules/date-fns/addDays.js.map +1 -1
  1119. package/dist/node_modules/date-fns/addMonths.js.map +1 -1
  1120. package/dist/node_modules/date-fns/constructNow.js.map +1 -1
  1121. package/dist/node_modules/date-fns/differenceInDays.js.map +1 -1
  1122. package/dist/node_modules/date-fns/eachMonthOfInterval.js.map +1 -1
  1123. package/dist/node_modules/date-fns/format.js.map +1 -1
  1124. package/dist/node_modules/date-fns/getDefaultOptions.js.map +1 -1
  1125. package/dist/node_modules/date-fns/getISODay.js.map +1 -1
  1126. package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -1
  1127. package/dist/node_modules/date-fns/getWeekYear.js.map +1 -1
  1128. package/dist/node_modules/date-fns/isAfter.js.map +1 -1
  1129. package/dist/node_modules/date-fns/lastDayOfMonth.js.map +1 -1
  1130. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -1
  1131. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -1
  1132. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -1
  1133. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -1
  1134. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -1
  1135. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -1
  1136. package/dist/node_modules/date-fns/parse/_lib/Parser.js.map +1 -1
  1137. package/dist/node_modules/date-fns/parse/_lib/Setter.js.map +1 -1
  1138. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js.map +1 -1
  1139. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js.map +1 -1
  1140. package/dist/node_modules/date-fns/parse/_lib/parsers/DateParser.js.map +1 -1
  1141. package/dist/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js.map +1 -1
  1142. package/dist/node_modules/date-fns/parse/_lib/parsers/DayParser.js.map +1 -1
  1143. package/dist/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js.map +1 -1
  1144. package/dist/node_modules/date-fns/parse/_lib/parsers/EraParser.js.map +1 -1
  1145. package/dist/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js.map +1 -1
  1146. package/dist/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js.map +1 -1
  1147. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js.map +1 -1
  1148. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js.map +1 -1
  1149. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js.map +1 -1
  1150. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js.map +1 -1
  1151. package/dist/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js.map +1 -1
  1152. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js.map +1 -1
  1153. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js.map +1 -1
  1154. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js.map +1 -1
  1155. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js.map +1 -1
  1156. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js.map +1 -1
  1157. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js.map +1 -1
  1158. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js.map +1 -1
  1159. package/dist/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js.map +1 -1
  1160. package/dist/node_modules/date-fns/parse/_lib/parsers/MonthParser.js.map +1 -1
  1161. package/dist/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js.map +1 -1
  1162. package/dist/node_modules/date-fns/parse/_lib/parsers/SecondParser.js.map +1 -1
  1163. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js.map +1 -1
  1164. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js.map +1 -1
  1165. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js.map +1 -1
  1166. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js.map +1 -1
  1167. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js.map +1 -1
  1168. package/dist/node_modules/date-fns/parse/_lib/parsers/YearParser.js.map +1 -1
  1169. package/dist/node_modules/date-fns/parse/_lib/utils.js.map +1 -1
  1170. package/dist/node_modules/date-fns/parse.js.map +1 -1
  1171. package/dist/node_modules/date-fns/setDay.js.map +1 -1
  1172. package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -1
  1173. package/dist/node_modules/date-fns/startOfWeek.js.map +1 -1
  1174. package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -1
  1175. package/dist/node_modules/date-fns/transpose.js.map +1 -1
  1176. package/dist/node_modules/decode-uri-component/index.js.map +1 -0
  1177. package/dist/node_modules/fast-equals/dist/esm/index.js +174 -133
  1178. package/dist/node_modules/fast-equals/dist/esm/index.js.map +1 -1
  1179. package/dist/node_modules/filter-obj/index.js.map +1 -1
  1180. package/dist/node_modules/humanize-plus/dist/humanize.js.map +1 -1
  1181. package/dist/node_modules/lodash.debounce/index.js.map +1 -1
  1182. package/dist/node_modules/lodash.isequal/index.js +1 -1
  1183. package/dist/node_modules/lodash.isequal/index.js.map +1 -1
  1184. package/dist/node_modules/lodash.throttle/index.js.map +1 -1
  1185. package/dist/node_modules/query-string/base.js +1 -1
  1186. package/dist/node_modules/query-string/base.js.map +1 -1
  1187. package/dist/node_modules/react-datepicker/dist/index.es.js +319 -311
  1188. package/dist/node_modules/react-datepicker/dist/index.es.js.map +1 -1
  1189. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -1
  1190. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/defaultOptions.js.map +1 -1
  1191. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/format/formatters.js +0 -2
  1192. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/format/formatters.js.map +1 -1
  1193. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -1
  1194. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -1
  1195. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -1
  1196. package/dist/node_modules/react-datepicker/node_modules/date-fns/_lib/normalizeDates.js.map +1 -1
  1197. package/dist/node_modules/react-datepicker/node_modules/date-fns/addDays.js.map +1 -1
  1198. package/dist/node_modules/react-datepicker/node_modules/date-fns/addMonths.js.map +1 -1
  1199. package/dist/node_modules/react-datepicker/node_modules/date-fns/differenceInCalendarDays.js.map +1 -1
  1200. package/dist/node_modules/react-datepicker/node_modules/date-fns/differenceInCalendarMonths.js.map +1 -1
  1201. package/dist/node_modules/react-datepicker/node_modules/date-fns/differenceInCalendarQuarters.js.map +1 -1
  1202. package/dist/node_modules/react-datepicker/node_modules/date-fns/differenceInCalendarYears.js.map +1 -1
  1203. package/dist/node_modules/react-datepicker/node_modules/date-fns/differenceInDays.js.map +1 -1
  1204. package/dist/node_modules/react-datepicker/node_modules/date-fns/endOfMonth.js.map +1 -1
  1205. package/dist/node_modules/react-datepicker/node_modules/date-fns/endOfWeek.js.map +1 -1
  1206. package/dist/node_modules/react-datepicker/node_modules/date-fns/endOfYear.js.map +1 -1
  1207. package/dist/node_modules/react-datepicker/node_modules/date-fns/format.js.map +1 -1
  1208. package/dist/node_modules/react-datepicker/node_modules/date-fns/getDate.js.map +1 -1
  1209. package/dist/node_modules/react-datepicker/node_modules/date-fns/getDay.js.map +1 -1
  1210. package/dist/node_modules/react-datepicker/node_modules/date-fns/getDaysInMonth.js.map +1 -1
  1211. package/dist/node_modules/react-datepicker/node_modules/date-fns/getDefaultOptions.js.map +1 -1
  1212. package/dist/node_modules/react-datepicker/node_modules/date-fns/getHours.js.map +1 -1
  1213. package/dist/node_modules/react-datepicker/node_modules/date-fns/getISODay.js.map +1 -1
  1214. package/dist/node_modules/react-datepicker/node_modules/date-fns/getISOWeekYear.js.map +1 -1
  1215. package/dist/node_modules/react-datepicker/node_modules/date-fns/getMinutes.js.map +1 -1
  1216. package/dist/node_modules/react-datepicker/node_modules/date-fns/getMonth.js.map +1 -1
  1217. package/dist/node_modules/react-datepicker/node_modules/date-fns/getQuarter.js.map +1 -1
  1218. package/dist/node_modules/react-datepicker/node_modules/date-fns/getSeconds.js.map +1 -1
  1219. package/dist/node_modules/react-datepicker/node_modules/date-fns/getWeekYear.js.map +1 -1
  1220. package/dist/node_modules/react-datepicker/node_modules/date-fns/getYear.js.map +1 -1
  1221. package/dist/node_modules/react-datepicker/node_modules/date-fns/isSameDay.js.map +1 -1
  1222. package/dist/node_modules/react-datepicker/node_modules/date-fns/isSameMonth.js.map +1 -1
  1223. package/dist/node_modules/react-datepicker/node_modules/date-fns/isSameQuarter.js.map +1 -1
  1224. package/dist/node_modules/react-datepicker/node_modules/date-fns/isSameYear.js.map +1 -1
  1225. package/dist/node_modules/react-datepicker/node_modules/date-fns/isWithinInterval.js.map +1 -1
  1226. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -1
  1227. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -1
  1228. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -1
  1229. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -1
  1230. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -1
  1231. package/dist/node_modules/react-datepicker/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -1
  1232. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/Parser.js.map +1 -1
  1233. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/Setter.js.map +1 -1
  1234. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js.map +1 -1
  1235. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js.map +1 -1
  1236. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/DateParser.js.map +1 -1
  1237. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js.map +1 -1
  1238. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/DayParser.js.map +1 -1
  1239. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js.map +1 -1
  1240. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/EraParser.js.map +1 -1
  1241. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js.map +1 -1
  1242. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js.map +1 -1
  1243. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js.map +1 -1
  1244. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js.map +1 -1
  1245. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js.map +1 -1
  1246. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js.map +1 -1
  1247. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js.map +1 -1
  1248. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js.map +1 -1
  1249. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js.map +1 -1
  1250. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js.map +1 -1
  1251. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js.map +1 -1
  1252. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js.map +1 -1
  1253. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js.map +1 -1
  1254. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js.map +1 -1
  1255. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js.map +1 -1
  1256. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/MonthParser.js.map +1 -1
  1257. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js.map +1 -1
  1258. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/SecondParser.js.map +1 -1
  1259. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js.map +1 -1
  1260. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js.map +1 -1
  1261. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js.map +1 -1
  1262. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js.map +1 -1
  1263. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js.map +1 -1
  1264. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/parsers/YearParser.js.map +1 -1
  1265. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse/_lib/utils.js.map +1 -1
  1266. package/dist/node_modules/react-datepicker/node_modules/date-fns/parse.js.map +1 -1
  1267. package/dist/node_modules/react-datepicker/node_modules/date-fns/parseISO.js.map +1 -1
  1268. package/dist/node_modules/react-datepicker/node_modules/date-fns/setDay.js.map +1 -1
  1269. package/dist/node_modules/react-datepicker/node_modules/date-fns/setMonth.js.map +1 -1
  1270. package/dist/node_modules/react-datepicker/node_modules/date-fns/setQuarter.js.map +1 -1
  1271. package/dist/node_modules/react-datepicker/node_modules/date-fns/startOfISOWeek.js.map +1 -1
  1272. package/dist/node_modules/react-datepicker/node_modules/date-fns/startOfQuarter.js.map +1 -1
  1273. package/dist/node_modules/react-datepicker/node_modules/date-fns/startOfWeek.js.map +1 -1
  1274. package/dist/node_modules/react-datepicker/node_modules/date-fns/startOfWeekYear.js.map +1 -1
  1275. package/dist/node_modules/react-datepicker/node_modules/date-fns/subDays.js +4 -4
  1276. package/dist/node_modules/react-datepicker/node_modules/date-fns/subDays.js.map +1 -1
  1277. package/dist/node_modules/react-datepicker/node_modules/date-fns/subQuarters.js +3 -3
  1278. package/dist/node_modules/react-datepicker/node_modules/date-fns/subQuarters.js.map +1 -1
  1279. package/dist/node_modules/react-datepicker/node_modules/date-fns/subWeeks.js +4 -4
  1280. package/dist/node_modules/react-datepicker/node_modules/date-fns/subWeeks.js.map +1 -1
  1281. package/dist/node_modules/react-datepicker/node_modules/date-fns/transpose.js.map +1 -1
  1282. package/dist/node_modules/split-on-first/index.js.map +1 -1
  1283. package/dist/node_modules/ua-parser-js/src/ua-parser.js +3 -3
  1284. package/dist/node_modules/ua-parser-js/src/ua-parser.js.map +1 -1
  1285. package/dist/node_modules/uuid/dist/esm-browser/native.js +7 -0
  1286. package/dist/node_modules/uuid/dist/esm-browser/native.js.map +1 -0
  1287. package/dist/node_modules/uuid/dist/esm-browser/rng.js +3 -2
  1288. package/dist/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
  1289. package/dist/node_modules/uuid/dist/esm-browser/stringify.js +6 -10
  1290. package/dist/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
  1291. package/dist/node_modules/uuid/dist/esm-browser/v4.js +12 -9
  1292. package/dist/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
  1293. package/package.json +2 -2
  1294. package/dist/node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +0 -1
  1295. package/dist/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -19
  1296. package/dist/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +0 -1
  1297. package/dist/node_modules/query-string/node_modules/decode-uri-component/index.js.map +0 -1
  1298. package/dist/node_modules/uuid/dist/esm-browser/regex.js +0 -5
  1299. package/dist/node_modules/uuid/dist/esm-browser/regex.js.map +0 -1
  1300. package/dist/node_modules/uuid/dist/esm-browser/validate.js +0 -8
  1301. package/dist/node_modules/uuid/dist/esm-browser/validate.js.map +0 -1
  1302. /package/dist/node_modules/{query-string/node_modules/decode-uri-component → decode-uri-component}/index.js +0 -0
@@ -1,46 +1,46 @@
1
- import { useMessageBrokerChannel as k } from "@cuemath/cue-message-broker";
2
- import { useMemo as I, useCallback as o } from "react";
3
- const S = 3, b = (l) => {
4
- const { studentClassroomId: a, onMessageReceive: e, logger: n } = l, t = `inclass_${a}`, r = I(
1
+ import { useMessageBrokerChannel as S } from "@cuemath/cue-message-broker";
2
+ import { useMemo as b, useCallback as o } from "react";
3
+ const f = 3, y = (l) => {
4
+ const { studentClassroomId: s, onMessageReceive: e, logger: n } = l, t = `inclass_${s}`, r = b(
5
5
  () => ({
6
6
  channelId: t,
7
- ttl: S,
7
+ ttl: f,
8
8
  noHistory: !0,
9
9
  logger: n
10
10
  }),
11
11
  [t, n]
12
12
  ), c = o(
13
- (M, p) => {
13
+ (p, M) => {
14
14
  e == null || e(
15
- M.map((g) => g.message.payload),
16
- p
15
+ p.map((g) => g.message.payload),
16
+ M
17
17
  );
18
18
  },
19
19
  [e]
20
20
  ), {
21
- channel: s,
21
+ channel: a,
22
22
  publish: d,
23
23
  channelStatus: u,
24
24
  channelMetadata: m,
25
25
  setChannelMetadata: h,
26
- removeChannelMetadata: C
27
- } = k({
26
+ removeChannelMetadata: i
27
+ } = S({
28
28
  channelOptions: r,
29
29
  consumerFn: e ? c : void 0,
30
30
  metadataRequired: !0,
31
- enabled: a !== void 0
32
- }), i = o(() => {
33
- s == null || s.destroyChannel();
34
- }, [s]);
31
+ enabled: s !== void 0
32
+ }), C = o(() => {
33
+ a == null || a.destroyChannel();
34
+ }, [a]);
35
35
  return {
36
36
  channelStatus: u,
37
37
  channelMetadata: m,
38
38
  setChannelMetadata: h,
39
- removeChannelMetadata: C,
39
+ removeChannelMetadata: i,
40
40
  publish: d,
41
- closeChannel: i
41
+ closeChannel: C
42
42
  };
43
- }, y = b;
43
+ };
44
44
  export {
45
45
  y as default
46
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-inclass-message-broker.js","sources":["../../../../../src/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.ts"],"sourcesContent":["import type {\n IUseInclassMessageBroker,\n TInclassChannelMetadata,\n TInclassMessage,\n} from './use-inclass-message-broker-types';\n\nimport { useMessageBrokerChannel, type IChannelMessage } from '@cuemath/cue-message-broker';\nimport { useCallback, useMemo } from 'react';\n\nconst CHANNEL_MESSAGES_TTL = 3; // 3 hours\n\nconst useInClassMessageBroker: IUseInclassMessageBroker = options => {\n const { studentClassroomId, onMessageReceive, logger } = options;\n const channelId = `inclass_${studentClassroomId}`;\n const channelOptions = useMemo(\n () => ({\n channelId,\n ttl: CHANNEL_MESSAGES_TTL,\n noHistory: true,\n logger,\n }),\n [channelId, logger],\n );\n\n const handleMessageReceive = useCallback(\n (newMessages: Array<IChannelMessage<TInclassMessage>>, initialData?: boolean) => {\n onMessageReceive?.(\n newMessages.map(channelMessage => channelMessage.message.payload),\n initialData,\n );\n },\n [onMessageReceive],\n );\n\n const {\n channel,\n publish,\n channelStatus,\n channelMetadata,\n setChannelMetadata,\n removeChannelMetadata,\n } = useMessageBrokerChannel<TInclassMessage, TInclassChannelMetadata>({\n channelOptions,\n consumerFn: onMessageReceive ? handleMessageReceive : undefined,\n metadataRequired: true,\n enabled: studentClassroomId !== undefined,\n });\n\n const closeChannel = useCallback(() => {\n channel?.destroyChannel();\n }, [channel]);\n\n return {\n channelStatus,\n channelMetadata,\n setChannelMetadata,\n removeChannelMetadata,\n publish,\n closeChannel,\n };\n};\n\nexport default useInClassMessageBroker;\n"],"names":["CHANNEL_MESSAGES_TTL","useInClassMessageBroker","options","studentClassroomId","onMessageReceive","logger","channelId","channelOptions","useMemo","handleMessageReceive","useCallback","newMessages","initialData","channelMessage","channel","publish","channelStatus","channelMetadata","setChannelMetadata","removeChannelMetadata","useMessageBrokerChannel","closeChannel","useInClassMessageBroker$1"],"mappings":";;AASA,MAAMA,IAAuB,GAEvBC,IAAoD,CAAWC,MAAA;AACnE,QAAM,EAAE,oBAAAC,GAAoB,kBAAAC,GAAkB,QAAAC,EAAA,IAAWH,GACnDI,IAAY,WAAWH,CAAkB,IACzCI,IAAiBC;AAAA,IACrB,OAAO;AAAA,MACL,WAAAF;AAAA,MACA,KAAKN;AAAA,MACL,WAAW;AAAA,MACX,QAAAK;AAAA,IAAA;AAAA,IAEF,CAACC,GAAWD,CAAM;AAAA,EAAA,GAGdI,IAAuBC;AAAA,IAC3B,CAACC,GAAsDC,MAA0B;AAC/E,MAAAR,KAAA,QAAAA;AAAA,QACEO,EAAY,IAAI,CAAkBE,MAAAA,EAAe,QAAQ,OAAO;AAAA,QAChED;AAAA;AAAA,IAEJ;AAAA,IACA,CAACR,CAAgB;AAAA,EAAA,GAGb;AAAA,IACJ,SAAAU;AAAA,IACA,SAAAC;AAAA,IACA,eAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,uBAAAC;AAAA,MACEC,EAAkE;AAAA,IACpE,gBAAAb;AAAA,IACA,YAAYH,IAAmBK,IAAuB;AAAA,IACtD,kBAAkB;AAAA,IAClB,SAASN,MAAuB;AAAA,EAAA,CACjC,GAEKkB,IAAeX,EAAY,MAAM;AACrC,IAAAI,KAAA,QAAAA,EAAS;AAAA,EAAe,GACvB,CAACA,CAAO,CAAC;AAEL,SAAA;AAAA,IACL,eAAAE;AAAA,IACA,iBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,SAAAJ;AAAA,IACA,cAAAM;AAAA,EAAA;AAEJ,GAEAC,IAAerB;"}
1
+ {"version":3,"file":"use-inclass-message-broker.js","sources":["../../../../../src/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.ts"],"sourcesContent":["import type {\n IUseInclassMessageBroker,\n TInclassChannelMetadata,\n TInclassMessage,\n} from './use-inclass-message-broker-types';\n\nimport { useMessageBrokerChannel, type IChannelMessage } from '@cuemath/cue-message-broker';\nimport { useCallback, useMemo } from 'react';\n\nconst CHANNEL_MESSAGES_TTL = 3; // 3 hours\n\nconst useInClassMessageBroker: IUseInclassMessageBroker = options => {\n const { studentClassroomId, onMessageReceive, logger } = options;\n const channelId = `inclass_${studentClassroomId}`;\n const channelOptions = useMemo(\n () => ({\n channelId,\n ttl: CHANNEL_MESSAGES_TTL,\n noHistory: true,\n logger,\n }),\n [channelId, logger],\n );\n\n const handleMessageReceive = useCallback(\n (newMessages: Array<IChannelMessage<TInclassMessage>>, initialData?: boolean) => {\n onMessageReceive?.(\n newMessages.map(channelMessage => channelMessage.message.payload),\n initialData,\n );\n },\n [onMessageReceive],\n );\n\n const {\n channel,\n publish,\n channelStatus,\n channelMetadata,\n setChannelMetadata,\n removeChannelMetadata,\n } = useMessageBrokerChannel<TInclassMessage, TInclassChannelMetadata>({\n channelOptions,\n consumerFn: onMessageReceive ? handleMessageReceive : undefined,\n metadataRequired: true,\n enabled: studentClassroomId !== undefined,\n });\n\n const closeChannel = useCallback(() => {\n channel?.destroyChannel();\n }, [channel]);\n\n return {\n channelStatus,\n channelMetadata,\n setChannelMetadata,\n removeChannelMetadata,\n publish,\n closeChannel,\n };\n};\n\nexport default useInClassMessageBroker;\n"],"names":["CHANNEL_MESSAGES_TTL","useInClassMessageBroker","options","studentClassroomId","onMessageReceive","logger","channelId","channelOptions","useMemo","handleMessageReceive","useCallback","newMessages","initialData","channelMessage","channel","publish","channelStatus","channelMetadata","setChannelMetadata","removeChannelMetadata","useMessageBrokerChannel","closeChannel"],"mappings":";;AASA,MAAMA,IAAuB,GAEvBC,IAAoD,CAAWC,MAAA;AACnE,QAAM,EAAE,oBAAAC,GAAoB,kBAAAC,GAAkB,QAAAC,EAAW,IAAAH,GACnDI,IAAY,WAAWH,CAAkB,IACzCI,IAAiBC;AAAA,IACrB,OAAO;AAAA,MACL,WAAAF;AAAA,MACA,KAAKN;AAAA,MACL,WAAW;AAAA,MACX,QAAAK;AAAA,IAAA;AAAA,IAEF,CAACC,GAAWD,CAAM;AAAA,EACpB,GAEMI,IAAuBC;AAAA,IAC3B,CAACC,GAAsDC,MAA0B;AAC/E,MAAAR,KAAA,QAAAA;AAAA,QACEO,EAAY,IAAI,CAAkBE,MAAAA,EAAe,QAAQ,OAAO;AAAA,QAChED;AAAA;AAAA,IAEJ;AAAA,IACA,CAACR,CAAgB;AAAA,EACnB,GAEM;AAAA,IACJ,SAAAU;AAAA,IACA,SAAAC;AAAA,IACA,eAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,uBAAAC;AAAA,MACEC,EAAkE;AAAA,IACpE,gBAAAb;AAAA,IACA,YAAYH,IAAmBK,IAAuB;AAAA,IACtD,kBAAkB;AAAA,IAClB,SAASN,MAAuB;AAAA,EAAA,CACjC,GAEKkB,IAAeX,EAAY,MAAM;AACrC,IAAAI,KAAA,QAAAA,EAAS;AAAA,EAAe,GACvB,CAACA,CAAO,CAAC;AAEL,SAAA;AAAA,IACL,eAAAE;AAAA,IACA,iBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,SAAAJ;AAAA,IACA,cAAAM;AAAA,EACF;AACF;"}
@@ -1,10 +1,10 @@
1
1
  import { useMessageBrokerChannel as g } from "@cuemath/cue-message-broker";
2
2
  import { useMemo as S, useCallback as o } from "react";
3
- const k = 3, T = (r) => {
4
- const { teacherClassroomId: a, onMessageReceive: e, logger: t } = r, n = `trial_v3_${a}`, l = S(
3
+ const _ = 3, k = (r) => {
4
+ const { teacherClassroomId: s, onMessageReceive: e, logger: t } = r, n = `trial_v3_${s}`, l = S(
5
5
  () => ({
6
6
  channelId: n,
7
- ttl: k,
7
+ ttl: _,
8
8
  noHistory: !0,
9
9
  logger: t
10
10
  }),
@@ -17,23 +17,23 @@ const k = 3, T = (r) => {
17
17
  );
18
18
  },
19
19
  [e]
20
- ), { channel: s, publish: d, channelStatus: i, channelMetadata: u, setChannelMetadata: h } = g({
20
+ ), { channel: a, publish: d, channelStatus: u, channelMetadata: i, setChannelMetadata: h } = g({
21
21
  channelOptions: l,
22
22
  consumerFn: e ? c : void 0,
23
23
  metadataRequired: !0,
24
- enabled: a !== void 0
24
+ enabled: s !== void 0
25
25
  }), m = o(() => {
26
- s == null || s.destroyChannel();
27
- }, [s]);
26
+ a == null || a.destroyChannel();
27
+ }, [a]);
28
28
  return {
29
29
  publish: d,
30
30
  closeChannel: m,
31
31
  setChannelMetadata: h,
32
- channelStatus: i,
33
- channelMetadata: u
32
+ channelStatus: u,
33
+ channelMetadata: i
34
34
  };
35
- }, f = T;
35
+ };
36
36
  export {
37
- f as default
37
+ k as default
38
38
  };
39
39
  //# sourceMappingURL=use-trial-session-message-broker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-trial-session-message-broker.js","sources":["../../../../../src/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.ts"],"sourcesContent":["import type {\n ITrialSessionMetadata,\n IUseTrialSessionMessageBroker,\n TTrialSessionMessage,\n} from './use-trial-session-message-broker-types';\n\nimport { useMessageBrokerChannel, type IChannelMessage } from '@cuemath/cue-message-broker';\nimport { useCallback, useMemo } from 'react';\n\nconst CHANNEL_MESSAGES_TTL = 3; // 3 hours\n\nconst useTrialSessionMessageBroker: IUseTrialSessionMessageBroker = options => {\n const { teacherClassroomId, onMessageReceive, logger } = options;\n const channelId = `trial_v3_${teacherClassroomId}`;\n const channelOptions = useMemo(\n () => ({\n channelId,\n ttl: CHANNEL_MESSAGES_TTL,\n noHistory: true,\n logger,\n }),\n [channelId, logger],\n );\n\n const handleMessageReceive = useCallback(\n (newMessages: Array<IChannelMessage<TTrialSessionMessage>>, initialData?: boolean) => {\n onMessageReceive?.(\n newMessages.map(channelMessage => channelMessage.message.payload),\n initialData,\n );\n },\n [onMessageReceive],\n );\n\n const { channel, publish, channelStatus, channelMetadata, setChannelMetadata } =\n useMessageBrokerChannel<TTrialSessionMessage, ITrialSessionMetadata>({\n channelOptions,\n consumerFn: onMessageReceive ? handleMessageReceive : undefined,\n metadataRequired: true,\n enabled: teacherClassroomId !== undefined,\n });\n\n const closeChannel = useCallback(() => {\n channel?.destroyChannel();\n }, [channel]);\n\n return {\n publish,\n closeChannel,\n setChannelMetadata,\n channelStatus,\n channelMetadata,\n };\n};\n\nexport default useTrialSessionMessageBroker;\n"],"names":["CHANNEL_MESSAGES_TTL","useTrialSessionMessageBroker","options","teacherClassroomId","onMessageReceive","logger","channelId","channelOptions","useMemo","handleMessageReceive","useCallback","newMessages","initialData","channelMessage","channel","publish","channelStatus","channelMetadata","setChannelMetadata","useMessageBrokerChannel","closeChannel","useTrialSessionMessageBroker$1"],"mappings":";;AASA,MAAMA,IAAuB,GAEvBC,IAA8D,CAAWC,MAAA;AAC7E,QAAM,EAAE,oBAAAC,GAAoB,kBAAAC,GAAkB,QAAAC,EAAA,IAAWH,GACnDI,IAAY,YAAYH,CAAkB,IAC1CI,IAAiBC;AAAA,IACrB,OAAO;AAAA,MACL,WAAAF;AAAA,MACA,KAAKN;AAAA,MACL,WAAW;AAAA,MACX,QAAAK;AAAA,IAAA;AAAA,IAEF,CAACC,GAAWD,CAAM;AAAA,EAAA,GAGdI,IAAuBC;AAAA,IAC3B,CAACC,GAA2DC,MAA0B;AACpF,MAAAR,KAAA,QAAAA;AAAA,QACEO,EAAY,IAAI,CAAkBE,MAAAA,EAAe,QAAQ,OAAO;AAAA,QAChED;AAAA;AAAA,IAEJ;AAAA,IACA,CAACR,CAAgB;AAAA,EAAA,GAGb,EAAE,SAAAU,GAAS,SAAAC,GAAS,eAAAC,GAAe,iBAAAC,GAAiB,oBAAAC,MACxDC,EAAqE;AAAA,IACnE,gBAAAZ;AAAA,IACA,YAAYH,IAAmBK,IAAuB;AAAA,IACtD,kBAAkB;AAAA,IAClB,SAASN,MAAuB;AAAA,EAAA,CACjC,GAEGiB,IAAeV,EAAY,MAAM;AACrC,IAAAI,KAAA,QAAAA,EAAS;AAAA,EAAe,GACvB,CAACA,CAAO,CAAC;AAEL,SAAA;AAAA,IACL,SAAAC;AAAA,IACA,cAAAK;AAAA,IACA,oBAAAF;AAAA,IACA,eAAAF;AAAA,IACA,iBAAAC;AAAA,EAAA;AAEJ,GAEAI,IAAepB;"}
1
+ {"version":3,"file":"use-trial-session-message-broker.js","sources":["../../../../../src/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.ts"],"sourcesContent":["import type {\n ITrialSessionMetadata,\n IUseTrialSessionMessageBroker,\n TTrialSessionMessage,\n} from './use-trial-session-message-broker-types';\n\nimport { useMessageBrokerChannel, type IChannelMessage } from '@cuemath/cue-message-broker';\nimport { useCallback, useMemo } from 'react';\n\nconst CHANNEL_MESSAGES_TTL = 3; // 3 hours\n\nconst useTrialSessionMessageBroker: IUseTrialSessionMessageBroker = options => {\n const { teacherClassroomId, onMessageReceive, logger } = options;\n const channelId = `trial_v3_${teacherClassroomId}`;\n const channelOptions = useMemo(\n () => ({\n channelId,\n ttl: CHANNEL_MESSAGES_TTL,\n noHistory: true,\n logger,\n }),\n [channelId, logger],\n );\n\n const handleMessageReceive = useCallback(\n (newMessages: Array<IChannelMessage<TTrialSessionMessage>>, initialData?: boolean) => {\n onMessageReceive?.(\n newMessages.map(channelMessage => channelMessage.message.payload),\n initialData,\n );\n },\n [onMessageReceive],\n );\n\n const { channel, publish, channelStatus, channelMetadata, setChannelMetadata } =\n useMessageBrokerChannel<TTrialSessionMessage, ITrialSessionMetadata>({\n channelOptions,\n consumerFn: onMessageReceive ? handleMessageReceive : undefined,\n metadataRequired: true,\n enabled: teacherClassroomId !== undefined,\n });\n\n const closeChannel = useCallback(() => {\n channel?.destroyChannel();\n }, [channel]);\n\n return {\n publish,\n closeChannel,\n setChannelMetadata,\n channelStatus,\n channelMetadata,\n };\n};\n\nexport default useTrialSessionMessageBroker;\n"],"names":["CHANNEL_MESSAGES_TTL","useTrialSessionMessageBroker","options","teacherClassroomId","onMessageReceive","logger","channelId","channelOptions","useMemo","handleMessageReceive","useCallback","newMessages","initialData","channelMessage","channel","publish","channelStatus","channelMetadata","setChannelMetadata","useMessageBrokerChannel","closeChannel"],"mappings":";;AASA,MAAMA,IAAuB,GAEvBC,IAA8D,CAAWC,MAAA;AAC7E,QAAM,EAAE,oBAAAC,GAAoB,kBAAAC,GAAkB,QAAAC,EAAW,IAAAH,GACnDI,IAAY,YAAYH,CAAkB,IAC1CI,IAAiBC;AAAA,IACrB,OAAO;AAAA,MACL,WAAAF;AAAA,MACA,KAAKN;AAAA,MACL,WAAW;AAAA,MACX,QAAAK;AAAA,IAAA;AAAA,IAEF,CAACC,GAAWD,CAAM;AAAA,EACpB,GAEMI,IAAuBC;AAAA,IAC3B,CAACC,GAA2DC,MAA0B;AACpF,MAAAR,KAAA,QAAAA;AAAA,QACEO,EAAY,IAAI,CAAkBE,MAAAA,EAAe,QAAQ,OAAO;AAAA,QAChED;AAAA;AAAA,IAEJ;AAAA,IACA,CAACR,CAAgB;AAAA,EACnB,GAEM,EAAE,SAAAU,GAAS,SAAAC,GAAS,eAAAC,GAAe,iBAAAC,GAAiB,oBAAAC,MACxDC,EAAqE;AAAA,IACnE,gBAAAZ;AAAA,IACA,YAAYH,IAAmBK,IAAuB;AAAA,IACtD,kBAAkB;AAAA,IAClB,SAASN,MAAuB;AAAA,EAAA,CACjC,GAEGiB,IAAeV,EAAY,MAAM;AACrC,IAAAI,KAAA,QAAAA,EAAS;AAAA,EAAe,GACvB,CAACA,CAAO,CAAC;AAEL,SAAA;AAAA,IACL,SAAAC;AAAA,IACA,cAAAK;AAAA,IACA,oBAAAF;AAAA,IACA,eAAAF;AAAA,IACA,iBAAAC;AAAA,EACF;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sources":["../../../../src/features/communication/pub-sub/core.ts"],"sourcesContent":["import type { TInclassMessage } from '../hooks/use-inclass-message-broker/use-inclass-message-broker-types';\nimport type { TAction, TCallback } from './types';\n\nimport isEqual from 'lodash.isequal';\n\ninterface ISubscription {\n eventsMap: {\n [eventName: string]: Record<string, unknown> | null;\n };\n callback: TCallback;\n}\n\nclass EventListener {\n private _eventListener: {\n [subscriptionId: string]: ISubscription;\n } = {};\n\n unsubscribe(subscriptionId: string) {\n delete this._eventListener[subscriptionId];\n }\n\n subscribe(events: TAction[] | TAction, callback: TCallback, subscriptionId: string) {\n if (events.length === 0) return;\n\n const eventsList = (Array.isArray(events[0]) ? events : [events]) as TAction[];\n\n const subscriptionListener: ISubscription = { callback, eventsMap: {} };\n\n eventsList.forEach(event => {\n const [eventName, eventPayload] = event;\n\n subscriptionListener.eventsMap = {\n ...subscriptionListener.eventsMap,\n [eventName]: eventPayload ?? null,\n };\n });\n\n this._eventListener[subscriptionId] = subscriptionListener;\n }\n\n isPayloadMatched(matchPayload: Record<string, unknown>, eventPayload: Record<string, unknown>) {\n return Object.entries(matchPayload).some(([key, matchPayloadValue]) => {\n const eventPayloadValue = eventPayload[key];\n\n if (Array.isArray(eventPayloadValue)) {\n if (Array.isArray(matchPayloadValue)) {\n const isArraySubset = eventPayloadValue.every(i => matchPayloadValue.includes(i));\n\n if (isArraySubset) return true;\n }\n\n return false;\n }\n\n const areValuesEqual = isEqual(matchPayloadValue, eventPayloadValue);\n\n return areValuesEqual;\n });\n }\n\n notifySubscribers(subscriptionId: string, newMessages: TInclassMessage[]) {\n if (newMessages.length === 0) return;\n\n const { eventsMap, callback } = this._eventListener[subscriptionId] || {};\n const matchedMessages: TInclassMessage[] = [];\n\n if (eventsMap) {\n newMessages.forEach(message => {\n const { eventName, eventPayload } = message;\n const payload = eventsMap[eventName];\n\n if (payload === null) {\n matchedMessages.push(message);\n } else if (payload && this.isPayloadMatched(payload, eventPayload)) {\n matchedMessages.push(message);\n }\n });\n }\n\n if (matchedMessages.length > 0 && callback) {\n callback(matchedMessages);\n }\n }\n}\n\nconst eventListener = new EventListener();\n\nexport default eventListener;\n"],"names":["EventListener","__publicField","subscriptionId","events","callback","eventsList","subscriptionListener","event","eventName","eventPayload","matchPayload","key","matchPayloadValue","eventPayloadValue","i","isEqual","newMessages","eventsMap","matchedMessages","message","payload","eventListener"],"mappings":";;;;AAYA,MAAMA,EAAc;AAAA,EAApB;AACU,IAAAC,EAAA,wBAEJ,CAAA;AAAA;AAAA,EAEJ,YAAYC,GAAwB;AAC3B,WAAA,KAAK,eAAeA,CAAc;AAAA,EAC3C;AAAA,EAEA,UAAUC,GAA6BC,GAAqBF,GAAwB;AAC9E,QAAAC,EAAO,WAAW,EAAG;AAEnB,UAAAE,IAAc,MAAM,QAAQF,EAAO,CAAC,CAAC,IAAIA,IAAS,CAACA,CAAM,GAEzDG,IAAsC,EAAE,UAAAF,GAAU,WAAW,CAAG,EAAA;AAEtE,IAAAC,EAAW,QAAQ,CAASE,MAAA;AACpB,YAAA,CAACC,GAAWC,CAAY,IAAIF;AAElC,MAAAD,EAAqB,YAAY;AAAA,QAC/B,GAAGA,EAAqB;AAAA,QACxB,CAACE,CAAS,GAAGC,KAAgB;AAAA,MAAA;AAAA,IAC/B,CACD,GAEI,KAAA,eAAeP,CAAc,IAAII;AAAA,EACxC;AAAA,EAEA,iBAAiBI,GAAuCD,GAAuC;AACtF,WAAA,OAAO,QAAQC,CAAY,EAAE,KAAK,CAAC,CAACC,GAAKC,CAAiB,MAAM;AAC/D,YAAAC,IAAoBJ,EAAaE,CAAG;AAEtC,aAAA,MAAM,QAAQE,CAAiB,IAC7B,SAAM,QAAQD,CAAiB,KACXC,EAAkB,MAAM,OAAKD,EAAkB,SAASE,CAAC,CAAC,KAQ7DC,EAAQH,GAAmBC,CAAiB;AAAA,IAE5D,CACR;AAAA,EACH;AAAA,EAEA,kBAAkBX,GAAwBc,GAAgC;AACpE,QAAAA,EAAY,WAAW,EAAG;AAExB,UAAA,EAAE,WAAAC,GAAW,UAAAb,EAAS,IAAI,KAAK,eAAeF,CAAc,KAAK,IACjEgB,IAAqC,CAAA;AAE3C,IAAID,KACFD,EAAY,QAAQ,CAAWG,MAAA;AACvB,YAAA,EAAE,WAAAX,GAAW,cAAAC,EAAiB,IAAAU,GAC9BC,IAAUH,EAAUT,CAAS;AAEnC,OAAIY,MAAY,QAELA,KAAW,KAAK,iBAAiBA,GAASX,CAAY,MAC/DS,EAAgB,KAAKC,CAAO;AAAA,IAC9B,CACD,GAGCD,EAAgB,SAAS,KAAKd,KAChCA,EAASc,CAAe;AAAA,EAE5B;AACF;AAEM,MAAAG,IAAgB,IAAIrB,EAAc;"}
1
+ {"version":3,"file":"core.js","sources":["../../../../src/features/communication/pub-sub/core.ts"],"sourcesContent":["import type { TInclassMessage } from '../hooks/use-inclass-message-broker/use-inclass-message-broker-types';\nimport type { TAction, TCallback } from './types';\n\nimport isEqual from 'lodash.isequal';\n\ninterface ISubscription {\n eventsMap: {\n [eventName: string]: Record<string, unknown> | null;\n };\n callback: TCallback;\n}\n\nclass EventListener {\n private _eventListener: {\n [subscriptionId: string]: ISubscription;\n } = {};\n\n unsubscribe(subscriptionId: string) {\n delete this._eventListener[subscriptionId];\n }\n\n subscribe(events: TAction[] | TAction, callback: TCallback, subscriptionId: string) {\n if (events.length === 0) return;\n\n const eventsList = (Array.isArray(events[0]) ? events : [events]) as TAction[];\n\n const subscriptionListener: ISubscription = { callback, eventsMap: {} };\n\n eventsList.forEach(event => {\n const [eventName, eventPayload] = event;\n\n subscriptionListener.eventsMap = {\n ...subscriptionListener.eventsMap,\n [eventName]: eventPayload ?? null,\n };\n });\n\n this._eventListener[subscriptionId] = subscriptionListener;\n }\n\n isPayloadMatched(matchPayload: Record<string, unknown>, eventPayload: Record<string, unknown>) {\n return Object.entries(matchPayload).some(([key, matchPayloadValue]) => {\n const eventPayloadValue = eventPayload[key];\n\n if (Array.isArray(eventPayloadValue)) {\n if (Array.isArray(matchPayloadValue)) {\n const isArraySubset = eventPayloadValue.every(i => matchPayloadValue.includes(i));\n\n if (isArraySubset) return true;\n }\n\n return false;\n }\n\n const areValuesEqual = isEqual(matchPayloadValue, eventPayloadValue);\n\n return areValuesEqual;\n });\n }\n\n notifySubscribers(subscriptionId: string, newMessages: TInclassMessage[]) {\n if (newMessages.length === 0) return;\n\n const { eventsMap, callback } = this._eventListener[subscriptionId] || {};\n const matchedMessages: TInclassMessage[] = [];\n\n if (eventsMap) {\n newMessages.forEach(message => {\n const { eventName, eventPayload } = message;\n const payload = eventsMap[eventName];\n\n if (payload === null) {\n matchedMessages.push(message);\n } else if (payload && this.isPayloadMatched(payload, eventPayload)) {\n matchedMessages.push(message);\n }\n });\n }\n\n if (matchedMessages.length > 0 && callback) {\n callback(matchedMessages);\n }\n }\n}\n\nconst eventListener = new EventListener();\n\nexport default eventListener;\n"],"names":["EventListener","__publicField","subscriptionId","events","callback","eventsList","subscriptionListener","event","eventName","eventPayload","matchPayload","key","matchPayloadValue","eventPayloadValue","i","isEqual","newMessages","eventsMap","matchedMessages","message","payload","eventListener"],"mappings":";;;;AAYA,MAAMA,EAAc;AAAA,EAApB;AACU,IAAAC,EAAA,wBAEJ,CAAC;AAAA;AAAA,EAEL,YAAYC,GAAwB;AAC3B,WAAA,KAAK,eAAeA,CAAc;AAAA,EAAA;AAAA,EAG3C,UAAUC,GAA6BC,GAAqBF,GAAwB;AAC9E,QAAAC,EAAO,WAAW,EAAG;AAEnB,UAAAE,IAAc,MAAM,QAAQF,EAAO,CAAC,CAAC,IAAIA,IAAS,CAACA,CAAM,GAEzDG,IAAsC,EAAE,UAAAF,GAAU,WAAW,CAAA,EAAG;AAEtE,IAAAC,EAAW,QAAQ,CAASE,MAAA;AACpB,YAAA,CAACC,GAAWC,CAAY,IAAIF;AAElC,MAAAD,EAAqB,YAAY;AAAA,QAC/B,GAAGA,EAAqB;AAAA,QACxB,CAACE,CAAS,GAAGC,KAAgB;AAAA,MAC/B;AAAA,IAAA,CACD,GAEI,KAAA,eAAeP,CAAc,IAAII;AAAA,EAAA;AAAA,EAGxC,iBAAiBI,GAAuCD,GAAuC;AACtF,WAAA,OAAO,QAAQC,CAAY,EAAE,KAAK,CAAC,CAACC,GAAKC,CAAiB,MAAM;AAC/D,YAAAC,IAAoBJ,EAAaE,CAAG;AAEtC,aAAA,MAAM,QAAQE,CAAiB,IAC7B,SAAM,QAAQD,CAAiB,KACXC,EAAkB,MAAM,OAAKD,EAAkB,SAASE,CAAC,CAAC,KAQ7DC,EAAQH,GAAmBC,CAAiB;AAAA,IAE5D,CACR;AAAA,EAAA;AAAA,EAGH,kBAAkBX,GAAwBc,GAAgC;AACpE,QAAAA,EAAY,WAAW,EAAG;AAExB,UAAA,EAAE,WAAAC,GAAW,UAAAb,EAAS,IAAI,KAAK,eAAeF,CAAc,KAAK,CAAC,GAClEgB,IAAqC,CAAC;AAE5C,IAAID,KACFD,EAAY,QAAQ,CAAWG,MAAA;AACvB,YAAA,EAAE,WAAAX,GAAW,cAAAC,EAAA,IAAiBU,GAC9BC,IAAUH,EAAUT,CAAS;AAEnC,OAAIY,MAAY,QAELA,KAAW,KAAK,iBAAiBA,GAASX,CAAY,MAC/DS,EAAgB,KAAKC,CAAO;AAAA,IAC9B,CACD,GAGCD,EAAgB,SAAS,KAAKd,KAChCA,EAASc,CAAe;AAAA,EAC1B;AAEJ;AAEM,MAAAG,IAAgB,IAAIrB,EAAc;"}
@@ -1,4 +1,4 @@
1
- import { useState as f, useCallback as i, useEffect as m } from "react";
1
+ import { useCallback as i, useState as f, useEffect as m } from "react";
2
2
  import c from "../hooks/use-inclass-message-broker/use-inclass-message-broker.js";
3
3
  import r from "./core.js";
4
4
  import p from "../../../node_modules/uuid/dist/esm-browser/v4.js";
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sources":["../../../../src/features/communication/pub-sub/hooks.ts"],"sourcesContent":["import type { TInclassMessage } from '../hooks/use-inclass-message-broker/use-inclass-message-broker-types';\nimport type { TActionListenerOptions } from './types';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useInClassMessageBroker from '../hooks/use-inclass-message-broker/use-inclass-message-broker';\nimport eventListener from './core';\n\nconst useInClassActionListener = (\n { studentClassroomId, actions, callback }: TActionListenerOptions,\n enabled: boolean = true,\n) => {\n const [subscriptionId] = useState(uuidv4);\n\n const onMessagesReceived = useCallback(\n (newMessages: TInclassMessage[]) => {\n eventListener.notifySubscribers(subscriptionId, newMessages);\n },\n [subscriptionId],\n );\n\n useEffect(() => {\n if (enabled === false) {\n eventListener.unsubscribe(subscriptionId);\n } else {\n eventListener.subscribe(actions, callback, subscriptionId);\n }\n\n return () => {\n eventListener.unsubscribe(subscriptionId);\n };\n }, [actions, callback, enabled, subscriptionId]);\n\n useInClassMessageBroker({ studentClassroomId, onMessageReceive: onMessagesReceived });\n};\n\nconst useInClassActionDispatcher = ({\n studentClassroomId,\n}: {\n studentClassroomId: string | undefined;\n}) => {\n const { publish } = useInClassMessageBroker({ studentClassroomId });\n\n const dispatchInClassAction = useCallback(\n (message: TInclassMessage) => {\n publish?.(message);\n },\n [publish],\n );\n\n return { dispatchInClassAction };\n};\n\nexport { useInClassActionDispatcher, useInClassActionListener };\n"],"names":["useInClassActionListener","studentClassroomId","actions","callback","enabled","subscriptionId","useState","uuidv4","onMessagesReceived","useCallback","newMessages","eventListener","useEffect","useInClassMessageBroker","useInClassActionDispatcher","publish","message"],"mappings":";;;;AASM,MAAAA,IAA2B,CAC/B,EAAE,oBAAAC,GAAoB,SAAAC,GAAS,UAAAC,EAAS,GACxCC,IAAmB,OAChB;AACH,QAAM,CAACC,CAAc,IAAIC,EAASC,CAAM,GAElCC,IAAqBC;AAAA,IACzB,CAACC,MAAmC;AACpB,MAAAC,EAAA,kBAAkBN,GAAgBK,CAAW;AAAA,IAC7D;AAAA,IACA,CAACL,CAAc;AAAA,EAAA;AAGjB,EAAAO,EAAU,OACJR,MAAY,KACdO,EAAc,YAAYN,CAAc,IAE1BM,EAAA,UAAUT,GAASC,GAAUE,CAAc,GAGpD,MAAM;AACX,IAAAM,EAAc,YAAYN,CAAc;AAAA,EAAA,IAEzC,CAACH,GAASC,GAAUC,GAASC,CAAc,CAAC,GAE/CQ,EAAwB,EAAE,oBAAAZ,GAAoB,kBAAkBO,EAAoB,CAAA;AACtF,GAEMM,IAA6B,CAAC;AAAA,EAClC,oBAAAb;AACF,MAEM;AACJ,QAAM,EAAE,SAAAc,EAAQ,IAAIF,EAAwB,EAAE,oBAAAZ,EAAoB,CAAA;AASlE,SAAO,EAAE,uBAPqBQ;AAAA,IAC5B,CAACO,MAA6B;AAC5B,MAAAD,KAAA,QAAAA,EAAUC;AAAA,IACZ;AAAA,IACA,CAACD,CAAO;AAAA,EAAA,EAGqB;AACjC;"}
1
+ {"version":3,"file":"hooks.js","sources":["../../../../src/features/communication/pub-sub/hooks.ts"],"sourcesContent":["import type { TInclassMessage } from '../hooks/use-inclass-message-broker/use-inclass-message-broker-types';\nimport type { TActionListenerOptions } from './types';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport useInClassMessageBroker from '../hooks/use-inclass-message-broker/use-inclass-message-broker';\nimport eventListener from './core';\n\nconst useInClassActionListener = (\n { studentClassroomId, actions, callback }: TActionListenerOptions,\n enabled: boolean = true,\n) => {\n const [subscriptionId] = useState(uuidv4);\n\n const onMessagesReceived = useCallback(\n (newMessages: TInclassMessage[]) => {\n eventListener.notifySubscribers(subscriptionId, newMessages);\n },\n [subscriptionId],\n );\n\n useEffect(() => {\n if (enabled === false) {\n eventListener.unsubscribe(subscriptionId);\n } else {\n eventListener.subscribe(actions, callback, subscriptionId);\n }\n\n return () => {\n eventListener.unsubscribe(subscriptionId);\n };\n }, [actions, callback, enabled, subscriptionId]);\n\n useInClassMessageBroker({ studentClassroomId, onMessageReceive: onMessagesReceived });\n};\n\nconst useInClassActionDispatcher = ({\n studentClassroomId,\n}: {\n studentClassroomId: string | undefined;\n}) => {\n const { publish } = useInClassMessageBroker({ studentClassroomId });\n\n const dispatchInClassAction = useCallback(\n (message: TInclassMessage) => {\n publish?.(message);\n },\n [publish],\n );\n\n return { dispatchInClassAction };\n};\n\nexport { useInClassActionDispatcher, useInClassActionListener };\n"],"names":["useInClassActionListener","studentClassroomId","actions","callback","enabled","subscriptionId","useState","uuidv4","onMessagesReceived","useCallback","newMessages","eventListener","useEffect","useInClassMessageBroker","useInClassActionDispatcher","publish","message"],"mappings":";;;;AASM,MAAAA,IAA2B,CAC/B,EAAE,oBAAAC,GAAoB,SAAAC,GAAS,UAAAC,EAAS,GACxCC,IAAmB,OAChB;AACH,QAAM,CAACC,CAAc,IAAIC,EAASC,CAAM,GAElCC,IAAqBC;AAAA,IACzB,CAACC,MAAmC;AACpB,MAAAC,EAAA,kBAAkBN,GAAgBK,CAAW;AAAA,IAC7D;AAAA,IACA,CAACL,CAAc;AAAA,EACjB;AAEA,EAAAO,EAAU,OACJR,MAAY,KACdO,EAAc,YAAYN,CAAc,IAE1BM,EAAA,UAAUT,GAASC,GAAUE,CAAc,GAGpD,MAAM;AACX,IAAAM,EAAc,YAAYN,CAAc;AAAA,EAC1C,IACC,CAACH,GAASC,GAAUC,GAASC,CAAc,CAAC,GAE/CQ,EAAwB,EAAE,oBAAAZ,GAAoB,kBAAkBO,EAAA,CAAoB;AACtF,GAEMM,IAA6B,CAAC;AAAA,EAClC,oBAAAb;AACF,MAEM;AACJ,QAAM,EAAE,SAAAc,EAAQ,IAAIF,EAAwB,EAAE,oBAAAZ,GAAoB;AASlE,SAAO,EAAE,uBAPqBQ;AAAA,IAC5B,CAACO,MAA6B;AAC5B,MAAAD,KAAA,QAAAA,EAAUC;AAAA,IACZ;AAAA,IACA,CAACD,CAAO;AAAA,EACV,EAE+B;AACjC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"homework-controls.js","sources":["../../../../src/features/cue-canvas/bottombar/homework-controls.tsx"],"sourcesContent":["import type { IHomeWorkControllerProps } from './bottombar-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport CheckIcon from '../../../assets/line-icons/icons/check';\nimport ShareIcon from '../../../assets/line-icons/icons/share';\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 { dataURIToBlob } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\n\nconst HomeworkController: FC<IHomeWorkControllerProps> = props => {\n const { width, onSendImageToChat, onMarkAsResolved } = props;\n const { homeworkId, activeInstance, setHomeworkId } = useCueCanvasActions();\n const [isBusy, setIsBusy] = useState(false);\n\n const onSuccess = useCallback(() => {\n activeInstance?.clearCanvas();\n setHomeworkId(undefined);\n setIsBusy(false);\n }, [activeInstance, setHomeworkId]);\n\n const getBoardSnapshot = useCallback(async () => {\n if (!activeInstance) return;\n\n const snapshot = await activeInstance?.getCanvasAsImage();\n\n if (!snapshot) {\n return;\n }\n\n const blobdata = dataURIToBlob(snapshot);\n\n return [blobdata];\n }, [activeInstance]);\n\n const handleSendImageToChat = useCallback(async () => {\n const snapshot = await getBoardSnapshot();\n\n if (!homeworkId || !onSendImageToChat || !snapshot) return;\n\n onSendImageToChat?.(homeworkId, snapshot, onSuccess);\n }, [getBoardSnapshot, homeworkId, onSendImageToChat, onSuccess]);\n\n const handleMarkAsResolved = useCallback(() => {\n if (!homeworkId) return;\n setIsBusy(true);\n onMarkAsResolved?.(homeworkId, onSuccess);\n }, [homeworkId, onMarkAsResolved, onSuccess]);\n\n if (!homeworkId) return null;\n\n if (isBusy) {\n return (\n <FlexView\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Text $renderAs=\"body3\" $color=\"BLACK\">\n Resolving....\n </Text>\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $flexDirection=\"row\"\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Button\n label=\"Mark as reolved\"\n onClick={handleMarkAsResolved}\n renderAs={'primary'}\n Icon={CheckIcon}\n busy={isBusy}\n />\n <Separator width={16} />\n <Button\n label=\"Send CueBoard image to chat\"\n onClick={handleSendImageToChat}\n renderAs={'primary'}\n Icon={ShareIcon}\n />\n </FlexView>\n );\n};\n\nexport default memo(HomeworkController);\n"],"names":["HomeworkController","props","width","onSendImageToChat","onMarkAsResolved","homeworkId","activeInstance","setHomeworkId","useCueCanvasActions","isBusy","setIsBusy","useState","onSuccess","useCallback","getBoardSnapshot","snapshot","dataURIToBlob","handleSendImageToChat","handleMarkAsResolved","jsx","FlexView","Text","jsxs","Button","CheckIcon","Separator","ShareIcon","homeworkControls","memo"],"mappings":";;;;;;;;;;AAcA,MAAMA,IAAmD,CAASC,MAAA;AAChE,QAAM,EAAE,OAAAC,GAAO,mBAAAC,GAAmB,kBAAAC,EAAA,IAAqBH,GACjD,EAAE,YAAAI,GAAY,gBAAAC,GAAgB,eAAAC,MAAkBC,EAAoB,GACpE,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GAEpCC,IAAYC,EAAY,MAAM;AAClC,IAAAP,KAAA,QAAAA,EAAgB,eAChBC,EAAc,MAAS,GACvBG,EAAU,EAAK;AAAA,EAAA,GACd,CAACJ,GAAgBC,CAAa,CAAC,GAE5BO,IAAmBD,EAAY,YAAY;AAC/C,QAAI,CAACP,EAAgB;AAEf,UAAAS,IAAW,OAAMT,KAAA,gBAAAA,EAAgB;AAEvC,WAAKS,IAME,CAFUC,EAAcD,CAAQ,CAEvB,IALd;AAAA,EAKc,GACf,CAACT,CAAc,CAAC,GAEbW,IAAwBJ,EAAY,YAAY;AAC9C,UAAAE,IAAW,MAAMD;AAEvB,IAAI,CAACT,KAAc,CAACF,KAAqB,CAACY,KAEtBZ,KAAA,QAAAA,EAAAE,GAAYU,GAAUH;AAAA,KACzC,CAACE,GAAkBT,GAAYF,GAAmBS,CAAS,CAAC,GAEzDM,IAAuBL,EAAY,MAAM;AAC7C,IAAKR,MACLK,EAAU,EAAI,GACdN,KAAA,QAAAA,EAAmBC,GAAYO;AAAA,EAC9B,GAAA,CAACP,GAAYD,GAAkBQ,CAAS,CAAC;AAExC,SAACP,IAEDI,IAEA,gBAAAU;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,4BAACmB,GAAK,EAAA,WAAU,SAAQ,QAAO,SAAQ,UAEvC,iBAAA;AAAA,IAAA;AAAA,EAAA,IAMJ,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,UAAA;AAAA,QAAA,gBAAAiB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASL;AAAA,YACT,UAAU;AAAA,YACV,MAAMM;AAAA,YACN,MAAMf;AAAA,UAAA;AAAA,QACR;AAAA,QACA,gBAAAU,EAACM,GAAU,EAAA,OAAO,GAAI,CAAA;AAAA,QACtB,gBAAAN;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASN;AAAA,YACT,UAAU;AAAA,YACV,MAAMS;AAAA,UAAA;AAAA,QACR;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IA1CoB;AA6C1B,GAEeC,IAAAC,EAAK5B,CAAkB;"}
1
+ {"version":3,"file":"homework-controls.js","sources":["../../../../src/features/cue-canvas/bottombar/homework-controls.tsx"],"sourcesContent":["import type { IHomeWorkControllerProps } from './bottombar-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport CheckIcon from '../../../assets/line-icons/icons/check';\nimport ShareIcon from '../../../assets/line-icons/icons/share';\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 { dataURIToBlob } from '../cue-canvas-helpers';\nimport { useCueCanvasActions } from '../hooks/use-cue-canvas-actions';\n\nconst HomeworkController: FC<IHomeWorkControllerProps> = props => {\n const { width, onSendImageToChat, onMarkAsResolved } = props;\n const { homeworkId, activeInstance, setHomeworkId } = useCueCanvasActions();\n const [isBusy, setIsBusy] = useState(false);\n\n const onSuccess = useCallback(() => {\n activeInstance?.clearCanvas();\n setHomeworkId(undefined);\n setIsBusy(false);\n }, [activeInstance, setHomeworkId]);\n\n const getBoardSnapshot = useCallback(async () => {\n if (!activeInstance) return;\n\n const snapshot = await activeInstance?.getCanvasAsImage();\n\n if (!snapshot) {\n return;\n }\n\n const blobdata = dataURIToBlob(snapshot);\n\n return [blobdata];\n }, [activeInstance]);\n\n const handleSendImageToChat = useCallback(async () => {\n const snapshot = await getBoardSnapshot();\n\n if (!homeworkId || !onSendImageToChat || !snapshot) return;\n\n onSendImageToChat?.(homeworkId, snapshot, onSuccess);\n }, [getBoardSnapshot, homeworkId, onSendImageToChat, onSuccess]);\n\n const handleMarkAsResolved = useCallback(() => {\n if (!homeworkId) return;\n setIsBusy(true);\n onMarkAsResolved?.(homeworkId, onSuccess);\n }, [homeworkId, onMarkAsResolved, onSuccess]);\n\n if (!homeworkId) return null;\n\n if (isBusy) {\n return (\n <FlexView\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Text $renderAs=\"body3\" $color=\"BLACK\">\n Resolving....\n </Text>\n </FlexView>\n );\n }\n\n return (\n <FlexView\n $flexDirection=\"row\"\n $gapX={1}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width={width}\n $background=\"YELLOW_1\"\n >\n <Button\n label=\"Mark as reolved\"\n onClick={handleMarkAsResolved}\n renderAs={'primary'}\n Icon={CheckIcon}\n busy={isBusy}\n />\n <Separator width={16} />\n <Button\n label=\"Send CueBoard image to chat\"\n onClick={handleSendImageToChat}\n renderAs={'primary'}\n Icon={ShareIcon}\n />\n </FlexView>\n );\n};\n\nexport default memo(HomeworkController);\n"],"names":["HomeworkController","props","width","onSendImageToChat","onMarkAsResolved","homeworkId","activeInstance","setHomeworkId","useCueCanvasActions","isBusy","setIsBusy","useState","onSuccess","useCallback","getBoardSnapshot","snapshot","dataURIToBlob","handleSendImageToChat","handleMarkAsResolved","jsx","FlexView","Text","jsxs","Button","CheckIcon","Separator","ShareIcon","homeworkControls","memo"],"mappings":";;;;;;;;;;AAcA,MAAMA,IAAmD,CAASC,MAAA;AAChE,QAAM,EAAE,OAAAC,GAAO,mBAAAC,GAAmB,kBAAAC,EAAqB,IAAAH,GACjD,EAAE,YAAAI,GAAY,gBAAAC,GAAgB,eAAAC,EAAA,IAAkBC,EAAoB,GACpE,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GAEpCC,IAAYC,EAAY,MAAM;AAClC,IAAAP,KAAA,QAAAA,EAAgB,eAChBC,EAAc,MAAS,GACvBG,EAAU,EAAK;AAAA,EAAA,GACd,CAACJ,GAAgBC,CAAa,CAAC,GAE5BO,IAAmBD,EAAY,YAAY;AAC/C,QAAI,CAACP,EAAgB;AAEf,UAAAS,IAAW,OAAMT,KAAA,gBAAAA,EAAgB;AAEvC,WAAKS,IAME,CAFUC,EAAcD,CAAQ,CAEvB,IALd;AAAA,EAKc,GACf,CAACT,CAAc,CAAC,GAEbW,IAAwBJ,EAAY,YAAY;AAC9C,UAAAE,IAAW,MAAMD,EAAiB;AAExC,IAAI,CAACT,KAAc,CAACF,KAAqB,CAACY,KAEtBZ,KAAA,QAAAA,EAAAE,GAAYU,GAAUH;AAAA,KACzC,CAACE,GAAkBT,GAAYF,GAAmBS,CAAS,CAAC,GAEzDM,IAAuBL,EAAY,MAAM;AAC7C,IAAKR,MACLK,EAAU,EAAI,GACdN,KAAA,QAAAA,EAAmBC,GAAYO;AAAA,EAC9B,GAAA,CAACP,GAAYD,GAAkBQ,CAAS,CAAC;AAExC,SAACP,IAEDI,IAEA,gBAAAU;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,4BAACmB,GAAK,EAAA,WAAU,SAAQ,QAAO,SAAQ,UAEvC,gBAAA,CAAA;AAAA,IAAA;AAAA,EACF,IAKF,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,QAAQlB;AAAA,MACR,aAAY;AAAA,MAEZ,UAAA;AAAA,QAAA,gBAAAiB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASL;AAAA,YACT,UAAU;AAAA,YACV,MAAMM;AAAA,YACN,MAAMf;AAAA,UAAA;AAAA,QACR;AAAA,QACA,gBAAAU,EAACM,GAAU,EAAA,OAAO,GAAI,CAAA;AAAA,QACtB,gBAAAN;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,SAASN;AAAA,YACT,UAAU;AAAA,YACV,MAAMS;AAAA,UAAA;AAAA,QAAA;AAAA,MACR;AAAA,IAAA;AAAA,EACF,IA3CsB;AA6C1B,GAEeC,IAAAC,EAAK5B,CAAkB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas-context.js","sources":["../../../src/features/cue-canvas/cue-canvas-context.tsx"],"sourcesContent":["import type { TPolyContextValue } from './types/context';\nimport type { TCueCanvasColors } from './types/cue-canvas';\n\nimport { createContext } from 'react';\n\nimport { CANVAS_COLORS } from './constants/constants';\n\nconst PolyContext = createContext<TPolyContextValue>({\n activeInstance: undefined,\n setActiveInstance: () => undefined,\n activeTool: 'pen',\n setActiveTool: () => undefined,\n activeColor: Object.keys(CANVAS_COLORS)[0] as TCueCanvasColors,\n setActiveColor: () => undefined,\n homeworkId: undefined,\n setHomeworkId: () => undefined,\n});\n\nexport default PolyContext;\n"],"names":["PolyContext","createContext","CANVAS_COLORS"],"mappings":";;AAOA,MAAMA,IAAcC,EAAiC;AAAA,EACnD,gBAAgB;AAAA,EAChB,mBAAmB,MAAM;AAAA;AAAA,EACzB,YAAY;AAAA,EACZ,eAAe,MAAM;AAAA;AAAA,EACrB,aAAa,OAAO,KAAKC,CAAa,EAAE,CAAC;AAAA,EACzC,gBAAgB,MAAM;AAAA;AAAA,EACtB,YAAY;AAAA,EACZ,eAAe,MAAM;AAAA;AACvB,CAAC;"}
1
+ {"version":3,"file":"cue-canvas-context.js","sources":["../../../src/features/cue-canvas/cue-canvas-context.tsx"],"sourcesContent":["import type { TPolyContextValue } from './types/context';\nimport type { TCueCanvasColors } from './types/cue-canvas';\n\nimport { createContext } from 'react';\n\nimport { CANVAS_COLORS } from './constants/constants';\n\nconst PolyContext = createContext<TPolyContextValue>({\n activeInstance: undefined,\n setActiveInstance: () => undefined,\n activeTool: 'pen',\n setActiveTool: () => undefined,\n activeColor: Object.keys(CANVAS_COLORS)[0] as TCueCanvasColors,\n setActiveColor: () => undefined,\n homeworkId: undefined,\n setHomeworkId: () => undefined,\n});\n\nexport default PolyContext;\n"],"names":["PolyContext","createContext","CANVAS_COLORS"],"mappings":";;AAOA,MAAMA,IAAcC,EAAiC;AAAA,EACnD,gBAAgB;AAAA,EAChB,mBAAmB,MAAA;AAAA;AAAA,EACnB,YAAY;AAAA,EACZ,eAAe,MAAA;AAAA;AAAA,EACf,aAAa,OAAO,KAAKC,CAAa,EAAE,CAAC;AAAA,EACzC,gBAAgB,MAAA;AAAA;AAAA,EAChB,YAAY;AAAA,EACZ,eAAe,MAAM;AAAA;AACvB,CAAC;"}
@@ -4,7 +4,7 @@ var s = (c, t, e) => g(c, typeof t != "symbol" ? t + "" : t, e);
4
4
  import { captureMessage as f } from "@sentry/browser";
5
5
  import y from "../../node_modules/lodash.debounce/index.js";
6
6
  import { CANVAS_COLORS as d } from "./constants/constants.js";
7
- import { getColorsForUser as C, removeTileButton as m, removeMask as T, checkTextOrEquationTool as w, getReverseMap as I, STATELESS_TOOLS as b, getToolAndSubtool as E } from "./cue-canvas-helpers.js";
7
+ import { getColorsForUser as C, removeTileButton as m, removeMask as T, checkTextOrEquationTool as w, getReverseMap as I, getToolAndSubtool as b, STATELESS_TOOLS as E } from "./cue-canvas-helpers.js";
8
8
  class U {
9
9
  constructor({
10
10
  onPublish: t,
@@ -182,7 +182,7 @@ class U {
182
182
  });
183
183
  s(this, "setTool", (t) => {
184
184
  if (!this.polycanvas || t === this.activeTool) return;
185
- const [e, a] = E(t);
185
+ const [e, a] = b(t);
186
186
  switch (e) {
187
187
  case "clearAll":
188
188
  this.clearCanvas();
@@ -219,7 +219,7 @@ class U {
219
219
  default:
220
220
  this.polycanvas.setTool(e, a);
221
221
  }
222
- b.has(t) || (this.activeTool = t);
222
+ E.has(t) || (this.activeTool = t);
223
223
  });
224
224
  /**
225
225
  * The `update` method is called in two cases:
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas-core.js","sources":["../../../src/features/cue-canvas/cue-canvas-core.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n IActionData,\n IViewport,\n TCueCanvasChangeData,\n TCueCanvasGridName,\n TCueCanvasTool,\n TPublish,\n TRenderAs,\n TCueCanvasChangeDataObject,\n IReplaceCanvas,\n ICueCanvasCoreProps,\n TUpdateCanvasConfig,\n TCueCanvasColors,\n} from './types/cue-canvas';\nimport type { ICreateOptions } from './types/cue-canvas';\nimport type { IPolypad, IPolyPadInstance } from './types/polypad';\n\nimport { captureMessage } from '@sentry/browser';\nimport debounce from 'lodash.debounce';\n\nimport { CANVAS_COLORS } from './constants/constants';\nimport {\n checkTextOrEquationTool,\n getColorsForUser,\n getReverseMap,\n getToolAndSubtool,\n removeMask,\n removeTileButton,\n STATELESS_TOOLS,\n} from './cue-canvas-helpers';\n\ndeclare global {\n interface Window {\n Polypad: IPolypad;\n }\n}\n\n/**\n * The CueCanvasCore class manages the canvas state and tool synchronization.\n * When text or equations are added, Polypad automatically switches to 'move' tool.\n * onUpdateActiveTool ensures the UI reflects this automatic tool change.\n */\n\nexport class CueCanvasCore {\n private polycanvas: IPolyPadInstance | undefined;\n private publish?: TPublish;\n private height: number;\n private onUpdateActiveTool: (tool: TCueCanvasTool) => void;\n private onUpdateHeight?: (height: number) => void;\n private userId: string;\n private canvasId: string;\n private userType: TUserTypes;\n private renderAs: TRenderAs;\n private fileInput: HTMLInputElement | null = null;\n private debouncedViewportChange: ReturnType<typeof debounce>;\n private uploadImageToS3?: (file: File) => Promise<string>;\n private updateCanvasConfigChange?: TUpdateCanvasConfig;\n private gridName?: TCueCanvasGridName;\n private activeColor: TCueCanvasColors;\n private activeTool: TCueCanvasTool | undefined;\n\n constructor({\n onPublish,\n onSubscribe,\n onUpdateActiveTool,\n onUpdateHeight,\n uploadImageToS3,\n height,\n userId,\n canvasId,\n userType,\n renderAs,\n updateCanvasConfig,\n }: ICueCanvasCoreProps) {\n this.onUpdateHeight = onUpdateHeight;\n this.onUpdateActiveTool = onUpdateActiveTool;\n this.height = height;\n this.uploadImageToS3 = uploadImageToS3;\n this.userId = userId;\n this.canvasId = canvasId;\n this.publish = onPublish;\n this.userType = userType;\n this.renderAs = renderAs;\n this.debouncedViewportChange = debounce(this.onViewPortChange, 300);\n this.updateCanvasConfigChange = updateCanvasConfig;\n this.activeColor = getColorsForUser(userType, renderAs)[0] as TCueCanvasColors;\n this.activeTool = undefined; // Default to first color in the palette\n onSubscribe?.(this.canvasId, this.update);\n }\n\n async create({ canvasElementRef, canvasConfig, canvasSetting, initialData }: ICreateOptions) {\n if (!canvasElementRef.current) {\n throw new Error('PolyCanvas: Div Element Not found for canvas');\n }\n this.polycanvas = await window.Polypad.create(canvasElementRef.current, {\n initial: {\n options: canvasConfig,\n },\n ...canvasSetting,\n imageUpload:\n this.renderAs === 'whiteboard' && this.userType === 'TEACHER' && this.uploadImageToS3\n ? this.uploadImageToS3\n : undefined,\n });\n\n if (this.renderAs === 'whiteboard' && this.userType === 'TEACHER') {\n this.polycanvas.toggleSidebar(false);\n this.polycanvas.bindKeyboardEvents({});\n\n removeTileButton(canvasElementRef);\n this.polycanvas.on('viewport', this.debouncedViewportChange);\n }\n\n removeMask(canvasElementRef);\n this.polycanvas.on('change', this.onChange);\n if (initialData) {\n this.update(initialData);\n }\n }\n\n private publishToChannel = (payload: TCueCanvasChangeDataObject) => {\n if (!this.publish) return;\n\n this.publish({\n eventName: 'cue_canvas_changed',\n eventPayload: {\n data: payload,\n height: this.height,\n userId: this.userId,\n responseId: this.canvasId,\n },\n });\n };\n\n private onChange = (e: unknown) => {\n const data = e as TCueCanvasChangeData;\n const payload = Object.fromEntries(data.entries());\n\n if (checkTextOrEquationTool(payload)) {\n this.onUpdateActiveTool('move');\n }\n\n this.publishToChannel(payload);\n };\n\n private undo = () => {\n if (!this.polycanvas) {\n return;\n }\n\n const data = this.polycanvas.undo() as TCueCanvasChangeData;\n\n if (!data) {\n return;\n }\n\n const undoData = getReverseMap(data);\n\n this.onChange(undoData);\n };\n\n private redo = () => {\n if (!this.polycanvas) {\n return;\n }\n\n const data = this.polycanvas.redo() as TCueCanvasChangeData;\n\n if (!data) {\n return;\n }\n\n this.onChange(data);\n };\n\n clearCanvas = () => {\n if (this.polycanvas) {\n this.polycanvas.clear();\n }\n };\n\n private zoomIn = () => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n\n this.polycanvas.setViewport(viewPort.x, viewPort.y, viewPort.zoom * 1.1);\n };\n\n private zoomOut = () => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n\n this.polycanvas.setViewport(viewPort.x, viewPort.y, viewPort.zoom * 0.9);\n };\n\n getCanvasAsImage = async () => {\n if (!this.polycanvas) return;\n\n const image = await this.polycanvas.image(3000, 3000, 'png');\n\n return image;\n };\n\n private downloadCanvasAsImage = async () => {\n if (!this.polycanvas) return;\n\n const image = await this.polycanvas.image(3000, 3000, 'png');\n\n if (!image) return;\n\n const downloadLink = document.createElement('a');\n\n downloadLink.href = image;\n downloadLink.download = `canvas-drawing-${Date.now()}.png`;\n downloadLink.click();\n };\n\n private onViewPortChange = (e: IViewport): void => {\n if (!this.updateCanvasConfigChange) return;\n\n this.updateCanvasConfigChange({ dimesion: e });\n };\n\n private openFileUpload = (): void => {\n if (!this.fileInput) {\n this.fileInput = document.createElement('input');\n this.fileInput.type = 'file';\n this.fileInput.accept = 'image/*';\n this.fileInput.style.display = 'none';\n this.fileInput.onchange = this.onSelectImage;\n document.body.appendChild(this.fileInput);\n }\n\n this.fileInput.click();\n };\n\n addImageToCanvas = (imageUrl: string): void => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n const imgJson = {\n name: 'image',\n href: imageUrl,\n x: viewPort.x + 24,\n y: viewPort.y + 24,\n width: 500,\n };\n\n const key = this.polycanvas.add({\n ...imgJson,\n });\n\n this.publishToChannel({\n [key]: [undefined, { ...imgJson, status: 'locked' }],\n });\n };\n\n private onSelectImage = async (event: Event): Promise<void> => {\n const target = event.target as HTMLInputElement;\n const file = target.files?.[0];\n\n if (!file || !this.polycanvas || !this.uploadImageToS3) return;\n\n const imageUrl = await this.uploadImageToS3(file);\n\n if (imageUrl === 'error') {\n return;\n }\n\n this.addImageToCanvas(imageUrl);\n\n target.value = '';\n };\n\n private updateCanvas = ({ data, userId }: IActionData) => {\n const canEditStroke = this.userType === 'TEACHER' || userId === this.userId;\n\n try {\n Object.entries(data).forEach(([key, value]) => {\n if (!value[0] && value[1]) {\n if ('name' in value[1] && value[1].name === 'image') {\n value[1].status = this.userType === 'STUDENT' ? 'locked' : undefined; // Lock only images for students\n }\n this.polycanvas?.add({ ...value[1], cannotEdit: !canEditStroke }, key);\n } else if (value[0] && !value[1]) {\n this.polycanvas?.delete(key);\n } else if (value[0] && value[1]) {\n this.polycanvas?.update(key, { ...value[1] });\n }\n });\n } catch (error) {\n captureMessage('Error Updating Canvas', data);\n }\n };\n\n toggleTiles = (val: boolean) => {\n this.polycanvas?.toggleSidebar(val);\n };\n\n setViewPort = ({ x, y, zoom }: IViewport) => {\n if (this.polycanvas) {\n const cv = this.polycanvas?.getViewport();\n\n if (cv.x === x && cv.y === y && cv.zoom === zoom) {\n return; // No change needed\n }\n\n this.polycanvas.setViewport(x, y, zoom);\n }\n };\n\n resetViewPort = () => {\n if (this.polycanvas) {\n this.polycanvas.resetViewport();\n }\n };\n\n changeGrid = (gridName: TCueCanvasGridName) => {\n if (!this.polycanvas || this.gridName === gridName) return;\n\n this.polycanvas.setOptions({\n grid: gridName,\n });\n this.gridName = gridName;\n if (this.updateCanvasConfigChange) {\n this.updateCanvasConfigChange({ gridName: gridName });\n }\n };\n\n lockSelectedTiles = () => {\n const { tiles: allTiles } = this.polycanvas?.serialize() || {};\n const selectedItems = this.polycanvas?.getSelection() || [];\n\n if (selectedItems.length > 0 && allTiles) {\n const lockedTiles: TCueCanvasChangeDataObject = {};\n\n selectedItems.forEach(key => {\n if (!allTiles[key]?.name) return;\n\n const updatedJson = { ...allTiles[key], status: 'locked' as const };\n\n this.polycanvas?.update(key, updatedJson);\n if (allTiles[key]?.name) lockedTiles[key] = [allTiles[key], updatedJson];\n });\n\n this.publishToChannel(lockedTiles);\n }\n };\n\n unlockAllTiles = () => {\n if (!this.polycanvas) return;\n\n const { tiles: allTiles } = this.polycanvas.serialize();\n const unlockedTiles: TCueCanvasChangeDataObject = {};\n\n if (allTiles && Object.entries(allTiles).length > 0) {\n Object.entries(allTiles).forEach(([key, item]) => {\n if (item.status !== 'locked') return;\n\n const updatedJson = { ...item, status: undefined };\n\n this.polycanvas?.update(key, updatedJson);\n unlockedTiles[key] = [item, updatedJson];\n });\n\n this.publishToChannel(unlockedTiles);\n }\n };\n\n replaceCanvas = (data: IReplaceCanvas) => {\n if (!this.polycanvas) return;\n\n const { data: canvasData, gridName } = data;\n\n this.polycanvas.clear();\n if (gridName) {\n this.changeGrid(gridName);\n }\n\n Object.entries(canvasData).forEach(([key, value]) => {\n if (!value[0] && value[1]) {\n this.polycanvas?.add({ ...value[1] }, key);\n\n return;\n }\n });\n\n this.publishToChannel(canvasData);\n };\n\n setTool = (tool: TCueCanvasTool) => {\n if (!this.polycanvas || tool === this.activeTool) return;\n\n const [currTool, currSubTool] = getToolAndSubtool(tool);\n\n switch (currTool) {\n case 'clearAll':\n this.clearCanvas();\n break;\n case 'home':\n this.resetViewPort();\n break;\n case 'undo':\n this.undo();\n break;\n case 'redo':\n this.redo();\n break;\n case 'lock':\n this.lockSelectedTiles();\n break;\n case 'unlock':\n this.unlockAllTiles();\n break;\n case 'zoomIn':\n this.zoomIn();\n break;\n case 'zoomOut':\n this.zoomOut();\n break;\n case 'upload':\n this.openFileUpload();\n break;\n case 'download':\n this.downloadCanvasAsImage();\n break;\n case 'grid':\n break;\n default:\n this.polycanvas.setTool(currTool, currSubTool);\n }\n if (!STATELESS_TOOLS.has(tool)) {\n this.activeTool = tool;\n }\n };\n\n /**\n * The `update` method is called in two cases:\n * 1. When receiving initial data to update the canvas content.\n * 2. When receiving strokes from other peers to update the canvas content.\n * Each item can contain multiple actions, which are applied to the canvas.\n *\n * The method checks if the payload is an array or a single object.\n * If it's an array, it iterates over each item and updates the canvas accordingly.\n * If it's a single object, it directly updates the canvas.\n *\n * Additionally, if the payload contains a height greater than the current height of the canvas, the `updateHeight` method is called to update the canvas height.\n */\n update = (payload: IActionData | IActionData[]) => {\n if (Array.isArray(payload)) {\n const heights = payload.map(data => data.height).filter(Boolean);\n const maxHeight = Math.max(...heights);\n\n if (maxHeight > this.height) {\n this.updateHeight(maxHeight);\n }\n payload.forEach(item => this.updateCanvas(item));\n } else {\n if (payload.height > this.height) {\n this.updateHeight(payload.height);\n }\n this.updateCanvas(payload);\n }\n };\n\n getSelections = () => {\n return this.polycanvas ? this.polycanvas.getSelection() : [];\n };\n\n setColor = (color: TCueCanvasColors) => {\n if (!this.polycanvas || !this.activeColor) return;\n\n const selectedColor = CANVAS_COLORS[color];\n\n const selections = this.getSelections();\n\n if (selections && selections.length > 0) {\n selections.forEach((key: string) => {\n this.polycanvas?.update(key, { color: selectedColor });\n this.onChange(\n new Map([[key, [{ color: CANVAS_COLORS[this.activeColor] }, { color: selectedColor }]]]),\n );\n });\n }\n this.polycanvas.setColor(selectedColor);\n this.activeColor = color;\n };\n\n updateHeight = (height: number) => {\n this.height = height;\n this.onUpdateHeight?.(height);\n };\n\n destroy = () => {\n if (this.polycanvas) {\n this.polycanvas.off('change', this.onChange);\n this.polycanvas.destroy();\n this.debouncedViewportChange.cancel();\n\n if (this.renderAs === 'whiteboard' && this.userType === 'TEACHER') {\n this.polycanvas.off('viewport', this.debouncedViewportChange);\n }\n this.polycanvas = undefined;\n\n if (this.fileInput && this.fileInput.parentNode) {\n this.fileInput.parentNode.removeChild(this.fileInput);\n this.fileInput = null;\n }\n }\n };\n}\n"],"names":["CueCanvasCore","onPublish","onSubscribe","onUpdateActiveTool","onUpdateHeight","uploadImageToS3","height","userId","canvasId","userType","renderAs","updateCanvasConfig","__publicField","payload","e","checkTextOrEquationTool","data","undoData","getReverseMap","viewPort","image","downloadLink","imageUrl","imgJson","key","event","target","file","_a","canEditStroke","value","_b","_c","captureMessage","val","x","y","zoom","cv","gridName","allTiles","selectedItems","lockedTiles","updatedJson","unlockedTiles","item","canvasData","tool","currTool","currSubTool","getToolAndSubtool","STATELESS_TOOLS","heights","maxHeight","color","selectedColor","CANVAS_COLORS","selections","debounce","getColorsForUser","canvasElementRef","canvasConfig","canvasSetting","initialData","removeTileButton","removeMask"],"mappings":";;;;;;;AA4CO,MAAMA,EAAc;AAAA,EAkBzB,YAAY;AAAA,IACV,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,oBAAAC;AAAA,EAAA,GACsB;AA7BhB,IAAAC,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA,mBAAqC;AACrC,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AACA,IAAAA,EAAA;AA6DA,IAAAA,EAAA,0BAAmB,CAACC,MAAwC;AAC9D,MAAC,KAAK,WAEV,KAAK,QAAQ;AAAA,QACX,WAAW;AAAA,QACX,cAAc;AAAA,UACZ,MAAMA;AAAA,UACN,QAAQ,KAAK;AAAA,UACb,QAAQ,KAAK;AAAA,UACb,YAAY,KAAK;AAAA,QACnB;AAAA,MAAA,CACD;AAAA,IAAA;AAGK,IAAAD,EAAA,kBAAW,CAACE,MAAe;AAEjC,YAAMD,IAAU,OAAO,YADVC,EAC2B,QAAS,CAAA;AAE7C,MAAAC,EAAwBF,CAAO,KACjC,KAAK,mBAAmB,MAAM,GAGhC,KAAK,iBAAiBA,CAAO;AAAA,IAAA;AAGvB,IAAAD,EAAA,cAAO,MAAM;AACf,UAAA,CAAC,KAAK;AACR;AAGI,YAAAI,IAAO,KAAK,WAAW,KAAK;AAElC,UAAI,CAACA;AACH;AAGI,YAAAC,IAAWC,EAAcF,CAAI;AAEnC,WAAK,SAASC,CAAQ;AAAA,IAAA;AAGhB,IAAAL,EAAA,cAAO,MAAM;AACf,UAAA,CAAC,KAAK;AACR;AAGI,YAAAI,IAAO,KAAK,WAAW,KAAK;AAElC,MAAKA,KAIL,KAAK,SAASA,CAAI;AAAA,IAAA;AAGpB,IAAAJ,EAAA,qBAAc,MAAM;AAClB,MAAI,KAAK,cACP,KAAK,WAAW;IAClB;AAGM,IAAAA,EAAA,gBAAS,MAAM;AACjB,UAAA,CAAC,KAAK,WAAY;AAEhB,YAAAO,IAAW,KAAK,WAAW,YAAY;AAExC,WAAA,WAAW,YAAYA,EAAS,GAAGA,EAAS,GAAGA,EAAS,OAAO,GAAG;AAAA,IAAA;AAGjE,IAAAP,EAAA,iBAAU,MAAM;AAClB,UAAA,CAAC,KAAK,WAAY;AAEhB,YAAAO,IAAW,KAAK,WAAW,YAAY;AAExC,WAAA,WAAW,YAAYA,EAAS,GAAGA,EAAS,GAAGA,EAAS,OAAO,GAAG;AAAA,IAAA;AAGzE,IAAAP,EAAA,0BAAmB,YACZ,KAAK,aAEI,MAAM,KAAK,WAAW,MAAM,KAAM,KAAM,KAAK,IAFrC;AAOhB,IAAAA,EAAA,+BAAwB,YAAY;AACtC,UAAA,CAAC,KAAK,WAAY;AAEtB,YAAMQ,IAAQ,MAAM,KAAK,WAAW,MAAM,KAAM,KAAM,KAAK;AAE3D,UAAI,CAACA,EAAO;AAEN,YAAAC,IAAe,SAAS,cAAc,GAAG;AAE/C,MAAAA,EAAa,OAAOD,GACpBC,EAAa,WAAW,kBAAkB,KAAK,IAAA,CAAK,QACpDA,EAAa,MAAM;AAAA,IAAA;AAGb,IAAAT,EAAA,0BAAmB,CAACE,MAAuB;AAC7C,MAAC,KAAK,4BAEV,KAAK,yBAAyB,EAAE,UAAUA,EAAG,CAAA;AAAA,IAAA;AAGvC,IAAAF,EAAA,wBAAiB,MAAY;AAC/B,MAAC,KAAK,cACH,KAAA,YAAY,SAAS,cAAc,OAAO,GAC/C,KAAK,UAAU,OAAO,QACtB,KAAK,UAAU,SAAS,WACnB,KAAA,UAAU,MAAM,UAAU,QAC1B,KAAA,UAAU,WAAW,KAAK,eACtB,SAAA,KAAK,YAAY,KAAK,SAAS,IAG1C,KAAK,UAAU;IAAM;AAGvB,IAAAA,EAAA,0BAAmB,CAACU,MAA2B;AACzC,UAAA,CAAC,KAAK,WAAY;AAEhB,YAAAH,IAAW,KAAK,WAAW,YAAY,GACvCI,IAAU;AAAA,QACd,MAAM;AAAA,QACN,MAAMD;AAAA,QACN,GAAGH,EAAS,IAAI;AAAA,QAChB,GAAGA,EAAS,IAAI;AAAA,QAChB,OAAO;AAAA,MAAA,GAGHK,IAAM,KAAK,WAAW,IAAI;AAAA,QAC9B,GAAGD;AAAA,MAAA,CACJ;AAED,WAAK,iBAAiB;AAAA,QACpB,CAACC,CAAG,GAAG,CAAC,QAAW,EAAE,GAAGD,GAAS,QAAQ,UAAU;AAAA,MAAA,CACpD;AAAA,IAAA;AAGK,IAAAX,EAAA,uBAAgB,OAAOa,MAAgC;;AAC7D,YAAMC,IAASD,EAAM,QACfE,KAAOC,IAAAF,EAAO,UAAP,gBAAAE,EAAe;AAE5B,UAAI,CAACD,KAAQ,CAAC,KAAK,cAAc,CAAC,KAAK,gBAAiB;AAExD,YAAML,IAAW,MAAM,KAAK,gBAAgBK,CAAI;AAEhD,MAAIL,MAAa,YAIjB,KAAK,iBAAiBA,CAAQ,GAE9BI,EAAO,QAAQ;AAAA,IAAA;AAGT,IAAAd,EAAA,sBAAe,CAAC,EAAE,MAAAI,GAAM,QAAAT,QAA0B;AACxD,YAAMsB,IAAgB,KAAK,aAAa,aAAatB,MAAW,KAAK;AAEjE,UAAA;AACK,eAAA,QAAQS,CAAI,EAAE,QAAQ,CAAC,CAACQ,GAAKM,CAAK,MAAM;;AAC7C,UAAI,CAACA,EAAM,CAAC,KAAKA,EAAM,CAAC,KAClB,UAAUA,EAAM,CAAC,KAAKA,EAAM,CAAC,EAAE,SAAS,YAC1CA,EAAM,CAAC,EAAE,SAAS,KAAK,aAAa,YAAY,WAAW,UAExDF,IAAA,KAAA,eAAA,QAAAA,EAAY,IAAI,EAAE,GAAGE,EAAM,CAAC,GAAG,YAAY,CAACD,EAAc,GAAGL,MACzDM,EAAM,CAAC,KAAK,CAACA,EAAM,CAAC,KACxBC,IAAA,KAAA,eAAA,QAAAA,EAAY,OAAOP,KACfM,EAAM,CAAC,KAAKA,EAAM,CAAC,OACvBE,IAAA,KAAA,eAAA,QAAAA,EAAY,OAAOR,GAAK,EAAE,GAAGM,EAAM,CAAC;QAC3C,CACD;AAAA,cACa;AACd,QAAAG,EAAe,yBAAyBjB,CAAI;AAAA,MAC9C;AAAA,IAAA;AAGF,IAAAJ,EAAA,qBAAc,CAACsB,MAAiB;;AACzB,OAAAN,IAAA,KAAA,eAAA,QAAAA,EAAY,cAAcM;AAAA,IAAG;AAGpC,IAAAtB,EAAA,qBAAc,CAAC,EAAE,GAAAuB,GAAG,GAAAC,GAAG,MAAAC,QAAsB;;AAC3C,UAAI,KAAK,YAAY;AACb,cAAAC,KAAKV,IAAA,KAAK,eAAL,gBAAAA,EAAiB;AAExB,YAAAU,EAAG,MAAMH,KAAKG,EAAG,MAAMF,KAAKE,EAAG,SAASD;AAC1C;AAGF,aAAK,WAAW,YAAYF,GAAGC,GAAGC,CAAI;AAAA,MACxC;AAAA,IAAA;AAGF,IAAAzB,EAAA,uBAAgB,MAAM;AACpB,MAAI,KAAK,cACP,KAAK,WAAW;IAClB;AAGF,IAAAA,EAAA,oBAAa,CAAC2B,MAAiC;AAC7C,MAAI,CAAC,KAAK,cAAc,KAAK,aAAaA,MAE1C,KAAK,WAAW,WAAW;AAAA,QACzB,MAAMA;AAAA,MAAA,CACP,GACD,KAAK,WAAWA,GACZ,KAAK,4BACF,KAAA,yBAAyB,EAAE,UAAAA,EAAA,CAAoB;AAAA,IACtD;AAGF,IAAA3B,EAAA,2BAAoB,MAAM;;AAClB,YAAA,EAAE,OAAO4B,EAAS,MAAIZ,IAAA,KAAK,eAAL,gBAAAA,EAAiB,gBAAe,IACtDa,MAAgBV,IAAA,KAAK,eAAL,gBAAAA,EAAiB,mBAAkB,CAAA;AAErD,UAAAU,EAAc,SAAS,KAAKD,GAAU;AACxC,cAAME,IAA0C,CAAA;AAEhD,QAAAD,EAAc,QAAQ,CAAOjB,MAAA;;AAC3B,cAAI,GAACI,IAAAY,EAAShB,CAAG,MAAZ,QAAAI,EAAe,MAAM;AAE1B,gBAAMe,IAAc,EAAE,GAAGH,EAAShB,CAAG,GAAG,QAAQ;AAE3C,WAAAO,IAAA,KAAA,eAAA,QAAAA,EAAY,OAAOP,GAAKmB,KACzBX,IAAAQ,EAAShB,CAAG,MAAZ,QAAAQ,EAAe,SAAMU,EAAYlB,CAAG,IAAI,CAACgB,EAAShB,CAAG,GAAGmB,CAAW;AAAA,QAAA,CACxE,GAED,KAAK,iBAAiBD,CAAW;AAAA,MACnC;AAAA,IAAA;AAGF,IAAA9B,EAAA,wBAAiB,MAAM;AACjB,UAAA,CAAC,KAAK,WAAY;AAEtB,YAAM,EAAE,OAAO4B,EAAA,IAAa,KAAK,WAAW,aACtCI,IAA4C,CAAA;AAElD,MAAIJ,KAAY,OAAO,QAAQA,CAAQ,EAAE,SAAS,MACzC,OAAA,QAAQA,CAAQ,EAAE,QAAQ,CAAC,CAAChB,GAAKqB,CAAI,MAAM;;AAC5C,YAAAA,EAAK,WAAW,SAAU;AAE9B,cAAMF,IAAc,EAAE,GAAGE,GAAM,QAAQ,OAAU;AAE5C,SAAAjB,IAAA,KAAA,eAAA,QAAAA,EAAY,OAAOJ,GAAKmB,IAC7BC,EAAcpB,CAAG,IAAI,CAACqB,GAAMF,CAAW;AAAA,MAAA,CACxC,GAED,KAAK,iBAAiBC,CAAa;AAAA,IACrC;AAGF,IAAAhC,EAAA,uBAAgB,CAACI,MAAyB;AACpC,UAAA,CAAC,KAAK,WAAY;AAEtB,YAAM,EAAE,MAAM8B,GAAY,UAAAP,EAAA,IAAavB;AAEvC,WAAK,WAAW,SACZuB,KACF,KAAK,WAAWA,CAAQ,GAGnB,OAAA,QAAQO,CAAU,EAAE,QAAQ,CAAC,CAACtB,GAAKM,CAAK,MAAM;;AACnD,YAAI,CAACA,EAAM,CAAC,KAAKA,EAAM,CAAC,GAAG;AACpB,WAAAF,IAAA,KAAA,eAAA,QAAAA,EAAY,IAAI,EAAE,GAAGE,EAAM,CAAC,EAAA,GAAKN;AAEtC;AAAA,QACF;AAAA,MAAA,CACD,GAED,KAAK,iBAAiBsB,CAAU;AAAA,IAAA;AAGlC,IAAAlC,EAAA,iBAAU,CAACmC,MAAyB;AAClC,UAAI,CAAC,KAAK,cAAcA,MAAS,KAAK,WAAY;AAElD,YAAM,CAACC,GAAUC,CAAW,IAAIC,EAAkBH,CAAI;AAEtD,cAAQC,GAAU;AAAA,QAChB,KAAK;AACH,eAAK,YAAY;AACjB;AAAA,QACF,KAAK;AACH,eAAK,cAAc;AACnB;AAAA,QACF,KAAK;AACH,eAAK,KAAK;AACV;AAAA,QACF,KAAK;AACH,eAAK,KAAK;AACV;AAAA,QACF,KAAK;AACH,eAAK,kBAAkB;AACvB;AAAA,QACF,KAAK;AACH,eAAK,eAAe;AACpB;AAAA,QACF,KAAK;AACH,eAAK,OAAO;AACZ;AAAA,QACF,KAAK;AACH,eAAK,QAAQ;AACb;AAAA,QACF,KAAK;AACH,eAAK,eAAe;AACpB;AAAA,QACF,KAAK;AACH,eAAK,sBAAsB;AAC3B;AAAA,QACF,KAAK;AACH;AAAA,QACF;AACO,eAAA,WAAW,QAAQA,GAAUC,CAAW;AAAA,MACjD;AACA,MAAKE,EAAgB,IAAIJ,CAAI,MAC3B,KAAK,aAAaA;AAAA,IACpB;AAeF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAnC,EAAA,gBAAS,CAACC,MAAyC;AAC7C,UAAA,MAAM,QAAQA,CAAO,GAAG;AACpB,cAAAuC,IAAUvC,EAAQ,IAAI,CAAAG,MAAQA,EAAK,MAAM,EAAE,OAAO,OAAO,GACzDqC,IAAY,KAAK,IAAI,GAAGD,CAAO;AAEjC,QAAAC,IAAY,KAAK,UACnB,KAAK,aAAaA,CAAS,GAE7BxC,EAAQ,QAAQ,CAAAgC,MAAQ,KAAK,aAAaA,CAAI,CAAC;AAAA,MAAA;AAE3C,QAAAhC,EAAQ,SAAS,KAAK,UACnB,KAAA,aAAaA,EAAQ,MAAM,GAElC,KAAK,aAAaA,CAAO;AAAA,IAC3B;AAGF,IAAAD,EAAA,uBAAgB,MACP,KAAK,aAAa,KAAK,WAAW,iBAAiB;AAG5D,IAAAA,EAAA,kBAAW,CAAC0C,MAA4B;AACtC,UAAI,CAAC,KAAK,cAAc,CAAC,KAAK,YAAa;AAErC,YAAAC,IAAgBC,EAAcF,CAAK,GAEnCG,IAAa,KAAK;AAEpB,MAAAA,KAAcA,EAAW,SAAS,KACzBA,EAAA,QAAQ,CAACjC,MAAgB;;AAClC,SAAAI,IAAA,KAAK,eAAL,QAAAA,EAAiB,OAAOJ,GAAK,EAAE,OAAO+B,MACjC,KAAA;AAAA,8BACC,IAAI,CAAC,CAAC/B,GAAK,CAAC,EAAE,OAAOgC,EAAc,KAAK,WAAW,KAAK,EAAE,OAAOD,EAAe,CAAA,CAAC,CAAC,CAAC;AAAA,QAAA;AAAA,MACzF,CACD,GAEE,KAAA,WAAW,SAASA,CAAa,GACtC,KAAK,cAAcD;AAAA,IAAA;AAGrB,IAAA1C,EAAA,sBAAe,CAACN,MAAmB;;AACjC,WAAK,SAASA,IACdsB,IAAA,KAAK,mBAAL,QAAAA,EAAA,WAAsBtB;AAAA,IAAM;AAG9B,IAAAM,EAAA,iBAAU,MAAM;AACd,MAAI,KAAK,eACP,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,GAC3C,KAAK,WAAW,WAChB,KAAK,wBAAwB,UAEzB,KAAK,aAAa,gBAAgB,KAAK,aAAa,aACtD,KAAK,WAAW,IAAI,YAAY,KAAK,uBAAuB,GAE9D,KAAK,aAAa,QAEd,KAAK,aAAa,KAAK,UAAU,eACnC,KAAK,UAAU,WAAW,YAAY,KAAK,SAAS,GACpD,KAAK,YAAY;AAAA,IAErB;AApbA,SAAK,iBAAiBR,GACtB,KAAK,qBAAqBD,GAC1B,KAAK,SAASG,GACd,KAAK,kBAAkBD,GACvB,KAAK,SAASE,GACd,KAAK,WAAWC,GAChB,KAAK,UAAUP,GACf,KAAK,WAAWQ,GAChB,KAAK,WAAWC,GAChB,KAAK,0BAA0BgD,EAAS,KAAK,kBAAkB,GAAG,GAClE,KAAK,2BAA2B/C,GAChC,KAAK,cAAcgD,EAAiBlD,GAAUC,CAAQ,EAAE,CAAC,GACzD,KAAK,aAAa,QACJR,KAAA,QAAAA,EAAA,KAAK,UAAU,KAAK;AAAA,EACpC;AAAA,EAEA,MAAM,OAAO,EAAE,kBAAA0D,GAAkB,cAAAC,GAAc,eAAAC,GAAe,aAAAC,KAA+B;AACvF,QAAA,CAACH,EAAiB;AACd,YAAA,IAAI,MAAM,8CAA8C;AAEhE,SAAK,aAAa,MAAM,OAAO,QAAQ,OAAOA,EAAiB,SAAS;AAAA,MACtE,SAAS;AAAA,QACP,SAASC;AAAA,MACX;AAAA,MACA,GAAGC;AAAA,MACH,aACE,KAAK,aAAa,gBAAgB,KAAK,aAAa,aAAa,KAAK,kBAClE,KAAK,kBACL;AAAA,IAAA,CACP,GAEG,KAAK,aAAa,gBAAgB,KAAK,aAAa,cACjD,KAAA,WAAW,cAAc,EAAK,GAC9B,KAAA,WAAW,mBAAmB,CAAA,CAAE,GAErCE,EAAiBJ,CAAgB,GACjC,KAAK,WAAW,GAAG,YAAY,KAAK,uBAAuB,IAG7DK,EAAWL,CAAgB,GAC3B,KAAK,WAAW,GAAG,UAAU,KAAK,QAAQ,GACtCG,KACF,KAAK,OAAOA,CAAW;AAAA,EAE3B;AA0YF;"}
1
+ {"version":3,"file":"cue-canvas-core.js","sources":["../../../src/features/cue-canvas/cue-canvas-core.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n IActionData,\n IViewport,\n TCueCanvasChangeData,\n TCueCanvasGridName,\n TCueCanvasTool,\n TPublish,\n TRenderAs,\n TCueCanvasChangeDataObject,\n IReplaceCanvas,\n ICueCanvasCoreProps,\n TUpdateCanvasConfig,\n TCueCanvasColors,\n} from './types/cue-canvas';\nimport type { ICreateOptions } from './types/cue-canvas';\nimport type { IPolypad, IPolyPadInstance } from './types/polypad';\n\nimport { captureMessage } from '@sentry/browser';\nimport debounce from 'lodash.debounce';\n\nimport { CANVAS_COLORS } from './constants/constants';\nimport {\n checkTextOrEquationTool,\n getColorsForUser,\n getReverseMap,\n getToolAndSubtool,\n removeMask,\n removeTileButton,\n STATELESS_TOOLS,\n} from './cue-canvas-helpers';\n\ndeclare global {\n interface Window {\n Polypad: IPolypad;\n }\n}\n\n/**\n * The CueCanvasCore class manages the canvas state and tool synchronization.\n * When text or equations are added, Polypad automatically switches to 'move' tool.\n * onUpdateActiveTool ensures the UI reflects this automatic tool change.\n */\n\nexport class CueCanvasCore {\n private polycanvas: IPolyPadInstance | undefined;\n private publish?: TPublish;\n private height: number;\n private onUpdateActiveTool: (tool: TCueCanvasTool) => void;\n private onUpdateHeight?: (height: number) => void;\n private userId: string;\n private canvasId: string;\n private userType: TUserTypes;\n private renderAs: TRenderAs;\n private fileInput: HTMLInputElement | null = null;\n private debouncedViewportChange: ReturnType<typeof debounce>;\n private uploadImageToS3?: (file: File) => Promise<string>;\n private updateCanvasConfigChange?: TUpdateCanvasConfig;\n private gridName?: TCueCanvasGridName;\n private activeColor: TCueCanvasColors;\n private activeTool: TCueCanvasTool | undefined;\n\n constructor({\n onPublish,\n onSubscribe,\n onUpdateActiveTool,\n onUpdateHeight,\n uploadImageToS3,\n height,\n userId,\n canvasId,\n userType,\n renderAs,\n updateCanvasConfig,\n }: ICueCanvasCoreProps) {\n this.onUpdateHeight = onUpdateHeight;\n this.onUpdateActiveTool = onUpdateActiveTool;\n this.height = height;\n this.uploadImageToS3 = uploadImageToS3;\n this.userId = userId;\n this.canvasId = canvasId;\n this.publish = onPublish;\n this.userType = userType;\n this.renderAs = renderAs;\n this.debouncedViewportChange = debounce(this.onViewPortChange, 300);\n this.updateCanvasConfigChange = updateCanvasConfig;\n this.activeColor = getColorsForUser(userType, renderAs)[0] as TCueCanvasColors;\n this.activeTool = undefined; // Default to first color in the palette\n onSubscribe?.(this.canvasId, this.update);\n }\n\n async create({ canvasElementRef, canvasConfig, canvasSetting, initialData }: ICreateOptions) {\n if (!canvasElementRef.current) {\n throw new Error('PolyCanvas: Div Element Not found for canvas');\n }\n this.polycanvas = await window.Polypad.create(canvasElementRef.current, {\n initial: {\n options: canvasConfig,\n },\n ...canvasSetting,\n imageUpload:\n this.renderAs === 'whiteboard' && this.userType === 'TEACHER' && this.uploadImageToS3\n ? this.uploadImageToS3\n : undefined,\n });\n\n if (this.renderAs === 'whiteboard' && this.userType === 'TEACHER') {\n this.polycanvas.toggleSidebar(false);\n this.polycanvas.bindKeyboardEvents({});\n\n removeTileButton(canvasElementRef);\n this.polycanvas.on('viewport', this.debouncedViewportChange);\n }\n\n removeMask(canvasElementRef);\n this.polycanvas.on('change', this.onChange);\n if (initialData) {\n this.update(initialData);\n }\n }\n\n private publishToChannel = (payload: TCueCanvasChangeDataObject) => {\n if (!this.publish) return;\n\n this.publish({\n eventName: 'cue_canvas_changed',\n eventPayload: {\n data: payload,\n height: this.height,\n userId: this.userId,\n responseId: this.canvasId,\n },\n });\n };\n\n private onChange = (e: unknown) => {\n const data = e as TCueCanvasChangeData;\n const payload = Object.fromEntries(data.entries());\n\n if (checkTextOrEquationTool(payload)) {\n this.onUpdateActiveTool('move');\n }\n\n this.publishToChannel(payload);\n };\n\n private undo = () => {\n if (!this.polycanvas) {\n return;\n }\n\n const data = this.polycanvas.undo() as TCueCanvasChangeData;\n\n if (!data) {\n return;\n }\n\n const undoData = getReverseMap(data);\n\n this.onChange(undoData);\n };\n\n private redo = () => {\n if (!this.polycanvas) {\n return;\n }\n\n const data = this.polycanvas.redo() as TCueCanvasChangeData;\n\n if (!data) {\n return;\n }\n\n this.onChange(data);\n };\n\n clearCanvas = () => {\n if (this.polycanvas) {\n this.polycanvas.clear();\n }\n };\n\n private zoomIn = () => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n\n this.polycanvas.setViewport(viewPort.x, viewPort.y, viewPort.zoom * 1.1);\n };\n\n private zoomOut = () => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n\n this.polycanvas.setViewport(viewPort.x, viewPort.y, viewPort.zoom * 0.9);\n };\n\n getCanvasAsImage = async () => {\n if (!this.polycanvas) return;\n\n const image = await this.polycanvas.image(3000, 3000, 'png');\n\n return image;\n };\n\n private downloadCanvasAsImage = async () => {\n if (!this.polycanvas) return;\n\n const image = await this.polycanvas.image(3000, 3000, 'png');\n\n if (!image) return;\n\n const downloadLink = document.createElement('a');\n\n downloadLink.href = image;\n downloadLink.download = `canvas-drawing-${Date.now()}.png`;\n downloadLink.click();\n };\n\n private onViewPortChange = (e: IViewport): void => {\n if (!this.updateCanvasConfigChange) return;\n\n this.updateCanvasConfigChange({ dimesion: e });\n };\n\n private openFileUpload = (): void => {\n if (!this.fileInput) {\n this.fileInput = document.createElement('input');\n this.fileInput.type = 'file';\n this.fileInput.accept = 'image/*';\n this.fileInput.style.display = 'none';\n this.fileInput.onchange = this.onSelectImage;\n document.body.appendChild(this.fileInput);\n }\n\n this.fileInput.click();\n };\n\n addImageToCanvas = (imageUrl: string): void => {\n if (!this.polycanvas) return;\n\n const viewPort = this.polycanvas.getViewport();\n const imgJson = {\n name: 'image',\n href: imageUrl,\n x: viewPort.x + 24,\n y: viewPort.y + 24,\n width: 500,\n };\n\n const key = this.polycanvas.add({\n ...imgJson,\n });\n\n this.publishToChannel({\n [key]: [undefined, { ...imgJson, status: 'locked' }],\n });\n };\n\n private onSelectImage = async (event: Event): Promise<void> => {\n const target = event.target as HTMLInputElement;\n const file = target.files?.[0];\n\n if (!file || !this.polycanvas || !this.uploadImageToS3) return;\n\n const imageUrl = await this.uploadImageToS3(file);\n\n if (imageUrl === 'error') {\n return;\n }\n\n this.addImageToCanvas(imageUrl);\n\n target.value = '';\n };\n\n private updateCanvas = ({ data, userId }: IActionData) => {\n const canEditStroke = this.userType === 'TEACHER' || userId === this.userId;\n\n try {\n Object.entries(data).forEach(([key, value]) => {\n if (!value[0] && value[1]) {\n if ('name' in value[1] && value[1].name === 'image') {\n value[1].status = this.userType === 'STUDENT' ? 'locked' : undefined; // Lock only images for students\n }\n this.polycanvas?.add({ ...value[1], cannotEdit: !canEditStroke }, key);\n } else if (value[0] && !value[1]) {\n this.polycanvas?.delete(key);\n } else if (value[0] && value[1]) {\n this.polycanvas?.update(key, { ...value[1] });\n }\n });\n } catch (error) {\n captureMessage('Error Updating Canvas', data);\n }\n };\n\n toggleTiles = (val: boolean) => {\n this.polycanvas?.toggleSidebar(val);\n };\n\n setViewPort = ({ x, y, zoom }: IViewport) => {\n if (this.polycanvas) {\n const cv = this.polycanvas?.getViewport();\n\n if (cv.x === x && cv.y === y && cv.zoom === zoom) {\n return; // No change needed\n }\n\n this.polycanvas.setViewport(x, y, zoom);\n }\n };\n\n resetViewPort = () => {\n if (this.polycanvas) {\n this.polycanvas.resetViewport();\n }\n };\n\n changeGrid = (gridName: TCueCanvasGridName) => {\n if (!this.polycanvas || this.gridName === gridName) return;\n\n this.polycanvas.setOptions({\n grid: gridName,\n });\n this.gridName = gridName;\n if (this.updateCanvasConfigChange) {\n this.updateCanvasConfigChange({ gridName: gridName });\n }\n };\n\n lockSelectedTiles = () => {\n const { tiles: allTiles } = this.polycanvas?.serialize() || {};\n const selectedItems = this.polycanvas?.getSelection() || [];\n\n if (selectedItems.length > 0 && allTiles) {\n const lockedTiles: TCueCanvasChangeDataObject = {};\n\n selectedItems.forEach(key => {\n if (!allTiles[key]?.name) return;\n\n const updatedJson = { ...allTiles[key], status: 'locked' as const };\n\n this.polycanvas?.update(key, updatedJson);\n if (allTiles[key]?.name) lockedTiles[key] = [allTiles[key], updatedJson];\n });\n\n this.publishToChannel(lockedTiles);\n }\n };\n\n unlockAllTiles = () => {\n if (!this.polycanvas) return;\n\n const { tiles: allTiles } = this.polycanvas.serialize();\n const unlockedTiles: TCueCanvasChangeDataObject = {};\n\n if (allTiles && Object.entries(allTiles).length > 0) {\n Object.entries(allTiles).forEach(([key, item]) => {\n if (item.status !== 'locked') return;\n\n const updatedJson = { ...item, status: undefined };\n\n this.polycanvas?.update(key, updatedJson);\n unlockedTiles[key] = [item, updatedJson];\n });\n\n this.publishToChannel(unlockedTiles);\n }\n };\n\n replaceCanvas = (data: IReplaceCanvas) => {\n if (!this.polycanvas) return;\n\n const { data: canvasData, gridName } = data;\n\n this.polycanvas.clear();\n if (gridName) {\n this.changeGrid(gridName);\n }\n\n Object.entries(canvasData).forEach(([key, value]) => {\n if (!value[0] && value[1]) {\n this.polycanvas?.add({ ...value[1] }, key);\n\n return;\n }\n });\n\n this.publishToChannel(canvasData);\n };\n\n setTool = (tool: TCueCanvasTool) => {\n if (!this.polycanvas || tool === this.activeTool) return;\n\n const [currTool, currSubTool] = getToolAndSubtool(tool);\n\n switch (currTool) {\n case 'clearAll':\n this.clearCanvas();\n break;\n case 'home':\n this.resetViewPort();\n break;\n case 'undo':\n this.undo();\n break;\n case 'redo':\n this.redo();\n break;\n case 'lock':\n this.lockSelectedTiles();\n break;\n case 'unlock':\n this.unlockAllTiles();\n break;\n case 'zoomIn':\n this.zoomIn();\n break;\n case 'zoomOut':\n this.zoomOut();\n break;\n case 'upload':\n this.openFileUpload();\n break;\n case 'download':\n this.downloadCanvasAsImage();\n break;\n case 'grid':\n break;\n default:\n this.polycanvas.setTool(currTool, currSubTool);\n }\n if (!STATELESS_TOOLS.has(tool)) {\n this.activeTool = tool;\n }\n };\n\n /**\n * The `update` method is called in two cases:\n * 1. When receiving initial data to update the canvas content.\n * 2. When receiving strokes from other peers to update the canvas content.\n * Each item can contain multiple actions, which are applied to the canvas.\n *\n * The method checks if the payload is an array or a single object.\n * If it's an array, it iterates over each item and updates the canvas accordingly.\n * If it's a single object, it directly updates the canvas.\n *\n * Additionally, if the payload contains a height greater than the current height of the canvas, the `updateHeight` method is called to update the canvas height.\n */\n update = (payload: IActionData | IActionData[]) => {\n if (Array.isArray(payload)) {\n const heights = payload.map(data => data.height).filter(Boolean);\n const maxHeight = Math.max(...heights);\n\n if (maxHeight > this.height) {\n this.updateHeight(maxHeight);\n }\n payload.forEach(item => this.updateCanvas(item));\n } else {\n if (payload.height > this.height) {\n this.updateHeight(payload.height);\n }\n this.updateCanvas(payload);\n }\n };\n\n getSelections = () => {\n return this.polycanvas ? this.polycanvas.getSelection() : [];\n };\n\n setColor = (color: TCueCanvasColors) => {\n if (!this.polycanvas || !this.activeColor) return;\n\n const selectedColor = CANVAS_COLORS[color];\n\n const selections = this.getSelections();\n\n if (selections && selections.length > 0) {\n selections.forEach((key: string) => {\n this.polycanvas?.update(key, { color: selectedColor });\n this.onChange(\n new Map([[key, [{ color: CANVAS_COLORS[this.activeColor] }, { color: selectedColor }]]]),\n );\n });\n }\n this.polycanvas.setColor(selectedColor);\n this.activeColor = color;\n };\n\n updateHeight = (height: number) => {\n this.height = height;\n this.onUpdateHeight?.(height);\n };\n\n destroy = () => {\n if (this.polycanvas) {\n this.polycanvas.off('change', this.onChange);\n this.polycanvas.destroy();\n this.debouncedViewportChange.cancel();\n\n if (this.renderAs === 'whiteboard' && this.userType === 'TEACHER') {\n this.polycanvas.off('viewport', this.debouncedViewportChange);\n }\n this.polycanvas = undefined;\n\n if (this.fileInput && this.fileInput.parentNode) {\n this.fileInput.parentNode.removeChild(this.fileInput);\n this.fileInput = null;\n }\n }\n };\n}\n"],"names":["CueCanvasCore","onPublish","onSubscribe","onUpdateActiveTool","onUpdateHeight","uploadImageToS3","height","userId","canvasId","userType","renderAs","updateCanvasConfig","__publicField","payload","e","checkTextOrEquationTool","data","undoData","getReverseMap","viewPort","image","downloadLink","imageUrl","imgJson","key","event","target","file","_a","canEditStroke","value","_b","_c","captureMessage","val","x","y","zoom","cv","gridName","allTiles","selectedItems","lockedTiles","updatedJson","unlockedTiles","item","canvasData","tool","currTool","currSubTool","getToolAndSubtool","STATELESS_TOOLS","heights","maxHeight","color","selectedColor","CANVAS_COLORS","selections","debounce","getColorsForUser","canvasElementRef","canvasConfig","canvasSetting","initialData","removeTileButton","removeMask"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas-helpers.js","sources":["../../../src/features/cue-canvas/cue-canvas-helpers.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n TCueCanvasColors,\n TCueCanvasChangeData,\n TCueCanvasTool,\n TCueCanvasToolOption,\n TDrawingData,\n TRenderAs,\n TCueCanvasGridName,\n TCueCanvasChangeDataObject,\n} from './types/cue-canvas';\nimport type { IPolypadCreateOptions, IPolypadOptions } from './types/polypad';\n\nimport { CANVAS_COLORS } from './constants/constants';\n\nexport const GRID_NAMES: TCueCanvasGridName[] = [\n 'none',\n 'square2-grid',\n 'square-checked',\n 'square-dots',\n 'tri-dots',\n 'tri2-dots',\n 'square-grid',\n 'tri-grid',\n 'tri2-grid',\n];\n\nexport const STATELESS_TOOLS = new Set<TCueCanvasTool>([\n 'undo',\n 'redo',\n 'clearAll',\n 'home',\n 'lock',\n 'unlock',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n]);\n\nexport const removeMask = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n\n if (shadowRoot) {\n const xPolypad = shadowRoot.querySelectorAll('x-polypad');\n\n if (xPolypad[0]) {\n const svgCanvas = xPolypad[0].querySelector('svg.canvas');\n const maskPath = svgCanvas?.querySelector('path.mask');\n\n maskPath?.setAttribute('stroke', 'transparent');\n maskPath?.setAttribute('fill', 'transparent');\n maskPath?.removeAttribute('style');\n }\n }\n\n return undefined;\n};\n\nexport const removeTileButton = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n const sidebar = shadowRoot?.querySelector('x-pp-sidebar') as HTMLElement;\n const tabsHeader = sidebar?.getElementsByClassName('tabs-header');\n const tabsBody = sidebar?.getElementsByClassName('tabs-body');\n\n sidebar?.setAttribute('style', 'display: none;');\n sidebar?.setAttribute('style', 'height: 30px;');\n\n if (tabsHeader && tabsHeader.length > 0) {\n const firstTabHeader = tabsHeader[0] as HTMLElement;\n\n firstTabHeader.style.display = 'none';\n }\n\n if (tabsBody && tabsBody.length > 0) {\n const firstTabBody = tabsBody[0] as HTMLElement;\n\n firstTabBody.style.top = '48px';\n }\n sidebar?.setAttribute('style', 'display: block;');\n};\n\nexport const getCanvasConfig = (\n width: number,\n height: number,\n renderAs: TRenderAs,\n userType: TUserTypes,\n): IPolypadOptions => {\n return renderAs === 'canvas'\n ? {\n canvas: 'notebook',\n canvasX: width,\n canvasY: height,\n noPinchPan: true,\n grid: 'none',\n background: 'transparent',\n noSnapping: true,\n }\n : {\n canvas: 'infinite',\n canvasX: width,\n canvasY: height,\n grid: 'none',\n noPinchPan: userType === 'STUDENT',\n noDeleting: userType === 'STUDENT',\n noCopyPaste: userType === 'STUDENT',\n noMusic: true,\n noAudio: true,\n };\n};\n\nexport const getCanvasSettings = (\n renderAs: TRenderAs,\n userType: TUserTypes,\n): IPolypadCreateOptions => {\n return renderAs === 'canvas'\n ? {\n sidebarTiles: false,\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n canvasMargin: 0,\n }\n : {\n sidebarTiles: userType === 'TEACHER',\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n };\n};\n\nexport const getReverseAction = (action: TDrawingData[]) => [action[1], action[0]];\n\nexport const getReverseMap = (data: TCueCanvasChangeData) => {\n const newData = new Map<string, TDrawingData[]>();\n\n data.forEach((value, key) => {\n newData.set(key, getReverseAction(value));\n });\n\n return newData;\n};\n\nexport const getToolAndSubtool = (\n tool: TCueCanvasTool,\n): [\n Exclude<TCueCanvasTool, 'marker' | 'highlighter' | 'ruler' | 'equation'>,\n TCueCanvasToolOption | undefined,\n] => {\n switch (tool) {\n case 'pen':\n return ['pen', 'pen'];\n case 'marker':\n return ['pen', 'marker'];\n case 'highlighter':\n return ['pen', 'highlighter'];\n case 'ruler':\n return ['pen', 'ruler'];\n case 'equation':\n return ['text', 'equation'];\n default:\n return [tool, undefined];\n }\n};\n\nconst TEACHER_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'pan',\n 'clearAll',\n 'text',\n 'equation',\n 'grid',\n 'home',\n 'undo',\n 'redo',\n 'lock',\n 'unlock',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n];\n\nconst STUDENT_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'text',\n 'undo',\n 'redo',\n 'download',\n];\n\nconst TEACHER_DEFAULT_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'undo',\n 'redo',\n];\n\nconst STUDENT_DEFAULT_TOOLS: TCueCanvasTool[] = ['pen', 'ruler', 'eraser', 'move', 'undo', 'redo'];\n\nexport const getUserTools = (userType: TUserTypes, renderAs: TRenderAs): TCueCanvasTool[] => {\n if (renderAs === 'whiteboard') {\n return userType === 'TEACHER' ? TEACHER_WHITEBOARD_TOOLS : STUDENT_WHITEBOARD_TOOLS;\n }\n\n return userType === 'TEACHER' ? TEACHER_DEFAULT_TOOLS : STUDENT_DEFAULT_TOOLS;\n};\n\nexport const getColorsForUser = (userType: TUserTypes, renderAs: TRenderAs = 'canvas') => {\n if (renderAs === 'whiteboard') {\n return Object.keys(CANVAS_COLORS).filter(\n color => !color.startsWith('CANVAS'),\n ) as TCueCanvasColors[];\n }\n\n return userType === 'TEACHER'\n ? (['CANVAS_RED', 'CANVAS_YELLOW', 'CANVAS_GREEN'] as TCueCanvasColors[])\n : (['CANVAS_BLUE', 'CANVAS_PURPLE', 'CANVAS_PINK'] as TCueCanvasColors[]);\n};\n\nexport const getIsWritingTool = (penTool: string) => {\n return ['pen', 'ruler', 'marker', 'highlighter'].includes(penTool);\n};\n\nexport const checkTextOrEquationTool = (payload: TCueCanvasChangeDataObject) => {\n return Object.values(payload).some(value => {\n if (\n !value[0] &&\n value[1] &&\n 'name' in value[1] &&\n (value[1].name === 'text' || value[1].name === 'equation')\n ) {\n return true;\n }\n\n return false;\n });\n};\n\nexport const dataURIToBlob = (dataURI: string): Blob => {\n const parts = dataURI.split(',');\n const metadata = parts[0] ?? '';\n const base64Data = parts[1] ?? '';\n\n const isBase64 = metadata.includes('base64');\n const byteString = isBase64 ? atob(base64Data) : decodeURIComponent(base64Data);\n\n const mimeTypeMatch = metadata.match(/:(.*?);/);\n const mimeType = mimeTypeMatch ? mimeTypeMatch[1] : 'application/octet-stream';\n\n const byteArray = new Uint8Array(byteString.length);\n\n for (let i = 0; i < byteString.length; i++) {\n byteArray[i] = byteString.charCodeAt(i);\n }\n\n return new Blob([byteArray], { type: mimeType });\n};\n\nexport const jsonToBlob = (json: unknown) => {\n const data = JSON.stringify(json);\n\n return new Blob([data], {\n type: 'application/json',\n });\n};\n"],"names":["GRID_NAMES","STATELESS_TOOLS","removeMask","canvasElementRef","shadowRoot","_a","xPolypad","svgCanvas","maskPath","removeTileButton","sidebar","tabsHeader","tabsBody","firstTabHeader","firstTabBody","getCanvasConfig","width","height","renderAs","userType","getCanvasSettings","getReverseAction","action","getReverseMap","data","newData","value","key","getToolAndSubtool","tool","TEACHER_WHITEBOARD_TOOLS","STUDENT_WHITEBOARD_TOOLS","TEACHER_DEFAULT_TOOLS","STUDENT_DEFAULT_TOOLS","getUserTools","getColorsForUser","CANVAS_COLORS","color","getIsWritingTool","penTool","checkTextOrEquationTool","payload","dataURIToBlob","dataURI","parts","metadata","base64Data","byteString","mimeTypeMatch","mimeType","byteArray","i"],"mappings":"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"}
1
+ {"version":3,"file":"cue-canvas-helpers.js","sources":["../../../src/features/cue-canvas/cue-canvas-helpers.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n TCueCanvasColors,\n TCueCanvasChangeData,\n TCueCanvasTool,\n TCueCanvasToolOption,\n TDrawingData,\n TRenderAs,\n TCueCanvasGridName,\n TCueCanvasChangeDataObject,\n} from './types/cue-canvas';\nimport type { IPolypadCreateOptions, IPolypadOptions } from './types/polypad';\n\nimport { CANVAS_COLORS } from './constants/constants';\n\nexport const GRID_NAMES: TCueCanvasGridName[] = [\n 'none',\n 'square2-grid',\n 'square-checked',\n 'square-dots',\n 'tri-dots',\n 'tri2-dots',\n 'square-grid',\n 'tri-grid',\n 'tri2-grid',\n];\n\nexport const STATELESS_TOOLS = new Set<TCueCanvasTool>([\n 'undo',\n 'redo',\n 'clearAll',\n 'home',\n 'lock',\n 'unlock',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n]);\n\nexport const removeMask = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n\n if (shadowRoot) {\n const xPolypad = shadowRoot.querySelectorAll('x-polypad');\n\n if (xPolypad[0]) {\n const svgCanvas = xPolypad[0].querySelector('svg.canvas');\n const maskPath = svgCanvas?.querySelector('path.mask');\n\n maskPath?.setAttribute('stroke', 'transparent');\n maskPath?.setAttribute('fill', 'transparent');\n maskPath?.removeAttribute('style');\n }\n }\n\n return undefined;\n};\n\nexport const removeTileButton = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n const sidebar = shadowRoot?.querySelector('x-pp-sidebar') as HTMLElement;\n const tabsHeader = sidebar?.getElementsByClassName('tabs-header');\n const tabsBody = sidebar?.getElementsByClassName('tabs-body');\n\n sidebar?.setAttribute('style', 'display: none;');\n sidebar?.setAttribute('style', 'height: 30px;');\n\n if (tabsHeader && tabsHeader.length > 0) {\n const firstTabHeader = tabsHeader[0] as HTMLElement;\n\n firstTabHeader.style.display = 'none';\n }\n\n if (tabsBody && tabsBody.length > 0) {\n const firstTabBody = tabsBody[0] as HTMLElement;\n\n firstTabBody.style.top = '48px';\n }\n sidebar?.setAttribute('style', 'display: block;');\n};\n\nexport const getCanvasConfig = (\n width: number,\n height: number,\n renderAs: TRenderAs,\n userType: TUserTypes,\n): IPolypadOptions => {\n return renderAs === 'canvas'\n ? {\n canvas: 'notebook',\n canvasX: width,\n canvasY: height,\n noPinchPan: true,\n grid: 'none',\n background: 'transparent',\n noSnapping: true,\n }\n : {\n canvas: 'infinite',\n canvasX: width,\n canvasY: height,\n grid: 'none',\n noPinchPan: userType === 'STUDENT',\n noDeleting: userType === 'STUDENT',\n noCopyPaste: userType === 'STUDENT',\n noMusic: true,\n noAudio: true,\n };\n};\n\nexport const getCanvasSettings = (\n renderAs: TRenderAs,\n userType: TUserTypes,\n): IPolypadCreateOptions => {\n return renderAs === 'canvas'\n ? {\n sidebarTiles: false,\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n canvasMargin: 0,\n }\n : {\n sidebarTiles: userType === 'TEACHER',\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n };\n};\n\nexport const getReverseAction = (action: TDrawingData[]) => [action[1], action[0]];\n\nexport const getReverseMap = (data: TCueCanvasChangeData) => {\n const newData = new Map<string, TDrawingData[]>();\n\n data.forEach((value, key) => {\n newData.set(key, getReverseAction(value));\n });\n\n return newData;\n};\n\nexport const getToolAndSubtool = (\n tool: TCueCanvasTool,\n): [\n Exclude<TCueCanvasTool, 'marker' | 'highlighter' | 'ruler' | 'equation'>,\n TCueCanvasToolOption | undefined,\n] => {\n switch (tool) {\n case 'pen':\n return ['pen', 'pen'];\n case 'marker':\n return ['pen', 'marker'];\n case 'highlighter':\n return ['pen', 'highlighter'];\n case 'ruler':\n return ['pen', 'ruler'];\n case 'equation':\n return ['text', 'equation'];\n default:\n return [tool, undefined];\n }\n};\n\nconst TEACHER_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'pan',\n 'clearAll',\n 'text',\n 'equation',\n 'grid',\n 'home',\n 'undo',\n 'redo',\n 'lock',\n 'unlock',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n];\n\nconst STUDENT_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'text',\n 'undo',\n 'redo',\n 'download',\n];\n\nconst TEACHER_DEFAULT_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'undo',\n 'redo',\n];\n\nconst STUDENT_DEFAULT_TOOLS: TCueCanvasTool[] = ['pen', 'ruler', 'eraser', 'move', 'undo', 'redo'];\n\nexport const getUserTools = (userType: TUserTypes, renderAs: TRenderAs): TCueCanvasTool[] => {\n if (renderAs === 'whiteboard') {\n return userType === 'TEACHER' ? TEACHER_WHITEBOARD_TOOLS : STUDENT_WHITEBOARD_TOOLS;\n }\n\n return userType === 'TEACHER' ? TEACHER_DEFAULT_TOOLS : STUDENT_DEFAULT_TOOLS;\n};\n\nexport const getColorsForUser = (userType: TUserTypes, renderAs: TRenderAs = 'canvas') => {\n if (renderAs === 'whiteboard') {\n return Object.keys(CANVAS_COLORS).filter(\n color => !color.startsWith('CANVAS'),\n ) as TCueCanvasColors[];\n }\n\n return userType === 'TEACHER'\n ? (['CANVAS_RED', 'CANVAS_YELLOW', 'CANVAS_GREEN'] as TCueCanvasColors[])\n : (['CANVAS_BLUE', 'CANVAS_PURPLE', 'CANVAS_PINK'] as TCueCanvasColors[]);\n};\n\nexport const getIsWritingTool = (penTool: string) => {\n return ['pen', 'ruler', 'marker', 'highlighter'].includes(penTool);\n};\n\nexport const checkTextOrEquationTool = (payload: TCueCanvasChangeDataObject) => {\n return Object.values(payload).some(value => {\n if (\n !value[0] &&\n value[1] &&\n 'name' in value[1] &&\n (value[1].name === 'text' || value[1].name === 'equation')\n ) {\n return true;\n }\n\n return false;\n });\n};\n\nexport const dataURIToBlob = (dataURI: string): Blob => {\n const parts = dataURI.split(',');\n const metadata = parts[0] ?? '';\n const base64Data = parts[1] ?? '';\n\n const isBase64 = metadata.includes('base64');\n const byteString = isBase64 ? atob(base64Data) : decodeURIComponent(base64Data);\n\n const mimeTypeMatch = metadata.match(/:(.*?);/);\n const mimeType = mimeTypeMatch ? mimeTypeMatch[1] : 'application/octet-stream';\n\n const byteArray = new Uint8Array(byteString.length);\n\n for (let i = 0; i < byteString.length; i++) {\n byteArray[i] = byteString.charCodeAt(i);\n }\n\n return new Blob([byteArray], { type: mimeType });\n};\n\nexport const jsonToBlob = (json: unknown) => {\n const data = JSON.stringify(json);\n\n return new Blob([data], {\n type: 'application/json',\n });\n};\n"],"names":["GRID_NAMES","STATELESS_TOOLS","removeMask","canvasElementRef","shadowRoot","_a","xPolypad","svgCanvas","maskPath","removeTileButton","sidebar","tabsHeader","tabsBody","firstTabHeader","firstTabBody","getCanvasConfig","width","height","renderAs","userType","getCanvasSettings","getReverseAction","action","getReverseMap","data","newData","value","key","getToolAndSubtool","tool","TEACHER_WHITEBOARD_TOOLS","STUDENT_WHITEBOARD_TOOLS","TEACHER_DEFAULT_TOOLS","STUDENT_DEFAULT_TOOLS","getUserTools","getColorsForUser","CANVAS_COLORS","color","getIsWritingTool","penTool","checkTextOrEquationTool","payload","dataURIToBlob","dataURI","parts","metadata","base64Data","byteString","mimeTypeMatch","mimeType","byteArray","i"],"mappings":"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"}
@@ -1,24 +1,24 @@
1
- import { jsx as f } from "react/jsx-runtime";
2
- import { memo as p, useMemo as a, useState as o } from "react";
1
+ import { jsx as p } from "react/jsx-runtime";
2
+ import { memo as d, useMemo as m, useState as o } from "react";
3
3
  import x from "./cue-canvas-context.js";
4
4
  import { getColorsForUser as I } from "./cue-canvas-helpers.js";
5
- const P = p(({ children: i, userType: t, renderAs: e }) => {
6
- const m = a(() => I(t, e), [t, e]), [r, v] = o(), [s, l] = o("pen"), [c, C] = o(m[0]), [n, u] = o(), d = a(
5
+ const g = d(({ children: a, userType: t, renderAs: e }) => {
6
+ const i = m(() => I(t, e), [t, e]), [r, l] = o(), [s, v] = o("pen"), [c, u] = o(i[0]), [n, C] = o(), f = m(
7
7
  () => ({
8
8
  activeInstance: r,
9
- setActiveInstance: v,
9
+ setActiveInstance: l,
10
10
  activeTool: s,
11
- setActiveTool: l,
11
+ setActiveTool: v,
12
12
  activeColor: c,
13
- setActiveColor: C,
13
+ setActiveColor: u,
14
14
  homeworkId: n,
15
- setHomeworkId: u
15
+ setHomeworkId: C
16
16
  }),
17
17
  [c, r, s, n]
18
18
  );
19
- return /* @__PURE__ */ f(x.Provider, { value: d, children: i });
20
- }), h = P;
19
+ return /* @__PURE__ */ p(x.Provider, { value: f, children: a });
20
+ });
21
21
  export {
22
- h as default
22
+ g as default
23
23
  };
24
24
  //# sourceMappingURL=cue-canvas-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas-provider.js","sources":["../../../src/features/cue-canvas/cue-canvas-provider.tsx"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type { CueCanvasCore } from './cue-canvas-core';\nimport type { TCueCanvasColors, TCueCanvasTool, TRenderAs } from './types/cue-canvas';\nimport type { FC, PropsWithChildren } from 'react';\n\nimport { useState, memo, useMemo } from 'react';\n\nimport CueCanvasContext from './cue-canvas-context';\nimport { getColorsForUser } from './cue-canvas-helpers';\n\nconst CueCanvasProvider: FC<PropsWithChildren<{ userType: TUserTypes; renderAs: TRenderAs }>> =\n memo(({ children, userType, renderAs }) => {\n const colors = useMemo(() => getColorsForUser(userType, renderAs), [userType, renderAs]);\n\n const [activeInstance, setActiveInstance] = useState<CueCanvasCore>();\n const [activeTool, setActiveTool] = useState<TCueCanvasTool>('pen');\n const [activeColor, setActiveColor] = useState<TCueCanvasColors>(colors[0] as TCueCanvasColors);\n const [homeworkId, setHomeworkId] = useState<string>();\n\n const contextValue = useMemo(\n () => ({\n activeInstance: activeInstance,\n setActiveInstance: setActiveInstance,\n activeTool: activeTool,\n setActiveTool: setActiveTool,\n activeColor,\n setActiveColor,\n homeworkId,\n setHomeworkId,\n }),\n [activeColor, activeInstance, activeTool, homeworkId],\n );\n\n return <CueCanvasContext.Provider value={contextValue}>{children}</CueCanvasContext.Provider>;\n });\n\nexport default CueCanvasProvider;\n"],"names":["CueCanvasProvider","memo","children","userType","renderAs","colors","useMemo","getColorsForUser","activeInstance","setActiveInstance","useState","activeTool","setActiveTool","activeColor","setActiveColor","homeworkId","setHomeworkId","contextValue","CueCanvasContext","CueCanvasProvider$1"],"mappings":";;;;AAUA,MAAMA,IACJC,EAAK,CAAC,EAAE,UAAAC,GAAU,UAAAC,GAAU,UAAAC,QAAe;AACnC,QAAAC,IAASC,EAAQ,MAAMC,EAAiBJ,GAAUC,CAAQ,GAAG,CAACD,GAAUC,CAAQ,CAAC,GAEjF,CAACI,GAAgBC,CAAiB,IAAIC,EAAwB,GAC9D,CAACC,GAAYC,CAAa,IAAIF,EAAyB,KAAK,GAC5D,CAACG,GAAaC,CAAc,IAAIJ,EAA2BL,EAAO,CAAC,CAAqB,GACxF,CAACU,GAAYC,CAAa,IAAIN,EAAiB,GAE/CO,IAAeX;AAAA,IACnB,OAAO;AAAA,MACL,gBAAAE;AAAA,MACA,mBAAAC;AAAA,MACA,YAAAE;AAAA,MACA,eAAAC;AAAA,MACA,aAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,eAAAC;AAAA,IAAA;AAAA,IAEF,CAACH,GAAaL,GAAgBG,GAAYI,CAAU;AAAA,EAAA;AAGtD,2BAAQG,EAAiB,UAAjB,EAA0B,OAAOD,GAAe,UAAAf,EAAS,CAAA;AACnE,CAAC,GAEHiB,IAAenB;"}
1
+ {"version":3,"file":"cue-canvas-provider.js","sources":["../../../src/features/cue-canvas/cue-canvas-provider.tsx"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type { CueCanvasCore } from './cue-canvas-core';\nimport type { TCueCanvasColors, TCueCanvasTool, TRenderAs } from './types/cue-canvas';\nimport type { FC, PropsWithChildren } from 'react';\n\nimport { useState, memo, useMemo } from 'react';\n\nimport CueCanvasContext from './cue-canvas-context';\nimport { getColorsForUser } from './cue-canvas-helpers';\n\nconst CueCanvasProvider: FC<PropsWithChildren<{ userType: TUserTypes; renderAs: TRenderAs }>> =\n memo(({ children, userType, renderAs }) => {\n const colors = useMemo(() => getColorsForUser(userType, renderAs), [userType, renderAs]);\n\n const [activeInstance, setActiveInstance] = useState<CueCanvasCore>();\n const [activeTool, setActiveTool] = useState<TCueCanvasTool>('pen');\n const [activeColor, setActiveColor] = useState<TCueCanvasColors>(colors[0] as TCueCanvasColors);\n const [homeworkId, setHomeworkId] = useState<string>();\n\n const contextValue = useMemo(\n () => ({\n activeInstance: activeInstance,\n setActiveInstance: setActiveInstance,\n activeTool: activeTool,\n setActiveTool: setActiveTool,\n activeColor,\n setActiveColor,\n homeworkId,\n setHomeworkId,\n }),\n [activeColor, activeInstance, activeTool, homeworkId],\n );\n\n return <CueCanvasContext.Provider value={contextValue}>{children}</CueCanvasContext.Provider>;\n });\n\nexport default CueCanvasProvider;\n"],"names":["CueCanvasProvider","memo","children","userType","renderAs","colors","useMemo","getColorsForUser","activeInstance","setActiveInstance","useState","activeTool","setActiveTool","activeColor","setActiveColor","homeworkId","setHomeworkId","contextValue","CueCanvasContext"],"mappings":";;;;AAUA,MAAMA,IACJC,EAAK,CAAC,EAAE,UAAAC,GAAU,UAAAC,GAAU,UAAAC,QAAe;AACnC,QAAAC,IAASC,EAAQ,MAAMC,EAAiBJ,GAAUC,CAAQ,GAAG,CAACD,GAAUC,CAAQ,CAAC,GAEjF,CAACI,GAAgBC,CAAiB,IAAIC,EAAwB,GAC9D,CAACC,GAAYC,CAAa,IAAIF,EAAyB,KAAK,GAC5D,CAACG,GAAaC,CAAc,IAAIJ,EAA2BL,EAAO,CAAC,CAAqB,GACxF,CAACU,GAAYC,CAAa,IAAIN,EAAiB,GAE/CO,IAAeX;AAAA,IACnB,OAAO;AAAA,MACL,gBAAAE;AAAA,MACA,mBAAAC;AAAA,MACA,YAAAE;AAAA,MACA,eAAAC;AAAA,MACA,aAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,eAAAC;AAAA,IAAA;AAAA,IAEF,CAACH,GAAaL,GAAgBG,GAAYI,CAAU;AAAA,EACtD;AAEA,2BAAQG,EAAiB,UAAjB,EAA0B,OAAOD,GAAe,UAAAf,GAAS;AACnE,CAAC;"}
@@ -2,18 +2,18 @@ import { jsx as j } from "react/jsx-runtime";
2
2
  import { memo as k, useRef as x, useCallback as I, useEffect as n } from "react";
3
3
  import P from "../worksheet/learnosity-preloader/use-is-learnosity-loaded.js";
4
4
  import { CueCanvasCore as W } from "./cue-canvas-core.js";
5
- import { getCanvasConfig as q, getCanvasSettings as y } from "./cue-canvas-helpers.js";
5
+ import { getCanvasSettings as q, getCanvasConfig as y } from "./cue-canvas-helpers.js";
6
6
  import { CueCanvasWrapper as z } from "./cue-cavas-styled.js";
7
7
  import A from "./hooks/use-config-updater.js";
8
8
  import { useCueCanvasActions as B } from "./hooks/use-cue-canvas-actions.js";
9
9
  import F from "./hooks/use-height-extender.js";
10
10
  import G from "./hooks/use-upload-helper.js";
11
- const J = k(
11
+ const _ = k(
12
12
  ({
13
13
  canvasId: i,
14
14
  width: u,
15
15
  height: o,
16
- canRender: C,
16
+ canRender: f,
17
17
  onUpdateHeight: E,
18
18
  initialData: a,
19
19
  onPublish: p,
@@ -26,14 +26,14 @@ const J = k(
26
26
  canvasConfig: U,
27
27
  updateCanvasConfig: H
28
28
  }) => {
29
- const f = x(null), { setActiveInstance: c, setActiveTool: w } = B(), L = G({ userId: g, renderAs: e, userType: s }), { scriptStatus: d } = P(), t = x(null), R = I(
29
+ const C = x(null), { setActiveInstance: c, setActiveTool: w } = B(), L = G({ userId: g, renderAs: e, userType: s }), { scriptStatus: d } = P(), t = x(null), R = I(
30
30
  (m) => {
31
31
  w(m);
32
32
  },
33
33
  [w]
34
34
  );
35
35
  return F({
36
- canvasElementRef: f,
36
+ canvasElementRef: C,
37
37
  cueCanvasRef: t,
38
38
  canScribble: r
39
39
  }), A(U, e), n(() => {
@@ -43,8 +43,8 @@ const J = k(
43
43
  }, [a]), n(() => {
44
44
  o && t.current && t.current.resetViewPort();
45
45
  }, [o, u]), n(() => {
46
- if (C && $ && !t.current && d === "loaded") {
47
- const m = q(u, o, e, s), V = y(e, s), v = new W({
46
+ if (f && $ && !t.current && d === "loaded") {
47
+ const m = y(u, o, e, s), V = q(e, s), v = new W({
48
48
  onPublish: p,
49
49
  onSubscribe: l,
50
50
  onUpdateActiveTool: R,
@@ -59,30 +59,30 @@ const J = k(
59
59
  });
60
60
  (async () => {
61
61
  await v.create({
62
- canvasElementRef: f,
62
+ canvasElementRef: C,
63
63
  canvasConfig: m,
64
64
  canvasSetting: V,
65
65
  initialData: a
66
66
  }), t.current = v, r && c(v);
67
67
  })();
68
68
  }
69
- }, [p, l, c, C, $, d]), n(() => () => {
69
+ }, [p, l, c, f, $, d]), n(() => () => {
70
70
  t.current && (t.current.destroy(), t.current = null);
71
71
  }, []), /* @__PURE__ */ j(
72
72
  z,
73
73
  {
74
74
  id: e === "whiteboard" ? "canvasContainer" : i,
75
- ref: f,
75
+ ref: C,
76
76
  $width: u,
77
77
  $height: o,
78
78
  $canScribble: r,
79
- $canRender: C,
79
+ $canRender: f,
80
80
  $renderAs: e
81
81
  }
82
82
  );
83
83
  }
84
- ), D = J;
84
+ );
85
85
  export {
86
- D as default
86
+ _ as default
87
87
  };
88
88
  //# sourceMappingURL=cue-canvas.js.map