@cuemath/leap 3.5.30-gg4 → 3.5.30-j1

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 (271) hide show
  1. package/dist/assets/illustrations/illustrations.js +12 -0
  2. package/dist/assets/illustrations/illustrations.js.map +1 -1
  3. package/dist/assets/images/images.js +8 -0
  4. package/dist/assets/images/images.js.map +1 -1
  5. package/dist/assets/line-icons/icons/carat-right.js +26 -0
  6. package/dist/assets/line-icons/icons/carat-right.js.map +1 -0
  7. package/dist/features/chapters/chapters-list/chapter-item/chapter-circular-progress/chapter-circular-progress.js +3 -3
  8. package/dist/features/chapters/chapters-list/chapter-item/chapter-circular-progress/chapter-circular-progress.js.map +1 -1
  9. package/dist/features/circle-games/game-launcher/comps/carousel/carousel-styled.js +16 -32
  10. package/dist/features/circle-games/game-launcher/comps/carousel/carousel-styled.js.map +1 -1
  11. package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js +88 -87
  12. package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js.map +1 -1
  13. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js +35 -35
  14. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
  15. package/dist/features/stickers/hooks/use-handle-sticker-send/use-handle-sticker-send.js +0 -1
  16. package/dist/features/stickers/hooks/use-handle-sticker-send/use-handle-sticker-send.js.map +1 -1
  17. package/dist/features/timeline/daily-timeline-styled.js +13 -9
  18. package/dist/features/timeline/daily-timeline-styled.js.map +1 -1
  19. package/dist/features/timeline/daily-timeline-view.js +9 -10
  20. package/dist/features/timeline/daily-timeline-view.js.map +1 -1
  21. package/dist/features/timeline/monthly-report/api/use-monthly-report-get.js +13 -0
  22. package/dist/features/timeline/monthly-report/api/use-monthly-report-get.js.map +1 -0
  23. package/dist/features/timeline/monthly-report/comps/achievements/achievements.js +68 -0
  24. package/dist/features/timeline/monthly-report/comps/achievements/achievements.js.map +1 -0
  25. package/dist/features/timeline/monthly-report/comps/achievements/achievements.styled.js +15 -0
  26. package/dist/features/timeline/monthly-report/comps/achievements/achievements.styled.js.map +1 -0
  27. package/dist/features/timeline/monthly-report/comps/activities/activities-card/activities-card.js +128 -0
  28. package/dist/features/timeline/monthly-report/comps/activities/activities-card/activities-card.js.map +1 -0
  29. package/dist/features/timeline/monthly-report/comps/activities/activities-card/activities-card.styled.js +53 -0
  30. package/dist/features/timeline/monthly-report/comps/activities/activities-card/activities-card.styled.js.map +1 -0
  31. package/dist/features/timeline/monthly-report/comps/activities/activities-card-puzzles/activities-card-puzzles.js +121 -0
  32. package/dist/features/timeline/monthly-report/comps/activities/activities-card-puzzles/activities-card-puzzles.js.map +1 -0
  33. package/dist/features/timeline/monthly-report/comps/activities/activities-card-puzzles/activities-card-puzzles.styled.js +58 -0
  34. package/dist/features/timeline/monthly-report/comps/activities/activities-card-puzzles/activities-card-puzzles.styled.js.map +1 -0
  35. package/dist/features/timeline/monthly-report/comps/activities/activities.js +27 -0
  36. package/dist/features/timeline/monthly-report/comps/activities/activities.js.map +1 -0
  37. package/dist/features/timeline/monthly-report/comps/activities/constants.js +95 -0
  38. package/dist/features/timeline/monthly-report/comps/activities/constants.js.map +1 -0
  39. package/dist/features/timeline/monthly-report/comps/activities/utils.js +15 -0
  40. package/dist/features/timeline/monthly-report/comps/activities/utils.js.map +1 -0
  41. package/dist/features/timeline/monthly-report/comps/attendance/attendance-constants.js +29 -0
  42. package/dist/features/timeline/monthly-report/comps/attendance/attendance-constants.js.map +1 -0
  43. package/dist/features/timeline/monthly-report/comps/attendance/attendance-utils.js +92 -0
  44. package/dist/features/timeline/monthly-report/comps/attendance/attendance-utils.js.map +1 -0
  45. package/dist/features/timeline/monthly-report/comps/attendance/attendance.js +44 -0
  46. package/dist/features/timeline/monthly-report/comps/attendance/attendance.js.map +1 -0
  47. package/dist/features/timeline/monthly-report/comps/attendance/attendance.styled.js +39 -0
  48. package/dist/features/timeline/monthly-report/comps/attendance/attendance.styled.js.map +1 -0
  49. package/dist/features/timeline/monthly-report/comps/attendance/attendence-view.js +52 -0
  50. package/dist/features/timeline/monthly-report/comps/attendance/attendence-view.js.map +1 -0
  51. package/dist/features/timeline/monthly-report/comps/feedback/feedback-styled.js +9 -0
  52. package/dist/features/timeline/monthly-report/comps/feedback/feedback-styled.js.map +1 -0
  53. package/dist/features/timeline/monthly-report/comps/feedback/feedback.js +94 -0
  54. package/dist/features/timeline/monthly-report/comps/feedback/feedback.js.map +1 -0
  55. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goal-chapter-card.js +48 -0
  56. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goal-chapter-card.js.map +1 -0
  57. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goals-card-styled.js +28 -0
  58. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goals-card-styled.js.map +1 -0
  59. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goals-card.js +113 -0
  60. package/dist/features/timeline/monthly-report/comps/goals/goals-card/goals-card.js.map +1 -0
  61. package/dist/features/timeline/monthly-report/comps/goals/goals-constants.js +30 -0
  62. package/dist/features/timeline/monthly-report/comps/goals/goals-constants.js.map +1 -0
  63. package/dist/features/timeline/monthly-report/comps/goals/goals.js +22 -0
  64. package/dist/features/timeline/monthly-report/comps/goals/goals.js.map +1 -0
  65. package/dist/features/timeline/monthly-report/monthly-report-styled.js +14 -0
  66. package/dist/features/timeline/monthly-report/monthly-report-styled.js.map +1 -0
  67. package/dist/features/timeline/monthly-report/monthly-report-types.js +5 -0
  68. package/dist/features/timeline/monthly-report/monthly-report-types.js.map +1 -0
  69. package/dist/features/timeline/monthly-report/monthly-report.js +69 -0
  70. package/dist/features/timeline/monthly-report/monthly-report.js.map +1 -0
  71. package/dist/features/timeline/monthly-timeline/api/use-monthly-timeline-get.js +10 -0
  72. package/dist/features/timeline/monthly-timeline/api/use-monthly-timeline-get.js.map +1 -0
  73. package/dist/features/timeline/monthly-timeline/comps/monthly-card/monthly-card.js +87 -0
  74. package/dist/features/timeline/monthly-timeline/comps/monthly-card/monthly-card.js.map +1 -0
  75. package/dist/features/timeline/monthly-timeline/comps/monthly-card/monthly-card.styled.js +9 -0
  76. package/dist/features/timeline/monthly-timeline/comps/monthly-card/monthly-card.styled.js.map +1 -0
  77. package/dist/features/timeline/monthly-timeline/constants.js +41 -0
  78. package/dist/features/timeline/monthly-timeline/constants.js.map +1 -0
  79. package/dist/features/timeline/monthly-timeline/monthly-timeline-styled.js +13 -0
  80. package/dist/features/timeline/monthly-timeline/monthly-timeline-styled.js.map +1 -0
  81. package/dist/features/timeline/monthly-timeline/monthly-timeline-types.js +6 -0
  82. package/dist/features/timeline/monthly-timeline/monthly-timeline-types.js.map +1 -0
  83. package/dist/features/timeline/monthly-timeline/monthly-timeline-view.js +28 -0
  84. package/dist/features/timeline/monthly-timeline/monthly-timeline-view.js.map +1 -0
  85. package/dist/features/timeline/monthly-timeline/monthly-timeline.js +62 -0
  86. package/dist/features/timeline/monthly-timeline/monthly-timeline.js.map +1 -0
  87. package/dist/features/timeline/ptm-report/api/use-ptm-report-get.js +9 -0
  88. package/dist/features/timeline/ptm-report/api/use-ptm-report-get.js.map +1 -0
  89. package/dist/features/timeline/ptm-report/comps/key-need/key-need-styled.js +9 -0
  90. package/dist/features/timeline/ptm-report/comps/key-need/key-need-styled.js.map +1 -0
  91. package/dist/features/timeline/ptm-report/comps/key-need/key-need.js +35 -0
  92. package/dist/features/timeline/ptm-report/comps/key-need/key-need.js.map +1 -0
  93. package/dist/features/timeline/ptm-report/comps/parent-support/parent-support.js +53 -0
  94. package/dist/features/timeline/ptm-report/comps/parent-support/parent-support.js.map +1 -0
  95. package/dist/features/timeline/ptm-report/comps/real-world-projects/real-world-projects-styled.js +19 -0
  96. package/dist/features/timeline/ptm-report/comps/real-world-projects/real-world-projects-styled.js.map +1 -0
  97. package/dist/features/timeline/ptm-report/comps/real-world-projects/real-world-projects.js +50 -0
  98. package/dist/features/timeline/ptm-report/comps/real-world-projects/real-world-projects.js.map +1 -0
  99. package/dist/features/timeline/ptm-report/comps/report-card/report-card-styled.js +9 -0
  100. package/dist/features/timeline/ptm-report/comps/report-card/report-card-styled.js.map +1 -0
  101. package/dist/features/timeline/ptm-report/comps/report-card/report-card.js +22 -0
  102. package/dist/features/timeline/ptm-report/comps/report-card/report-card.js.map +1 -0
  103. package/dist/features/timeline/ptm-report/comps/school-support/school-support-styled.js +9 -0
  104. package/dist/features/timeline/ptm-report/comps/school-support/school-support-styled.js.map +1 -0
  105. package/dist/features/timeline/ptm-report/comps/school-support/school-support.js +84 -0
  106. package/dist/features/timeline/ptm-report/comps/school-support/school-support.js.map +1 -0
  107. package/dist/features/timeline/ptm-report/comps/strategies/strategies-constant.js +11 -0
  108. package/dist/features/timeline/ptm-report/comps/strategies/strategies-constant.js.map +1 -0
  109. package/dist/features/timeline/ptm-report/comps/strategies/strategies.js +36 -0
  110. package/dist/features/timeline/ptm-report/comps/strategies/strategies.js.map +1 -0
  111. package/dist/features/timeline/ptm-report/comps/strategy-card/strategy-card-styled.js +55 -0
  112. package/dist/features/timeline/ptm-report/comps/strategy-card/strategy-card-styled.js.map +1 -0
  113. package/dist/features/timeline/ptm-report/comps/strategy-card/strategy-card.js +35 -0
  114. package/dist/features/timeline/ptm-report/comps/strategy-card/strategy-card.js.map +1 -0
  115. package/dist/features/timeline/ptm-report/comps/student-info/student-info-styled.js +21 -0
  116. package/dist/features/timeline/ptm-report/comps/student-info/student-info-styled.js.map +1 -0
  117. package/dist/features/timeline/ptm-report/comps/student-info/student-info.js +21 -0
  118. package/dist/features/timeline/ptm-report/comps/student-info/student-info.js.map +1 -0
  119. package/dist/features/timeline/ptm-report/comps/support-card/support-card-styled.js +9 -0
  120. package/dist/features/timeline/ptm-report/comps/support-card/support-card-styled.js.map +1 -0
  121. package/dist/features/timeline/ptm-report/comps/support-card/support-card.js +30 -0
  122. package/dist/features/timeline/ptm-report/comps/support-card/support-card.js.map +1 -0
  123. package/dist/features/timeline/ptm-report/comps/teacher-observations/teacher-observations-constant.js +9 -0
  124. package/dist/features/timeline/ptm-report/comps/teacher-observations/teacher-observations-constant.js.map +1 -0
  125. package/dist/features/timeline/ptm-report/comps/teacher-observations/teacher-observations.js +56 -0
  126. package/dist/features/timeline/ptm-report/comps/teacher-observations/teacher-observations.js.map +1 -0
  127. package/dist/features/timeline/ptm-report/comps/upcoming-chapters/upcoming-chapters.js +15 -0
  128. package/dist/features/timeline/ptm-report/comps/upcoming-chapters/upcoming-chapters.js.map +1 -0
  129. package/dist/features/timeline/ptm-report/ptm-report-constants.js +16 -0
  130. package/dist/features/timeline/ptm-report/ptm-report-constants.js.map +1 -0
  131. package/dist/features/timeline/ptm-report/ptm-report-helpers.js +8 -0
  132. package/dist/features/timeline/ptm-report/ptm-report-helpers.js.map +1 -0
  133. package/dist/features/timeline/ptm-report/ptm-report-styled.js +11 -0
  134. package/dist/features/timeline/ptm-report/ptm-report-styled.js.map +1 -0
  135. package/dist/features/timeline/ptm-report/ptm-report-types.js +5 -0
  136. package/dist/features/timeline/ptm-report/ptm-report-types.js.map +1 -0
  137. package/dist/features/timeline/ptm-report/ptm-report.js +113 -0
  138. package/dist/features/timeline/ptm-report/ptm-report.js.map +1 -0
  139. package/dist/features/timeline/timeline-tabs/timeline-tabs-types.js +5 -0
  140. package/dist/features/timeline/timeline-tabs/timeline-tabs-types.js.map +1 -0
  141. package/dist/features/timeline/timeline-tabs/timeline-tabs.js +42 -0
  142. package/dist/features/timeline/timeline-tabs/timeline-tabs.js.map +1 -0
  143. package/dist/features/timeline/timeline-tabs/timeline-tabs.styled.js +37 -0
  144. package/dist/features/timeline/timeline-tabs/timeline-tabs.styled.js.map +1 -0
  145. package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js.map +1 -1
  146. package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js +11 -11
  147. package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js.map +1 -1
  148. package/dist/features/ui/swipable-carousel/swipable-carousel-styled.js +57 -0
  149. package/dist/features/ui/swipable-carousel/swipable-carousel-styled.js.map +1 -0
  150. package/dist/features/ui/swipable-carousel/swipable-carousel.js +132 -0
  151. package/dist/features/ui/swipable-carousel/swipable-carousel.js.map +1 -0
  152. package/dist/features/ui/swipeable-component/swipeable-component-styled.js.map +1 -0
  153. package/dist/features/ui/swipeable-component/swipeable-component.js +27 -0
  154. package/dist/features/ui/swipeable-component/swipeable-component.js.map +1 -0
  155. package/dist/features/worksheet/user-pointer-pin/hooks/use-user-location.js +20 -21
  156. package/dist/features/worksheet/user-pointer-pin/hooks/use-user-location.js.map +1 -1
  157. package/dist/features/worksheet/user-pointer-pin/user-pin.js +35 -37
  158. package/dist/features/worksheet/user-pointer-pin/user-pin.js.map +1 -1
  159. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js +132 -132
  160. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js.map +1 -1
  161. package/dist/features/worksheet/worksheet/hooks/use-get-active-question-id.js +62 -0
  162. package/dist/features/worksheet/worksheet/hooks/use-get-active-question-id.js.map +1 -0
  163. package/dist/features/worksheet/worksheet/hooks/use-time-on-questions.js +19 -24
  164. package/dist/features/worksheet/worksheet/hooks/use-time-on-questions.js.map +1 -1
  165. package/dist/features/worksheet/worksheet/question-tips.js +47 -48
  166. package/dist/features/worksheet/worksheet/question-tips.js.map +1 -1
  167. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js +132 -88
  168. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  169. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker.js +55 -44
  170. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker.js.map +1 -1
  171. package/dist/features/worksheet/worksheet/worksheet-container.js +87 -0
  172. package/dist/features/worksheet/worksheet/worksheet-container.js.map +1 -0
  173. package/dist/features/worksheet/worksheet/worksheet-helpers.js +112 -109
  174. package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
  175. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-navigation/worksheet-item-navigation.js +27 -25
  176. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-navigation/worksheet-item-navigation.js.map +1 -1
  177. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js +47 -47
  178. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js.map +1 -1
  179. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js +64 -66
  180. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js.map +1 -1
  181. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js +40 -38
  182. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js.map +1 -1
  183. package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
  184. package/dist/features/worksheet/worksheet/worksheet-question/header/header.js +71 -73
  185. package/dist/features/worksheet/worksheet/worksheet-question/header/header.js.map +1 -1
  186. package/dist/features/worksheet/worksheet/worksheet-question/learnosity-question.js +59 -61
  187. package/dist/features/worksheet/worksheet/worksheet-question/learnosity-question.js.map +1 -1
  188. package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js +18 -21
  189. package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js.map +1 -1
  190. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js +272 -269
  191. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  192. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js +31 -32
  193. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -1
  194. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js +149 -147
  195. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +1 -1
  196. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js +223 -212
  197. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
  198. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js +20 -22
  199. package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js.map +1 -1
  200. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js +55 -57
  201. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +1 -1
  202. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js +42 -47
  203. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +1 -1
  204. package/dist/features/worksheet/worksheet/worksheet-styled.js +34 -24
  205. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  206. package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js +12 -16
  207. package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js.map +1 -1
  208. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js +7 -8
  209. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
  210. package/dist/features/worksheet/worksheet/worksheet-types.js.map +1 -1
  211. package/dist/features/worksheet/worksheet/worksheet.js +441 -203
  212. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  213. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
  214. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +1 -1
  215. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  216. package/dist/index.d.ts +276 -31
  217. package/dist/index.js +465 -451
  218. package/dist/index.js.map +1 -1
  219. package/dist/static/2021.0683b580.png +0 -0
  220. package/dist/static/2022.d34ad7a5.png +0 -0
  221. package/dist/static/2023.fce87149.png +0 -0
  222. package/dist/static/2024.a275ee85.png +0 -0
  223. package/dist/static/2025.677cc187.png +0 -0
  224. package/dist/static/2026.63763214.png +0 -0
  225. package/dist/static/2027.b82dc039.png +0 -0
  226. package/dist/static/2028.580b8cc0.png +0 -0
  227. package/dist/static/coding-report-icon.91a1e900.svg +1 -0
  228. package/dist/static/elp-icon.d45b457d.svg +1 -0
  229. package/dist/static/empty-reports.fe92faad.svg +1 -0
  230. package/dist/static/english-icon.50c2e005.svg +1 -0
  231. package/dist/static/full-report.00112c74.svg +1 -0
  232. package/dist/static/math-fit-grey.c32f37b3.svg +1 -0
  233. package/dist/static/no-report.4158fad3.svg +1 -0
  234. package/dist/static/ptm-report-icon.5089218f.svg +1 -0
  235. package/dist/static/sat-report-icon.4331be86.svg +1 -0
  236. package/dist/static/science-report-icon.a0014c40.svg +1 -0
  237. package/dist/static/thumps-down.a1192a62.svg +1 -0
  238. package/dist/static/thumps-up.caa35a98.svg +1 -0
  239. package/package.json +3 -4
  240. package/dist/features/circle-games/game-launcher/comps/swipable-component/swipeable-component-styled.js.map +0 -1
  241. package/dist/features/circle-games/game-launcher/comps/swipable-component/swipeable-component.js +0 -26
  242. package/dist/features/circle-games/game-launcher/comps/swipable-component/swipeable-component.js.map +0 -1
  243. package/dist/features/worksheet/worksheet/hooks/use-active-question-observer.js +0 -59
  244. package/dist/features/worksheet/worksheet/hooks/use-active-question-observer.js.map +0 -1
  245. package/dist/features/worksheet/worksheet/hooks/use-worksheet-store.js +0 -13
  246. package/dist/features/worksheet/worksheet/hooks/use-worksheet-store.js.map +0 -1
  247. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker-view.js +0 -68
  248. package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker-view.js.map +0 -1
  249. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js +0 -17
  250. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js.map +0 -1
  251. package/dist/features/worksheet/worksheet/worksheet-nudge-banner/worksheet-nudge-banner-styled.js +0 -20
  252. package/dist/features/worksheet/worksheet/worksheet-nudge-banner/worksheet-nudge-banner-styled.js.map +0 -1
  253. package/dist/features/worksheet/worksheet/worksheet-nudge-banner/worksheet-nudge-banner.js +0 -49
  254. package/dist/features/worksheet/worksheet/worksheet-nudge-banner/worksheet-nudge-banner.js.map +0 -1
  255. package/dist/features/worksheet/worksheet/worksheet-provider.js +0 -21
  256. package/dist/features/worksheet/worksheet/worksheet-provider.js.map +0 -1
  257. package/dist/features/worksheet/worksheet/worksheet-questions/worksheet-questions-styled.js +0 -16
  258. package/dist/features/worksheet/worksheet/worksheet-questions/worksheet-questions-styled.js.map +0 -1
  259. package/dist/features/worksheet/worksheet/worksheet-questions/worksheet-questions.js +0 -73
  260. package/dist/features/worksheet/worksheet/worksheet-questions/worksheet-questions.js.map +0 -1
  261. package/dist/features/worksheet/worksheet/worksheet-store.js +0 -301
  262. package/dist/features/worksheet/worksheet/worksheet-store.js.map +0 -1
  263. package/dist/features/worksheet/worksheet/worksheet-view.js +0 -141
  264. package/dist/features/worksheet/worksheet/worksheet-view.js.map +0 -1
  265. package/dist/node_modules/zustand/esm/middleware.js +0 -22
  266. package/dist/node_modules/zustand/esm/middleware.js.map +0 -1
  267. package/dist/node_modules/zustand/esm/react/shallow.js +0 -13
  268. package/dist/node_modules/zustand/esm/react/shallow.js.map +0 -1
  269. package/dist/node_modules/zustand/esm/vanilla/shallow.js +0 -31
  270. package/dist/node_modules/zustand/esm/vanilla/shallow.js.map +0 -1
  271. /package/dist/features/{circle-games/game-launcher/comps/swipable-component → ui/swipeable-component}/swipeable-component-styled.js +0 -0
