@cuemath/leap 2.9.4-as5 → 2.9.4-link.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/dist/assets/illustrations/illustrations.js +0 -9
  2. package/dist/assets/illustrations/illustrations.js.map +1 -1
  3. package/dist/assets/line-icons/icons/bin2.js +8 -7
  4. package/dist/assets/line-icons/icons/bin2.js.map +1 -1
  5. package/dist/assets/line-icons/icons/chevron-left.js.map +1 -1
  6. package/dist/assets/lottie/lottie.js +1 -9
  7. package/dist/assets/lottie/lottie.js.map +1 -1
  8. package/dist/constants/api.js +2 -3
  9. package/dist/constants/api.js.map +1 -1
  10. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +33 -99
  11. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
  12. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +49 -92
  13. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  14. package/dist/features/chapters/chapters-list/chapters-list-styled.js +5 -5
  15. package/dist/features/chapters/chapters-list/chapters-list-styled.js.map +1 -1
  16. package/dist/features/chapters/chapters-list/chapters-list.js +70 -64
  17. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  18. package/dist/features/communication/pub-sub/constants.js +2 -5
  19. package/dist/features/communication/pub-sub/constants.js.map +1 -1
  20. package/dist/features/journey/comps/coachmark/coachmark-styled.js +5 -12
  21. package/dist/features/journey/comps/coachmark/coachmark-styled.js.map +1 -1
  22. package/dist/features/journey/comps/coachmark/coachmark.js +24 -24
  23. package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
  24. package/dist/features/journey/journey-id/journey-id-student.js +2 -3
  25. package/dist/features/journey/journey-id/journey-id-student.js.map +1 -1
  26. package/dist/features/journey/use-journey/journey-context-provider.js +28 -36
  27. package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
  28. package/dist/features/journey/use-journey/journey-styled.js +5 -10
  29. package/dist/features/journey/use-journey/journey-styled.js.map +1 -1
  30. package/dist/features/milestone/create/api/goal-submit.js +1 -1
  31. package/dist/features/milestone/create/api/goal-submit.js.map +1 -1
  32. package/dist/features/milestone/create/comps/chapter-item/chapter-item.js +49 -42
  33. package/dist/features/milestone/create/comps/chapter-item/chapter-item.js.map +1 -1
  34. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step-styled.js +4 -12
  35. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step-styled.js.map +1 -1
  36. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js +105 -128
  37. package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js.map +1 -1
  38. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js +92 -0
  39. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map +1 -0
  40. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js +25 -0
  41. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js.map +1 -0
  42. package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js +20 -14
  43. package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js.map +1 -1
  44. package/dist/features/milestone/create/comps/sheets-list/sheets-list.js +50 -26
  45. package/dist/features/milestone/create/comps/sheets-list/sheets-list.js.map +1 -1
  46. package/dist/features/milestone/create/milestone-create.js +43 -49
  47. package/dist/features/milestone/create/milestone-create.js.map +1 -1
  48. package/dist/features/milestone/create/utils/index.js +38 -33
  49. package/dist/features/milestone/create/utils/index.js.map +1 -1
  50. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/get-milestone.js +1 -1
  51. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/get-milestone.js.map +1 -1
  52. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/patch-goal-plan.js +1 -1
  53. package/dist/features/milestone/edit/comps/edit-milestone-modal/api/patch-goal-plan.js.map +1 -1
  54. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +53 -51
  55. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  56. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js +40 -42
  57. package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js.map +1 -1
  58. package/dist/features/milestone/edit/goal-edit-container.js +62 -64
  59. package/dist/features/milestone/edit/goal-edit-container.js.map +1 -1
  60. package/dist/features/milestone/edit/goal-edit-helpers.js +53 -50
  61. package/dist/features/milestone/edit/goal-edit-helpers.js.map +1 -1
  62. package/dist/features/milestone/edit/milestone-edit-container.js +52 -54
  63. package/dist/features/milestone/edit/milestone-edit-container.js.map +1 -1
  64. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js +1 -1
  65. package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
  66. package/dist/features/milestone/milestone-list-container/api/get-milestones.js +17 -9
  67. package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
  68. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js +1 -1
  69. package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
  70. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +104 -136
  71. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  72. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js +13 -0
  73. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js.map +1 -0
  74. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js +38 -0
  75. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js.map +1 -0
  76. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js +123 -107
  77. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  78. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +175 -155
  79. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  80. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js +10 -24
  81. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
  82. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +86 -80
  83. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  84. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js +22 -10
  85. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
  86. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js +53 -0
  87. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js.map +1 -0
  88. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js +37 -70
  89. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  90. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +176 -114
  91. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  92. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js +25 -0
  93. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js.map +1 -0
  94. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js +16 -29
  95. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
  96. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js +23 -19
  97. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
  98. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js +35 -23
  99. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
  100. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +100 -96
  101. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  102. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js +1 -1
  103. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
  104. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +112 -114
  105. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  106. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js +18 -16
  107. package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js.map +1 -1
  108. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +71 -0
  109. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +1 -0
  110. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +31 -0
  111. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +1 -0
  112. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +34 -6
  113. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -1
  114. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +79 -0
  115. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -0
  116. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +18 -0
  117. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +1 -0
  118. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js +51 -0
  119. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list.js.map +1 -0
  120. package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js +11 -0
  121. package/dist/features/milestone/milestone-tests/tests-list/tests-list-styled.js.map +1 -0
  122. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +135 -0
  123. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -0
  124. package/dist/features/sheets/resources-list/resource-item/styled.js +1 -1
  125. package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -1
  126. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +3 -4
  127. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
  128. package/dist/features/trial-session/comps/offering-information/offering-information.js +21 -21
  129. package/dist/features/trial-session/comps/offering-information/offering-information.js.map +1 -1
  130. package/dist/features/trial-session/comps/pricing/pricing-cards.js +45 -45
  131. package/dist/features/trial-session/comps/pricing/pricing-cards.js.map +1 -1
  132. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +29 -30
  133. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  134. package/dist/features/ui/constants/z-index.js +1 -1
  135. package/dist/features/ui/constants/z-index.js.map +1 -1
  136. package/dist/features/ui/context-menu/context-menu-styled.js +14 -28
  137. package/dist/features/ui/context-menu/context-menu-styled.js.map +1 -1
  138. package/dist/features/ui/context-menu/context-menu.js +15 -30
  139. package/dist/features/ui/context-menu/context-menu.js.map +1 -1
  140. package/dist/features/ui/theme/button.js +107 -22
  141. package/dist/features/ui/theme/button.js.map +1 -1
  142. package/dist/index.d.ts +34 -314
  143. package/dist/index.js +470 -499
  144. package/dist/index.js.map +1 -1
  145. package/package.json +2 -3
  146. package/dist/assets/line-icons/icons/alarm.js +0 -41
  147. package/dist/assets/line-icons/icons/alarm.js.map +0 -1
  148. package/dist/assets/line-icons/icons/dart.js +0 -23
  149. package/dist/assets/line-icons/icons/dart.js.map +0 -1
  150. package/dist/assets/line-icons/icons/exclamation.js +0 -26
  151. package/dist/assets/line-icons/icons/exclamation.js.map +0 -1
  152. package/dist/assets/line-icons/icons/home2.js +0 -25
  153. package/dist/assets/line-icons/icons/home2.js.map +0 -1
  154. package/dist/assets/line-icons/icons/important.js +0 -23
  155. package/dist/assets/line-icons/icons/important.js.map +0 -1
  156. package/dist/assets/line-icons/icons/puzzle.js +0 -25
  157. package/dist/assets/line-icons/icons/puzzle.js.map +0 -1
  158. package/dist/assets/line-icons/icons/recap.js +0 -32
  159. package/dist/assets/line-icons/icons/recap.js.map +0 -1
  160. package/dist/assets/line-icons/icons/skip-colored.js +0 -43
  161. package/dist/assets/line-icons/icons/skip-colored.js.map +0 -1
  162. package/dist/assets/line-icons/icons/status.js +0 -41
  163. package/dist/assets/line-icons/icons/status.js.map +0 -1
  164. package/dist/assets/line-icons/icons/testtube.js +0 -33
  165. package/dist/assets/line-icons/icons/testtube.js.map +0 -1
  166. package/dist/features/chapters-v2/api/chapter.js +0 -10
  167. package/dist/features/chapters-v2/api/chapter.js.map +0 -1
  168. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +0 -112
  169. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +0 -1
  170. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js +0 -26
  171. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js.map +0 -1
  172. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +0 -73
  173. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +0 -1
  174. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js +0 -90
  175. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +0 -1
  176. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js +0 -97
  177. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +0 -1
  178. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js +0 -52
  179. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js.map +0 -1
  180. package/dist/features/chapters-v2/chapter-details/chapter-details.js +0 -103
  181. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +0 -1
  182. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js +0 -13
  183. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js.map +0 -1
  184. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +0 -153
  185. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +0 -1
  186. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +0 -16
  187. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +0 -1
  188. package/dist/features/chapters-v2/comps/node-card/node-card.js +0 -12
  189. package/dist/features/chapters-v2/comps/node-card/node-card.js.map +0 -1
  190. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js +0 -32
  191. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js.map +0 -1
  192. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js +0 -31
  193. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +0 -1
  194. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +0 -171
  195. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +0 -1
  196. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +0 -192
  197. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +0 -1
  198. package/dist/features/chapters-v2/comps/tag/tag-styled.js +0 -13
  199. package/dist/features/chapters-v2/comps/tag/tag-styled.js.map +0 -1
  200. package/dist/features/chapters-v2/comps/tag/tag.js +0 -28
  201. package/dist/features/chapters-v2/comps/tag/tag.js.map +0 -1
  202. package/dist/features/chapters-v2/constants/block-constants.js +0 -20
  203. package/dist/features/chapters-v2/constants/block-constants.js.map +0 -1
  204. package/dist/features/chapters-v2/constants/node-constants.js +0 -14
  205. package/dist/features/chapters-v2/constants/node-constants.js.map +0 -1
  206. package/dist/features/chapters-v2/utils/index.js +0 -41
  207. package/dist/features/chapters-v2/utils/index.js.map +0 -1
  208. package/dist/features/chapters-v2/utils/node-card-utils.js +0 -144
  209. package/dist/features/chapters-v2/utils/node-card-utils.js.map +0 -1
  210. package/dist/features/homework/card-menu-options.js +0 -38
  211. package/dist/features/homework/card-menu-options.js.map +0 -1
  212. package/dist/features/homework/card-title.js +0 -15
  213. package/dist/features/homework/card-title.js.map +0 -1
  214. package/dist/features/homework/homework-card-view.js +0 -131
  215. package/dist/features/homework/homework-card-view.js.map +0 -1
  216. package/dist/features/homework/homework-card.js +0 -205
  217. package/dist/features/homework/homework-card.js.map +0 -1
  218. package/dist/features/homework/hw-card-list/api/get-homeworks.js +0 -10
  219. package/dist/features/homework/hw-card-list/api/get-homeworks.js.map +0 -1
  220. package/dist/features/homework/hw-card-list/hw-card-list-styled.js +0 -71
  221. package/dist/features/homework/hw-card-list/hw-card-list-styled.js.map +0 -1
  222. package/dist/features/homework/hw-card-list/hw-card-list.js +0 -208
  223. package/dist/features/homework/hw-card-list/hw-card-list.js.map +0 -1
  224. package/dist/features/homework/node-progress.js +0 -29
  225. package/dist/features/homework/node-progress.js.map +0 -1
  226. package/dist/features/homework/styles.js +0 -130
  227. package/dist/features/homework/styles.js.map +0 -1
  228. package/dist/features/journey/hooks/use-home-page-journey.js +0 -189
  229. package/dist/features/journey/hooks/use-home-page-journey.js.map +0 -1
  230. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js +0 -165
  231. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +0 -1
  232. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js +0 -25
  233. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view-styled.js.map +0 -1
  234. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js +0 -85
  235. package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +0 -1
  236. package/dist/features/recent-chapters/api/get-recent-chapters.js +0 -9
  237. package/dist/features/recent-chapters/api/get-recent-chapters.js.map +0 -1
  238. package/dist/features/recent-chapters/recent-chapters-styled.js +0 -16
  239. package/dist/features/recent-chapters/recent-chapters-styled.js.map +0 -1
  240. package/dist/features/recent-chapters/recent-chapters.js +0 -39
  241. package/dist/features/recent-chapters/recent-chapters.js.map +0 -1
  242. package/dist/features/sheet-v2/resource-list/resource-list.js +0 -39
  243. package/dist/features/sheet-v2/resource-list/resource-list.js.map +0 -1
  244. package/dist/node_modules/date-fns/differenceInDays.js +0 -17
  245. package/dist/node_modules/date-fns/differenceInDays.js.map +0 -1
  246. package/dist/static/chapter-header-bg-2.c8d96894.svg +0 -1
  247. package/dist/static/competitive-arena.b9c40801.json +0 -1
  248. package/dist/static/learn.71b13323.json +0 -1
  249. package/dist/static/node-custom-test-bg.d3b757be.svg +0 -1
  250. package/dist/static/node-learn-bg.b61f815c.svg +0 -1
  251. package/dist/static/node-practice-bg.16cbaf2a.svg +0 -1
  252. package/dist/static/node-project-bg.e6a33e28.svg +0 -1
  253. package/dist/static/node-puzzle-bg.3422135c.svg +0 -1
  254. package/dist/static/node-recap-bg.546154e4.svg +0 -1
  255. package/dist/static/node-test-prep-bg.42c0b9c4.svg +0 -1
  256. package/dist/static/node-video-bg.3df3f73a.svg +0 -1
  257. package/dist/static/practice.158dd488.json +0 -1
  258. package/dist/static/project.eb665827.json +0 -1
  259. package/dist/static/puzzle.b298c7e4.json +0 -1
  260. package/dist/static/recap.0dd2c1e2.json +0 -1
  261. package/dist/static/test.803d6036.json +0 -1
  262. package/dist/static/video.b41451e2.json +0 -1
