@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 +1 @@
1
- {"version":3,"file":"goal-action-ctas.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.tsx"],"sourcesContent":["import type { IGoalActionCtas } from './goal-action-ctas-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport Edit2Icon from '../../../../../../assets/line-icons/icons/edit2';\nimport ArrowTooltip from '../../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\nimport { EVENT_NAMES } from '../../../../create/milestone-create-constants';\nimport { invalidateMilestonesData } from '../../../api/get-milestones';\nimport { useDraftPublish } from './use-goal-draft-publish';\n\nconst GoalActionCtas: FC<IGoalActionCtas> = memo(props => {\n const {\n milestone,\n studentId,\n isClassOngoing,\n isStudentPresent,\n studentName,\n teacherName,\n parentName,\n onAddOutcome,\n onDraftPublish,\n onEdit,\n courseStream,\n } = props;\n const {\n id: milestoneId,\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n milestone_state: milestoneState,\n permissions: milestonePermissions,\n goal_category: goalCategory,\n goal_code: goalCode,\n } = milestone;\n\n const {\n can_delete: canDelete,\n can_update_date: canUpdateDate,\n can_update_plan: canUpdatePlan,\n } = milestonePermissions;\n\n const { onEvent: trackEvent } = useUIContext();\n const [error, setError] = useState('');\n\n const canAddOutcome = milestoneState === 'OUTCOME_PENDING';\n const isDraftMilestone = goalCode && milestoneState === 'DRAFT';\n const canPublishOrEditGoal = !isClassOngoing || isStudentPresent;\n\n const handleGoalPublishComplete = useCallback(\n (errorMessage: string | null, data?: { id: string }) => {\n const { id } = data || {};\n\n if (errorMessage) {\n setError(errorMessage);\n } else {\n if (milestoneId) {\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n course_stream: courseStream,\n student_id: studentId,\n });\n }\n onDraftPublish?.(milestoneId, true);\n trackEvent(EVENT_NAMES.DRAFT_EDIT.completed, {\n milestone_id: milestoneId || id,\n });\n }\n },\n [milestoneId, studentId, onDraftPublish, setError, trackEvent, courseStream],\n );\n\n const { onPublish, isProcessing } = useDraftPublish({\n handleGoalPublishComplete,\n milestone,\n milestoneId,\n studentName,\n parentName,\n teacherName,\n });\n\n const handleGoalEdit = useCallback(() => {\n onEdit?.({\n milestoneId,\n milestoneName,\n milestoneDueDate: dueDate,\n isMilestoneChaptersListEditable: canUpdatePlan,\n isMilestoneDateEditable: canUpdateDate,\n milestoneState,\n canDelete,\n goalCategory,\n goalCode,\n });\n }, [\n canDelete,\n canUpdateDate,\n canUpdatePlan,\n dueDate,\n goalCategory,\n goalCode,\n milestoneId,\n milestoneName,\n milestoneState,\n onEdit,\n ]);\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.(milestoneId);\n }, [onAddOutcome, milestoneId]);\n\n return (\n <FlexView $justifyContent=\"center\" $flexGap={8}>\n <FlexView\n $flexDirection=\"row\"\n $flexGapX={1.5}\n $alignItems=\"center\"\n $width=\"fit-content\"\n onClick={e => e.stopPropagation()}\n >\n {canAddOutcome && (\n <Button\n renderAs=\"primary\"\n size=\"small\"\n label=\"Add outcome\"\n shape=\"square\"\n widthX={10}\n onClick={handleOnAddOutcome}\n />\n )}\n\n {isDraftMilestone && (\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canPublishOrEditGoal}\n widthX={15}\n >\n <Button\n renderAs=\"primary\"\n shape=\"square\"\n widthX={10}\n label=\"Publish\"\n size=\"small\"\n onClick={onPublish}\n busy={isProcessing}\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n )}\n\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n widthX={!canPublishOrEditGoal ? 15 : 5}\n tooltipItem={\n !canPublishOrEditGoal ? 'Goals can only be edited for students in class.' : 'Edit goal'\n }\n >\n <IconButton\n renderAs=\"secondary\"\n Icon={Edit2Icon}\n analyticsLabel=\"Edit Goal\"\n onClick={handleGoalEdit}\n size=\"xsmall\"\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n </FlexView>\n\n {error && (\n <Text $widthX={12.5} $renderAs=\"ub3-bold\" $color=\"RED\" $align=\"center\">\n {error}\n </Text>\n )}\n </FlexView>\n );\n});\n\nexport default GoalActionCtas;\n"],"names":["GoalActionCtas","memo","props","milestone","studentId","isClassOngoing","isStudentPresent","studentName","teacherName","parentName","onAddOutcome","onDraftPublish","onEdit","courseStream","milestoneId","milestoneName","dueDate","milestoneState","milestonePermissions","goalCategory","goalCode","canDelete","canUpdateDate","canUpdatePlan","trackEvent","useUIContext","error","setError","useState","canAddOutcome","isDraftMilestone","canPublishOrEditGoal","handleGoalPublishComplete","useCallback","errorMessage","data","id","invalidateMilestonesData","EVENT_NAMES","onPublish","isProcessing","useDraftPublish","handleGoalEdit","handleOnAddOutcome","jsxs","FlexView","e","jsx","Button","ArrowTooltip","IconButton","Edit2Icon","Text"],"mappings":"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"}
1
+ {"version":3,"file":"goal-action-ctas.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.tsx"],"sourcesContent":["import type { IGoalActionCtas } from './goal-action-ctas-types';\nimport type { FC } from 'react';\n\nimport { memo, useCallback, useState } from 'react';\n\nimport Bin2Icon from '../../../../../../assets/line-icons/icons/bin2';\nimport Edit2Icon from '../../../../../../assets/line-icons/icons/edit2';\nimport PlusIcon from '../../../../../../assets/line-icons/icons/plus';\nimport ArrowTooltip from '../../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\nimport { EVENT_NAMES } from '../../../../create/milestone-create-constants';\nimport { invalidateMilestonesData } from '../../../api/get-milestones';\nimport { useDraftPublish } from './use-goal-draft-publish';\n\nconst GoalActionCtas: FC<IGoalActionCtas> = memo(props => {\n const {\n milestone,\n studentId,\n isClassOngoing,\n isStudentPresent,\n studentName,\n teacherName,\n parentName,\n onAddOutcome,\n onDraftPublish,\n onEdit,\n onDelete,\n courseStream,\n } = props;\n const {\n id: milestoneId,\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n milestone_state: milestoneState,\n permissions: milestonePermissions,\n goal_category: goalCategory,\n goal_code: goalCode,\n } = milestone;\n\n const {\n can_delete: canDelete,\n can_update_date: canUpdateDate,\n can_update_plan: canUpdatePlan,\n } = milestonePermissions;\n\n const { onEvent: trackEvent } = useUIContext();\n const [error, setError] = useState('');\n\n const canAddOutcome = milestoneState === 'OUTCOME_PENDING';\n const isDraftMilestone = goalCode && milestoneState === 'DRAFT';\n const canPublishOrEditGoal = !isClassOngoing || isStudentPresent;\n\n const handleGoalPublishComplete = useCallback(\n (errorMessage: string | null, data?: { id: string }) => {\n const { id } = data || {};\n\n if (errorMessage) {\n setError(errorMessage);\n } else {\n if (milestoneId) {\n invalidateMilestonesData({\n milestone_state_group: 'LIVE',\n with_plan: true,\n course_stream: courseStream,\n student_id: studentId,\n in_class: isClassOngoing,\n });\n }\n onDraftPublish?.(milestoneId, true);\n trackEvent(EVENT_NAMES.DRAFT_EDIT.completed, {\n milestone_id: milestoneId || id,\n });\n }\n },\n [milestoneId, isClassOngoing, studentId, onDraftPublish, setError, trackEvent, courseStream],\n );\n\n const { onPublish, isProcessing } = useDraftPublish({\n handleGoalPublishComplete,\n milestone,\n milestoneId,\n studentName,\n parentName,\n teacherName,\n });\n\n const handleGoalEdit = useCallback(() => {\n onEdit?.({\n milestoneId,\n milestoneName,\n milestoneDueDate: dueDate,\n isMilestoneChaptersListEditable: canUpdatePlan,\n isMilestoneDateEditable: canUpdateDate,\n milestoneState,\n canDelete,\n goalCategory,\n goalCode,\n });\n }, [\n canDelete,\n canUpdateDate,\n canUpdatePlan,\n dueDate,\n goalCategory,\n goalCode,\n milestoneId,\n milestoneName,\n milestoneState,\n onEdit,\n ]);\n\n const handleGoalDelete = useCallback(() => {\n onDelete?.({ milestoneId });\n }, [onDelete, milestoneId]);\n\n const handleOnAddOutcome = useCallback(() => {\n onAddOutcome?.(milestoneId);\n }, [onAddOutcome, milestoneId]);\n\n return (\n <FlexView\n $flexDirection=\"row\"\n $flexGapX={1.5}\n $alignItems=\"center\"\n $width=\"fit-content\"\n onClick={e => e.stopPropagation()}\n >\n {canAddOutcome && (\n <Button\n renderAs=\"primary\"\n Icon={PlusIcon}\n size=\"small\"\n label=\"Add outcome\"\n shape=\"square\"\n widthX={11}\n onClick={handleOnAddOutcome}\n />\n )}\n\n {isDraftMilestone && (\n <>\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n tooltipItem=\"Goals can only be added for students who have joined the class\"\n hidden={canPublishOrEditGoal}\n widthX={15}\n >\n <Button\n renderAs=\"primary\"\n shape=\"square\"\n widthX={8}\n label=\"Publish\"\n size=\"xsmall\"\n onClick={onPublish}\n busy={isProcessing}\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n\n <ArrowTooltip\n position=\"bottom\"\n renderAs=\"primary\"\n widthX={!canPublishOrEditGoal ? 15 : 5}\n tooltipItem={\n !canPublishOrEditGoal\n ? 'Goals can only be edited for students in class.'\n : 'Edit goal'\n }\n >\n <IconButton\n renderAs=\"secondary\"\n Icon={Edit2Icon}\n analyticsLabel=\"Edit Goal\"\n onClick={handleGoalEdit}\n disabled={!canPublishOrEditGoal}\n />\n </ArrowTooltip>\n\n <ArrowTooltip position=\"bottom\" renderAs=\"primary\" tooltipItem=\"Delete goal\">\n <IconButton\n renderAs=\"secondary\"\n Icon={Bin2Icon}\n analyticsLabel=\"Delete Goal\"\n onClick={handleGoalDelete}\n />\n </ArrowTooltip>\n </>\n )}\n\n {error && (\n <Text $renderAs=\"ub3-bold\" $color=\"RED\">\n {error}\n </Text>\n )}\n </FlexView>\n );\n});\n\nexport default GoalActionCtas;\n"],"names":["GoalActionCtas","memo","props","milestone","studentId","isClassOngoing","isStudentPresent","studentName","teacherName","parentName","onAddOutcome","onDraftPublish","onEdit","onDelete","courseStream","milestoneId","milestoneName","dueDate","milestoneState","milestonePermissions","goalCategory","goalCode","canDelete","canUpdateDate","canUpdatePlan","trackEvent","useUIContext","error","setError","useState","canAddOutcome","isDraftMilestone","canPublishOrEditGoal","handleGoalPublishComplete","useCallback","errorMessage","data","id","invalidateMilestonesData","EVENT_NAMES","onPublish","isProcessing","useDraftPublish","handleGoalEdit","handleGoalDelete","handleOnAddOutcome","jsxs","FlexView","e","jsx","Button","PlusIcon","Fragment","ArrowTooltip","IconButton","Edit2Icon","Bin2Icon","Text"],"mappings":"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"}
@@ -1,156 +1,184 @@
1
- import { jsxs as t, jsx as e, Fragment as W } from "react/jsx-runtime";
2
- import { memo as X, useRef as j, useState as H, useMemo as L, useLayoutEffect as F } from "react";
3
- import K from "../../../../../assets/line-icons/icons/check2.js";
4
- import V from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
5
- import v from "../../../../ui/image/image.js";
6
- import r from "../../../../ui/layout/flex-view.js";
7
- import U from "../../../../ui/separator/separator.js";
8
- import s from "../../../../ui/text/text.js";
9
- import Y from "./goals/goal-action-ctas.js";
10
- import { GOAL_CATEGORY_BASED_IMAGES as q } from "./milestone-constants.js";
11
- import { getRemainingDaysToCompleteGoal as z, getGoalCategoryBasedColorTheme as J, getMilestoneWidgetStatusInfo as Q } from "./milestone-utils.js";
12
- import { ChapterProgressSVG as Z, ChapterProgressSVGCircle as f, StyledCheckIconWrapper as ee, MilestoneTitle as te } from "./milestone-widget-styled.js";
13
- import re from "./outcome/outcome.js";
14
- const ue = X(
15
- ({ isClassOngoing: u, isStudentPresent: C, isExpanded: oe, ...x }) => {
16
- const {
17
- milestone: d,
18
- studentId: T,
19
- studentName: _,
20
- teacherName: A,
21
- parentName: w,
22
- userType: y,
23
- courseStream: I,
24
- outcomes: n,
25
- onEdit: G,
26
- onDraftPublish: D,
27
- onAddOutcome: E
28
- } = x, {
29
- milestone_name: m,
30
- milestone_date_ts: b,
31
- milestone_state: i,
32
- goal_category: l,
33
- goal_code: p,
34
- progress_stat: S
35
- } = d, { completed: g, total: k } = S || {}, h = i === "OUTCOME_PENDING", a = g > 0 ? Math.floor((g / k || 1) * 100) : 0, o = j(null), [B, O] = H(!1), { textColor: N, borderColor: $ } = J(l), c = Q(i), R = (h ? c == null ? void 0 : c.progressBackgroundColor : $) || "WHITE_5", M = L(() => typeof p == "string", [p]), P = z(b);
36
- return F(() => {
37
- o.current && o.current.scrollHeight > o.current.clientHeight && O(!0);
38
- }, [o]), l ? /* @__PURE__ */ t(r, { $flexDirection: "row", $justifyContent: "space-between", $flexGapX: 1, children: [
39
- /* @__PURE__ */ t(r, { $flexDirection: "row", $flexGapX: 1.5, children: [
40
- /* @__PURE__ */ t(
41
- r,
1
+ import { jsxs as c, jsx as e } from "react/jsx-runtime";
2
+ import { memo as U, useRef as B, useState as N, useMemo as I, useLayoutEffect as X } from "react";
3
+ import V from "../../../../../assets/line-icons/icons/bin2.js";
4
+ import W from "../../../../../assets/line-icons/icons/closed-eye.js";
5
+ import Y from "../../../../../assets/line-icons/icons/edit2.js";
6
+ import Z from "../../../../../assets/line-icons/icons/eye2.js";
7
+ import q from "../../../../../assets/line-icons/icons/star2.js";
8
+ import z from "../../../../sheets/lessons-list/lesson-item/context-menu-helper/target-element.js";
9
+ import J from "../../../../ui/arrow-tooltip/arrow-tooltip.js";
10
+ import K from "../../../../ui/context-menu/context-menu.js";
11
+ import { useUIContext as Q } from "../../../../ui/context/context.js";
12
+ import ee from "../../../../ui/image/image.js";
13
+ import i from "../../../../ui/layout/flex-view.js";
14
+ import w from "../../../../ui/text/text.js";
15
+ import te from "../../../create/comps/milestone-progress-v2/milestone-progress-v2.js";
16
+ import oe from "./context-menu-helper/menu-element.js";
17
+ import { GOAL_CATEGORY_BASED_IMAGES as ie } from "./milestone-constants.js";
18
+ import { getGoalCategoryBasedColorTheme as ne } from "./milestone-utils.js";
19
+ import { MilestoneTitle as re } from "./milestone-widget-styled.js";
20
+ const Te = U(
21
+ ({ isClassOngoing: x, isStudentPresent: E, isExpanded: d, ...T }) => {
22
+ const { milestone: D, userType: _, onEdit: p, onDelete: f, toggleExpand: A, onAddOutcome: u } = T, {
23
+ id: o,
24
+ milestone_name: g,
25
+ milestone_date_ts: y,
26
+ user_milestone_progress: M,
27
+ milestone_state: t,
28
+ permissions: G,
29
+ goal_category: n,
30
+ goal_code: h
31
+ } = D, { onEvent: S } = Q(), r = B(null), [P, v] = N(!1), {
32
+ can_delete: s,
33
+ can_edit: C,
34
+ can_update_date: R,
35
+ can_update_plan: O
36
+ } = G, { textColor: k, borderColor: j } = ne(n), l = I(() => typeof h == "string", [h]), a = _ === "TEACHER", F = I(
37
+ () => ({
38
+ milestone_id: o,
39
+ temporary_milestone_id: o,
40
+ milestone_state: t
41
+ }),
42
+ [o, t]
43
+ ), $ = x && !E, b = !l || t !== "DRAFT", H = I(
44
+ () => [
45
+ {
46
+ id: "milestone-widget-edit",
47
+ Icon: Y,
48
+ label: "Edit",
49
+ disabled: $ || !C,
50
+ //* Not showing option to edit drafts.
51
+ //* For goals we have a separate edit CTA.
52
+ visible: a && t !== "DRAFT"
53
+ },
54
+ {
55
+ id: "milestone-widget-hide-n-show",
56
+ Icon: d ? W : Z,
57
+ label: d ? "Hide" : "Show",
58
+ disabled: !1,
59
+ visible: !0
60
+ },
61
+ {
62
+ id: "milestone-widget-add-outcome",
63
+ Icon: q,
64
+ label: "Add outcome",
65
+ disabled: t !== "OUTCOME_PENDING",
66
+ visible: a
67
+ },
68
+ {
69
+ id: "milestone-widget-delete-draft",
70
+ Icon: V,
71
+ label: "Delete",
72
+ disabled: !s,
73
+ visible: a && s && b
74
+ }
75
+ ],
76
+ [
77
+ C,
78
+ $,
79
+ d,
80
+ t,
81
+ a,
82
+ s,
83
+ b
84
+ ]
85
+ ), L = (m) => {
86
+ switch (S("clicked", {
87
+ cta: m,
88
+ ...F
89
+ }), m) {
90
+ case "Edit":
91
+ p == null || p({
92
+ milestoneId: o,
93
+ milestoneName: g,
94
+ milestoneDueDate: y,
95
+ isMilestoneChaptersListEditable: O,
96
+ isMilestoneDateEditable: R,
97
+ milestoneState: t,
98
+ canDelete: s,
99
+ goalCategory: n,
100
+ goalCode: h
101
+ });
102
+ return;
103
+ case "Add outcome":
104
+ u == null || u(o);
105
+ return;
106
+ case "Delete":
107
+ f == null || f({ milestoneId: o, isGoalCreation: l, milestoneState: t });
108
+ return;
109
+ default:
110
+ A();
111
+ return;
112
+ }
113
+ };
114
+ return X(() => {
115
+ r.current && r.current.scrollHeight > r.current.clientHeight && v(!0);
116
+ }, [r]), /* @__PURE__ */ c(i, { $flexDirection: "row", $justifyContent: "space-between", $flexGapX: 1, children: [
117
+ /* @__PURE__ */ c(i, { $widthX: 30.5, $flexGap: l ? 8 : 0, children: [
118
+ n && /* @__PURE__ */ c(i, { $flexDirection: "row", $flexGap: 4, $alignItems: "center", children: [
119
+ /* @__PURE__ */ e(
120
+ ee,
121
+ {
122
+ src: ie[n],
123
+ withLoader: !0,
124
+ width: 24,
125
+ height: 24
126
+ }
127
+ ),
128
+ /* @__PURE__ */ e(w, { $renderAs: "ac4-black", $color: k, children: n.split("_").join(" ") }),
129
+ t === "DRAFT" && /* @__PURE__ */ e(
130
+ i,
131
+ {
132
+ $flexDirection: "row",
133
+ $gap: 4,
134
+ $gutter: 4,
135
+ $alignItems: "center",
136
+ $background: j,
137
+ children: /* @__PURE__ */ e(w, { $renderAs: "ac4", children: "Draft" })
138
+ }
139
+ )
140
+ ] }),
141
+ /* @__PURE__ */ e(
142
+ J,
42
143
  {
43
- $widthX: 4,
44
- $heightX: 4,
45
- $background: "WHITE_T_38",
46
- $position: "relative",
47
- $justifyContent: "center",
48
- $alignItems: "center",
49
- $borderRadiusX: 2,
50
- children: [
51
- /* @__PURE__ */ t(Z, { width: "64px", height: "64px", children: [
52
- /* @__PURE__ */ e(f, { $progress: 0, r: "31", cx: "32", cy: "32" }),
53
- /* @__PURE__ */ e(
54
- f,
55
- {
56
- $progressCircle: !0,
57
- $progressBackground: "BLACK_1",
58
- $progress: a * 2,
59
- r: "31",
60
- cx: "32",
61
- cy: "32"
62
- }
63
- )
64
- ] }),
65
- /* @__PURE__ */ e(r, { $widthX: 4, $heightX: 4, $justifyContent: "center", $alignItems: "center", children: /* @__PURE__ */ e(
66
- v,
67
- {
68
- src: q[l],
69
- withLoader: !0,
70
- width: 40,
71
- height: 40
72
- }
73
- ) }),
74
- a === 100 && /* @__PURE__ */ e(ee, { children: /* @__PURE__ */ e(K, { width: 20, height: 20 }) })
75
- ]
144
+ renderAs: "primary",
145
+ position: "bottom",
146
+ tooltipItem: g,
147
+ hidden: !P,
148
+ children: /* @__PURE__ */ e(re, { ref: r, $renderAs: l ? "ah4" : "ah3", children: g })
149
+ }
150
+ )
151
+ ] }),
152
+ /* @__PURE__ */ e(i, { onClick: (m) => m.stopPropagation(), $height: "fit-content", children: /* @__PURE__ */ c(i, { $flexDirection: "row", $flexGapX: 1, $alignItems: "center", children: [
153
+ /* @__PURE__ */ e(
154
+ te,
155
+ {
156
+ userType: _,
157
+ milestoneId: o,
158
+ progressInfo: M,
159
+ showProgress: !0
76
160
  }
77
161
  ),
78
- /* @__PURE__ */ t(r, { $flexGap: 16, children: [
79
- /* @__PURE__ */ t(r, { $flexGap: 4, children: [
80
- /* @__PURE__ */ t(r, { $flexDirection: "row", $alignItems: "center", $flexGap: 4, children: [
81
- /* @__PURE__ */ e(s, { $renderAs: "ac4-black", $color: N, children: l.split("_").join(" ") }),
82
- h && /* @__PURE__ */ e(
83
- r,
84
- {
85
- $flexDirection: "row",
86
- $gap: 4,
87
- $gutter: 4,
88
- $alignItems: "center",
89
- $background: R,
90
- children: /* @__PURE__ */ e(s, { $renderAs: "ac4", $color: "WHITE", children: "Outcome pending" })
91
- }
92
- ),
93
- i === "DRAFT" && /* @__PURE__ */ e(
94
- r,
95
- {
96
- $flexDirection: "row",
97
- $gap: 4,
98
- $gutter: 4,
99
- $alignItems: "center",
100
- $background: $,
101
- children: /* @__PURE__ */ e(s, { $renderAs: "ac4", children: "Draft" })
102
- }
103
- )
104
- ] }),
105
- /* @__PURE__ */ e(
106
- V,
162
+ /* @__PURE__ */ e(
163
+ K,
164
+ {
165
+ targetElement: /* @__PURE__ */ e(z, { shape: "curve" }),
166
+ menuElement: /* @__PURE__ */ e(
167
+ oe,
107
168
  {
108
- renderAs: "primary",
109
- position: "bottom",
110
- tooltipItem: m,
111
- hidden: !B,
112
- children: /* @__PURE__ */ e(
113
- te,
114
- {
115
- ref: o,
116
- $renderAs: M ? "ah4" : "ah3",
117
- children: m
118
- }
119
- )
169
+ menuOptions: H,
170
+ onMenuOptionSelection: L
120
171
  }
121
172
  ),
122
- i !== "DRAFT" && /* @__PURE__ */ t(s, { $renderAs: "ub3", $color: "BLACK_T_60", children: [
123
- a,
124
- "% complete",
125
- P
126
- ] })
127
- ] }),
128
- n != null && n.length ? /* @__PURE__ */ t(W, { children: [
129
- /* @__PURE__ */ e(U, { width: 40, height: 1, background: "BLACK_T_15" }),
130
- /* @__PURE__ */ e(re, { outcomes: n })
131
- ] }) : void 0
132
- ] })
133
- ] }),
134
- y === "TEACHER" && /* @__PURE__ */ e(
135
- Y,
136
- {
137
- milestone: d,
138
- studentId: T,
139
- studentName: _,
140
- teacherName: A ?? "",
141
- parentName: w ?? "",
142
- onAddOutcome: E,
143
- isClassOngoing: !!u,
144
- isStudentPresent: !!C,
145
- onDraftPublish: D,
146
- onEdit: G,
147
- courseStream: I
148
- }
149
- )
150
- ] }) : null;
173
+ menuOffset: 12,
174
+ menuZIndex: 2
175
+ }
176
+ )
177
+ ] }) })
178
+ ] });
151
179
  }
152
180
  );
153
181
  export {
154
- ue as default
182
+ Te as default
155
183
  };
156
184
  //# sourceMappingURL=milestone-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"milestone-info.js","sources":["../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.tsx"],"sourcesContent":["import type { IMileStoneInfoWrapperProps } from './milestone-widget-types';\n\nimport React, { memo, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport Check2Icon from '../../../../../assets/line-icons/icons/check2';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Image from '../../../../ui/image/image';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Separator from '../../../../ui/separator/separator';\nimport Text from '../../../../ui/text/text';\nimport GoalActionCtas from './goals/goal-action-ctas';\nimport { GOAL_CATEGORY_BASED_IMAGES } from './milestone-constants';\nimport {\n getGoalCategoryBasedColorTheme,\n getMilestoneWidgetStatusInfo,\n getRemainingDaysToCompleteGoal,\n} from './milestone-utils';\nimport * as Styled from './milestone-widget-styled';\nimport OutcomeWrapper from './outcome/outcome';\n\nconst MilestoneInfoWrapper: React.FC<IMileStoneInfoWrapperProps> = memo(\n ({ isClassOngoing, isStudentPresent, isExpanded, ...restMilestoneInfoWrapperProps }) => {\n const {\n milestone,\n studentId,\n studentName,\n teacherName,\n parentName,\n userType,\n courseStream,\n outcomes,\n onEdit,\n onDraftPublish,\n onAddOutcome,\n } = restMilestoneInfoWrapperProps;\n\n const {\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n milestone_state: milestoneState,\n goal_category: goalCategory,\n goal_code: goalCode,\n progress_stat: progressStat,\n } = milestone;\n\n const { completed, total } = progressStat || {};\n const isOutcomePending = milestoneState === 'OUTCOME_PENDING';\n const progressCompletionPercentage =\n completed > 0 ? Math.floor((completed / total || 1) * 100) : 0;\n\n const titleTextRef = useRef<HTMLDivElement>(null);\n const [showTitleTooltip, setShowTitleTooltip] = useState(false);\n\n const { textColor: goalCategoryTextColor, borderColor } =\n getGoalCategoryBasedColorTheme(goalCategory);\n\n const outcomeStatusInfo = getMilestoneWidgetStatusInfo(milestoneState);\n const backgroundColor =\n (isOutcomePending ? outcomeStatusInfo?.progressBackgroundColor : borderColor) || 'WHITE_5';\n\n const isGoalCreation = useMemo(() => typeof goalCode === 'string', [goalCode]);\n const remainingDays = getRemainingDaysToCompleteGoal(dueDate);\n\n useLayoutEffect(() => {\n if (\n titleTextRef.current &&\n titleTextRef.current.scrollHeight > titleTextRef.current.clientHeight\n ) {\n setShowTitleTooltip(true);\n }\n }, [titleTextRef]);\n\n if (!goalCategory) return null;\n\n return (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $flexGapX={1}>\n <FlexView $flexDirection=\"row\" $flexGapX={1.5}>\n <FlexView\n $widthX={4}\n $heightX={4}\n $background=\"WHITE_T_38\"\n $position=\"relative\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n $borderRadiusX={2}\n >\n <Styled.ChapterProgressSVG width=\"64px\" height=\"64px\">\n <Styled.ChapterProgressSVGCircle $progress={0} r=\"31\" cx=\"32\" cy=\"32\" />\n <Styled.ChapterProgressSVGCircle\n $progressCircle\n $progressBackground=\"BLACK_1\"\n $progress={progressCompletionPercentage * 2}\n r=\"31\"\n cx=\"32\"\n cy=\"32\"\n />\n </Styled.ChapterProgressSVG>\n\n <FlexView $widthX={4} $heightX={4} $justifyContent=\"center\" $alignItems=\"center\">\n <Image\n src={GOAL_CATEGORY_BASED_IMAGES[goalCategory]}\n withLoader\n width={40}\n height={40}\n />\n </FlexView>\n\n {progressCompletionPercentage === 100 && (\n <Styled.StyledCheckIconWrapper>\n <Check2Icon width={20} height={20} />\n </Styled.StyledCheckIconWrapper>\n )}\n </FlexView>\n\n <FlexView $flexGap={16}>\n <FlexView $flexGap={4}>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\" $flexGap={4}>\n <Text $renderAs=\"ac4-black\" $color={goalCategoryTextColor}>\n {goalCategory.split('_').join(' ')}\n </Text>\n\n {isOutcomePending && (\n <FlexView\n $flexDirection=\"row\"\n $gap={4}\n $gutter={4}\n $alignItems=\"center\"\n $background={backgroundColor}\n >\n <Text $renderAs=\"ac4\" $color=\"WHITE\">\n Outcome pending\n </Text>\n </FlexView>\n )}\n\n {milestoneState === 'DRAFT' && (\n <FlexView\n $flexDirection=\"row\"\n $gap={4}\n $gutter={4}\n $alignItems=\"center\"\n $background={borderColor}\n >\n <Text $renderAs=\"ac4\">Draft</Text>\n </FlexView>\n )}\n </FlexView>\n\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n tooltipItem={milestoneName}\n hidden={!showTitleTooltip}\n >\n <Styled.MilestoneTitle\n ref={titleTextRef}\n $renderAs={!isGoalCreation ? 'ah3' : 'ah4'}\n >\n {milestoneName}\n </Styled.MilestoneTitle>\n </ArrowTooltip>\n\n {milestoneState !== 'DRAFT' && (\n <Text $renderAs=\"ub3\" $color=\"BLACK_T_60\">\n {progressCompletionPercentage}% complete{remainingDays}\n </Text>\n )}\n </FlexView>\n\n {outcomes?.length ? (\n <>\n <Separator width={40} height={1} background=\"BLACK_T_15\" />\n <OutcomeWrapper outcomes={outcomes} />\n </>\n ) : undefined}\n </FlexView>\n </FlexView>\n\n {userType === 'TEACHER' && (\n <GoalActionCtas\n milestone={milestone}\n studentId={studentId}\n studentName={studentName}\n teacherName={teacherName ?? ''}\n parentName={parentName ?? ''}\n onAddOutcome={onAddOutcome}\n isClassOngoing={Boolean(isClassOngoing)}\n isStudentPresent={Boolean(isStudentPresent)}\n onDraftPublish={onDraftPublish}\n onEdit={onEdit}\n courseStream={courseStream}\n />\n )}\n </FlexView>\n );\n },\n);\n\nexport default MilestoneInfoWrapper;\n"],"names":["MilestoneInfoWrapper","memo","isClassOngoing","isStudentPresent","isExpanded","restMilestoneInfoWrapperProps","milestone","studentId","studentName","teacherName","parentName","userType","courseStream","outcomes","onEdit","onDraftPublish","onAddOutcome","milestoneName","dueDate","milestoneState","goalCategory","goalCode","progressStat","completed","total","isOutcomePending","progressCompletionPercentage","titleTextRef","useRef","showTitleTooltip","setShowTitleTooltip","useState","goalCategoryTextColor","borderColor","getGoalCategoryBasedColorTheme","outcomeStatusInfo","getMilestoneWidgetStatusInfo","backgroundColor","isGoalCreation","useMemo","remainingDays","getRemainingDaysToCompleteGoal","useLayoutEffect","FlexView","jsxs","Styled.ChapterProgressSVG","jsx","Styled.ChapterProgressSVGCircle","Image","GOAL_CATEGORY_BASED_IMAGES","Styled.StyledCheckIconWrapper","Check2Icon","Text","ArrowTooltip","Styled.MilestoneTitle","Fragment","Separator","OutcomeWrapper","GoalActionCtas"],"mappings":"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"}
1
+ {"version":3,"file":"milestone-info.js","sources":["../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.tsx"],"sourcesContent":["import type { IMenuOptionsProps } from './context-menu-helper/menu-element-types';\nimport type { IMileStoneInfoWrapperProps } from './milestone-widget-types';\n\nimport React, { memo, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport Bin2Icon from '../../../../../assets/line-icons/icons/bin2';\nimport ClosedEyeIcon from '../../../../../assets/line-icons/icons/closed-eye';\nimport Edit2Icon from '../../../../../assets/line-icons/icons/edit2';\nimport Eye2Icon from '../../../../../assets/line-icons/icons/eye2';\nimport Star2Icon from '../../../../../assets/line-icons/icons/star2';\nimport ContextMenuTargetElement from '../../../../sheets/lessons-list/lesson-item/context-menu-helper/target-element';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../ui/context/context';\nimport Image from '../../../../ui/image/image';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport MilestoneProgressInfoV2 from '../../../create/comps/milestone-progress-v2/milestone-progress-v2';\nimport ContextMenuElement from './context-menu-helper/menu-element';\nimport { GOAL_CATEGORY_BASED_IMAGES } from './milestone-constants';\nimport { getGoalCategoryBasedColorTheme } from './milestone-utils';\nimport * as Styled from './milestone-widget-styled';\n\nconst MilestoneInfoWrapper: React.FC<IMileStoneInfoWrapperProps> = memo(\n ({ isClassOngoing, isStudentPresent, isExpanded, ...restMilestoneInfoWrapperProps }) => {\n const { milestone, userType, onEdit, onDelete, toggleExpand, onAddOutcome } =\n restMilestoneInfoWrapperProps;\n\n const {\n id: milestoneId,\n milestone_name: milestoneName,\n milestone_date_ts: dueDate,\n user_milestone_progress: milestoneProgress,\n milestone_state: milestoneState,\n permissions: milestonePermissions,\n goal_category: goalCategory,\n goal_code: goalCode,\n } = milestone;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const titleTextRef = useRef<HTMLDivElement>(null);\n const [showTitleTooltip, setShowTitleTooltip] = useState(false);\n\n const {\n can_delete: canDelete,\n can_edit: canEdit,\n can_update_date: canUpdateDate,\n can_update_plan: canUpdatePlan,\n } = milestonePermissions;\n\n const { textColor: goalCategoryTextColor, borderColor } =\n getGoalCategoryBasedColorTheme(goalCategory);\n const isGoalCreation = useMemo(() => typeof goalCode === 'string', [goalCode]);\n\n const isTeacher = userType === 'TEACHER';\n const analyticsProps = useMemo(\n () => ({\n milestone_id: milestoneId,\n temporary_milestone_id: milestoneId,\n milestone_state: milestoneState,\n }),\n [milestoneId, milestoneState],\n );\n\n const isStudentAbsentInClass = isClassOngoing && !isStudentPresent;\n\n const canDeleteGoal = !isGoalCreation || milestoneState !== 'DRAFT';\n\n const menuOptions: IMenuOptionsProps[] = useMemo(\n () => [\n {\n id: 'milestone-widget-edit',\n Icon: Edit2Icon,\n label: 'Edit',\n disabled: isStudentAbsentInClass || !canEdit,\n //* Not showing option to edit drafts.\n //* For goals we have a separate edit CTA.\n visible: isTeacher && milestoneState !== 'DRAFT',\n },\n {\n id: 'milestone-widget-hide-n-show',\n Icon: isExpanded ? ClosedEyeIcon : Eye2Icon,\n label: isExpanded ? 'Hide' : 'Show',\n disabled: false,\n visible: true,\n },\n {\n id: 'milestone-widget-add-outcome',\n Icon: Star2Icon,\n label: 'Add outcome',\n disabled: milestoneState !== 'OUTCOME_PENDING',\n visible: isTeacher,\n },\n {\n id: 'milestone-widget-delete-draft',\n Icon: Bin2Icon,\n label: 'Delete',\n disabled: !canDelete,\n visible: isTeacher && canDelete && canDeleteGoal,\n },\n ],\n [\n canEdit,\n isStudentAbsentInClass,\n isExpanded,\n milestoneState,\n isTeacher,\n canDelete,\n canDeleteGoal,\n ],\n );\n\n const handleOnMenuSelection = (selectedOption: string) => {\n trackEvent('clicked', {\n cta: selectedOption,\n ...analyticsProps,\n });\n\n switch (selectedOption) {\n case 'Edit':\n onEdit?.({\n milestoneId,\n milestoneName,\n milestoneDueDate: dueDate,\n isMilestoneChaptersListEditable: canUpdatePlan,\n isMilestoneDateEditable: canUpdateDate,\n milestoneState,\n canDelete,\n goalCategory,\n goalCode,\n });\n\n return;\n\n case 'Add outcome':\n onAddOutcome?.(milestoneId);\n\n return;\n\n case 'Delete':\n onDelete?.({ milestoneId, isGoalCreation, milestoneState });\n\n return;\n\n default:\n toggleExpand();\n\n return;\n }\n };\n\n useLayoutEffect(() => {\n if (\n titleTextRef.current &&\n titleTextRef.current.scrollHeight > titleTextRef.current.clientHeight\n ) {\n setShowTitleTooltip(true);\n }\n }, [titleTextRef]);\n\n return (\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $flexGapX={1}>\n <FlexView $widthX={30.5} $flexGap={isGoalCreation ? 8 : 0}>\n {goalCategory && (\n <FlexView $flexDirection=\"row\" $flexGap={4} $alignItems=\"center\">\n <Image\n src={GOAL_CATEGORY_BASED_IMAGES[goalCategory]}\n withLoader\n width={24}\n height={24}\n />\n\n <Text $renderAs=\"ac4-black\" $color={goalCategoryTextColor}>\n {goalCategory.split('_').join(' ')}\n </Text>\n\n {milestoneState === 'DRAFT' && (\n <FlexView\n $flexDirection=\"row\"\n $gap={4}\n $gutter={4}\n $alignItems=\"center\"\n $background={borderColor}\n >\n <Text $renderAs=\"ac4\">Draft</Text>\n </FlexView>\n )}\n </FlexView>\n )}\n\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n tooltipItem={milestoneName}\n hidden={!showTitleTooltip}\n >\n <Styled.MilestoneTitle ref={titleTextRef} $renderAs={!isGoalCreation ? 'ah3' : 'ah4'}>\n {milestoneName}\n </Styled.MilestoneTitle>\n </ArrowTooltip>\n </FlexView>\n\n <FlexView onClick={e => e.stopPropagation()} $height=\"fit-content\">\n <FlexView $flexDirection=\"row\" $flexGapX={1} $alignItems=\"center\">\n <MilestoneProgressInfoV2\n userType={userType}\n milestoneId={milestoneId}\n progressInfo={milestoneProgress}\n showProgress\n />\n\n <ContextMenu\n targetElement={<ContextMenuTargetElement shape=\"curve\" />}\n menuElement={\n <ContextMenuElement\n menuOptions={menuOptions}\n onMenuOptionSelection={handleOnMenuSelection}\n />\n }\n menuOffset={12}\n menuZIndex={2}\n />\n </FlexView>\n </FlexView>\n </FlexView>\n );\n },\n);\n\nexport default MilestoneInfoWrapper;\n"],"names":["MilestoneInfoWrapper","memo","isClassOngoing","isStudentPresent","isExpanded","restMilestoneInfoWrapperProps","milestone","userType","onEdit","onDelete","toggleExpand","onAddOutcome","milestoneId","milestoneName","dueDate","milestoneProgress","milestoneState","milestonePermissions","goalCategory","goalCode","trackEvent","useUIContext","titleTextRef","useRef","showTitleTooltip","setShowTitleTooltip","useState","canDelete","canEdit","canUpdateDate","canUpdatePlan","goalCategoryTextColor","borderColor","getGoalCategoryBasedColorTheme","isGoalCreation","useMemo","isTeacher","analyticsProps","isStudentAbsentInClass","canDeleteGoal","menuOptions","Edit2Icon","ClosedEyeIcon","Eye2Icon","Star2Icon","Bin2Icon","handleOnMenuSelection","selectedOption","useLayoutEffect","FlexView","jsxs","jsx","Image","GOAL_CATEGORY_BASED_IMAGES","Text","ArrowTooltip","Styled.MilestoneTitle","e","MilestoneProgressInfoV2","ContextMenu","ContextMenuTargetElement","ContextMenuElement"],"mappings":"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"}
@@ -1,40 +1,26 @@
1
- import n from "styled-components";
1
+ import p from "styled-components";
2
2
  import a from "../../../../../ui/layout/flex-view.js";
3
- import i from "../../../../../ui/text/text.js";
4
- import { MILESTONE_WIDGET_MIN_HEIGHT as c } from "../../../../constants.js";
5
- const x = n(a)(({ theme: r }) => `
3
+ import d from "../../../../../ui/text/text.js";
4
+ const m = p(a)(({ theme: r }) => `
6
5
  padding-bottom: ${r.layout.gutter * 1.5}px;
7
- `), T = n.div(({ theme: r, $backgroundColor: o, $frames: t }) => {
6
+ `), u = p.div(({ theme: r, $backgroundColor: o, $frames: t }) => {
8
7
  const { colors: e } = r;
9
8
  return `
10
9
  display: grid;
11
10
  background: ${e[o || "WHITE_3"]};
12
11
  grid-template-columns: repeat(${t}, 1fr);
13
12
  `;
14
- }), m = n(i)(({ theme: r, $selected: o }) => {
15
- const { layout: t, colors: e } = r, { BLACK_T_15: p, BLACK_T_87: s } = e;
13
+ }), g = p(d)(({ theme: r, $selected: o }) => {
14
+ const { layout: t, colors: e } = r, { BLACK_T_15: n, BLACK_T_87: s } = e;
16
15
  return `
17
16
  cursor: pointer;
18
17
  padding: ${t.gutter * 0.5}px 0;
19
- border-bottom: 1px solid ${o ? s : p};
20
- `;
21
- }), $ = n(a)(({ theme: r }) => {
22
- const { WHITE_5: o } = r.colors, { gutter: t } = r.layout;
23
- return `
24
- position: relative;
25
- height: ${c}px;
26
- overflow: auto;
27
-
28
- background: ${r.colors.WHITE_2};
29
- background-image: linear-gradient(${o} 0.5px, transparent 0.5px),
30
- linear-gradient(90deg, ${o} 0.5px, transparent 0.5px);
31
- background-size: ${t * 2.81}px ${t * 2.81}px;
18
+ border-bottom: 1px solid ${o ? s : n};
32
19
  `;
33
20
  });
34
21
  export {
35
- x as NoPlanCardWrapper,
36
- $ as TabComponentWrapper,
37
- m as TabsText,
38
- T as TabsWrapper
22
+ m as NoPlanCardWrapper,
23
+ g as TabsText,
24
+ u as TabsWrapper
39
25
  };
40
26
  //# sourceMappingURL=milestone-tabs-styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"milestone-tabs-styled.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.tsx"],"sourcesContent":["import type { TColorNames } from '../../../../../ui/types';\n\nimport styled from 'styled-components';\n\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\nimport { MILESTONE_WIDGET_MIN_HEIGHT } from '../../../../constants';\n\nconst NoPlanCardWrapper = styled(FlexView)(({ theme }) => {\n return `\n padding-bottom: ${theme.layout.gutter * 1.5}px;\n `;\n});\n\ninterface ITabsWrapper {\n $backgroundColor?: TColorNames;\n $frames: number;\n}\n\nconst TabsWrapper = styled.div<ITabsWrapper>(({ theme, $backgroundColor, $frames }) => {\n const { colors } = theme;\n\n return `\n display: grid;\n background: ${colors[$backgroundColor || 'WHITE_3']};\n grid-template-columns: repeat(${$frames}, 1fr);\n `;\n});\n\ninterface ITabsText {\n $selected?: boolean;\n}\n\nconst TabsText = styled(Text)<ITabsText>(({ theme, $selected }) => {\n const { layout, colors } = theme;\n const { BLACK_T_15, BLACK_T_87 } = colors;\n\n return `\n cursor: pointer;\n padding: ${layout.gutter * 0.5}px 0;\n border-bottom: 1px solid ${$selected ? BLACK_T_87 : BLACK_T_15};\n `;\n});\n\nconst TabComponentWrapper = styled(FlexView)(({ theme }) => {\n const { WHITE_5 } = theme.colors;\n const { gutter } = theme.layout;\n\n return `\n position: relative;\n height: ${MILESTONE_WIDGET_MIN_HEIGHT}px;\n overflow: auto; \n\n background: ${theme.colors.WHITE_2};\n background-image: linear-gradient(${WHITE_5} 0.5px, transparent 0.5px),\n linear-gradient(90deg, ${WHITE_5} 0.5px, transparent 0.5px);\n background-size: ${gutter * 2.81}px ${gutter * 2.81}px;\n `;\n});\n\nexport { NoPlanCardWrapper, TabsWrapper, TabsText, TabComponentWrapper };\n"],"names":["NoPlanCardWrapper","styled","FlexView","theme","TabsWrapper","$backgroundColor","$frames","colors","TabsText","Text","$selected","layout","BLACK_T_15","BLACK_T_87","TabComponentWrapper","WHITE_5","gutter","MILESTONE_WIDGET_MIN_HEIGHT"],"mappings":";;;;AAQA,MAAMA,IAAoBC,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAC,QACrC;AAAA,sBACaA,EAAM,OAAO,SAAS,GAAG;AAAA,GAE9C,GAOKC,IAAcH,EAAO,IAAkB,CAAC,EAAE,OAAAE,GAAO,kBAAAE,GAAkB,SAAAC,QAAc;AAC/E,QAAA,EAAE,QAAAC,EAAW,IAAAJ;AAEZ,SAAA;AAAA;AAAA,kBAESI,EAAOF,KAAoB,SAAS,CAAC;AAAA,oCACnBC,CAAO;AAAA;AAE3C,CAAC,GAMKE,IAAWP,EAAOQ,CAAI,EAAa,CAAC,EAAE,OAAAN,GAAO,WAAAO,QAAgB;AAC3D,QAAA,EAAE,QAAAC,GAAQ,QAAAJ,EAAW,IAAAJ,GACrB,EAAE,YAAAS,GAAY,YAAAC,EAAe,IAAAN;AAE5B,SAAA;AAAA;AAAA,eAEMI,EAAO,SAAS,GAAG;AAAA,+BACHD,IAAYG,IAAaD,CAAU;AAAA;AAElE,CAAC,GAEKE,IAAsBb,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAC,QAAY;AACpD,QAAA,EAAE,SAAAY,EAAQ,IAAIZ,EAAM,QACpB,EAAE,QAAAa,EAAO,IAAIb,EAAM;AAElB,SAAA;AAAA;AAAA,cAEKc,CAA2B;AAAA;AAAA;AAAA,kBAGvBd,EAAM,OAAO,OAAO;AAAA,wCACEY,CAAO;AAAA,+BAChBA,CAAO;AAAA,uBACfC,IAAS,IAAI,MAAMA,IAAS,IAAI;AAAA;AAEvD,CAAC;"}
1
+ {"version":3,"file":"milestone-tabs-styled.js","sources":["../../../../../../../src/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.tsx"],"sourcesContent":["import type { TColorNames } from '../../../../../ui/types';\n\nimport styled from 'styled-components';\n\nimport FlexView from '../../../../../ui/layout/flex-view';\nimport Text from '../../../../../ui/text/text';\n\nconst NoPlanCardWrapper = styled(FlexView)(({ theme }) => {\n return `\n padding-bottom: ${theme.layout.gutter * 1.5}px;\n `;\n});\n\ninterface ITabsWrapper {\n $backgroundColor?: TColorNames;\n $frames: number;\n}\n\nconst TabsWrapper = styled.div<ITabsWrapper>(({ theme, $backgroundColor, $frames }) => {\n const { colors } = theme;\n\n return `\n display: grid;\n background: ${colors[$backgroundColor || 'WHITE_3']};\n grid-template-columns: repeat(${$frames}, 1fr);\n `;\n});\n\ninterface ITabsText {\n $selected?: boolean;\n}\n\nconst TabsText = styled(Text)<ITabsText>(({ theme, $selected }) => {\n const { layout, colors } = theme;\n const { BLACK_T_15, BLACK_T_87 } = colors;\n\n return `\n cursor: pointer;\n padding: ${layout.gutter * 0.5}px 0;\n border-bottom: 1px solid ${$selected ? BLACK_T_87 : BLACK_T_15};\n `;\n});\n\nexport { NoPlanCardWrapper, TabsWrapper, TabsText };\n"],"names":["NoPlanCardWrapper","styled","FlexView","theme","TabsWrapper","$backgroundColor","$frames","colors","TabsText","Text","$selected","layout","BLACK_T_15","BLACK_T_87"],"mappings":";;;AAOA,MAAMA,IAAoBC,EAAOC,CAAQ,EAAE,CAAC,EAAE,OAAAC,QACrC;AAAA,sBACaA,EAAM,OAAO,SAAS,GAAG;AAAA,GAE9C,GAOKC,IAAcH,EAAO,IAAkB,CAAC,EAAE,OAAAE,GAAO,kBAAAE,GAAkB,SAAAC,QAAc;AAC/E,QAAA,EAAE,QAAAC,EAAW,IAAAJ;AAEZ,SAAA;AAAA;AAAA,kBAESI,EAAOF,KAAoB,SAAS,CAAC;AAAA,oCACnBC,CAAO;AAAA;AAE3C,CAAC,GAMKE,IAAWP,EAAOQ,CAAI,EAAa,CAAC,EAAE,OAAAN,GAAO,WAAAO,QAAgB;AAC3D,QAAA,EAAE,QAAAC,GAAQ,QAAAJ,EAAW,IAAAJ,GACrB,EAAE,YAAAS,GAAY,YAAAC,EAAe,IAAAN;AAE5B,SAAA;AAAA;AAAA,eAEMI,EAAO,SAAS,GAAG;AAAA,+BACHD,IAAYG,IAAaD,CAAU;AAAA;AAElE,CAAC;"}