@cuemath/leap 2.8.56-as1 → 2.8.56-hg1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) 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/closed-eye.js +23 -0
  4. package/dist/assets/line-icons/icons/closed-eye.js.map +1 -0
  5. package/dist/features/analytics-events/whitelist-events.js +9 -7
  6. package/dist/features/analytics-events/whitelist-events.js.map +1 -1
  7. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +33 -98
  8. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
  9. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +47 -76
  10. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  11. package/dist/features/chapters/chapters-list/chapters-list-styled.js +5 -5
  12. package/dist/features/chapters/chapters-list/chapters-list-styled.js.map +1 -1
  13. package/dist/features/chapters/chapters-list/chapters-list.js +70 -65
  14. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  15. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js +92 -0
  16. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map +1 -0
  17. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js +25 -0
  18. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js.map +1 -0
  19. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +53 -51
  20. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  21. package/dist/features/milestone/milestone-list-container/api/get-milestones.js +17 -9
  22. package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
  23. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +91 -116
  24. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  25. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js +13 -0
  26. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js.map +1 -0
  27. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js +38 -0
  28. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js.map +1 -0
  29. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js +121 -105
  30. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  31. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +173 -145
  32. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  33. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js +10 -24
  34. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
  35. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +81 -76
  36. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  37. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js +22 -10
  38. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
  39. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js +53 -0
  40. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js.map +1 -0
  41. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js +37 -70
  42. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  43. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +174 -114
  44. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  45. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js +25 -0
  46. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js.map +1 -0
  47. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js +16 -29
  48. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
  49. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js +23 -19
  50. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
  51. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js +35 -23
  52. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
  53. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +36 -34
  54. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  55. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js +1 -1
  56. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
  57. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +78 -96
  58. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  59. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +71 -0
  60. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +1 -0
  61. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +31 -0
  62. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +1 -0
  63. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +34 -6
  64. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -1
  65. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +73 -73
  66. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -1
  67. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +7 -8
  68. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +1 -1
  69. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +68 -77
  70. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -1
  71. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js +15 -0
  72. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js.map +1 -0
  73. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js +26 -0
  74. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +1 -0
  75. package/dist/features/sheets/resources-list/resource-item/resource-item.js +179 -65
  76. package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
  77. package/dist/features/sheets/resources-list/resource-item/styled.js +38 -0
  78. package/dist/features/sheets/resources-list/resource-item/styled.js.map +1 -0
  79. package/dist/features/sheets/resources-list/resource-item/utils.js +23 -0
  80. package/dist/features/sheets/resources-list/resource-item/utils.js.map +1 -0
  81. package/dist/features/sheets/resources-list/resources-list.js +5 -5
  82. package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
  83. package/dist/features/sheets/resources-list/styled.js +13 -9
  84. package/dist/features/sheets/resources-list/styled.js.map +1 -1
  85. package/dist/features/sheets/sheets-analytics-events.js +11 -0
  86. package/dist/features/sheets/sheets-analytics-events.js.map +1 -0
  87. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +3 -4
  88. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
  89. package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
  90. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +29 -30
  91. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  92. package/dist/features/ui/constants/z-index.js +1 -1
  93. package/dist/features/ui/constants/z-index.js.map +1 -1
  94. package/dist/features/ui/context-menu/context-menu-styled.js +14 -28
  95. package/dist/features/ui/context-menu/context-menu-styled.js.map +1 -1
  96. package/dist/features/ui/context-menu/context-menu.js +15 -30
  97. package/dist/features/ui/context-menu/context-menu.js.map +1 -1
  98. package/dist/features/ui/theme/button.js +102 -17
  99. package/dist/features/ui/theme/button.js.map +1 -1
  100. package/dist/index.d.ts +12 -200
  101. package/dist/index.js +469 -487
  102. package/dist/index.js.map +1 -1
  103. package/package.json +1 -1
  104. package/dist/assets/line-icons/icons/alarm.js +0 -41
  105. package/dist/assets/line-icons/icons/alarm.js.map +0 -1
  106. package/dist/assets/line-icons/icons/dart.js +0 -23
  107. package/dist/assets/line-icons/icons/dart.js.map +0 -1
  108. package/dist/assets/line-icons/icons/exclamation.js +0 -26
  109. package/dist/assets/line-icons/icons/exclamation.js.map +0 -1
  110. package/dist/assets/line-icons/icons/home2.js +0 -25
  111. package/dist/assets/line-icons/icons/home2.js.map +0 -1
  112. package/dist/assets/line-icons/icons/important.js +0 -23
  113. package/dist/assets/line-icons/icons/important.js.map +0 -1
  114. package/dist/assets/line-icons/icons/puzzle.js +0 -25
  115. package/dist/assets/line-icons/icons/puzzle.js.map +0 -1
  116. package/dist/assets/line-icons/icons/recap.js +0 -32
  117. package/dist/assets/line-icons/icons/recap.js.map +0 -1
  118. package/dist/assets/line-icons/icons/status.js +0 -41
  119. package/dist/assets/line-icons/icons/status.js.map +0 -1
  120. package/dist/assets/line-icons/icons/testtube.js +0 -33
  121. package/dist/assets/line-icons/icons/testtube.js.map +0 -1
  122. package/dist/features/chapters-v2/api/chapter.js +0 -10
  123. package/dist/features/chapters-v2/api/chapter.js.map +0 -1
  124. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +0 -112
  125. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +0 -1
  126. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js +0 -26
  127. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js.map +0 -1
  128. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +0 -69
  129. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +0 -1
  130. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js +0 -90
  131. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +0 -1
  132. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js +0 -97
  133. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +0 -1
  134. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js +0 -52
  135. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js.map +0 -1
  136. package/dist/features/chapters-v2/chapter-details/chapter-details.js +0 -103
  137. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +0 -1
  138. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js +0 -13
  139. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js.map +0 -1
  140. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +0 -153
  141. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +0 -1
  142. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +0 -16
  143. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +0 -1
  144. package/dist/features/chapters-v2/comps/node-card/node-card.js +0 -12
  145. package/dist/features/chapters-v2/comps/node-card/node-card.js.map +0 -1
  146. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js +0 -32
  147. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js.map +0 -1
  148. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js +0 -31
  149. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +0 -1
  150. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +0 -160
  151. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +0 -1
  152. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +0 -184
  153. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +0 -1
  154. package/dist/features/chapters-v2/comps/tag/tag-styled.js +0 -13
  155. package/dist/features/chapters-v2/comps/tag/tag-styled.js.map +0 -1
  156. package/dist/features/chapters-v2/comps/tag/tag.js +0 -28
  157. package/dist/features/chapters-v2/comps/tag/tag.js.map +0 -1
  158. package/dist/features/chapters-v2/constants/block-constants.js +0 -20
  159. package/dist/features/chapters-v2/constants/block-constants.js.map +0 -1
  160. package/dist/features/chapters-v2/constants/node-constants.js +0 -15
  161. package/dist/features/chapters-v2/constants/node-constants.js.map +0 -1
  162. package/dist/features/chapters-v2/utils/index.js +0 -41
  163. package/dist/features/chapters-v2/utils/index.js.map +0 -1
  164. package/dist/features/chapters-v2/utils/node-card-utils.js +0 -106
  165. package/dist/features/chapters-v2/utils/node-card-utils.js.map +0 -1
  166. package/dist/features/homework/card-menu-options.js +0 -36
  167. package/dist/features/homework/card-menu-options.js.map +0 -1
  168. package/dist/features/homework/homework-card.js +0 -136
  169. package/dist/features/homework/homework-card.js.map +0 -1
  170. package/dist/features/homework/styles.js +0 -114
  171. package/dist/features/homework/styles.js.map +0 -1
  172. package/dist/features/homework/utils.js +0 -28
  173. package/dist/features/homework/utils.js.map +0 -1
  174. package/dist/features/recent-chapters/api/get-recent-chapters.js +0 -9
  175. package/dist/features/recent-chapters/api/get-recent-chapters.js.map +0 -1
  176. package/dist/features/recent-chapters/recent-chapters-styled.js +0 -23
  177. package/dist/features/recent-chapters/recent-chapters-styled.js.map +0 -1
  178. package/dist/features/recent-chapters/recent-chapters.js +0 -49
  179. package/dist/features/recent-chapters/recent-chapters.js.map +0 -1
  180. package/dist/static/chapter-header-bg-2.c8d96894.svg +0 -1
  181. package/dist/static/node-custom-test-bg.d3b757be.svg +0 -1
  182. package/dist/static/node-learn-bg.b61f815c.svg +0 -1
  183. package/dist/static/node-practice-bg.16cbaf2a.svg +0 -1
  184. package/dist/static/node-project-bg.e6a33e28.svg +0 -1
  185. package/dist/static/node-puzzle-bg.3422135c.svg +0 -1
  186. package/dist/static/node-recap-bg.546154e4.svg +0 -1
  187. package/dist/static/node-test-prep-bg.42c0b9c4.svg +0 -1
  188. package/dist/static/node-video-bg.3df3f73a.svg +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-card-styled.js","sources":["../../../../../src/features/chapters-v2/comps/node-card/node-card-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport ImportantIcon from '../../../../assets/line-icons/icons/important';\nimport Lock2Icon from '../../../../assets/line-icons/icons/lock2';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\n\ninterface INodeCardContainer {\n $showOutline?: boolean;\n $disabled: boolean;\n $isSheetLocked?: boolean;\n}\n\nconst NodeCardContainer = styled(FlexView)<INodeCardContainer>(({\n $showOutline,\n theme,\n $disabled,\n $isSheetLocked,\n}) => {\n const { BLACK_1, BLACK, BLACK_T_15 } = theme.colors;\n\n return `\n cursor: ${$disabled ? 'not-allowed' : 'pointer'};\n ${$disabled ? 'pointer-events: none;' : 'pointer-events: auto;'};\n position: relative;\n border-image: linear-gradient(to right, ${BLACK_T_15} 0%, ${BLACK_T_15} 100%);\n ${$showOutline && `outline: 1px solid ${BLACK_T_15};`};\n\n .node-card-border {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n width: 100%;\n height: 100%;\n pointer-events: none;\n background: transparent;\n }\n\n .node-card-border > .border-path {\n fill: none;\n stroke: ${BLACK_T_15};\n stroke-width: 1.5;\n }\n\n .node-card-border > .border-path-animation {\n fill: none;\n stroke: ${BLACK};\n stroke-width: 1.5;\n //* view box size 170 + 56 + 170 + 56 = 452\n //* 452 / 2 = 226\n stroke-dasharray: 226 226;\n stroke-dashoffset: 0;\n\n animation: dashmove 6s linear infinite;\n }\n \n @keyframes dashmove {\n to {\n stroke-dashoffset: -900;\n }\n }\n \n &:hover {\n ${\n !$disabled &&\n `\n .node-card-border > .border-path-animation {\n stroke: ${BLACK_1};\n stroke-dasharray: 452;\n animation: none;\n }\n `\n }\n\n ${$showOutline && !$isSheetLocked && `outline: 1px solid ${BLACK};`};\n }\n `;\n});\n\nconst StyledImportantIcon = styled(ImportantIcon)(({ theme }) => {\n const { layout } = theme;\n\n return `\n width: ${layout.gutter * 0.75}px;\n height: ${layout.gutter * 0.75}px;\n position: absolute;\n top: -2.5px;\n right: -2.5px;\n `;\n});\n\ninterface INodeCardInfoWrapper {\n $bgImage: string;\n}\n\nconst NodeCardInfoWrapper = styled(FlexView)<INodeCardInfoWrapper>(({ $bgImage }) => {\n return `\n background-image: url(${$bgImage});\n\n & .context-menu {\n justify-self: flex-end;\n margin-left: auto;\n }\n `;\n});\n\nconst IconWrapper = styled(FlexView)`\n border-radius: 50%;\n`;\n\nconst NodeCardContentWrapper = styled(FlexView)(() => {\n return `\n position: relative;\n padding: 12px 8px 12px 12px;\n `;\n});\n\ninterface ISheetTagWrapper {\n $top?: number;\n $right?: number;\n}\n\nconst SheetTagWrapper = styled(FlexView)<ISheetTagWrapper>(({ $top, $right }) => {\n return `\n position: absolute;\n top: ${$top ?? 0}px;\n right: ${$right ?? 0}px;\n z-index: 3;\n`;\n});\n\nconst StyledLockIcon = styled(Lock2Icon)(({}) => {\n return `\n width: 28px;\n height: 28px;\n `;\n});\n\nconst InProgressIconWrapper = styled(FlexView)(({ theme }) => {\n const { BLACK_1, WHITE_1 } = theme.colors;\n\n return `\n position: absolute;\n top: -10px;\n right: -10px;\n background: ${BLACK_1};\n\n path {\n fill: ${WHITE_1};\n }\n `;\n});\n\nconst NodeCardTitle = styled(Text)(() => {\n return `\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n text-overflow: ellipsis;\n overflow: hidden;\n `;\n});\n\nconst NodeKebabMenuWrapper = styled(FlexView)(({ theme }) => {\n return `\n cursor: pointer;\n \n &:hover {\n border-radius: 50%;\n background: ${theme.colors.WHITE_5}; \n }\n `;\n});\n\ninterface INodeOptionsMenuWrapper {\n $visible: boolean;\n}\n\nconst NodeMenuOptionsWrapper = styled(FlexView)<INodeOptionsMenuWrapper>(({ theme, $visible }) => {\n return `\n cursor: pointer;\n\n position: absolute;\n z-index: 6;\n top: calc(100% + 4px);\n left: 0;\n\n transform-origin: top;\n transform: scaleY(${$visible ? 1 : 0});\n opacity: ${$visible ? 1 : 0};\n transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;\n \n &:hover {\n border-radius: 50%;\n background: ${theme.colors.WHITE_5}; \n }\n `;\n});\n\nexport {\n NodeCardContainer,\n StyledImportantIcon,\n NodeCardInfoWrapper,\n IconWrapper,\n NodeCardContentWrapper,\n SheetTagWrapper,\n StyledLockIcon,\n InProgressIconWrapper,\n NodeCardTitle,\n NodeKebabMenuWrapper,\n NodeMenuOptionsWrapper,\n};\n"],"names":["NodeCardContainer","styled","FlexView","$showOutline","theme","$disabled","$isSheetLocked","BLACK_1","BLACK","BLACK_T_15","StyledImportantIcon","ImportantIcon","layout","NodeCardInfoWrapper","$bgImage","IconWrapper","NodeCardContentWrapper","SheetTagWrapper","$top","$right","Lock2Icon","InProgressIconWrapper","WHITE_1","NodeCardTitle","Text","NodeKebabMenuWrapper","NodeMenuOptionsWrapper","$visible"],"mappings":";;;;;AAaA,MAAMA,IAAoBC,EAAOC,CAAQ,EAAsB,CAAC;AAAA,EAC9D,cAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,gBAAAC;AACF,MAAM;AACJ,QAAM,EAAE,SAAAC,GAAS,OAAAC,GAAO,YAAAC,EAAA,IAAeL,EAAM;AAEtC,SAAA;AAAA,cACKC,IAAY,gBAAgB,SAAS;AAAA,MAC7CA,IAAY,0BAA0B,uBAAuB;AAAA;AAAA,8CAErBI,CAAU,QAAQA,CAAU;AAAA,MACpEN,KAAgB,sBAAsBM,CAAU,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAezCA,CAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAMVD,CAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAkBb,CAACH,KACD;AAAA;AAAA,sBAEcE,CAAO;AAAA;AAAA;AAAA;AAAA,SAKvB;AAAA;AAAA,QAEEJ,KAAgB,CAACG,KAAkB,sBAAsBE,CAAK,GAAG;AAAA;AAAA;AAGzE,CAAC,GAEKE,IAAsBT,EAAOU,CAAa,EAAE,CAAC,EAAE,OAAAP,QAAY;AACzD,QAAA,EAAE,QAAAQ,EAAW,IAAAR;AAEZ,SAAA;AAAA,aACIQ,EAAO,SAAS,IAAI;AAAA,cACnBA,EAAO,SAAS,IAAI;AAAA;AAAA;AAAA;AAAA;AAKlC,CAAC,GAMKC,IAAsBZ,EAAOC,CAAQ,EAAwB,CAAC,EAAE,UAAAY,QAC7D;AAAA,4BACmBA,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAOnC,GAEKC,IAAcd,EAAOC,CAAQ;AAAA;AAAA,GAI7Bc,IAAyBf,EAAOC,CAAQ,EAAE,MACvC;AAAA;AAAA;AAAA,GAIR,GAOKe,IAAkBhB,EAAOC,CAAQ,EAAoB,CAAC,EAAE,MAAAgB,GAAM,QAAAC,QAC3D;AAAA;AAAA,SAEAD,KAAQ,CAAC;AAAA,WACPC,KAAU,CAAC;AAAA;AAAA,CAGrB;AAEsBlB,EAAOmB,CAAS,EAAE,CAAC,OACjC;AAAA;AAAA;AAAA,GAIR;AAED,MAAMC,IAAwBpB,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAE,QAAY;AAC5D,QAAM,EAAE,SAAAG,GAAS,SAAAe,MAAYlB,EAAM;AAE5B,SAAA;AAAA;AAAA;AAAA;AAAA,kBAISG,CAAO;AAAA;AAAA;AAAA,cAGXe,CAAO;AAAA;AAAA;AAGrB,CAAC,GAEKC,IAAgBtB,EAAOuB,CAAI,EAAE,MAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAOR,GAEKC,IAAuBxB,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAE,QACxC;AAAA;AAAA;AAAA;AAAA;AAAA,oBAKWA,EAAM,OAAO,OAAO;AAAA;AAAA,GAGvC,GAMKsB,IAAyBzB,EAAOC,CAAQ,EAA2B,CAAC,EAAE,OAAAE,GAAO,UAAAuB,QAC1E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBASeA,IAAW,IAAI,CAAC;AAAA,eACzBA,IAAW,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,oBAKXvB,EAAM,OAAO,OAAO;AAAA;AAAA,GAGvC;"}