@@ -1,192 +0,0 @@
1
- import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
- import { memo as Y, useState as q, useRef as J, useCallback as u } from "react";
3
- import Q from "../../../../../assets/line-icons/icons/check2.js";
4
- import V from "../../../../../assets/line-icons/icons/eye2.js";
5
- import Z from "../../../../../assets/line-icons/icons/home2.js";
6
- import O from "../../../../../assets/line-icons/icons/more-vertical.js";
7
- import D from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
8
- import ee from "../../../../ui/hooks/use-context-menu-click-handler.js";
9
- import te from "../../../../ui/layout/flex-view.js";
10
- import re from "../../../../ui/lottie-animation/lottie-animation.js";
11
- import oe from "../../../../ui/text/text.js";
12
- import { BLOCK_TYPE as ie } from "../../../constants/block-constants.js";
13
- import { NODE_CARD_STATES as $, TEACHER_MENU_LABELS as ne } from "../../../constants/node-constants.js";
14
- import { getNodeTypeBasedBgImage as ce } from "../../../utils/index.js";
15
- import { getNodeCardBasedIcon as ae } from "../../../utils/node-card-utils.js";
16
- import se from "../border-path-animation.js";
17
- import { NodeCardContainer as le, NodeCardInfoWrapper as de, IconWrapper as me, StyledImportantIcon as pe, NodeKebabMenuWrapper as T, NodeCardContentWrapper as he, NodeCardTitle as fe, NodeMenuOptionsWrapper as ue } from "../node-card-styled.js";
18
- import $e from "../node-card-tags.js";
19
- import Ce from "../node-menu-options/node-menu-options.js";
20
- const { ASSIGN_AS_HW: _e, REVIEW: Ie, VIEW: ge, MARK_AS_DONE: be } = ne, Xe = Y(
21
- ({
22
- nodeData: t,
23
- imageHue: A,
24
- blockType: L,
25
- isSkipped: C,
26
- onNodeAttemptLocationChange: o,
27
- onNodeMarkAsDone: i,
28
- onNodeView: n,
29
- onNodeReview: c
30
- }) => {
31
- const [w, _] = q(!1), l = J(null), { menuVisible: x, onMenuClick: I } = ee(l), {
32
- accuracy: y,
33
- attempt_location: W,
34
- node_type: d,
35
- card_header: B,
36
- title: M,
37
- state: a,
38
- is_optional: g,
39
- sheet_statement: b,
40
- permissions: H,
41
- user_attempt_id: m
42
- } = t, {
43
- can_change_attempt_location: G,
44
- can_mark_familiar: K,
45
- can_review: p
46
- } = H, h = L === ie.GOAL, s = a === $.LOCKED, R = a === $.NOT_STARTED, j = a === $.IN_PROGRESS, E = W === "INCLASS", P = !b || !h, S = !g && (j || R), X = ce(d), { icon: v, lottie: F } = ae(d), f = u(
47
- (k) => {
48
- switch (k) {
49
- case "node-card-view":
50
- p && m ? c == null || c(t) : n == null || n(t);
51
- return;
52
- case "node-card-assign-as-hw":
53
- o == null || o(t);
54
- return;
55
- case "node-card-mark-as-done":
56
- i == null || i(t);
57
- return;
58
- default:
59
- throw new Error(`No callback function for ${k}`);
60
- }
61
- },
62
- [
63
- p,
64
- t,
65
- o,
66
- i,
67
- c,
68
- n,
69
- m
70
- ]
71
- ), z = u(() => {
72
- _(!0);
73
- }, []), N = u(() => {
74
- _(!1);
75
- }, []), U = [
76
- {
77
- id: "node-card-view",
78
- label: p && m ? Ie : ge,
79
- icon: V,
80
- disabled: !1,
81
- onClick: f
82
- },
83
- {
84
- id: "node-card-assign-as-hw",
85
- label: _e,
86
- icon: Z,
87
- disabled: !G || !E,
88
- onClick: f
89
- },
90
- {
91
- id: "node-card-mark-as-done",
92
- label: be,
93
- icon: Q,
94
- disabled: !K,
95
- onClick: f
96
- }
97
- ];
98
- return /* @__PURE__ */ r(
99
- le,
100
- {
101
- $showOutline: !S,
102
- $isSheetLocked: s,
103
- $background: `${A}_2`,
104
- $disabled: !!C,
105
- onMouseEnter: z,
106
- onMouseLeave: N,
107
- children: [
108
- /* @__PURE__ */ r(
109
- D,
110
- {
111
- renderAs: "primary",
112
- tooltipItem: b,
113
- position: "bottom",
114
- zIndex: 5,
115
- hidden: P,
116
- parentWidth: "100%",
117
- widthX: 11.25,
118
- children: [
119
- /* @__PURE__ */ r(
120
- de,
121
- {
122
- $flexDirection: "row",
123
- $alignItems: "center",
124
- $width: "100%",
125
- $heightX: 3.5,
126
- $bgImage: X,
127
- $gutterX: 0.78125,
128
- $flexGap: 8.5,
129
- children: [
130
- /* @__PURE__ */ r(
131
- me,
132
- {
133
- $width: 31,
134
- $height: 31,
135
- $background: "WHITE_1",
136
- $position: "relative",
137
- $alignItems: "center",
138
- $justifyContent: "center",
139
- $opacity: s ? 0.5 : 1,
140
- children: [
141
- w ? /* @__PURE__ */ e(re, { src: F }) : /* @__PURE__ */ e(v, { width: 20, height: 20 }),
142
- !g && /* @__PURE__ */ e(pe, {})
143
- ]
144
- }
145
- ),
146
- /* @__PURE__ */ r(oe, { $renderAs: "ac4-black", $color: "BLACK", $opacity: s ? 0.5 : 1, children: [
147
- B,
148
- " ",
149
- E && ". CW"
150
- ] }),
151
- /* @__PURE__ */ e(te, { className: "context-menu", children: h && /* @__PURE__ */ e(T, { ref: l, onClick: I, children: /* @__PURE__ */ e(O, { width: 16, height: 16 }) }) }),
152
- S && !C && /* @__PURE__ */ e(se, {})
153
- ]
154
- }
155
- ),
156
- /* @__PURE__ */ e($e, { nodeType: d, state: a, accuracy: y }),
157
- !h && /* @__PURE__ */ r(
158
- he,
159
- {
160
- $flexDirection: "row",
161
- $alignItems: "center",
162
- $background: "WHITE_1",
163
- $flexGap: 8,
164
- $heightX: 4,
165
- $justifyContent: "space-between",
166
- children: [
167
- /* @__PURE__ */ e(
168
- fe,
169
- {
170
- $renderAs: "ab3",
171
- $color: "BLACK_1",
172
- $opacity: s ? 0.5 : 1,
173
- children: M
174
- }
175
- ),
176
- /* @__PURE__ */ e(T, { ref: l, onClick: I, children: /* @__PURE__ */ e(O, { width: 16, height: 16 }) })
177
- ]
178
- }
179
- )
180
- ]
181
- }
182
- ),
183
- /* @__PURE__ */ e(ue, { $visible: x, children: /* @__PURE__ */ e(Ce, { options: U }) })
184
- ]
185
- }
186
- );
187
- }
188
- );
189
- export {
190
- Xe as default
191
- };
192
- //# sourceMappingURL=teacher-actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"teacher-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport Home2Icon from '../../../../../assets/line-icons/icons/home2';\nimport MoreVerticalIcon from '../../../../../assets/line-icons/icons/more-vertical';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport useContextMenuClickHandler from '../../../../ui/hooks/use-context-menu-click-handler';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES, TEACHER_MENU_LABELS } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport BorderPathAnimation from '../border-path-animation';\nimport * as Styled from '../node-card-styled';\nimport NodeCardTags from '../node-card-tags';\nimport NodeMenuOptions from '../node-menu-options/node-menu-options';\n\nconst { ASSIGN_AS_HW, REVIEW, VIEW, MARK_AS_DONE } = TEACHER_MENU_LABELS;\n\nconst TeacherActions: FC<Omit<INodeCardProps, 'userType'>> = memo(\n ({\n nodeData,\n imageHue,\n blockType,\n isSkipped,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeView,\n onNodeReview,\n }) => {\n const [renderLottie, setRenderLottie] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const { menuVisible, onMenuClick } = useContextMenuClickHandler(containerRef);\n\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n user_attempt_id: userAttemptId,\n } = nodeData;\n\n const {\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_review: canReview,\n } = permissions;\n\n const isGoalBlock = blockType === BLOCK_TYPE.GOAL;\n const sheetLocked = state === NODE_CARD_STATES.LOCKED;\n const sheetNotStarted = state === NODE_CARD_STATES.NOT_STARTED;\n const sheetInProgress = state === NODE_CARD_STATES.IN_PROGRESS;\n const inClassSheet = attemptLocation === 'INCLASS';\n const tooltipHidden = !sheetStatement || !isGoalBlock;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const { icon: NodeCardIcon, lottie: nodeCardLottie } = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-view':\n if (canReview && userAttemptId) {\n onNodeReview?.(nodeData);\n } else {\n onNodeView?.(nodeData);\n }\n\n return;\n\n case 'node-card-assign-as-hw':\n onNodeAttemptLocationChange?.(nodeData);\n\n return;\n\n case 'node-card-mark-as-done':\n onNodeMarkAsDone?.(nodeData);\n\n return;\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [\n canReview,\n nodeData,\n onNodeAttemptLocationChange,\n onNodeMarkAsDone,\n onNodeReview,\n onNodeView,\n userAttemptId,\n ],\n );\n\n const handleOnMouseEnter = useCallback(() => {\n setRenderLottie(true);\n }, []);\n\n const handleOnMouseLeave = useCallback(() => {\n setRenderLottie(false);\n }, []);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-view',\n label: canReview && userAttemptId ? REVIEW : VIEW,\n icon: Eye2Icon,\n disabled: false,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-assign-as-hw',\n label: ASSIGN_AS_HW,\n icon: Home2Icon,\n disabled: !canChangeAttemptLocation || !inClassSheet,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-mark-as-done',\n label: MARK_AS_DONE,\n icon: Check2Icon,\n disabled: !canMarkFamiliar,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $isSheetLocked={sheetLocked}\n $background={`${imageHue}_2`}\n $disabled={Boolean(isSkipped)}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleOnMouseLeave}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={tooltipHidden}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $width=\"100%\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {renderLottie ? (\n <LottieAnimation src={nodeCardLottie} />\n ) : (\n <NodeCardIcon width={20} height={20} />\n )}\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\" $opacity={sheetLocked ? 0.5 : 1}>\n {cardHeader} {inClassSheet && `. CW`}\n </Text>\n\n <FlexView className=\"context-menu\">\n {isGoalBlock && (\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n )}\n </FlexView>\n\n {showCardAnimation && !isSkipped && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags nodeType={nodeType} state={state} accuracy={accuracy} />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $background=\"WHITE_1\"\n $flexGap={8}\n $heightX={4}\n $justifyContent=\"space-between\"\n >\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n\n <Styled.NodeKebabMenuWrapper ref={containerRef} onClick={onMenuClick}>\n <MoreVerticalIcon width={16} height={16} />\n </Styled.NodeKebabMenuWrapper>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n\n <Styled.NodeMenuOptionsWrapper $visible={menuVisible}>\n <NodeMenuOptions options={menuOptions} />\n </Styled.NodeMenuOptionsWrapper>\n </Styled.NodeCardContainer>\n );\n },\n);\n\nexport default TeacherActions;\n"],"names":["ASSIGN_AS_HW","REVIEW","VIEW","MARK_AS_DONE","TEACHER_MENU_LABELS","TeacherActions","memo","nodeData","imageHue","blockType","isSkipped","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeView","onNodeReview","renderLottie","setRenderLottie","useState","containerRef","useRef","menuVisible","onMenuClick","useContextMenuClickHandler","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","userAttemptId","canChangeAttemptLocation","canMarkFamiliar","canReview","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","showCardAnimation","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","nodeCardLottie","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnMouseEnter","handleOnMouseLeave","menuOptions","Eye2Icon","Home2Icon","Check2Icon","jsxs","Styled.NodeCardContainer","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","jsx","LottieAnimation","Styled.StyledImportantIcon","Text","FlexView","Styled.NodeKebabMenuWrapper","MoreVerticalIcon","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","Styled.NodeMenuOptionsWrapper","NodeMenuOptions"],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import e from "styled-components";
2
- import i from "../../../ui/layout/flex-view.js";
3
- const p = e(i)(({ $onlyIcon: t, theme: o }) => `
4
- ${!t && "padding-left: 2px;"}
5
-
6
- max-height: 20px;
7
- height: fit-content;
8
- outline: 1px solid ${o.colors.BLACK_1};
9
- `);
10
- export {
11
- p as TagContainer
12
- };
13
- //# sourceMappingURL=tag-styled.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tag-styled.js","sources":["../../../../../src/features/chapters-v2/comps/tag/tag-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\n\ninterface ITagContainer {\n $onlyIcon?: boolean;\n}\n\nconst TagContainer = styled(FlexView)<ITagContainer>(({ $onlyIcon, theme }) => {\n return `\n ${!$onlyIcon && 'padding-left: 2px;'}\n\n max-height: 20px;\n height: fit-content;\n outline: 1px solid ${theme.colors.BLACK_1};\n `;\n});\n\nexport { TagContainer };\n"],"names":["TagContainer","styled","FlexView","$onlyIcon","theme"],"mappings":";;AAQM,MAAAA,IAAeC,EAAOC,CAAQ,EAAiB,CAAC,EAAE,WAAAC,GAAW,OAAAC,QAC1D;AAAA,MACH,CAACD,KAAa,oBAAoB;AAAA;AAAA;AAAA;AAAA,yBAIfC,EAAM,OAAO,OAAO;AAAA,GAE5C;"}
@@ -1,28 +0,0 @@
1
- import { jsxs as n, jsx as o } from "react/jsx-runtime";
2
- import { memo as i } from "react";
3
- import s from "../../../ui/text/text.js";
4
- import { TagContainer as c } from "./tag-styled.js";
5
- const f = i(({ label: r, Icon: e }) => {
6
- const t = !r;
7
- return /* @__PURE__ */ n(
8
- c,
9
- {
10
- $flexDirection: "row",
11
- $alignItems: "center",
12
- $justifyContent: "center",
13
- $borderRadius: 50,
14
- $gap: t ? 0 : 6,
15
- $gutter: t ? 0 : 6,
16
- $background: "WHITE_1",
17
- $onlyIcon: t,
18
- children: [
19
- e ? /* @__PURE__ */ o(e, { width: 20, height: 20 }) : void 0,
20
- r && /* @__PURE__ */ o(s, { $renderAs: "ac4-black", children: r })
21
- ]
22
- }
23
- );
24
- });
25
- export {
26
- f as default
27
- };
28
- //# sourceMappingURL=tag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tag.js","sources":["../../../../../src/features/chapters-v2/comps/tag/tag.tsx"],"sourcesContent":["import type { FC } from 'react';\n\nimport React, { memo } from 'react';\n\nimport Text from '../../../ui/text/text';\nimport * as Styled from './tag-styled';\n\ninterface ITagProps {\n label?: string;\n Icon?: FC<React.SVGProps<SVGSVGElement>>;\n}\n\nconst Tag: FC<ITagProps> = memo(({ label, Icon }) => {\n const isOnlyIconPresent = !label;\n\n return (\n <Styled.TagContainer\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadius={50}\n $gap={isOnlyIconPresent ? 0 : 6}\n $gutter={isOnlyIconPresent ? 0 : 6}\n $background=\"WHITE_1\"\n $onlyIcon={isOnlyIconPresent}\n >\n {Icon ? <Icon width={20} height={20} /> : undefined}\n\n {label && <Text $renderAs=\"ac4-black\">{label}</Text>}\n </Styled.TagContainer>\n );\n});\n\nexport default Tag;\n"],"names":["Tag","memo","label","Icon","isOnlyIconPresent","jsxs","Styled.TagContainer","jsx","Text"],"mappings":";;;;AAYA,MAAMA,IAAqBC,EAAK,CAAC,EAAE,OAAAC,GAAO,MAAAC,QAAW;AACnD,QAAMC,IAAoB,CAACF;AAGzB,SAAA,gBAAAG;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,eAAe;AAAA,MACf,MAAMF,IAAoB,IAAI;AAAA,MAC9B,SAASA,IAAoB,IAAI;AAAA,MACjC,aAAY;AAAA,MACZ,WAAWA;AAAA,MAEV,UAAA;AAAA,QAAAD,sBAAQA,GAAK,EAAA,OAAO,IAAI,QAAQ,IAAI,IAAK;AAAA,QAEzCD,KAAS,gBAAAK,EAACC,GAAK,EAAA,WAAU,aAAa,UAAMN,GAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGnD,CAAC;"}
@@ -1,20 +0,0 @@
1
- var A = /* @__PURE__ */ ((S) => (S.DEFAULT = "DEFAULT", S.PREREQ = "PREREQ", S.RECAP = "RECAP", S.GOAL = "GOAL", S.TESTS = "TESTS", S.PLAYLIST = "PLAYLIST", S.SOLUTIONS = "SOLUTIONS", S.NOTES = "NOTES", S.FLASHCARDS = "FLASHCARDS", S.SUBJECTIVES = "SUBJECTIVES", S.PUZZLE_CARDS = "PUZZLE_CARDS", S.SAT_MOCK_TEST = "SAT_MOCK_TEST", S))(A || {});
2
- const T = {
3
- DEFAULT: "Default",
4
- PREREQ: "Prerequisite",
5
- RECAP: "Recap",
6
- GOAL: "Lesson",
7
- TESTS: "Tests",
8
- PLAYLIST: "Videos",
9
- SOLUTIONS: "Solutions",
10
- NOTES: "Notes",
11
- FLASHCARDS: "Flashcards",
12
- SUBJECTIVES: "Subjective Questions",
13
- PUZZLE_CARDS: "Puzzles",
14
- SAT_MOCK_TEST: "SAT Mock Test"
15
- };
16
- export {
17
- T as BLOCK_NAME,
18
- A as BLOCK_TYPE
19
- };
20
- //# sourceMappingURL=block-constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"block-constants.js","sources":["../../../../src/features/chapters-v2/constants/block-constants.ts"],"sourcesContent":["export enum BLOCK_TYPE {\n DEFAULT = 'DEFAULT',\n PREREQ = 'PREREQ',\n RECAP = 'RECAP',\n GOAL = 'GOAL',\n TESTS = 'TESTS',\n PLAYLIST = 'PLAYLIST',\n SOLUTIONS = 'SOLUTIONS',\n NOTES = 'NOTES',\n FLASHCARDS = 'FLASHCARDS',\n SUBJECTIVES = 'SUBJECTIVES',\n PUZZLE_CARDS = 'PUZZLE_CARDS',\n SAT_MOCK_TEST = 'SAT_MOCK_TEST',\n}\n\nexport enum SECTION_CODE {\n READINESS = 'READINESS',\n GOALS = 'GOALS',\n TESTS = 'TESTS',\n ENRICHMENT = 'ENRICHMENT',\n SUBJECTIVE = 'SUBJECTIVE',\n VIDEOS = 'VIDEOS',\n NOTES = 'NOTES',\n FLASHCARDS = 'FLASHCARDS',\n PUZZLE_CARDS = 'PUZZLE_CARDS',\n}\n\nexport const BLOCK_NAME: Record<BLOCK_TYPE, string> = {\n [BLOCK_TYPE.DEFAULT]: 'Default',\n [BLOCK_TYPE.PREREQ]: 'Prerequisite',\n [BLOCK_TYPE.RECAP]: 'Recap',\n [BLOCK_TYPE.GOAL]: 'Lesson',\n [BLOCK_TYPE.TESTS]: 'Tests',\n [BLOCK_TYPE.PLAYLIST]: 'Videos',\n [BLOCK_TYPE.SOLUTIONS]: 'Solutions',\n [BLOCK_TYPE.NOTES]: 'Notes',\n [BLOCK_TYPE.FLASHCARDS]: 'Flashcards',\n [BLOCK_TYPE.SUBJECTIVES]: 'Subjective Questions',\n [BLOCK_TYPE.PUZZLE_CARDS]: 'Puzzles',\n [BLOCK_TYPE.SAT_MOCK_TEST]: 'SAT Mock Test',\n};\n"],"names":["BLOCK_TYPE","BLOCK_NAME"],"mappings":"AAAY,IAAAA,sBAAAA,OACVA,EAAA,UAAU,WACVA,EAAA,SAAS,UACTA,EAAA,QAAQ,SACRA,EAAA,OAAO,QACPA,EAAA,QAAQ,SACRA,EAAA,WAAW,YACXA,EAAA,YAAY,aACZA,EAAA,QAAQ,SACRA,EAAA,aAAa,cACbA,EAAA,cAAc,eACdA,EAAA,eAAe,gBACfA,EAAA,gBAAgB,iBAZNA,IAAAA,KAAA,CAAA,CAAA;AA2BL,MAAMC,IAAyC;AAAA,EACnD,SAAqB;AAAA,EACrB,QAAoB;AAAA,EACpB,OAAmB;AAAA,EACnB,MAAkB;AAAA,EAClB,OAAmB;AAAA,EACnB,UAAsB;AAAA,EACtB,WAAuB;AAAA,EACvB,OAAmB;AAAA,EACnB,YAAwB;AAAA,EACxB,aAAyB;AAAA,EACzB,cAA0B;AAAA,EAC1B,eAA2B;AAC9B;"}
@@ -1,14 +0,0 @@
1
- const I = {
2
- ASSIGN_AS_HW: "Assign as HW",
3
- MARK_AS_DONE: "Mark as Done",
4
- SKIP: "Skip",
5
- REVERT_SKIP: "Revert Skip",
6
- REVIEW: "Review",
7
- VIEW: "View"
8
- };
9
- var R = /* @__PURE__ */ ((E) => (E.LOCKED = "LOCKED", E.NOT_STARTED = "NOT_STARTED", E.WAIT_FOR_REVIEW = "WAIT_FOR_REVIEW", E.IN_PROGRESS = "IN_PROGRESS", E.COMPLETED = "COMPLETED", E))(R || {});
10
- export {
11
- R as NODE_CARD_STATES,
12
- I as TEACHER_MENU_LABELS
13
- };
14
- //# sourceMappingURL=node-constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-constants.js","sources":["../../../../src/features/chapters-v2/constants/node-constants.ts"],"sourcesContent":["export const TEACHER_MENU_LABELS = {\n ASSIGN_AS_HW: 'Assign as HW',\n MARK_AS_DONE: 'Mark as Done',\n SKIP: 'Skip',\n REVERT_SKIP: 'Revert Skip',\n REVIEW: 'Review',\n VIEW: 'View',\n};\n\nexport enum NODE_CARD_STATES {\n LOCKED = 'LOCKED',\n NOT_STARTED = 'NOT_STARTED',\n WAIT_FOR_REVIEW = 'WAIT_FOR_REVIEW',\n IN_PROGRESS = 'IN_PROGRESS',\n COMPLETED = 'COMPLETED',\n}\n\nexport enum NODE_CARD_COURSE_TYPES {\n PROGRAM = 'PROGRAM',\n REMEDIAL = 'REMEDIAL',\n TEST_SERIES = 'TEST_SERIES',\n EXAM = 'EXAM',\n}\n"],"names":["TEACHER_MENU_LABELS","NODE_CARD_STATES"],"mappings":"AAAO,MAAMA,IAAsB;AAAA,EACjC,cAAc;AAAA,EACd,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,MAAM;AACR;AAEY,IAAAC,sBAAAA,OACVA,EAAA,SAAS,UACTA,EAAA,cAAc,eACdA,EAAA,kBAAkB,mBAClBA,EAAA,cAAc,eACdA,EAAA,YAAY,aALFA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -1,41 +0,0 @@
1
- import { ILLUSTRATIONS as e } from "../../../assets/illustrations/illustrations.js";
2
- const _ = (t) => {
3
- if (!t) return 0;
4
- const { mandatory: E } = t, { completed: n, total: r } = E;
5
- return r === 0 ? 0 : Math.floor(n / r * 100);
6
- }, o = (t) => {
7
- switch (t) {
8
- case "LEARNING":
9
- return e.NODE_LEARN_BG;
10
- case "RECAP":
11
- return e.NODE_RECAP_BG;
12
- case "ASSESSMENT":
13
- case "DYNAMIC":
14
- return e.NODE_CUSTOM_TEST_BG;
15
- case "PRACTICE":
16
- case "EXTRA_PRACTICE":
17
- case "TARGET_PRACTICE":
18
- case "MASTERY":
19
- return e.NODE_PRACTICE_BG;
20
- case "PUZZLE_EASY":
21
- case "PUZZLE_MEDIUM":
22
- case "PUZZLE_HARD":
23
- return e.NODE_PUZZLE_BG;
24
- case "VIDEO":
25
- return e.NODE_VIDEO_BG;
26
- default:
27
- return e.NODE_CUSTOM_TEST_BG;
28
- }
29
- }, T = (t, E, n, r) => {
30
- if (!t) {
31
- if (!n) return `(${E})`;
32
- if (r !== void 0 && r > 0)
33
- return `${r}`;
34
- }
35
- };
36
- export {
37
- _ as getChapterCompletionPercentage,
38
- o as getNodeTypeBasedBgImage,
39
- T as getSheetNLessonCount
40
- };
41
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/features/chapters-v2/utils/index.ts"],"sourcesContent":["import type { IChapterProgressStats } from '../chapter-details/chapter-details-types';\nimport type { INodeDataProps } from '../comps/node-card/node-card-types';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\n\n// This function calculates the completion percentage of a chapter based on progress stats.\n// If no progress stats are provided, it returns 0.\n// It uses the `mandatory` field from the progress stats to determine the completed and total items.\n// It returns an integer representing the percentage of completion, rounded down to the nearest whole number.\nconst getChapterCompletionPercentage = (progressStats: IChapterProgressStats | null) => {\n if (!progressStats) return 0;\n\n const { mandatory } = progressStats;\n const { completed, total } = mandatory;\n\n if (total === 0) {\n return 0;\n }\n\n const percentage = Math.floor((completed / total) * 100);\n\n return percentage;\n};\n\nconst getNodeTypeBasedBgImage = (nodeType: INodeDataProps['node_type']) => {\n switch (nodeType) {\n case 'LEARNING':\n return ILLUSTRATIONS.NODE_LEARN_BG;\n case 'RECAP':\n return ILLUSTRATIONS.NODE_RECAP_BG;\n\n case 'ASSESSMENT':\n case 'DYNAMIC':\n return ILLUSTRATIONS.NODE_CUSTOM_TEST_BG;\n\n case 'PRACTICE':\n case 'EXTRA_PRACTICE':\n case 'TARGET_PRACTICE':\n case 'MASTERY':\n return ILLUSTRATIONS.NODE_PRACTICE_BG;\n\n case 'PUZZLE_EASY':\n case 'PUZZLE_MEDIUM':\n case 'PUZZLE_HARD':\n return ILLUSTRATIONS.NODE_PUZZLE_BG;\n\n case 'VIDEO':\n return ILLUSTRATIONS.NODE_VIDEO_BG;\n\n default:\n return ILLUSTRATIONS.NODE_CUSTOM_TEST_BG;\n }\n};\n\nconst getSheetNLessonCount = (\n isSkipped: boolean,\n sheetsLength: number,\n isGoalBlock?: boolean,\n lessonIdx?: number,\n) => {\n if (isSkipped) return undefined;\n\n if (!isGoalBlock) return `(${sheetsLength})`;\n\n if (lessonIdx !== undefined && lessonIdx > 0) {\n return `${lessonIdx}`;\n }\n};\n\nexport { getChapterCompletionPercentage, getNodeTypeBasedBgImage, getSheetNLessonCount };\n"],"names":["getChapterCompletionPercentage","progressStats","mandatory","completed","total","getNodeTypeBasedBgImage","nodeType","ILLUSTRATIONS","getSheetNLessonCount","isSkipped","sheetsLength","isGoalBlock","lessonIdx"],"mappings":";AASM,MAAAA,IAAiC,CAACC,MAAgD;AAClF,MAAA,CAACA,EAAsB,QAAA;AAErB,QAAA,EAAE,WAAAC,EAAc,IAAAD,GAChB,EAAE,WAAAE,GAAW,OAAAC,EAAU,IAAAF;AAE7B,SAAIE,MAAU,IACL,IAGU,KAAK,MAAOD,IAAYC,IAAS,GAAG;AAGzD,GAEMC,IAA0B,CAACC,MAA0C;AACzE,UAAQA,GAAU;AAAA,IAChB,KAAK;AACH,aAAOC,EAAc;AAAA,IACvB,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB,KAAK;AACH,aAAOA,EAAc;AAAA,IAEvB;AACE,aAAOA,EAAc;AAAA,EACzB;AACF,GAEMC,IAAuB,CAC3BC,GACAC,GACAC,GACAC,MACG;AACH,MAAI,CAAAH,GAEJ;AAAA,QAAI,CAACE,EAAoB,QAAA,IAAID,CAAY;AAErC,QAAAE,MAAc,UAAaA,IAAY;AACzC,aAAO,GAAGA,CAAS;AAAA;AAEvB;"}
@@ -1,144 +0,0 @@
1
- import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
- import u from "../../../assets/line-icons/icons/alarm.js";
3
- import I from "../../../assets/line-icons/icons/bulb2.js";
4
- import T from "../../../assets/line-icons/icons/check2.js";
5
- import d from "../../../assets/line-icons/icons/dart.js";
6
- import f from "../../../assets/line-icons/icons/exclamation.js";
7
- import R from "../../../assets/line-icons/icons/lock2.js";
8
- import p from "../../../assets/line-icons/icons/play2.js";
9
- import A from "../../../assets/line-icons/icons/puzzle.js";
10
- import S from "../../../assets/line-icons/icons/recap.js";
11
- import $ from "../../../assets/line-icons/icons/status.js";
12
- import D from "../../../assets/line-icons/icons/testtube.js";
13
- import { LOTTIE as t } from "../../../assets/lottie/lottie.js";
14
- import h from "../../ui/layout/flex-view.js";
15
- import s from "../../ui/text/text.js";
16
- import { InProgressIconWrapper as a } from "../comps/node-card/node-card-styled.js";
17
- import E from "../comps/tag/tag.js";
18
- const C = 60 * 60 * 24, P = ["NOT_STARTED", "IN_PROGRESS"], g = (r) => {
19
- if (!r)
20
- return { isOverdue: !1, daysText: "" };
21
- const c = Math.floor(Date.now() / 1e3), i = r - c, n = Math.ceil(i / C), o = n < 0, m = n > 0 ? `${Math.abs(n)}D` : "";
22
- return { isOverdue: o, daysText: m };
23
- }, j = (r, c, i) => {
24
- const { isOverdue: n, daysText: o } = g(i);
25
- if (n && P.includes(r))
26
- return {
27
- icon: /* @__PURE__ */ e(h, { $background: "RED", $borderRadius: 16, $gapX: 0.24, $gutterX: 0.5, children: /* @__PURE__ */ e(s, { $renderAs: "ac4-black", $color: "WHITE", children: "OVERDUE" }) }),
28
- top: -10,
29
- right: -10
30
- };
31
- switch (r) {
32
- case "NOT_STARTED":
33
- return {
34
- icon: /* @__PURE__ */ e(
35
- a,
36
- {
37
- $flexDirection: "row",
38
- $alignItems: "center",
39
- $justifyContent: "center",
40
- $gutterX: 0.5,
41
- $borderRadius: 16,
42
- children: o && /* @__PURE__ */ e(s, { $renderAs: "ub3-bold", $color: "WHITE", children: o })
43
- }
44
- ),
45
- top: 0,
46
- right: 0
47
- };
48
- case "LOCKED":
49
- return {
50
- icon: /* @__PURE__ */ e(R, { width: 32, height: 32 }),
51
- top: -12,
52
- right: -12
53
- };
54
- case "IN_PROGRESS":
55
- return {
56
- icon: /* @__PURE__ */ l(
57
- a,
58
- {
59
- $flexDirection: "row",
60
- $alignItems: "center",
61
- $justifyContent: "center",
62
- $gutterX: o ? 0.25 : 0,
63
- $borderRadius: 16,
64
- children: [
65
- o && /* @__PURE__ */ e(s, { $renderAs: "ub3-bold", $color: "WHITE", children: o }),
66
- /* @__PURE__ */ e($, {})
67
- ]
68
- }
69
- )
70
- };
71
- case "COMPLETED":
72
- return {
73
- icon: /* @__PURE__ */ e(
74
- E,
75
- {
76
- Icon: T,
77
- label: typeof c == "number" ? `${c}%` : void 0
78
- }
79
- ),
80
- top: -10,
81
- right: -10
82
- };
83
- case "WAIT_FOR_REVIEW":
84
- return {
85
- icon: /* @__PURE__ */ e(E, { Icon: f }),
86
- top: -10,
87
- right: -10
88
- };
89
- default:
90
- return {
91
- icon: void 0
92
- };
93
- }
94
- }, k = (r) => {
95
- switch (r) {
96
- case "LEARNING":
97
- return {
98
- lottie: t.LEARN,
99
- icon: I
100
- };
101
- case "RECAP":
102
- return {
103
- lottie: t.RECAP,
104
- icon: S
105
- };
106
- case "DYNAMIC":
107
- case "ASSESSMENT":
108
- case "CHAPTER_ASSESSMENT":
109
- return {
110
- lottie: t.TEST,
111
- icon: u
112
- };
113
- case "PRACTICE":
114
- case "EXTRA_PRACTICE":
115
- case "TARGET_PRACTICE":
116
- case "MASTERY":
117
- return {
118
- lottie: t.PRACTICE,
119
- icon: d
120
- };
121
- case "PUZZLE_EASY":
122
- case "PUZZLE_MEDIUM":
123
- case "PUZZLE_HARD":
124
- return {
125
- lottie: t.PUZZLE,
126
- icon: A
127
- };
128
- case "VIDEO":
129
- return {
130
- lottie: t.VIDEO,
131
- icon: p
132
- };
133
- default:
134
- return {
135
- lottie: t.PROJECT,
136
- icon: D
137
- };
138
- }
139
- };
140
- export {
141
- k as getNodeCardBasedIcon,
142
- j as getNodeStateBasedTagInfo
143
- };
144
- //# sourceMappingURL=node-card-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-card-utils.js","sources":["../../../../src/features/chapters-v2/utils/node-card-utils.tsx"],"sourcesContent":["import type { INodeDataProps } from '../comps/node-card/node-card-types';\n\nimport AlarmIcon from '../../../assets/line-icons/icons/alarm';\nimport Bulb2Icon from '../../../assets/line-icons/icons/bulb2';\nimport Check2Icon from '../../../assets/line-icons/icons/check2';\nimport DartIcon from '../../../assets/line-icons/icons/dart';\nimport ExclamationIcon from '../../../assets/line-icons/icons/exclamation';\nimport Lock2Icon from '../../../assets/line-icons/icons/lock2';\nimport Play2Icon from '../../../assets/line-icons/icons/play2';\nimport PuzzleIcon from '../../../assets/line-icons/icons/puzzle';\nimport RecapIcon from '../../../assets/line-icons/icons/recap';\nimport StatusIcon from '../../../assets/line-icons/icons/status';\nimport TestTubeIcon from '../../../assets/line-icons/icons/testtube';\nimport { LOTTIE } from '../../../assets/lottie/lottie';\nimport FlexView from '../..//ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport { InProgressIconWrapper } from '../comps/node-card/node-card-styled';\nimport Tag from '../comps/tag/tag';\n\ninterface DueDateInfo {\n isOverdue: boolean;\n daysText: string;\n}\n\nconst SECONDS_PER_DAY = 60 * 60 * 24;\nconst OVERDUE_TAG_STATES: INodeDataProps['state'][] = ['NOT_STARTED', 'IN_PROGRESS'];\n\nconst calculateDueDateInfo = (dueDateTs?: number | null): DueDateInfo => {\n if (!dueDateTs) {\n return { isOverdue: false, daysText: '' };\n }\n\n const currentTimestamp = Math.floor(Date.now() / 1000);\n const differenceInSeconds = dueDateTs - currentTimestamp;\n const differenceInDays = Math.ceil(differenceInSeconds / SECONDS_PER_DAY);\n\n const isOverdue = differenceInDays < 0;\n\n const daysText = differenceInDays > 0 ? `${Math.abs(differenceInDays)}D` : '';\n\n return { isOverdue, daysText };\n};\n\nconst getNodeStateBasedTagInfo = (\n nodeState: INodeDataProps['state'],\n accuracy?: number | null,\n dueDateTs?: number | null,\n) => {\n const { isOverdue, daysText } = calculateDueDateInfo(dueDateTs);\n\n if (isOverdue && OVERDUE_TAG_STATES.includes(nodeState)) {\n return {\n icon: (\n <FlexView $background=\"RED\" $borderRadius={16} $gapX={0.24} $gutterX={0.5}>\n <Text $renderAs=\"ac4-black\" $color=\"WHITE\">\n OVERDUE\n </Text>\n </FlexView>\n ),\n top: -10,\n right: -10,\n };\n }\n\n switch (nodeState) {\n case 'NOT_STARTED':\n return {\n icon: (\n <InProgressIconWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gutterX={0.5}\n $borderRadius={16}\n >\n {daysText && (\n <Text $renderAs=\"ub3-bold\" $color=\"WHITE\">\n {daysText}\n </Text>\n )}\n </InProgressIconWrapper>\n ),\n top: 0,\n right: 0,\n };\n case 'LOCKED':\n return {\n icon: <Lock2Icon width={32} height={32} />,\n top: -12,\n right: -12,\n };\n case 'IN_PROGRESS':\n return {\n icon: (\n <InProgressIconWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gutterX={daysText ? 0.25 : 0}\n $borderRadius={16}\n >\n {daysText && (\n <Text $renderAs=\"ub3-bold\" $color=\"WHITE\">\n {daysText}\n </Text>\n )}\n <StatusIcon />\n </InProgressIconWrapper>\n ),\n };\n case 'COMPLETED':\n return {\n icon: (\n <Tag\n Icon={Check2Icon}\n label={typeof accuracy === 'number' ? `${accuracy}%` : undefined}\n />\n ),\n top: -10,\n right: -10,\n };\n case 'WAIT_FOR_REVIEW':\n return {\n icon: <Tag Icon={ExclamationIcon} />,\n top: -10,\n right: -10,\n };\n\n default:\n return {\n icon: undefined,\n };\n }\n};\n\nconst getNodeCardBasedIcon = (nodeType: INodeDataProps['node_type']) => {\n switch (nodeType) {\n case 'LEARNING':\n return {\n lottie: LOTTIE.LEARN,\n icon: Bulb2Icon,\n };\n case 'RECAP':\n return {\n lottie: LOTTIE.RECAP,\n icon: RecapIcon,\n };\n case 'DYNAMIC':\n case 'ASSESSMENT':\n case 'CHAPTER_ASSESSMENT':\n return {\n lottie: LOTTIE.TEST,\n icon: AlarmIcon,\n };\n case 'PRACTICE':\n case 'EXTRA_PRACTICE':\n case 'TARGET_PRACTICE':\n case 'MASTERY':\n return {\n lottie: LOTTIE.PRACTICE,\n icon: DartIcon,\n };\n case 'PUZZLE_EASY':\n case 'PUZZLE_MEDIUM':\n case 'PUZZLE_HARD':\n return {\n lottie: LOTTIE.PUZZLE,\n icon: PuzzleIcon,\n };\n case 'VIDEO':\n return {\n lottie: LOTTIE.VIDEO,\n icon: Play2Icon,\n };\n default:\n return {\n lottie: LOTTIE.PROJECT,\n icon: TestTubeIcon,\n };\n }\n};\n\nexport { getNodeStateBasedTagInfo, getNodeCardBasedIcon };\n"],"names":["SECONDS_PER_DAY","OVERDUE_TAG_STATES","calculateDueDateInfo","dueDateTs","currentTimestamp","differenceInSeconds","differenceInDays","isOverdue","daysText","getNodeStateBasedTagInfo","nodeState","accuracy","jsx","FlexView","Text","InProgressIconWrapper","Lock2Icon","jsxs","StatusIcon","Tag","Check2Icon","ExclamationIcon","getNodeCardBasedIcon","nodeType","LOTTIE","Bulb2Icon","RecapIcon","AlarmIcon","DartIcon","PuzzleIcon","Play2Icon","TestTubeIcon"],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { jsx as o, jsxs as c } from "react/jsx-runtime";
2
- import { memo as m } from "react";
3
- import u from "../ui/buttons/clickable/clickable.js";
4
- import { CardMenuOptionsWrapper as h, CardOptionWrapper as s, OptionText as d } from "./styles.js";
5
- const b = m(
6
- ({ options: t, shouldOpenOnRight: i, visible: n, $width: l }) => n ? /* @__PURE__ */ o(
7
- h,
8
- {
9
- $visible: n,
10
- $background: "BLACK_2",
11
- $borderColor: "WHITE_T_38",
12
- $gapX: 0.5,
13
- $width: l,
14
- $shouldopenonright: i,
15
- children: t.map(({ icon: p, label: a, id: r, onClick: $, disabled: e }) => /* @__PURE__ */ o(u, { onClick: () => e ? null : $(r), label: r, children: /* @__PURE__ */ c(
16
- s,
17
- {
18
- $flexDirection: "row",
19
- $alignItems: "center",
20
- $flexGap: 8,
21
- $gapX: 0.5,
22
- $gutterX: 1,
23
- $opacity: e ? 0.5 : 1,
24
- $disabled: e,
25
- children: [
26
- /* @__PURE__ */ o(p, { width: 20, height: 20 }),
27
- /* @__PURE__ */ o(d, { $renderAs: "ub3", $color: "WHITE", children: a })
28
- ]
29
- },
30
- r
31
- ) }, r))
32
- }
33
- ) : null
34
- );
35
- export {
36
- b as default
37
- };
38
- //# sourceMappingURL=card-menu-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"card-menu-options.js","sources":["../../../src/features/homework/card-menu-options.tsx"],"sourcesContent":["import type { FC, SVGProps } from 'react';\n\nimport { memo } from 'react';\n\nimport Clickable from '../ui/buttons/clickable/clickable';\nimport * as Styled from './styles';\n\ninterface ICardMenuOption {\n id: string;\n label: string;\n icon: FC<SVGProps<SVGSVGElement>>;\n onClick: (id: string) => void;\n disabled: boolean;\n}\n\ninterface ICardMenuOptionsProps {\n $width?: string | number;\n options: ICardMenuOption[];\n triggerRef: React.RefObject<HTMLElement>;\n visible: boolean;\n shouldOpenOnRight: boolean;\n}\n\nconst CardMenuOptions: FC<ICardMenuOptionsProps> = memo(\n ({ options, shouldOpenOnRight, visible, $width }) => {\n if (!visible) return null;\n\n return (\n <Styled.CardMenuOptionsWrapper\n $visible={visible}\n $background=\"BLACK_2\"\n $borderColor=\"WHITE_T_38\"\n $gapX={0.5}\n $width={$width}\n $shouldopenonright={shouldOpenOnRight}\n >\n {options.map(({ icon: OptionIcon, label, id, onClick, disabled }) => (\n <Clickable onClick={() => (!disabled ? onClick(id) : null)} label={id} key={id}>\n <Styled.CardOptionWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $flexGap={8}\n $gapX={0.5}\n $gutterX={1}\n $opacity={disabled ? 0.5 : 1}\n $disabled={disabled}\n key={id}\n >\n <OptionIcon width={20} height={20} />\n <Styled.OptionText $renderAs=\"ub3\" $color=\"WHITE\">\n {label}\n </Styled.OptionText>\n </Styled.CardOptionWrapper>\n </Clickable>\n ))}\n </Styled.CardMenuOptionsWrapper>\n );\n },\n);\n\nexport default CardMenuOptions;\n"],"names":["CardMenuOptions","memo","options","shouldOpenOnRight","visible","$width","jsx","Styled.CardMenuOptionsWrapper","OptionIcon","label","id","onClick","disabled","Clickable","jsxs","Styled.CardOptionWrapper","Styled.OptionText"],"mappings":";;;;AAuBA,MAAMA,IAA6CC;AAAA,EACjD,CAAC,EAAE,SAAAC,GAAS,mBAAAC,GAAmB,SAAAC,GAAS,QAAAC,QACjCD,IAGH,gBAAAE;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,UAAUH;AAAA,MACV,aAAY;AAAA,MACZ,cAAa;AAAA,MACb,OAAO;AAAA,MACP,QAAAC;AAAA,MACA,oBAAoBF;AAAA,MAEnB,UAAAD,EAAQ,IAAI,CAAC,EAAE,MAAMM,GAAY,OAAAC,GAAO,IAAAC,GAAI,SAAAC,GAAS,UAAAC,0BACnDC,GAAU,EAAA,SAAS,MAAQD,IAAyB,OAAdD,EAAQD,CAAE,GAAW,OAAOA,GACjE,UAAA,gBAAAI;AAAA,QAACC;AAAAA,QAAA;AAAA,UACC,gBAAe;AAAA,UACf,aAAY;AAAA,UACZ,UAAU;AAAA,UACV,OAAO;AAAA,UACP,UAAU;AAAA,UACV,UAAUH,IAAW,MAAM;AAAA,UAC3B,WAAWA;AAAA,UAGX,UAAA;AAAA,YAAA,gBAAAN,EAACE,GAAW,EAAA,OAAO,IAAI,QAAQ,IAAI;AAAA,YACnC,gBAAAF,EAACU,GAAA,EAAkB,WAAU,OAAM,QAAO,SACvC,UACHP,GAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QALKC;AAAA,MAAA,EAMP,GAf0EA,CAgB5E,CACD;AAAA,IAAA;AAAA,EAAA,IA7BgB;AAiCzB;"}
@@ -1,15 +0,0 @@
1
- import { jsx as t, jsxs as a } from "react/jsx-runtime";
2
- import c from "../ui/layout/flex-view.js";
3
- import i from "../ui/text/text.js";
4
- const l = ({ label: e, title: r }) => /* @__PURE__ */ a(c, { children: [
5
- /* @__PURE__ */ t(c, { $background: "BLACK_T_60", $width: "fit-content", $gutterX: 0.25, children: /* @__PURE__ */ t(i, { $color: "WHITE", $renderAs: "ac4-black", children: e }) }),
6
- /* @__PURE__ */ t(i, { $renderAs: "ac4-black", children: r })
7
- ] }), f = ({
8
- cardHeader: e,
9
- nodeType: r,
10
- courseType: n
11
- }) => r === "MASTERY" ? /* @__PURE__ */ t(l, { label: "Smart", title: "Practice" }) : n === "REMEDIAL" ? /* @__PURE__ */ t(l, { label: "EXTRA", title: e }) : n === "EXAM" ? /* @__PURE__ */ t(l, { label: "CUSTOM", title: e }) : /* @__PURE__ */ t(i, { $renderAs: "ac4-black", children: e });
12
- export {
13
- f as default
14
- };
15
- //# sourceMappingURL=card-title.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"card-title.js","sources":["../../../src/features/homework/card-title.tsx"],"sourcesContent":["import type { TCourseType, TNodeTypes } from '../chapters-v2/comps/node-card/node-card-types';\n\nimport FlexView from '../ui/layout/flex-view';\nimport Text from '../ui/text/text';\n\nconst LabelledTitle = ({ label, title }: { label: string; title: string }) => (\n <FlexView>\n <FlexView $background=\"BLACK_T_60\" $width=\"fit-content\" $gutterX={0.25}>\n <Text $color=\"WHITE\" $renderAs=\"ac4-black\">\n {label}\n </Text>\n </FlexView>\n <Text $renderAs=\"ac4-black\">{title}</Text>\n </FlexView>\n);\n\nconst CardTitle = ({\n cardHeader,\n nodeType,\n courseType,\n}: {\n cardHeader: string;\n nodeType: TNodeTypes;\n courseType: TCourseType;\n}) => {\n if (nodeType === 'MASTERY') {\n return <LabelledTitle label=\"Smart\" title=\"Practice\" />;\n }\n\n if (courseType === 'REMEDIAL') {\n return <LabelledTitle label=\"EXTRA\" title={cardHeader} />;\n }\n\n if (courseType === 'EXAM') {\n return <LabelledTitle label=\"CUSTOM\" title={cardHeader} />;\n }\n\n return <Text $renderAs=\"ac4-black\">{cardHeader}</Text>;\n};\n\nexport default CardTitle;\n"],"names":["LabelledTitle","label","title","FlexView","jsx","Text","CardTitle","cardHeader","nodeType","courseType"],"mappings":";;;AAKA,MAAMA,IAAgB,CAAC,EAAE,OAAAC,GAAO,OAAAC,EAAM,wBACnCC,GACC,EAAA,UAAA;AAAA,EAAA,gBAAAC,EAACD,GAAS,EAAA,aAAY,cAAa,QAAO,eAAc,UAAU,MAChE,UAAC,gBAAAC,EAAAC,GAAA,EAAK,QAAO,SAAQ,WAAU,aAC5B,YACH,CAAA,GACF;AAAA,EACC,gBAAAD,EAAAC,GAAA,EAAK,WAAU,aAAa,UAAMH,GAAA;AAAA,EACrC,CAAA,GAGII,IAAY,CAAC;AAAA,EACjB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AACF,MAKMD,MAAa,YACP,gBAAAJ,EAAAJ,GAAA,EAAc,OAAM,SAAQ,OAAM,WAAW,CAAA,IAGnDS,MAAe,aACT,gBAAAL,EAAAJ,GAAA,EAAc,OAAM,SAAQ,OAAOO,EAAY,CAAA,IAGrDE,MAAe,SACT,gBAAAL,EAAAJ,GAAA,EAAc,OAAM,UAAS,OAAOO,EAAY,CAAA,IAGlD,gBAAAH,EAAAC,GAAA,EAAK,WAAU,aAAa,UAAWE,EAAA,CAAA;"}