@@ -1,100 +1,99 @@
1
- import { jsx as i, jsxs as g } from "react/jsx-runtime";
2
- import { memo as T, useRef as f, useState as y, useMemo as C, useCallback as k, useLayoutEffect as E, useEffect as w } from "react";
1
+ import { jsx as n, jsxs as g } from "react/jsx-runtime";
2
+ import { memo as T, useRef as u, useState as C, useMemo as E, useCallback as k, useLayoutEffect as I, useEffect as w } from "react";
3
3
  import l from "styled-components";
4
- import I from "../../../assets/line-icons/icons/up.js";
4
+ import y from "../../../assets/line-icons/icons/up.js";
5
5
  import _ from "../../ui/buttons/clickable/clickable.js";
6
- import u from "../../ui/layout/flex-view.js";
7
- import { ACTION_BAR_HEIGHT as m } from "./constants.js";
8
- import { useWorksheetStore as R } from "./hooks/use-worksheet-store.js";
9
- import { CustomElement as A } from "./worksheet-question/worksheet-question-styled.js";
10
- const H = l(u)(({ $isExpanded: n, theme: e }) => {
11
- const { layout: c, colors: t, zIndex: d } = e;
6
+ import d from "../../ui/layout/flex-view.js";
7
+ import { ACTION_BAR_HEIGHT as f } from "./constants.js";
8
+ import { CustomElement as R } from "./worksheet-question/worksheet-question-styled.js";
9
+ const A = l(d)(({ $isExpanded: e, theme: t }) => {
10
+ const { layout: o, colors: i, zIndex: a } = t;
12
11
  return `
13
12
  position: absolute;
14
13
  bottom: 0px;
15
- z-index: ${d.QUESTION_TIPS};
16
- max-height: calc(${c.gutter * 2}px + ${m}px);
14
+ z-index: ${a.QUESTION_TIPS};
15
+ max-height: calc(${o.gutter * 2}px + ${f}px);
17
16
 
18
17
  border-radius: 6px 6px 0px 0px;
19
- background: ${t.REAL_BLACK_60};
18
+ background: ${i.REAL_BLACK_60};
20
19
  backdrop-filter: blur(8px);
21
20
  align-self: center;
22
21
 
23
- ${n && `
24
- max-height: calc(${c.gutter * 15.625}px + ${m}px);
22
+ ${e && `
23
+ max-height: calc(${o.gutter * 15.625}px + ${f}px);
25
24
  overflow-y: auto;
26
25
 
27
26
  @supports selector(::-webkit-scrollbar) {
28
27
  &::-webkit-scrollbar {
29
28
  border-top-right-radius: 6px;
30
29
  width: 8px;
31
- background-color: ${t.WHITE};
30
+ background-color: ${i.WHITE};
32
31
  }
33
32
 
34
33
  &::-webkit-scrollbar-thumb {
35
34
  border-top-right-radius: 6px;
36
35
  border-bottom-right-radius: 6px;
37
- background: ${t.REAL_BLACK_60};
36
+ background: ${i.REAL_BLACK_60};
38
37
  }
39
38
  }
40
39
  `}
41
40
  `;
42
- }), L = l(u)`
41
+ }), H = l(d)`
43
42
  padding: 8px 12px;
44
43
 
45
44
  & * {
46
45
  background-color: transparent !important;
47
46
  }
48
- `, S = l(A)(
49
- ({ theme: n, $isExpanded: e }) => `
50
- color: ${n.colors.WHITE};
51
- padding: 0px 0px ${m}px;
52
- ${e ? "" : "& > * { display: inline; }"}
47
+ `, L = l(R)(
48
+ ({ theme: e, $isExpanded: t }) => `
49
+ color: ${e.colors.WHITE};
50
+ padding: 0px 0px ${f}px;
51
+ ${t ? "" : "& > * { display: inline; }"}
53
52
  font-family: 'UntitledSans-Regular';
54
53
 
55
54
  &::before {
56
55
  content: 'CUE DON’T TELL:';
57
56
  font-family: 'Athletics-Bold';
58
57
  margin-right: 8px;
59
- ${e ? " display: block; margin-bottom: 8px;" : ""}
58
+ ${t ? " display: block; margin-bottom: 8px;" : ""}
60
59
  }
61
60
  `
62
- ), W = l(u)`
61
+ ), S = l(d)`
63
62
  position: sticky;
64
63
  top: 8px;
65
- `, v = l(I)(({ $isExpanded: n, theme: e }) => `
66
- transform: rotate(${n ? 180 : 0}deg);
64
+ `, v = l(y)(({ $isExpanded: e, theme: t }) => `
65
+ transform: rotate(${e ? 180 : 0}deg);
67
66
  transition: transform 0.3s ease;
68
- color: ${e.colors.WHITE};
67
+ color: ${t.colors.WHITE};
69
68
  cursor: pointer;
70
- `), O = T(function() {
71
- const { learnosity: e, width: c, question: t, userType: d } = R((o) => ({
72
- learnosity: o.learnosity,
73
- width: o.questionsContainerWidth - 32,
74
- question: o.questions[o.activeQuestionIndex],
75
- userType: o.userType
76
- })), $ = f(null), a = f(null), x = f(""), [s, h] = y(!1), { teacher_tips: r } = (t == null ? void 0 : t.metadata) || {};
77
- r && e.renderMath("mathjax");
78
- const p = C(() => r == null ? void 0 : r.toString(), [r]), b = k(() => {
79
- x.current && a.current && h((o) => !o);
69
+ `), N = T(function({
70
+ width: t,
71
+ question: o,
72
+ userType: i,
73
+ learnosity: a
74
+ }) {
75
+ const h = u(null), s = u(null), m = u(""), [c, x] = C(!1), { teacher_tips: r } = (o == null ? void 0 : o.metadata) || {};
76
+ r && a.renderMath("mathjax");
77
+ const p = E(() => r == null ? void 0 : r.toString(), [r]), b = k(() => {
78
+ m.current && s.current && x(($) => !$);
80
79
  }, []);
81
- return E(() => {
82
- a.current && r && (x.current = a.current.textContent);
83
- }, [e, r]), w(() => {
84
- p || h(!1);
85
- }, [p]), d !== "TEACHER" || !p ? null : /* @__PURE__ */ i(H, { ref: $, $width: c, $isExpanded: s, children: /* @__PURE__ */ i(_, { label: "Teacher Tip", onClick: s ? void 0 : b, children: /* @__PURE__ */ g(L, { $flexDirection: "row", $flexGap: 10, $justifyContent: "space-between", children: [
86
- /* @__PURE__ */ i(u, { $flexDirection: "row", $flexGap: 5, children: /* @__PURE__ */ i(
87
- S,
80
+ return I(() => {
81
+ s.current && r && (m.current = s.current.textContent);
82
+ }, [a, r]), w(() => {
83
+ p || x(!1);
84
+ }, [p]), i !== "TEACHER" || !p ? null : /* @__PURE__ */ n(A, { ref: h, $width: t, $isExpanded: c, children: /* @__PURE__ */ n(_, { label: "Teacher Tip", onClick: c ? void 0 : b, children: /* @__PURE__ */ g(H, { $flexDirection: "row", $flexGap: 10, $justifyContent: "space-between", children: [
85
+ /* @__PURE__ */ n(d, { $flexDirection: "row", $flexGap: 5, children: /* @__PURE__ */ n(
86
+ L,
88
87
  {
89
- ref: a,
88
+ ref: s,
90
89
  dangerouslySetInnerHTML: { __html: p },
91
- $isExpanded: s
90
+ $isExpanded: c
92
91
  }
93
92
  ) }),
94
- /* @__PURE__ */ i(W, { $width: 20, $height: 20, children: /* @__PURE__ */ i(v, { $isExpanded: s, onClick: s ? b : void 0 }) })
93
+ /* @__PURE__ */ n(S, { $width: 20, $height: 20, children: /* @__PURE__ */ n(v, { $isExpanded: c, onClick: c ? b : void 0 }) })
95
94
  ] }) }) });
96
95
  });
97
96
  export {
98
- O as default
97
+ N as default
99
98
  };
100
99
  //# sourceMappingURL=question-tips.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"question-tips.js","sources":["../../../../src/features/worksheet/worksheet/question-tips.tsx"],"sourcesContent":["import {\n memo,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n type FC,\n} from 'react';\nimport styled from 'styled-components';\n\nimport UpIcon from '../../../assets/line-icons/icons/up';\nimport Clickable from '../../ui/buttons/clickable/clickable';\nimport FlexView from '../../ui/layout/flex-view';\nimport { ACTION_BAR_HEIGHT } from './constants';\nimport { useWorksheetStore } from './hooks/use-worksheet-store';\nimport { CustomElement } from './worksheet-question/worksheet-question-styled';\n\ntype TStyledComponentProps = {\n $isExpanded: boolean;\n};\n\nconst Wrapper = styled(FlexView)<TStyledComponentProps>(({ $isExpanded, theme }) => {\n const { layout, colors, zIndex } = theme;\n\n return `\n position: absolute;\n bottom: 0px;\n z-index: ${zIndex.QUESTION_TIPS};\n max-height: calc(${layout.gutter * 2}px + ${ACTION_BAR_HEIGHT}px);\n \n border-radius: 6px 6px 0px 0px;\n background: ${colors.REAL_BLACK_60};\n backdrop-filter: blur(8px);\n align-self: center;\n \n ${\n $isExpanded &&\n `\n max-height: calc(${layout.gutter * 15.625}px + ${ACTION_BAR_HEIGHT}px);\n overflow-y: auto;\n\n @supports selector(::-webkit-scrollbar) {\n &::-webkit-scrollbar {\n border-top-right-radius: 6px;\n width: 8px;\n background-color: ${colors.WHITE};\n }\n \n &::-webkit-scrollbar-thumb {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n background: ${colors.REAL_BLACK_60};\n }\n }\n `\n }\n `;\n});\n\nconst Header = styled(FlexView)`\n padding: 8px 12px;\n\n & * {\n background-color: transparent !important;\n }\n`;\n\nconst TipText = styled(CustomElement)<TStyledComponentProps>(\n ({ theme, $isExpanded }) => `\n color: ${theme.colors.WHITE};\n padding: 0px 0px ${ACTION_BAR_HEIGHT}px;\n ${$isExpanded ? '' : `& > * { display: inline; }`}\n font-family: 'UntitledSans-Regular';\n\n &::before {\n content: 'CUE DON’T TELL:';\n font-family: 'Athletics-Bold';\n margin-right: 8px;\n ${$isExpanded ? ` display: block; margin-bottom: 8px;` : ''}\n }\n `,\n);\n\nconst ChevIconWrapper = styled(FlexView)`\n position: sticky;\n top: 8px;\n`;\n\nconst ChevIcon = styled(UpIcon)<TStyledComponentProps>(({ $isExpanded, theme }) => {\n return `\n transform: rotate(${$isExpanded ? 180 : 0}deg);\n transition: transform 0.3s ease;\n color: ${theme.colors.WHITE};\n cursor: pointer;\n `;\n});\n\nconst QuestionTips: FC = memo(function QuestionTips() {\n const { learnosity, width, question, userType } = useWorksheetStore(state => ({\n learnosity: state.learnosity,\n width: state.questionsContainerWidth - 32,\n question: state.questions[state.activeQuestionIndex],\n userType: state.userType,\n }));\n const containerRef = useRef<HTMLDivElement>(null);\n const tipRef = useRef<HTMLDivElement>(null);\n const tipContentRef = useRef<string | null>('');\n\n const [menuVisible, setMenuVisible] = useState(false);\n\n const { teacher_tips: tips } = question?.metadata || {};\n\n if (tips) {\n learnosity.renderMath('mathjax');\n }\n\n const tipsMemoized = useMemo(() => {\n return tips?.toString();\n }, [tips]);\n\n const handleClick = useCallback(() => {\n if (tipContentRef.current && tipRef.current) {\n setMenuVisible(prev => !prev);\n }\n }, []);\n\n useLayoutEffect(() => {\n if (tipRef.current && tips) {\n tipContentRef.current = tipRef.current.textContent;\n }\n }, [learnosity, tips]);\n\n useEffect(() => {\n if (!tipsMemoized) {\n setMenuVisible(false);\n }\n }, [tipsMemoized]);\n\n if (userType !== 'TEACHER' || !tipsMemoized) return null;\n\n return (\n <Wrapper ref={containerRef} $width={width} $isExpanded={menuVisible}>\n <Clickable label=\"Teacher Tip\" onClick={!menuVisible ? handleClick : undefined}>\n <Header $flexDirection=\"row\" $flexGap={10} $justifyContent=\"space-between\">\n <FlexView $flexDirection=\"row\" $flexGap={5}>\n <TipText\n ref={tipRef}\n dangerouslySetInnerHTML={{ __html: tipsMemoized }}\n $isExpanded={menuVisible}\n />\n </FlexView>\n\n <ChevIconWrapper $width={20} $height={20}>\n <ChevIcon $isExpanded={menuVisible} onClick={menuVisible ? handleClick : undefined} />\n </ChevIconWrapper>\n </Header>\n </Clickable>\n </Wrapper>\n );\n});\n\nexport default QuestionTips;\n"],"names":["Wrapper","styled","FlexView","$isExpanded","theme","layout","colors","zIndex","ACTION_BAR_HEIGHT","Header","TipText","CustomElement","ChevIconWrapper","ChevIcon","UpIcon","QuestionTips","memo","learnosity","width","question","userType","useWorksheetStore","state","containerRef","useRef","tipRef","tipContentRef","menuVisible","setMenuVisible","useState","tips","tipsMemoized","useMemo","handleClick","useCallback","prev","useLayoutEffect","useEffect","jsx","Clickable","jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"question-tips.js","sources":["../../../../src/features/worksheet/worksheet/question-tips.tsx"],"sourcesContent":["import {\n memo,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n type FC,\n} from 'react';\nimport styled from 'styled-components';\n\nimport UpIcon from '../../../assets/line-icons/icons/up';\nimport Clickable from '../../ui/buttons/clickable/clickable';\nimport FlexView from '../../ui/layout/flex-view';\nimport type { TUserTypes } from '../../ui/types';\nimport { ACTION_BAR_HEIGHT } from './constants';\nimport { CustomElement } from './worksheet-question/worksheet-question-styled';\nimport type { ILearnosity, IWorksheetQuestion } from './worksheet-types';\n\ntype TStyledComponentProps = {\n $isExpanded: boolean;\n};\n\nconst Wrapper = styled(FlexView)<TStyledComponentProps>(({ $isExpanded, theme }) => {\n const { layout, colors, zIndex } = theme;\n\n return `\n position: absolute;\n bottom: 0px;\n z-index: ${zIndex.QUESTION_TIPS};\n max-height: calc(${layout.gutter * 2}px + ${ACTION_BAR_HEIGHT}px);\n \n border-radius: 6px 6px 0px 0px;\n background: ${colors.REAL_BLACK_60};\n backdrop-filter: blur(8px);\n align-self: center;\n \n ${\n $isExpanded &&\n `\n max-height: calc(${layout.gutter * 15.625}px + ${ACTION_BAR_HEIGHT}px);\n overflow-y: auto;\n\n @supports selector(::-webkit-scrollbar) {\n &::-webkit-scrollbar {\n border-top-right-radius: 6px;\n width: 8px;\n background-color: ${colors.WHITE};\n }\n \n &::-webkit-scrollbar-thumb {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n background: ${colors.REAL_BLACK_60};\n }\n }\n `\n }\n `;\n});\n\nconst Header = styled(FlexView)`\n padding: 8px 12px;\n\n & * {\n background-color: transparent !important;\n }\n`;\n\nconst TipText = styled(CustomElement)<TStyledComponentProps>(\n ({ theme, $isExpanded }) => `\n color: ${theme.colors.WHITE};\n padding: 0px 0px ${ACTION_BAR_HEIGHT}px;\n ${$isExpanded ? '' : `& > * { display: inline; }`}\n font-family: 'UntitledSans-Regular';\n\n &::before {\n content: 'CUE DON’T TELL:';\n font-family: 'Athletics-Bold';\n margin-right: 8px;\n ${$isExpanded ? ` display: block; margin-bottom: 8px;` : ''}\n }\n `,\n);\n\nconst ChevIconWrapper = styled(FlexView)`\n position: sticky;\n top: 8px;\n`;\n\nconst ChevIcon = styled(UpIcon)<TStyledComponentProps>(({ $isExpanded, theme }) => {\n return `\n transform: rotate(${$isExpanded ? 180 : 0}deg);\n transition: transform 0.3s ease;\n color: ${theme.colors.WHITE};\n cursor: pointer;\n `;\n});\n\ninterface IQuestionTips {\n width: number | string;\n userType: TUserTypes;\n learnosity: ILearnosity;\n question?: IWorksheetQuestion;\n}\n\nconst QuestionTips: FC<IQuestionTips> = memo(function QuestionTips({\n width,\n question,\n userType,\n learnosity,\n}) {\n const containerRef = useRef<HTMLDivElement>(null);\n const tipRef = useRef<HTMLDivElement>(null);\n const tipContentRef = useRef<string | null>('');\n\n const [menuVisible, setMenuVisible] = useState(false);\n\n const { teacher_tips: tips } = question?.metadata || {};\n\n if (tips) {\n learnosity.renderMath('mathjax');\n }\n\n const tipsMemoized = useMemo(() => {\n return tips?.toString();\n }, [tips]);\n\n const handleClick = useCallback(() => {\n if (tipContentRef.current && tipRef.current) {\n setMenuVisible(prev => !prev);\n }\n }, []);\n\n useLayoutEffect(() => {\n if (tipRef.current && tips) {\n tipContentRef.current = tipRef.current.textContent;\n }\n }, [learnosity, tips]);\n\n useEffect(() => {\n if (!tipsMemoized) {\n setMenuVisible(false);\n }\n }, [tipsMemoized]);\n\n if (userType !== 'TEACHER' || !tipsMemoized) return null;\n\n return (\n <Wrapper ref={containerRef} $width={width} $isExpanded={menuVisible}>\n <Clickable label=\"Teacher Tip\" onClick={!menuVisible ? handleClick : undefined}>\n <Header $flexDirection=\"row\" $flexGap={10} $justifyContent=\"space-between\">\n <FlexView $flexDirection=\"row\" $flexGap={5}>\n <TipText\n ref={tipRef}\n dangerouslySetInnerHTML={{ __html: tipsMemoized }}\n $isExpanded={menuVisible}\n />\n </FlexView>\n\n <ChevIconWrapper $width={20} $height={20}>\n <ChevIcon $isExpanded={menuVisible} onClick={menuVisible ? handleClick : undefined} />\n </ChevIconWrapper>\n </Header>\n </Clickable>\n </Wrapper>\n );\n});\n\nexport default QuestionTips;\n"],"names":["Wrapper","styled","FlexView","$isExpanded","theme","layout","colors","zIndex","ACTION_BAR_HEIGHT","Header","TipText","CustomElement","ChevIconWrapper","ChevIcon","UpIcon","QuestionTips","memo","width","question","userType","learnosity","containerRef","useRef","tipRef","tipContentRef","menuVisible","setMenuVisible","useState","tips","tipsMemoized","useMemo","handleClick","useCallback","prev","useLayoutEffect","useEffect","jsx","Clickable","jsxs"],"mappings":"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"}
@@ -1,117 +1,161 @@
1
- import { jsx as o, jsxs as c, Fragment as d } from "react/jsx-runtime";
2
- import { memo as V, useCallback as b } from "react";
3
- import A from "../../../../assets/line-icons/icons/calculator.js";
4
- import T from "../../../../assets/line-icons/icons/down.js";
5
- import q from "../../../../assets/line-icons/icons/up.js";
6
- import j from "../../../cue-canvas/toolbar/toolbar.js";
7
- import D from "../../../ui/buttons/button/button.js";
8
- import E from "../../../ui/layout/flex-view.js";
9
- import { useWorksheetStore as F } from "../hooks/use-worksheet-store.js";
10
- import N from "../worksheet-questions-controller/scribble-switch.js";
11
- import G from "../worksheet-questions-controller/worksheet-questions-controller.js";
12
- import _ from "../worksheet-questions-summary/worksheet-questions-summary.js";
13
- import { IconContainer as z, SummaryWrapper as O } from "../worksheet-styled.js";
14
- import P from "../worksheet-summary-controller/worksheet-summary-controller.js";
15
- const se = V(function(f) {
1
+ import { jsx as e, jsxs as b, Fragment as T } from "react/jsx-runtime";
2
+ import { memo as K, useState as L, useCallback as r } from "react";
3
+ import M from "../../../../assets/line-icons/icons/calculator.js";
4
+ import Y from "../../../../assets/line-icons/icons/down.js";
5
+ import Z from "../../../../assets/line-icons/icons/up.js";
6
+ import ee from "../../../cue-canvas/toolbar/toolbar.js";
7
+ import oe from "../../../ui/buttons/button/button.js";
8
+ import ne from "../../../ui/layout/flex-view.js";
9
+ import { scrollToQuestion as te } from "../worksheet-helpers.js";
10
+ import se from "../worksheet-questions-controller/scribble-switch.js";
11
+ import ie from "../worksheet-questions-controller/worksheet-questions-controller.js";
12
+ import re from "../worksheet-questions-summary/worksheet-questions-summary.js";
13
+ import { IconContainer as ae, SummaryWrapper as le } from "../worksheet-styled.js";
14
+ import ce from "../worksheet-summary-controller/worksheet-summary-controller.js";
15
+ const Qe = K(function(A) {
16
16
  const {
17
- behavior: S,
18
- layout: g,
19
- activeQuestionIndex: a,
20
- questions: n,
21
- userType: k,
22
- summaryVisible: s,
23
- toggleSummary: l,
24
- changeQuestion: u,
25
- calculatorVisible: y,
26
- showCalculator: w,
27
- worksheetName: Q,
28
- onSubmit: r,
29
- canSubmitWorksheet: C,
30
- responses: t,
31
- appendedQuestionIds: I,
32
- scribblingEnabled: v
33
- } = F((e) => ({
34
- behavior: e.behavior,
35
- layout: e.layout,
36
- activeQuestionIndex: e.activeQuestionIndex,
37
- questions: e.questions,
38
- userType: e.userType,
39
- summaryVisible: e.summaryVisible,
40
- toggleSummary: e.toggleSummary,
41
- changeQuestion: e.changeQuestion,
42
- calculatorVisible: e.calculatorVisible,
43
- showCalculator: e.showCalculator,
44
- worksheetName: e.worksheetName,
45
- onSubmit: e.onSubmit,
46
- canSubmitWorksheet: e.canSubmitWorksheet,
47
- responses: e.responses,
48
- appendedQuestionIds: e.appendedQuestionIds,
49
- scribblingEnabled: e.scribblingEnabled
50
- })), { getTimeSpentOnQuestion: W } = f, { navigationBar: x } = g, m = n[a], { response_id: i } = m ?? {}, $ = i ? I.includes(i) : !1, B = b(() => {
51
- var h;
52
- const e = (h = n[n.length - 1]) == null ? void 0 : h.response_id;
53
- e && u(e);
54
- }, [u, n]), p = b(() => {
55
- r == null || r(t);
56
- }, [r, t]);
57
- return s ? /* @__PURE__ */ o(
58
- P,
17
+ userType: c,
18
+ layout: f,
19
+ behavior: t,
20
+ worksheetName: W,
21
+ questions: o,
22
+ responses: s,
23
+ activeQuestionIndex: i,
24
+ lastUnlockedQuestionIndex: h,
25
+ appendedQuestionIds: $,
26
+ learnosity: R,
27
+ isScribblingEnabled: S,
28
+ isSummaryVisible: k,
29
+ setIsScribblingEnabled: q,
30
+ setActiveQuestionId: m,
31
+ setResponses: E,
32
+ getTimeSpentOnQuestion: O,
33
+ setBlocker: V,
34
+ setSummaryVisible: u,
35
+ showCalculator: j,
36
+ onItemNumberClick: C,
37
+ onTeacherValidation: F,
38
+ onGoToReview: I,
39
+ onResponseChange: G,
40
+ onHelp: N,
41
+ onSubmit: a,
42
+ onCalculatorOpen: D,
43
+ canSubmitWorksheet: g,
44
+ loggerRef: y,
45
+ onSkip: U,
46
+ actionBarRightElement: _
47
+ } = A, { navigationBar: z, questionsScrollable: v } = f, d = o[i], { response_id: l } = d ?? {}, [w, p] = L(!1), H = l ? $.includes(l) : !1, P = r(
48
+ (n) => {
49
+ p(!1), C(n);
50
+ },
51
+ [C]
52
+ ), X = r(() => {
53
+ p(!1), I();
54
+ }, [I]), Q = r(() => {
55
+ p((n) => !n);
56
+ }, []), J = r(() => {
57
+ var x;
58
+ u(!1);
59
+ const n = (x = o[o.length - 1]) == null ? void 0 : x.response_id;
60
+ n && (v ? requestAnimationFrame(() => te(n)) : m(n));
61
+ }, [o, v, m, u]), B = r(() => {
62
+ a == null || a(s);
63
+ }, [a, s]);
64
+ return k ? /* @__PURE__ */ e(
65
+ ce,
59
66
  {
60
- onBack: B,
61
- onSubmit: p,
62
- canSubmitWorksheet: !!C
67
+ onBack: J,
68
+ behavior: t,
69
+ onSubmit: B,
70
+ canSubmitWorksheet: !!g
63
71
  }
64
- ) : /* @__PURE__ */ c(d, { children: [
65
- /* @__PURE__ */ c(E, { $flexDirection: "row", $flexGap: 12, children: [
66
- /* @__PURE__ */ o(N, {}),
67
- S.canShowDesmosCalc && /* @__PURE__ */ o(
68
- z,
72
+ ) : /* @__PURE__ */ b(T, { children: [
73
+ /* @__PURE__ */ b(ne, { $flexDirection: "row", $flexGap: 12, children: [
74
+ /* @__PURE__ */ e(
75
+ se,
69
76
  {
70
- $active: y,
77
+ isScribblingEnabled: S,
78
+ setIsScribblingEnabled: q,
79
+ isCanvasEnabled: !!t.canvasEnabled,
80
+ loggerRef: y,
81
+ canToggleScribbling: t.canScribble
82
+ }
83
+ ),
84
+ t.canShowDesmosCalc && /* @__PURE__ */ e(
85
+ ae,
86
+ {
87
+ $active: j,
71
88
  $alignItems: "center",
72
89
  $justifyContent: "space-between",
73
- onClick: w,
74
- children: /* @__PURE__ */ o(A, {})
90
+ onClick: D,
91
+ children: /* @__PURE__ */ e(M, {})
75
92
  }
76
93
  )
77
94
  ] }),
78
- v && /* @__PURE__ */ o(j, { userType: k, renderAs: "canvas" }),
79
- x === "bottom" && /* @__PURE__ */ c(d, { children: [
80
- s && /* @__PURE__ */ o(O, { $alignItems: "center", children: /* @__PURE__ */ o(
81
- _,
95
+ S && /* @__PURE__ */ e(ee, { userType: c, renderAs: "canvas" }),
96
+ z === "bottom" && /* @__PURE__ */ b(T, { children: [
97
+ w && /* @__PURE__ */ e(le, { $alignItems: "center", children: /* @__PURE__ */ e(
98
+ re,
82
99
  {
83
- worksheetName: Q,
84
- onClose: l,
85
- showGoToReview: !0
100
+ activeQuestionIndex: i,
101
+ lastUnlockedQuestionIndex: h,
102
+ onItemNumberClick: P,
103
+ questions: o,
104
+ responses: s,
105
+ worksheetName: W,
106
+ behavior: t,
107
+ userType: c,
108
+ onClose: Q,
109
+ onGoToReview: X,
110
+ summaryVisible: k
86
111
  }
87
112
  ) }),
88
- /* @__PURE__ */ o(
89
- D,
113
+ /* @__PURE__ */ e(
114
+ oe,
90
115
  {
91
116
  renderAs: "secondary",
92
117
  widthX: 13.25,
93
- label: `Question ${a + 1} of ${n.length}`,
118
+ label: `Question ${i + 1} of ${o.length}`,
94
119
  size: "small",
95
- Icon: s ? T : q,
120
+ Icon: w ? Y : Z,
96
121
  iconPosition: "right",
97
122
  justifyContent: "space-between",
98
- onClick: l
123
+ onClick: Q
99
124
  }
100
125
  )
101
126
  ] }),
102
- m && i && /* @__PURE__ */ o(
103
- G,
127
+ d && l && /* @__PURE__ */ e(
128
+ ie,
104
129
  {
105
- question: m,
106
- isQuestionAppended: $,
107
- response: t[i],
108
- onSubmit: p,
109
- getTimeSpentOnQuestion: W
130
+ learnosity: R,
131
+ question: d,
132
+ questions: o,
133
+ responses: s,
134
+ canSubmitWorksheet: g,
135
+ questionIndex: i,
136
+ isQuestionAppended: H,
137
+ isQuestionUnlocked: i <= h,
138
+ response: s[l],
139
+ behavior: t,
140
+ userType: c,
141
+ layout: f,
142
+ onResponseChange: G,
143
+ onTeacherValidation: F,
144
+ onHelp: N,
145
+ onSubmit: B,
146
+ setActiveQuestionId: m,
147
+ setBlocker: V,
148
+ setSummaryVisible: u,
149
+ setResponses: E,
150
+ getTimeSpentOnQuestion: O,
151
+ loggerRef: y,
152
+ onSkip: U,
153
+ actionBarRightElement: _
110
154
  }
111
155
  )
112
156
  ] });
113
157
  });
114
158
  export {
115
- se as default
159
+ Qe as default
116
160
  };
117
161
  //# sourceMappingURL=worksheet-action-bar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-action-bar.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.tsx"],"sourcesContent":["import { memo, useCallback, type FC } from 'react';\n\nimport CalculatorIcon from '../../../../assets/line-icons/icons/calculator';\nimport DownIcon from '../../../../assets/line-icons/icons/down';\nimport UpIcon from '../../../../assets/line-icons/icons/up';\nimport Toolbar from '../../../cue-canvas/toolbar/toolbar';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport { useWorksheetStore } from '../hooks/use-worksheet-store';\nimport ScribbleSwitch from '../worksheet-questions-controller/scribble-switch';\nimport WorksheetQuestionsController from '../worksheet-questions-controller/worksheet-questions-controller';\nimport WorksheetQuestionsSummary from '../worksheet-questions-summary/worksheet-questions-summary';\nimport * as Styled from '../worksheet-styled';\nimport WorksheetSummaryController from '../worksheet-summary-controller/worksheet-summary-controller';\nimport type { IWorksheetActionBarProps } from './worksheet-action-bar-types';\n\nconst WorksheetActionBar: FC<IWorksheetActionBarProps> = memo(function WorksheetActionBar(props) {\n const {\n behavior,\n layout,\n activeQuestionIndex,\n questions,\n userType,\n summaryVisible,\n toggleSummary,\n changeQuestion,\n calculatorVisible,\n showCalculator,\n worksheetName,\n onSubmit,\n canSubmitWorksheet,\n responses,\n appendedQuestionIds,\n scribblingEnabled,\n } = useWorksheetStore(state => ({\n behavior: state.behavior,\n layout: state.layout,\n activeQuestionIndex: state.activeQuestionIndex,\n questions: state.questions,\n userType: state.userType,\n summaryVisible: state.summaryVisible,\n toggleSummary: state.toggleSummary,\n changeQuestion: state.changeQuestion,\n calculatorVisible: state.calculatorVisible,\n showCalculator: state.showCalculator,\n worksheetName: state.worksheetName,\n onSubmit: state.onSubmit,\n canSubmitWorksheet: state.canSubmitWorksheet,\n responses: state.responses,\n appendedQuestionIds: state.appendedQuestionIds,\n scribblingEnabled: state.scribblingEnabled,\n }));\n const { getTimeSpentOnQuestion } = props;\n const { navigationBar } = layout;\n const activeQuestion = questions[activeQuestionIndex];\n const { response_id: activeQuestionId } = activeQuestion ?? {};\n const isAppended = activeQuestionId ? appendedQuestionIds.includes(activeQuestionId) : false;\n\n const handleBackFromSummary = useCallback(() => {\n const questionId = questions[questions.length - 1]?.response_id;\n\n if (questionId) {\n changeQuestion(questionId);\n }\n }, [changeQuestion, questions]);\n\n const handleSheetSubmitButtonClick = useCallback(() => {\n onSubmit?.(responses);\n }, [onSubmit, responses]);\n\n if (summaryVisible) {\n return (\n <WorksheetSummaryController\n onBack={handleBackFromSummary}\n onSubmit={handleSheetSubmitButtonClick}\n canSubmitWorksheet={!!canSubmitWorksheet}\n />\n );\n }\n\n return (\n <>\n <FlexView $flexDirection=\"row\" $flexGap={12}>\n <ScribbleSwitch />\n {behavior.canShowDesmosCalc && (\n <Styled.IconContainer\n $active={calculatorVisible}\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n onClick={showCalculator}\n >\n <CalculatorIcon />\n </Styled.IconContainer>\n )}\n </FlexView>\n {scribblingEnabled && <Toolbar userType={userType} renderAs=\"canvas\" />}\n {navigationBar === 'bottom' && (\n <>\n {summaryVisible && (\n <Styled.SummaryWrapper $alignItems=\"center\">\n <WorksheetQuestionsSummary\n worksheetName={worksheetName}\n onClose={toggleSummary}\n showGoToReview\n />\n </Styled.SummaryWrapper>\n )}\n <Button\n renderAs=\"secondary\"\n widthX={13.25}\n label={`Question ${activeQuestionIndex + 1} of ${questions.length}`}\n size=\"small\"\n Icon={summaryVisible ? DownIcon : UpIcon}\n iconPosition=\"right\"\n justifyContent=\"space-between\"\n onClick={toggleSummary}\n />\n </>\n )}\n {activeQuestion && activeQuestionId && (\n <WorksheetQuestionsController\n question={activeQuestion}\n isQuestionAppended={isAppended}\n response={responses[activeQuestionId]}\n onSubmit={handleSheetSubmitButtonClick}\n getTimeSpentOnQuestion={getTimeSpentOnQuestion}\n />\n )}\n </>\n );\n});\n\nexport default WorksheetActionBar;\n"],"names":["WorksheetActionBar","memo","props","behavior","layout","activeQuestionIndex","questions","userType","summaryVisible","toggleSummary","changeQuestion","calculatorVisible","showCalculator","worksheetName","onSubmit","canSubmitWorksheet","responses","appendedQuestionIds","scribblingEnabled","useWorksheetStore","state","getTimeSpentOnQuestion","navigationBar","activeQuestion","activeQuestionId","isAppended","handleBackFromSummary","useCallback","questionId","_a","handleSheetSubmitButtonClick","jsx","WorksheetSummaryController","jsxs","Fragment","FlexView","ScribbleSwitch","Styled.IconContainer","CalculatorIcon","Toolbar","Styled.SummaryWrapper","WorksheetQuestionsSummary","Button","DownIcon","UpIcon","WorksheetQuestionsController"],"mappings":"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"}
1
+ {"version":3,"file":"worksheet-action-bar.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.tsx"],"sourcesContent":["import { memo, useCallback, useState, type FC } from 'react';\n\nimport CalculatorIcon from '../../../../assets/line-icons/icons/calculator';\nimport DownIcon from '../../../../assets/line-icons/icons/down';\nimport UpIcon from '../../../../assets/line-icons/icons/up';\nimport Toolbar from '../../../cue-canvas/toolbar/toolbar';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport { scrollToQuestion } from '../worksheet-helpers';\nimport ScribbleSwitch from '../worksheet-questions-controller/scribble-switch';\nimport WorksheetQuestionsController from '../worksheet-questions-controller/worksheet-questions-controller';\nimport WorksheetQuestionsSummary from '../worksheet-questions-summary/worksheet-questions-summary';\nimport * as Styled from '../worksheet-styled';\nimport WorksheetSummaryController from '../worksheet-summary-controller/worksheet-summary-controller';\nimport type { IWorksheetActionBarProps } from './worksheet-action-bar-types';\n\nconst WorksheetActionBar: FC<IWorksheetActionBarProps> = memo(function WorksheetActionBar(props) {\n const {\n userType,\n layout,\n behavior,\n worksheetName,\n questions,\n responses,\n activeQuestionIndex,\n lastUnlockedQuestionIndex,\n appendedQuestionIds,\n learnosity,\n isScribblingEnabled,\n isSummaryVisible,\n setIsScribblingEnabled,\n setActiveQuestionId,\n setResponses,\n getTimeSpentOnQuestion,\n setBlocker,\n setSummaryVisible,\n showCalculator,\n onItemNumberClick,\n onTeacherValidation,\n onGoToReview,\n onResponseChange,\n onHelp,\n onSubmit,\n onCalculatorOpen,\n canSubmitWorksheet,\n loggerRef,\n onSkip,\n actionBarRightElement,\n } = props;\n const { navigationBar, questionsScrollable } = layout;\n const activeQuestion = questions[activeQuestionIndex];\n const { response_id: activeQuestionId } = activeQuestion ?? {};\n const [isSummaryOpened, setIsSummaryOpened] = useState(false);\n const isAppended = activeQuestionId ? appendedQuestionIds.includes(activeQuestionId) : false;\n\n const handleItemNumberClick = useCallback(\n (questionId: string) => {\n setIsSummaryOpened(false);\n onItemNumberClick(questionId);\n },\n [onItemNumberClick],\n );\n\n const handleOnGoToReview = useCallback(() => {\n setIsSummaryOpened(false);\n onGoToReview();\n }, [onGoToReview]);\n\n const handleSummaryButtonClick = useCallback(() => {\n setIsSummaryOpened(prev => !prev);\n }, []);\n\n const handleBackFromSummary = useCallback(() => {\n setSummaryVisible(false);\n\n const questionId = questions[questions.length - 1]?.response_id;\n\n if (questionId) {\n if (questionsScrollable) {\n requestAnimationFrame(() => scrollToQuestion(questionId));\n } else {\n setActiveQuestionId(questionId);\n }\n }\n }, [questions, questionsScrollable, setActiveQuestionId, setSummaryVisible]);\n\n const handleSheetSubmitButtonClick = useCallback(() => {\n onSubmit?.(responses);\n }, [onSubmit, responses]);\n\n if (isSummaryVisible) {\n return (\n <WorksheetSummaryController\n onBack={handleBackFromSummary}\n behavior={behavior}\n onSubmit={handleSheetSubmitButtonClick}\n canSubmitWorksheet={!!canSubmitWorksheet}\n />\n );\n }\n\n return (\n <>\n <FlexView $flexDirection=\"row\" $flexGap={12}>\n <ScribbleSwitch\n isScribblingEnabled={isScribblingEnabled}\n setIsScribblingEnabled={setIsScribblingEnabled}\n isCanvasEnabled={!!behavior.canvasEnabled}\n loggerRef={loggerRef}\n canToggleScribbling={behavior.canScribble}\n />\n {behavior.canShowDesmosCalc && (\n <Styled.IconContainer\n $active={showCalculator}\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n onClick={onCalculatorOpen}\n >\n <CalculatorIcon />\n </Styled.IconContainer>\n )}\n </FlexView>\n {isScribblingEnabled && <Toolbar userType={userType} renderAs=\"canvas\" />}\n {navigationBar === 'bottom' && (\n <>\n {isSummaryOpened && (\n <Styled.SummaryWrapper $alignItems=\"center\">\n <WorksheetQuestionsSummary\n activeQuestionIndex={activeQuestionIndex}\n lastUnlockedQuestionIndex={lastUnlockedQuestionIndex}\n onItemNumberClick={handleItemNumberClick}\n questions={questions}\n responses={responses}\n worksheetName={worksheetName}\n behavior={behavior}\n userType={userType}\n onClose={handleSummaryButtonClick}\n onGoToReview={handleOnGoToReview}\n summaryVisible={isSummaryVisible}\n />\n </Styled.SummaryWrapper>\n )}\n <Button\n renderAs=\"secondary\"\n widthX={13.25}\n label={`Question ${activeQuestionIndex + 1} of ${questions.length}`}\n size=\"small\"\n Icon={isSummaryOpened ? DownIcon : UpIcon}\n iconPosition=\"right\"\n justifyContent=\"space-between\"\n onClick={handleSummaryButtonClick}\n />\n </>\n )}\n {activeQuestion && activeQuestionId && (\n <WorksheetQuestionsController\n learnosity={learnosity}\n question={activeQuestion}\n questions={questions}\n responses={responses}\n canSubmitWorksheet={canSubmitWorksheet}\n questionIndex={activeQuestionIndex}\n isQuestionAppended={isAppended}\n isQuestionUnlocked={activeQuestionIndex <= lastUnlockedQuestionIndex}\n response={responses[activeQuestionId]}\n behavior={behavior}\n userType={userType}\n layout={layout}\n onResponseChange={onResponseChange}\n onTeacherValidation={onTeacherValidation}\n onHelp={onHelp}\n onSubmit={handleSheetSubmitButtonClick}\n setActiveQuestionId={setActiveQuestionId}\n setBlocker={setBlocker}\n setSummaryVisible={setSummaryVisible}\n setResponses={setResponses}\n getTimeSpentOnQuestion={getTimeSpentOnQuestion}\n loggerRef={loggerRef}\n onSkip={onSkip}\n actionBarRightElement={actionBarRightElement}\n />\n )}\n </>\n );\n});\n\nexport default WorksheetActionBar;\n"],"names":["WorksheetActionBar","memo","props","userType","layout","behavior","worksheetName","questions","responses","activeQuestionIndex","lastUnlockedQuestionIndex","appendedQuestionIds","learnosity","isScribblingEnabled","isSummaryVisible","setIsScribblingEnabled","setActiveQuestionId","setResponses","getTimeSpentOnQuestion","setBlocker","setSummaryVisible","showCalculator","onItemNumberClick","onTeacherValidation","onGoToReview","onResponseChange","onHelp","onSubmit","onCalculatorOpen","canSubmitWorksheet","loggerRef","onSkip","actionBarRightElement","navigationBar","questionsScrollable","activeQuestion","activeQuestionId","isSummaryOpened","setIsSummaryOpened","useState","isAppended","handleItemNumberClick","useCallback","questionId","handleOnGoToReview","handleSummaryButtonClick","prev","handleBackFromSummary","_a","scrollToQuestion","handleSheetSubmitButtonClick","jsx","WorksheetSummaryController","jsxs","Fragment","FlexView","ScribbleSwitch","Styled.IconContainer","CalculatorIcon","Toolbar","Styled.SummaryWrapper","WorksheetQuestionsSummary","Button","DownIcon","UpIcon","WorksheetQuestionsController"],"mappings":"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"}
@@ -1,49 +1,60 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { memo as d } from "react";
3
- import f from "../../../ui/layout/flex-view.js";
4
- import { useWorksheetStore as h } from "../hooks/use-worksheet-store.js";
5
- import { BlockerWrapper as I } from "../worksheet-styled.js";
6
- import O from "./worksheet-blocker-view.js";
7
- const H = d(function() {
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { memo as u, useCallback as x } from "react";
3
+ import f from "./blockers/exit-ticket-intervention.js";
4
+ import d from "./blockers/exit-ticket-review.js";
5
+ import w from "./blockers/exit-ticket-review-available.js";
6
+ import E from "./blockers/exit-ticket-student-submission.js";
7
+ import T from "./blockers/optional-items-assignment.js";
8
+ import v from "./blockers/optional-items-skip.js";
9
+ const B = u(function(m) {
8
10
  const {
9
- blocker: o,
10
- removeBlocker: i,
11
- questions: l,
12
- lastUnlockedQuestionIndex: m,
13
- minQuestionHeight: s,
14
- topOffset: r,
15
- maxQuestionWidth: a,
16
- studentName: c,
17
- onOptionalItemAssignment: u,
18
- onOptionalItemSkip: k,
19
- onTeacherValidation: p
20
- } = h((e) => ({
21
- blocker: e.blocker,
22
- removeBlocker: e.removeBlocker,
23
- questions: e.questions,
24
- lastUnlockedQuestionIndex: e.lastUnlockedQuestionIndex,
25
- minQuestionHeight: e.layout.minQuestionHeight,
26
- topOffset: e.layout.topOffset,
27
- maxQuestionWidth: e.maxQuestionWidth,
28
- studentName: e.studentName,
29
- onOptionalItemAssignment: e.onOptionalItemAssignment,
30
- onOptionalItemSkip: e.onOptionalItemSkip,
31
- onTeacherValidation: e.onTeacherValidation
32
- })), n = l[m];
33
- return !o || !n ? null : /* @__PURE__ */ t(I, { $minHeight: s, $topOffset: r, children: /* @__PURE__ */ t(f, { $width: a, $justifyContent: "center", $alignItems: "center", children: /* @__PURE__ */ t(
34
- O,
35
- {
36
- blocker: o,
37
- lastUnlockedQuestion: n,
38
- studentName: c,
39
- onBlockerClose: i,
40
- onOptionalItemAssignment: u,
41
- onOptionalItemSkip: k,
42
- onTeacherValidation: p
43
- }
44
- ) }) });
11
+ studentName: t,
12
+ lastUnlockedQuestion: c,
13
+ blocker: a,
14
+ onBlockerClose: i,
15
+ onOptionalItemAssignment: l,
16
+ onOptionalItemSkip: n,
17
+ onTeacherValidation: o
18
+ } = m, { item_type: r, response_id: s } = c, k = x(
19
+ (p) => {
20
+ o == null || o(s, p);
21
+ },
22
+ [o, s]
23
+ );
24
+ switch (a) {
25
+ case "exit-ticket-teacher-intervention":
26
+ return /* @__PURE__ */ e(f, { studentName: t, onViewExitTicket: i });
27
+ case "exit-ticket-student-submission":
28
+ return /* @__PURE__ */ e(E, { onViewExitTicket: i });
29
+ case "exit-ticket-review-available":
30
+ return /* @__PURE__ */ e(w, { studentName: t, onViewExitTicket: i });
31
+ case "exit-ticket-review":
32
+ return /* @__PURE__ */ e(d, { studentName: t, onViewExitValidate: k });
33
+ case "optional-items-assignment":
34
+ return /* @__PURE__ */ e(
35
+ T,
36
+ {
37
+ studentName: t,
38
+ itemType: r,
39
+ onAssign: l,
40
+ onSkip: n
41
+ }
42
+ );
43
+ case "optional-items-skip":
44
+ return /* @__PURE__ */ e(
45
+ v,
46
+ {
47
+ studentName: t,
48
+ itemType: r,
49
+ onSkip: n,
50
+ onCancel: i
51
+ }
52
+ );
53
+ default:
54
+ return null;
55
+ }
45
56
  });
46
57
  export {
47
- H as default
58
+ B as default
48
59
  };
49
60
  //# sourceMappingURL=worksheet-blocker.js.map