@@ -1,16 +0,0 @@
1
- import { jsx as d } from "react/jsx-runtime";
2
- import { memo as m } from "react";
3
- import { getNodeStateBasedTagInfo as p } from "../../utils/node-card-utils.js";
4
- import { SheetTagWrapper as g } from "./node-card-styled.js";
5
- const h = m((o) => {
6
- const { state: t, accuracy: e, nodeType: a, dueDateTs: r } = o, c = a === "DYNAMIC" ? e : void 0, {
7
- icon: i,
8
- top: n,
9
- right: s
10
- } = p(t, c, r);
11
- return /* @__PURE__ */ d(g, { $top: n, $right: s, children: i });
12
- });
13
- export {
14
- h as default
15
- };
16
- //# sourceMappingURL=node-card-tags.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-card-tags.js","sources":["../../../../../src/features/chapters-v2/comps/node-card/node-card-tags.tsx"],"sourcesContent":["import type { INodeCardTagsProps } from './node-card-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport { getNodeStateBasedTagInfo } from '../../utils/node-card-utils';\nimport * as Styled from './node-card-styled';\n\nconst NodeCardTags: FC<INodeCardTagsProps> = memo(props => {\n const { state, accuracy, nodeType, dueDateTs } = props;\n\n const isDynamicNode = nodeType === 'DYNAMIC';\n const accuracyValue = isDynamicNode ? accuracy : undefined;\n\n const {\n icon: NodeTagIcon,\n top,\n right,\n } = getNodeStateBasedTagInfo(state, accuracyValue, dueDateTs);\n\n return (\n <Styled.SheetTagWrapper $top={top} $right={right}>\n {NodeTagIcon}\n </Styled.SheetTagWrapper>\n );\n});\n\nexport default NodeCardTags;\n"],"names":["NodeCardTags","memo","props","state","accuracy","nodeType","dueDateTs","accuracyValue","NodeTagIcon","top","right","getNodeStateBasedTagInfo","jsx","Styled.SheetTagWrapper"],"mappings":";;;;AAQM,MAAAA,IAAuCC,EAAK,CAASC,MAAA;AACzD,QAAM,EAAE,OAAAC,GAAO,UAAAC,GAAU,UAAAC,GAAU,WAAAC,MAAcJ,GAG3CK,IADgBF,MAAa,YACGD,IAAW,QAE3C;AAAA,IACJ,MAAMI;AAAA,IACN,KAAAC;AAAA,IACA,OAAAC;AAAA,EACE,IAAAC,EAAyBR,GAAOI,GAAeD,CAAS;AAG1D,SAAA,gBAAAM,EAACC,GAAA,EAAuB,MAAMJ,GAAK,QAAQC,GACxC,UACHF,EAAA,CAAA;AAEJ,CAAC;"}
@@ -1,12 +0,0 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { memo as e } from "react";
3
- import m from "./student-actions/student-actions.js";
4
- import n from "./teacher-actions/teacher-actions.js";
5
- const f = e((t) => {
6
- const { userType: r } = t;
7
- return r === "STUDENT" ? /* @__PURE__ */ o(m, { ...t }) : /* @__PURE__ */ o(n, { ...t });
8
- });
9
- export {
10
- f as default
11
- };
12
- //# sourceMappingURL=node-card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-card.js","sources":["../../../../../src/features/chapters-v2/comps/node-card/node-card.tsx"],"sourcesContent":["import type { INodeCardProps } from './node-card-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport StudentActions from './student-actions/student-actions';\nimport TeacherActions from './teacher-actions/teacher-actions';\n\nconst NodeCard: FC<INodeCardProps> = memo(props => {\n const { userType } = props;\n const isStudent = userType === 'STUDENT';\n\n if (isStudent) {\n return <StudentActions {...props} />;\n }\n\n return <TeacherActions {...props} />;\n});\n\nexport default NodeCard;\n"],"names":["NodeCard","memo","props","userType","jsx","StudentActions","TeacherActions"],"mappings":";;;;AAQM,MAAAA,IAA+BC,EAAK,CAASC,MAAA;AAC3C,QAAA,EAAE,UAAAC,EAAa,IAAAD;AAGrB,SAFkBC,MAAa,YAGtB,gBAAAC,EAACC,GAAgB,EAAA,GAAGH,EAAO,CAAA,IAG7B,gBAAAE,EAACE,GAAgB,EAAA,GAAGJ,EAAO,CAAA;AACpC,CAAC;"}
@@ -1,32 +0,0 @@
1
- import o from "styled-components";
2
- import t from "../../../../ui/layout/flex-view.js";
3
- import i from "../../../../ui/text/text.js";
4
- const s = o(t)(({}) => `
5
- box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.40);
6
- width: 180px;
7
- position: relative;
8
- left: 0;
9
- top: 0;
10
- `), x = o(t)(({ theme: r, $disabled: e }) => `
11
- cursor: ${e ? "not-allowed" : "pointer"};
12
-
13
- &:hover {
14
- background: ${r.colors.BLACK};
15
- };
16
-
17
- path {
18
- fill: ${r.colors.WHITE_1};
19
- }
20
- `);
21
- o(i)(() => `
22
- display: -webkit-box;
23
- -webkit-box-orient: vertical;
24
- -webkit-line-clamp: 2;
25
- text-overflow: ellipsis;
26
- overflow: hidden;
27
- `);
28
- export {
29
- x as NodeOptionWrapper,
30
- s as NodeOptions
31
- };
32
- //# sourceMappingURL=node-menu-options-styled.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-menu-options-styled.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\n\nconst NodeOptions = styled(FlexView)(({}) => {\n return `\n box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.40);\n width: 180px;\n position: relative;\n left: 0;\n top: 0;\n `;\n});\n\ninterface INodeOptionWrapper {\n $disabled?: boolean;\n}\n\nconst NodeOptionWrapper = styled(FlexView)<INodeOptionWrapper>(({ theme, $disabled }) => {\n return `\n cursor: ${$disabled ? 'not-allowed' : 'pointer'};\n\n &:hover {\n background: ${theme.colors.BLACK};\n };\n\n path {\n fill: ${theme.colors.WHITE_1};\n }\n `;\n});\n\nconst NodeOptionText = styled(Text)(() => {\n return `\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n text-overflow: ellipsis;\n overflow: hidden;\n `;\n});\n\nexport { NodeOptions, NodeOptionWrapper, NodeOptionText };\n"],"names":["NodeOptions","styled","FlexView","NodeOptionWrapper","theme","$disabled","Text"],"mappings":";;;AAKA,MAAMA,IAAcC,EAAOC,CAAQ,EAAE,CAAC,CAAA,MAC7B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAOR,GAMKC,IAAoBF,EAAOC,CAAQ,EAAsB,CAAC,EAAE,OAAAE,GAAO,WAAAC,QAChE;AAAA,kBACSA,IAAY,gBAAgB,SAAS;AAAA;AAAA;AAAA,0BAG7BD,EAAM,OAAO,KAAK;AAAA;AAAA;AAAA;AAAA,oBAIxBA,EAAM,OAAO,OAAO;AAAA;AAAA,KAGvC;AAEsBH,EAAOK,CAAI,EAAE,MAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAOR;"}
@@ -1,31 +0,0 @@
1
- import { jsx as e, jsxs as p } from "react/jsx-runtime";
2
- import { memo as c } from "react";
3
- import a from "../../../../ui/text/text.js";
4
- import { NodeOptions as m, NodeOptionWrapper as $ } from "./node-menu-options-styled.js";
5
- const h = c(({ options: o }) => o.length === 0 ? null : /* @__PURE__ */ e(m, { $background: "BLACK_2", $borderColor: "WHITE_T_38", $gapX: 0.5, children: o.map((t) => {
6
- const { icon: n, label: l, id: i, disabled: r, onClick: d } = t;
7
- return /* @__PURE__ */ p(
8
- $,
9
- {
10
- $flexDirection: "row",
11
- $alignItems: "center",
12
- $flexGap: 8,
13
- $gapX: 0.5,
14
- $gutterX: 1,
15
- $opacity: r ? 0.5 : 1,
16
- $disabled: r,
17
- onClick: () => {
18
- r || d(i);
19
- },
20
- children: [
21
- /* @__PURE__ */ e(n, { width: 20, height: 20 }),
22
- /* @__PURE__ */ e(a, { $renderAs: "ub3", $color: "WHITE", children: l })
23
- ]
24
- },
25
- i
26
- );
27
- }) }));
28
- export {
29
- h as default
30
- };
31
- //# sourceMappingURL=node-menu-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-menu-options.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.tsx"],"sourcesContent":["import type { INodeMenuOptions } from './node-menu-options-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport Text from '../../../../ui/text/text';\nimport * as Styled from './node-menu-options-styled';\n\nconst NodeMenuOptions: FC<INodeMenuOptions> = memo(({ options }) => {\n if (options.length === 0) return null;\n\n return (\n <Styled.NodeOptions $background=\"BLACK_2\" $borderColor=\"WHITE_T_38\" $gapX={0.5}>\n {options.map(optionInfo => {\n const { icon: OptionIcon, label, id, disabled, onClick } = optionInfo;\n\n return (\n <Styled.NodeOptionWrapper\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 onClick={() => {\n if (!disabled) {\n onClick(id);\n }\n }}\n >\n <OptionIcon width={20} height={20} />\n\n <Text $renderAs=\"ub3\" $color=\"WHITE\">\n {label}\n </Text>\n </Styled.NodeOptionWrapper>\n );\n })}\n </Styled.NodeOptions>\n );\n});\n\nexport default NodeMenuOptions;\n"],"names":["NodeMenuOptions","memo","options","jsx","Styled.NodeOptions","optionInfo","OptionIcon","label","id","disabled","onClick","jsxs","Styled.NodeOptionWrapper","Text"],"mappings":";;;;AAQA,MAAMA,IAAwCC,EAAK,CAAC,EAAE,SAAAC,QAChDA,EAAQ,WAAW,IAAU,OAG9B,gBAAAC,EAAAC,GAAA,EAAmB,aAAY,WAAU,cAAa,cAAa,OAAO,KACxE,UAAQF,EAAA,IAAI,CAAcG,MAAA;AACzB,QAAM,EAAE,MAAMC,GAAY,OAAAC,GAAO,IAAAC,GAAI,UAAAC,GAAU,SAAAC,EAAY,IAAAL;AAGzD,SAAA,gBAAAM;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,UAAU;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,MACV,UAAUH,IAAW,MAAM;AAAA,MAC3B,WAAWA;AAAA,MAEX,SAAS,MAAM;AACb,QAAKA,KACHC,EAAQF,CAAE;AAAA,MAEd;AAAA,MAEA,UAAA;AAAA,QAAA,gBAAAL,EAACG,GAAW,EAAA,OAAO,IAAI,QAAQ,IAAI;AAAA,0BAElCO,GAAK,EAAA,WAAU,OAAM,QAAO,SAC1B,UACHN,GAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAXKC;AAAA,EAAA;AAcV,CAAA,EACH,CAAA,CAEH;"}
@@ -1,160 +0,0 @@
1
- import { jsx as e, jsxs as d, Fragment as G } from "react/jsx-runtime";
2
- import { memo as K, useCallback as T } from "react";
3
- import P from "../../../../../assets/line-icons/icons/eye2.js";
4
- import X from "../../../../../assets/line-icons/icons/redo.js";
5
- import j from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
6
- import M from "../../../../ui/context-menu/context-menu.js";
7
- import z from "../../../../ui/text/text.js";
8
- import { BLOCK_TYPE as F } from "../../../constants/block-constants.js";
9
- import { NODE_CARD_STATES as l } from "../../../constants/node-constants.js";
10
- import { getNodeTypeBasedBgImage as Y } from "../../../utils/index.js";
11
- import { getNodeCardBasedIcon as Z } from "../../../utils/node-card-utils.js";
12
- import q from "../border-path-animation.js";
13
- import { NodeCardContainer as J, NodeCardInfoWrapper as Q, IconWrapper as U, StyledImportantIcon as V, NodeCardContentWrapper as ee, NodeCardTitle as te } from "../node-card-styled.js";
14
- import oe from "../node-card-tags.js";
15
- import re from "../node-menu-options/node-menu-options.js";
16
- const Ie = K((k) => {
17
- const {
18
- nodeData: t,
19
- imageHue: w,
20
- blockType: A,
21
- onNodeAttempt: r,
22
- onNodeReattempt: n,
23
- onNodeReview: a,
24
- onNodeView: i
25
- } = k, {
26
- accuracy: S,
27
- attempt_location: E,
28
- node_type: s,
29
- card_header: N,
30
- title: y,
31
- state: c,
32
- is_optional: p,
33
- sheet_statement: h,
34
- permissions: x
35
- } = t, {
36
- can_review: u,
37
- can_reattempt: f,
38
- can_start: C,
39
- can_resume: $
40
- } = x, g = A === F.GOAL, o = c === l.LOCKED, B = c === l.NOT_STARTED, L = c === l.IN_PROGRESS, R = E === "INCLASS", W = !h || !g, I = !p && (L || B), m = f || u, v = Y(s), _ = Z(s), b = T(
41
- (O) => {
42
- switch (O) {
43
- case "node-card-review":
44
- a == null || a(t);
45
- return;
46
- case "node-card-reattempt":
47
- n == null || n(t);
48
- return;
49
- default:
50
- throw new Error(`No callback function for ${O}`);
51
- }
52
- },
53
- [t, n, a]
54
- ), D = T(() => {
55
- if (!(m || o)) {
56
- if (C || $) {
57
- r == null || r(t);
58
- return;
59
- }
60
- i == null || i(t);
61
- }
62
- }, [$, C, t, r, i, m, o]), H = [
63
- {
64
- id: "node-card-review",
65
- label: "Review",
66
- icon: P,
67
- disabled: !u,
68
- onClick: b
69
- },
70
- {
71
- id: "node-card-reattempt",
72
- label: "Reattempt",
73
- icon: X,
74
- disabled: !f,
75
- onClick: b
76
- }
77
- ];
78
- return /* @__PURE__ */ e(
79
- M,
80
- {
81
- targetElement: /* @__PURE__ */ e(
82
- J,
83
- {
84
- $showOutline: !I,
85
- $background: `${w}_2`,
86
- $disabled: o,
87
- onClick: D,
88
- children: /* @__PURE__ */ d(
89
- j,
90
- {
91
- renderAs: "primary",
92
- tooltipItem: h,
93
- position: "bottom",
94
- zIndex: 5,
95
- hidden: W,
96
- parentWidth: "100%",
97
- widthX: 11.25,
98
- children: [
99
- /* @__PURE__ */ d(
100
- Q,
101
- {
102
- $flexDirection: "row",
103
- $alignItems: "center",
104
- $heightX: 3.5,
105
- $bgImage: v,
106
- $gutterX: 0.78125,
107
- $flexGap: 8.5,
108
- $opacity: o ? 0.5 : 1,
109
- children: [
110
- /* @__PURE__ */ d(
111
- U,
112
- {
113
- $width: 31,
114
- $height: 31,
115
- $background: "WHITE_1",
116
- $position: "relative",
117
- $alignItems: "center",
118
- $justifyContent: "center",
119
- children: [
120
- _ && /* @__PURE__ */ e(_, { width: 20, height: 20 }),
121
- !p && /* @__PURE__ */ e(V, {})
122
- ]
123
- }
124
- ),
125
- /* @__PURE__ */ d(z, { $renderAs: "ac4-black", $color: "BLACK", children: [
126
- N,
127
- " ",
128
- R && ". CW"
129
- ] }),
130
- I && /* @__PURE__ */ e(q, {})
131
- ]
132
- }
133
- ),
134
- /* @__PURE__ */ e(oe, { nodeType: s, state: c, accuracy: S }),
135
- !g && /* @__PURE__ */ e(ee, { $background: "WHITE_1", $heightX: 4, children: /* @__PURE__ */ e(
136
- te,
137
- {
138
- $renderAs: "ab3",
139
- $color: "BLACK_1",
140
- $opacity: o ? 0.5 : 1,
141
- children: y
142
- }
143
- ) })
144
- ]
145
- }
146
- )
147
- }
148
- ),
149
- startLeft: !0,
150
- menuWidth: "100%",
151
- menuZIndex: 6,
152
- menuOffset: 2,
153
- menuElement: /* @__PURE__ */ e(G, { children: m ? /* @__PURE__ */ e(re, { options: H }) : void 0 })
154
- }
155
- );
156
- });
157
- export {
158
- Ie as default
159
- };
160
- //# sourceMappingURL=student-actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"student-actions.js","sources":["../../../../../../src/features/chapters-v2/comps/node-card/student-actions/student-actions.tsx"],"sourcesContent":["import type { INodeCardProps } from '../node-card-types';\nimport type { INodeMenuOption } from '../node-menu-options/node-menu-options-types';\n\nimport { memo, useCallback, type FC } from 'react';\n\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport RedoIcon from '../../../../../assets/line-icons/icons/redo';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport Text from '../../../../ui/text/text';\nimport { BLOCK_TYPE } from '../../../constants/block-constants';\nimport { NODE_CARD_STATES } from '../../../constants/node-constants';\nimport { getNodeTypeBasedBgImage } from '../../../utils';\nimport { getNodeCardBasedIcon } from '../../../utils/node-card-utils';\nimport 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 StudentActions: FC<Omit<INodeCardProps, 'userType'>> = memo(props => {\n const {\n nodeData,\n imageHue,\n blockType,\n onNodeAttempt,\n onNodeReattempt,\n onNodeReview,\n onNodeView,\n } = props;\n const {\n accuracy,\n attempt_location: attemptLocation,\n node_type: nodeType,\n card_header: cardHeader,\n title,\n state,\n is_optional: isOptional,\n sheet_statement: sheetStatement,\n permissions,\n } = nodeData;\n\n const {\n can_review: canReview,\n can_reattempt: canReattempt,\n can_start: canStart,\n can_resume: canResume,\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 const renderOptions = canReattempt || canReview;\n\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const NodeCardIcon = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-review':\n onNodeReview?.(nodeData);\n\n return;\n\n case 'node-card-reattempt':\n onNodeReattempt?.(nodeData);\n\n return;\n\n default:\n throw new Error(`No callback function for ${optionId}`);\n }\n },\n [nodeData, onNodeReattempt, onNodeReview],\n );\n\n const handleOnNodeCardClick = useCallback(() => {\n if (renderOptions || sheetLocked) return;\n\n if (canStart || canResume) {\n onNodeAttempt?.(nodeData);\n\n return;\n }\n\n onNodeView?.(nodeData);\n }, [canResume, canStart, nodeData, onNodeAttempt, onNodeView, renderOptions, sheetLocked]);\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-review',\n label: 'Review',\n icon: Eye2Icon,\n disabled: !canReview,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-reattempt',\n label: 'Reattempt',\n icon: RedoIcon,\n disabled: !canReattempt,\n onClick: handleOnMenuOptionClick,\n },\n ];\n\n return (\n <ContextMenu\n targetElement={\n <Styled.NodeCardContainer\n $showOutline={!showCardAnimation}\n $background={`${imageHue}_2`}\n $disabled={sheetLocked}\n onClick={handleOnNodeCardClick}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n tooltipItem={sheetStatement}\n position=\"bottom\"\n zIndex={5}\n hidden={tooltipHidden}\n parentWidth=\"100%\"\n widthX={11.25}\n >\n <Styled.NodeCardInfoWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $heightX={3.5}\n $bgImage={nodeBgImage}\n $gutterX={0.78125}\n $flexGap={8.5}\n $opacity={sheetLocked ? 0.5 : 1}\n >\n <Styled.IconWrapper\n $width={31}\n $height={31}\n $background=\"WHITE_1\"\n $position=\"relative\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n {NodeCardIcon && <NodeCardIcon width={20} height={20} />}\n {!isOptional && <Styled.StyledImportantIcon />}\n </Styled.IconWrapper>\n\n <Text $renderAs=\"ac4-black\" $color=\"BLACK\">\n {cardHeader} {inClassSheet && `. CW`}\n </Text>\n\n {showCardAnimation && <BorderPathAnimation />}\n </Styled.NodeCardInfoWrapper>\n\n <NodeCardTags nodeType={nodeType} state={state} accuracy={accuracy} />\n\n {!isGoalBlock && (\n <Styled.NodeCardContentWrapper $background=\"WHITE_1\" $heightX={4}>\n <Styled.NodeCardTitle\n $renderAs=\"ab3\"\n $color=\"BLACK_1\"\n $opacity={sheetLocked ? 0.5 : 1}\n >\n {title}\n </Styled.NodeCardTitle>\n </Styled.NodeCardContentWrapper>\n )}\n </ArrowTooltip>\n </Styled.NodeCardContainer>\n }\n startLeft\n menuWidth=\"100%\"\n menuZIndex={6}\n menuOffset={2}\n menuElement={<>{renderOptions ? <NodeMenuOptions options={menuOptions} /> : undefined}</>}\n />\n );\n});\n\nexport default StudentActions;\n"],"names":["StudentActions","memo","props","nodeData","imageHue","blockType","onNodeAttempt","onNodeReattempt","onNodeReview","onNodeView","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","canReview","canReattempt","canStart","canResume","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","showCardAnimation","renderOptions","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","handleOnNodeCardClick","menuOptions","Eye2Icon","RedoIcon","jsx","ContextMenu","Styled.NodeCardContainer","jsxs","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","Styled.StyledImportantIcon","Text","BorderPathAnimation","NodeCardTags","Styled.NodeCardContentWrapper","Styled.NodeCardTitle","NodeMenuOptions"],"mappings":"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"}
@@ -1,184 +0,0 @@
1
- import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
- import { memo as P, useRef as X, useCallback as F } from "react";
3
- import v from "../../../../../assets/line-icons/icons/book2.js";
4
- import z from "../../../../../assets/line-icons/icons/check2.js";
5
- import N from "../../../../../assets/line-icons/icons/eye2.js";
6
- import U from "../../../../../assets/line-icons/icons/home2.js";
7
- import T from "../../../../../assets/line-icons/icons/more-vertical.js";
8
- import V from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
9
- import Y from "../../../../ui/hooks/use-context-menu-click-handler.js";
10
- import q from "../../../../ui/layout/flex-view.js";
11
- import J from "../../../../ui/text/text.js";
12
- import { BLOCK_TYPE as Q } from "../../../constants/block-constants.js";
13
- import { NODE_CARD_STATES as $, TEACHER_MENU_LABELS as Z } from "../../../constants/node-constants.js";
14
- import { getNodeTypeBasedBgImage as D } from "../../../utils/index.js";
15
- import { getNodeCardBasedIcon as ee } from "../../../utils/node-card-utils.js";
16
- import re from "../border-path-animation.js";
17
- import { NodeCardContainer as te, NodeCardInfoWrapper as ie, IconWrapper as oe, StyledImportantIcon as ne, NodeKebabMenuWrapper as k, NodeCardContentWrapper as ce, NodeCardTitle as ae, NodeMenuOptionsWrapper as se } from "../node-card-styled.js";
18
- import le from "../node-card-tags.js";
19
- import de from "../node-menu-options/node-menu-options.js";
20
- const { ASSIGN_AS_HW: me, REVERT_TO_CW: pe, REVIEW: he, VIEW: fe, MARK_AS_DONE: $e } = Z, Re = P(
21
- ({
22
- nodeData: r,
23
- imageHue: S,
24
- blockType: O,
25
- isSkipped: C,
26
- onNodeAttemptLocationChange: o,
27
- onNodeMarkAsDone: n,
28
- onNodeView: c,
29
- onNodeReview: a
30
- }) => {
31
- const l = X(null), { menuVisible: W, onMenuClick: u } = Y(l), {
32
- accuracy: w,
33
- attempt_location: x,
34
- node_type: d,
35
- card_header: y,
36
- title: B,
37
- state: s,
38
- is_optional: _,
39
- sheet_statement: I,
40
- permissions: A
41
- } = r, {
42
- can_change_attempt_location: H,
43
- can_mark_familiar: L,
44
- can_review: m
45
- } = A, p = O === Q.GOAL, i = s === $.LOCKED, R = s === $.NOT_STARTED, G = s === $.IN_PROGRESS, h = x === "INCLASS", K = !I || !p || i, g = !_ && (G || R), M = D(d), b = ee(d), f = F(
46
- (E) => {
47
- switch (E) {
48
- case "node-card-view":
49
- m ? a == null || a(r) : c == null || c(r);
50
- return;
51
- case "node-card-assign-as-hw":
52
- o == null || o(r);
53
- return;
54
- case "node-card-mark-as-done":
55
- n == null || n(r);
56
- return;
57
- default:
58
- throw new Error(`No callback function for ${E}`);
59
- }
60
- },
61
- [
62
- m,
63
- r,
64
- o,
65
- n,
66
- a,
67
- c
68
- ]
69
- ), j = [
70
- {
71
- id: "node-card-view",
72
- label: m ? he : fe,
73
- icon: N,
74
- disabled: !1,
75
- onClick: f
76
- },
77
- {
78
- id: "node-card-assign-as-hw",
79
- label: h ? me : pe,
80
- icon: h ? U : v,
81
- disabled: !H,
82
- onClick: f
83
- },
84
- {
85
- id: "node-card-mark-as-done",
86
- label: $e,
87
- icon: z,
88
- disabled: !L,
89
- onClick: f
90
- }
91
- ];
92
- return /* @__PURE__ */ t(
93
- te,
94
- {
95
- $showOutline: !g,
96
- $isSheetLocked: i,
97
- $background: `${S}_2`,
98
- $disabled: !!C,
99
- children: [
100
- /* @__PURE__ */ t(
101
- V,
102
- {
103
- renderAs: "primary",
104
- tooltipItem: I,
105
- position: "bottom",
106
- zIndex: 5,
107
- hidden: K,
108
- parentWidth: "100%",
109
- widthX: 11.25,
110
- children: [
111
- /* @__PURE__ */ t(
112
- ie,
113
- {
114
- $flexDirection: "row",
115
- $alignItems: "center",
116
- $width: "100%",
117
- $heightX: 3.5,
118
- $bgImage: M,
119
- $gutterX: 0.78125,
120
- $flexGap: 8.5,
121
- children: [
122
- /* @__PURE__ */ t(
123
- oe,
124
- {
125
- $width: 31,
126
- $height: 31,
127
- $background: "WHITE_1",
128
- $position: "relative",
129
- $alignItems: "center",
130
- $justifyContent: "center",
131
- $opacity: i ? 0.5 : 1,
132
- children: [
133
- b && /* @__PURE__ */ e(b, { width: 20, height: 20 }),
134
- !_ && /* @__PURE__ */ e(ne, {})
135
- ]
136
- }
137
- ),
138
- /* @__PURE__ */ t(J, { $renderAs: "ac4-black", $color: "BLACK", $opacity: i ? 0.5 : 1, children: [
139
- y,
140
- " ",
141
- h && ". CW"
142
- ] }),
143
- /* @__PURE__ */ e(q, { className: "context-menu", children: p && /* @__PURE__ */ e(k, { ref: l, onClick: u, children: /* @__PURE__ */ e(T, { width: 16, height: 16 }) }) }),
144
- g && !C && /* @__PURE__ */ e(re, {})
145
- ]
146
- }
147
- ),
148
- /* @__PURE__ */ e(le, { nodeType: d, state: s, accuracy: w }),
149
- !p && /* @__PURE__ */ t(
150
- ce,
151
- {
152
- $flexDirection: "row",
153
- $alignItems: "center",
154
- $background: "WHITE_1",
155
- $flexGap: 8,
156
- $heightX: 4,
157
- $justifyContent: "space-between",
158
- children: [
159
- /* @__PURE__ */ e(
160
- ae,
161
- {
162
- $renderAs: "ab3",
163
- $color: "BLACK_1",
164
- $opacity: i ? 0.5 : 1,
165
- children: B
166
- }
167
- ),
168
- /* @__PURE__ */ e(k, { ref: l, onClick: u, children: /* @__PURE__ */ e(T, { width: 16, height: 16 }) })
169
- ]
170
- }
171
- )
172
- ]
173
- }
174
- ),
175
- /* @__PURE__ */ e(se, { $visible: W, children: /* @__PURE__ */ e(de, { options: j }) })
176
- ]
177
- }
178
- );
179
- }
180
- );
181
- export {
182
- Re as default
183
- };
184
- //# 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 } from 'react';\n\nimport Book2Icon from '../../../../../assets/line-icons/icons/book2';\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 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, REVERT_TO_CW, 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 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 } = 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 || sheetLocked;\n\n const showCardAnimation = !isOptional && (sheetInProgress || sheetNotStarted);\n\n const nodeBgImage = getNodeTypeBasedBgImage(nodeType);\n const NodeCardIcon = getNodeCardBasedIcon(nodeType);\n\n const handleOnMenuOptionClick = useCallback(\n (optionId: string) => {\n switch (optionId) {\n case 'node-card-view':\n if (canReview) {\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 ],\n );\n\n const menuOptions: INodeMenuOption[] = [\n {\n id: 'node-card-view',\n label: canReview ? REVIEW : VIEW,\n icon: Eye2Icon,\n disabled: false,\n onClick: handleOnMenuOptionClick,\n },\n {\n id: 'node-card-assign-as-hw',\n label: inClassSheet ? ASSIGN_AS_HW : REVERT_TO_CW,\n icon: inClassSheet ? Home2Icon : Book2Icon,\n disabled: !canChangeAttemptLocation,\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 >\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 {NodeCardIcon && <NodeCardIcon width={20} height={20} />}\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","REVERT_TO_CW","REVIEW","VIEW","MARK_AS_DONE","TEACHER_MENU_LABELS","TeacherActions","memo","nodeData","imageHue","blockType","isSkipped","onNodeAttemptLocationChange","onNodeMarkAsDone","onNodeView","onNodeReview","containerRef","useRef","menuVisible","onMenuClick","useContextMenuClickHandler","accuracy","attemptLocation","nodeType","cardHeader","title","state","isOptional","sheetStatement","permissions","canChangeAttemptLocation","canMarkFamiliar","canReview","isGoalBlock","BLOCK_TYPE","sheetLocked","NODE_CARD_STATES","sheetNotStarted","sheetInProgress","inClassSheet","tooltipHidden","showCardAnimation","nodeBgImage","getNodeTypeBasedBgImage","NodeCardIcon","getNodeCardBasedIcon","handleOnMenuOptionClick","useCallback","optionId","menuOptions","Eye2Icon","Home2Icon","Book2Icon","Check2Icon","jsxs","Styled.NodeCardContainer","ArrowTooltip","Styled.NodeCardInfoWrapper","Styled.IconWrapper","jsx","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,15 +0,0 @@
1
- const I = {
2
- ASSIGN_AS_HW: "Assign as HW",
3
- REVERT_TO_CW: "Revert to CW",
4
- MARK_AS_DONE: "Mark as Done",
5
- SKIP: "Skip",
6
- REVERT_SKIP: "Revert Skip",
7
- REVIEW: "Review",
8
- VIEW: "View"
9
- };
10
- 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 || {});
11
- export {
12
- R as NODE_CARD_STATES,
13
- I as TEACHER_MENU_LABELS
14
- };
15
- //# sourceMappingURL=node-constants.js.map