@cuemath/leap 2.8.55 → 2.8.56-as1

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 (192) hide show
  1. package/dist/assets/illustrations/illustrations.js +9 -0
  2. package/dist/assets/illustrations/illustrations.js.map +1 -1
  3. package/dist/assets/line-icons/icons/alarm.js +41 -0
  4. package/dist/assets/line-icons/icons/alarm.js.map +1 -0
  5. package/dist/assets/line-icons/icons/dart.js +23 -0
  6. package/dist/assets/line-icons/icons/dart.js.map +1 -0
  7. package/dist/assets/line-icons/icons/exclamation.js +26 -0
  8. package/dist/assets/line-icons/icons/exclamation.js.map +1 -0
  9. package/dist/assets/line-icons/icons/home2.js +25 -0
  10. package/dist/assets/line-icons/icons/home2.js.map +1 -0
  11. package/dist/assets/line-icons/icons/important.js +23 -0
  12. package/dist/assets/line-icons/icons/important.js.map +1 -0
  13. package/dist/assets/line-icons/icons/puzzle.js +25 -0
  14. package/dist/assets/line-icons/icons/puzzle.js.map +1 -0
  15. package/dist/assets/line-icons/icons/recap.js +32 -0
  16. package/dist/assets/line-icons/icons/recap.js.map +1 -0
  17. package/dist/assets/line-icons/icons/status.js +41 -0
  18. package/dist/assets/line-icons/icons/status.js.map +1 -0
  19. package/dist/assets/line-icons/icons/testtube.js +33 -0
  20. package/dist/assets/line-icons/icons/testtube.js.map +1 -0
  21. package/dist/features/analytics-events/whitelist-events.js +7 -9
  22. package/dist/features/analytics-events/whitelist-events.js.map +1 -1
  23. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js +98 -33
  24. package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
  25. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js +76 -47
  26. package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
  27. package/dist/features/chapters/chapters-list/chapters-list-styled.js +5 -5
  28. package/dist/features/chapters/chapters-list/chapters-list-styled.js.map +1 -1
  29. package/dist/features/chapters/chapters-list/chapters-list.js +65 -70
  30. package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
  31. package/dist/features/chapters-v2/api/chapter.js +10 -0
  32. package/dist/features/chapters-v2/api/chapter.js.map +1 -0
  33. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js +112 -0
  34. package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -0
  35. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js +26 -0
  36. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections-styled.js.map +1 -0
  37. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +69 -0
  38. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -0
  39. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js +90 -0
  40. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +1 -0
  41. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js +97 -0
  42. package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +1 -0
  43. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js +52 -0
  44. package/dist/features/chapters-v2/chapter-details/chapter-details-styled.js.map +1 -0
  45. package/dist/features/chapters-v2/chapter-details/chapter-details.js +103 -0
  46. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -0
  47. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js +13 -0
  48. package/dist/features/chapters-v2/comps/node-card/border-path-animation.js.map +1 -0
  49. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js +153 -0
  50. package/dist/features/chapters-v2/comps/node-card/node-card-styled.js.map +1 -0
  51. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js +16 -0
  52. package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -0
  53. package/dist/features/chapters-v2/comps/node-card/node-card.js +12 -0
  54. package/dist/features/chapters-v2/comps/node-card/node-card.js.map +1 -0
  55. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js +32 -0
  56. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options-styled.js.map +1 -0
  57. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js +31 -0
  58. package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +1 -0
  59. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js +160 -0
  60. package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -0
  61. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js +184 -0
  62. package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -0
  63. package/dist/features/chapters-v2/comps/tag/tag-styled.js +13 -0
  64. package/dist/features/chapters-v2/comps/tag/tag-styled.js.map +1 -0
  65. package/dist/features/chapters-v2/comps/tag/tag.js +28 -0
  66. package/dist/features/chapters-v2/comps/tag/tag.js.map +1 -0
  67. package/dist/features/chapters-v2/constants/block-constants.js +20 -0
  68. package/dist/features/chapters-v2/constants/block-constants.js.map +1 -0
  69. package/dist/features/chapters-v2/constants/node-constants.js +15 -0
  70. package/dist/features/chapters-v2/constants/node-constants.js.map +1 -0
  71. package/dist/features/chapters-v2/utils/index.js +41 -0
  72. package/dist/features/chapters-v2/utils/index.js.map +1 -0
  73. package/dist/features/chapters-v2/utils/node-card-utils.js +106 -0
  74. package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -0
  75. package/dist/features/circle-games/games/tutorial/tutorial.js +14 -13
  76. package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
  77. package/dist/features/homework/card-menu-options.js +36 -0
  78. package/dist/features/homework/card-menu-options.js.map +1 -0
  79. package/dist/features/homework/homework-card.js +136 -0
  80. package/dist/features/homework/homework-card.js.map +1 -0
  81. package/dist/features/homework/styles.js +114 -0
  82. package/dist/features/homework/styles.js.map +1 -0
  83. package/dist/features/homework/utils.js +28 -0
  84. package/dist/features/homework/utils.js.map +1 -0
  85. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js +10 -10
  86. package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js.map +1 -1
  87. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +51 -53
  88. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  89. package/dist/features/milestone/milestone-list-container/api/get-milestones.js +9 -17
  90. package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
  91. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +116 -91
  92. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  93. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js +105 -121
  94. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
  95. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js +145 -173
  96. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
  97. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js +24 -10
  98. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
  99. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js +76 -81
  100. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
  101. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js +10 -22
  102. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
  103. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js +70 -37
  104. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  105. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js +114 -174
  106. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
  107. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js +29 -16
  108. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-rank.js.map +1 -1
  109. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js +19 -23
  110. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-styled.js.map +1 -1
  111. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js +23 -35
  112. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
  113. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +34 -36
  114. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  115. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js +1 -1
  116. package/dist/features/milestone/milestone-resources/resources-list/resources-list-styled.js.map +1 -1
  117. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js +96 -78
  118. package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
  119. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js +6 -34
  120. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-utils.js.map +1 -1
  121. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js +73 -73
  122. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item.js.map +1 -1
  123. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js +8 -7
  124. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheets-list-styled.js.map +1 -1
  125. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js +77 -68
  126. package/dist/features/milestone/milestone-tests/tests-list/tests-list.js.map +1 -1
  127. package/dist/features/recent-chapters/api/get-recent-chapters.js +9 -0
  128. package/dist/features/recent-chapters/api/get-recent-chapters.js.map +1 -0
  129. package/dist/features/recent-chapters/recent-chapters-styled.js +23 -0
  130. package/dist/features/recent-chapters/recent-chapters-styled.js.map +1 -0
  131. package/dist/features/recent-chapters/recent-chapters.js +49 -0
  132. package/dist/features/recent-chapters/recent-chapters.js.map +1 -0
  133. package/dist/features/sheets/resources-list/resource-item/resource-item.js +65 -179
  134. package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
  135. package/dist/features/sheets/resources-list/resources-list.js +5 -5
  136. package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
  137. package/dist/features/sheets/resources-list/styled.js +9 -13
  138. package/dist/features/sheets/resources-list/styled.js.map +1 -1
  139. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js +4 -3
  140. package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js.map +1 -1
  141. package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
  142. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +30 -29
  143. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  144. package/dist/features/ui/constants/z-index.js +1 -1
  145. package/dist/features/ui/constants/z-index.js.map +1 -1
  146. package/dist/features/ui/context-menu/context-menu-styled.js +28 -14
  147. package/dist/features/ui/context-menu/context-menu-styled.js.map +1 -1
  148. package/dist/features/ui/context-menu/context-menu.js +30 -15
  149. package/dist/features/ui/context-menu/context-menu.js.map +1 -1
  150. package/dist/features/ui/theme/button.js +17 -102
  151. package/dist/features/ui/theme/button.js.map +1 -1
  152. package/dist/index.d.ts +200 -12
  153. package/dist/index.js +487 -469
  154. package/dist/index.js.map +1 -1
  155. package/dist/static/chapter-header-bg-2.c8d96894.svg +1 -0
  156. package/dist/static/node-custom-test-bg.d3b757be.svg +1 -0
  157. package/dist/static/node-learn-bg.b61f815c.svg +1 -0
  158. package/dist/static/node-practice-bg.16cbaf2a.svg +1 -0
  159. package/dist/static/node-project-bg.e6a33e28.svg +1 -0
  160. package/dist/static/node-puzzle-bg.3422135c.svg +1 -0
  161. package/dist/static/node-recap-bg.546154e4.svg +1 -0
  162. package/dist/static/node-test-prep-bg.42c0b9c4.svg +1 -0
  163. package/dist/static/node-video-bg.3df3f73a.svg +1 -0
  164. package/package.json +1 -1
  165. package/dist/assets/line-icons/icons/closed-eye.js +0 -23
  166. package/dist/assets/line-icons/icons/closed-eye.js.map +0 -1
  167. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js +0 -92
  168. package/dist/features/milestone/create/comps/milestone-progress-v2/milestone-progress-v2.js.map +0 -1
  169. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js +0 -25
  170. package/dist/features/milestone/create/comps/milestone-progress-v2/styled.js.map +0 -1
  171. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js +0 -13
  172. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element-styled.js.map +0 -1
  173. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js +0 -38
  174. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/context-menu-helper/menu-element.js.map +0 -1
  175. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js +0 -53
  176. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-status.js.map +0 -1
  177. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js +0 -25
  178. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome-info.js.map +0 -1
  179. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js +0 -71
  180. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-cta.js.map +0 -1
  181. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js +0 -31
  182. package/dist/features/milestone/milestone-tests/tests-list/test-sheets-list/test-sheet-item/test-sheet-item-styled.js.map +0 -1
  183. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js +0 -15
  184. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element-styled.js.map +0 -1
  185. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js +0 -26
  186. package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +0 -1
  187. package/dist/features/sheets/resources-list/resource-item/styled.js +0 -38
  188. package/dist/features/sheets/resources-list/resource-item/styled.js.map +0 -1
  189. package/dist/features/sheets/resources-list/resource-item/utils.js +0 -23
  190. package/dist/features/sheets/resources-list/resource-item/utils.js.map +0 -1
  191. package/dist/features/sheets/sheets-analytics-events.js +0 -11
  192. package/dist/features/sheets/sheets-analytics-events.js.map +0 -1
@@ -1,199 +1,85 @@
1
- import { jsxs as v, jsx as e } from "react/jsx-runtime";
2
- import { memo as J, useRef as Q, useState as Z, useMemo as ee, useCallback as d, useLayoutEffect as te } from "react";
3
- import oe from "../../../../assets/line-icons/icons/minus2.js";
4
- import re from "../../../../assets/line-icons/icons/plus2.js";
5
- import ne from "../../../../assets/line-icons/icons/redo.js";
6
- import A from "../../../ui/arrow-tooltip/arrow-tooltip.js";
7
- import ie from "../../../ui/context-menu/context-menu.js";
8
- import { useUIContext as ce } from "../../../ui/context/context.js";
9
- import se from "../../../ui/layout/flex-view.js";
10
- import ae from "../../comps/sheet-button/index.js";
11
- import ue from "../../lessons-list/lesson-item/context-menu-helper/target-element.js";
12
- import { SHEETS_ANALYTICS_EVENTS as k } from "../../sheets-analytics-events.js";
13
- import { TEACHER_MENU_OPTIONS as me } from "../../sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.js";
14
- import { isV3Worksheet as h } from "../../utils/is-v3-worksheet.js";
15
- import le from "./context-menu-helper/menu-element.js";
16
- import { ResourceItemCard as pe, ResourceItemTitle as fe, IconButtonWrapper as de } from "./styled.js";
17
- import { getResourceItemCtaState as he, getResourceItemCtaInfo as we, getResourceItemBackgroundColor as _e } from "./utils.js";
18
- const { UNASSIGN: x, REDO: N } = me, Me = J(
19
- ({
20
- sheet: t,
21
- userType: O,
22
- isMilestoneWidget: w,
23
- userMilestoneId: _,
24
- onUnlock: i,
25
- onUnAssignSheet: u,
26
- onReset: m,
27
- onPreview: l,
28
- onReview: p,
29
- onStart: f
30
- }) => {
31
- const { onClick: c } = ce(), r = Q(null), [D, M] = Z(!1), {
32
- accuracy: b,
33
- permissions: X,
34
- title: C,
35
- sheet_statement: j,
36
- state: E,
37
- node_id: o,
38
- user_node_id: s,
39
- node_sub_group: G,
40
- node_type: y
41
- } = t, {
42
- can_start: I,
43
- can_resume: S,
44
- can_unlock: g,
45
- can_review: H,
46
- can_teacher_review: L,
47
- can_unassign: B,
48
- can_reset: U
49
- } = X, V = typeof b == "number" ? `${b}%` : void 0, n = O === "STUDENT", R = n ? H : L, P = he(E), { label: W, Icon: F } = we(G) || {}, a = ee(
50
- () => ({
51
- node_id: o,
52
- node_type: y
53
- }),
54
- [o, y]
55
- ), K = d(() => {
56
- c({
57
- analyticsLabel: k.RESOURCE_ASSIGNED,
58
- props: a
59
- }), i == null || i(o);
60
- }, [i, o, c, a]), Y = d(() => {
61
- if (n && (I || S)) {
62
- if (typeof f == "function") {
63
- f(o, h(t), s);
1
+ import { jsx as w } from "react/jsx-runtime";
2
+ import { h as R } from "../../../../node_modules/humanize-plus/dist/humanize.js";
3
+ import { memo as $, useMemo as _, useCallback as x } from "react";
4
+ import S from "../../../homework/homework-card.js";
5
+ import { getNodeTypeBasedHWCardTitle as z } from "../../../homework/utils.js";
6
+ import D from "../../../ui/buttons/clickable/clickable.js";
7
+ import { isV3Worksheet as c } from "../../utils/is-v3-worksheet.js";
8
+ const B = $(
9
+ ({ sheet: e, userType: d, userMilestoneId: u, onPreview: o, onReview: n, onStart: a }) => {
10
+ const {
11
+ accuracy: h,
12
+ permissions: b,
13
+ title: m,
14
+ state: j,
15
+ node_id: f,
16
+ user_node_id: t,
17
+ node_type: i,
18
+ image_url: v,
19
+ image_hue: y,
20
+ due_date_ts: E,
21
+ total_questions: r
22
+ } = e, {
23
+ can_start: l,
24
+ can_resume: k,
25
+ can_review: g,
26
+ can_teacher_review: C
27
+ } = b, s = d === "STUDENT", p = s ? g : C, H = _(() => z(i), [i]), T = _(
28
+ () => `${typeof r == "number" ? `${r} ${R.pluralize(
29
+ r,
30
+ "Question"
31
+ )} sjkdnskjn skdnkj fsdjn fks dvkjs dfkncsdkj vcjksd ckn` : ""}`,
32
+ [r]
33
+ ), N = x(() => {
34
+ if (s && (l || k)) {
35
+ if (typeof a == "function") {
36
+ a(f, c(e), t);
64
37
  return;
65
38
  }
66
39
  throw new Error("No callback is available");
67
40
  }
68
- if (R) {
69
- if (typeof p != "function")
41
+ if (p) {
42
+ if (typeof n != "function")
70
43
  throw new Error("onReview must be a function");
71
- if (!s)
44
+ if (!t)
72
45
  throw new Error("user node id must be present to review the sheet");
73
- p(s, h(t, "review"), _);
46
+ n(t, c(e, "review"), u);
74
47
  return;
75
48
  }
76
- if (typeof l != "function")
49
+ if (typeof o != "function")
77
50
  throw new Error("onPreview must be a function");
78
- l(t, h(t));
51
+ o(e, c(e));
79
52
  }, [
80
- S,
81
- R,
82
- I,
83
- n,
84
- o,
85
- t,
86
- _,
53
+ k,
54
+ p,
55
+ l,
87
56
  s,
88
57
  f,
89
- p,
90
- l
91
- ]), T = d(
92
- (z) => {
93
- switch (z) {
94
- case x:
95
- if (typeof u != "function")
96
- throw new Error("onUnassignSheet must be a function");
97
- c({
98
- analyticsLabel: k.RESOURCE_UNASSIGNED,
99
- props: a
100
- }), u(t);
101
- return;
102
- case N:
103
- if (typeof m != "function")
104
- throw new Error("onReset must be a function");
105
- m(t);
106
- return;
107
- }
108
- },
109
- [t, u, m, a, c]
110
- );
111
- te(() => {
112
- r.current && r.current.scrollHeight > r.current.clientHeight && M(!0);
113
- }, [r]);
114
- const q = [
115
- {
116
- id: "supplementary_resources_unassign",
117
- label: "Unassign",
118
- icon: /* @__PURE__ */ e(oe, { width: 20, height: 20 }),
119
- option: x,
120
- visible: B,
121
- onClick: T
122
- },
123
- {
124
- id: "supplementary_resources_redo",
125
- label: "Redo",
126
- icon: /* @__PURE__ */ e(ne, {}),
127
- option: N,
128
- visible: U,
129
- onClick: T
130
- }
131
- ], $ = _e(
132
- E,
58
+ e,
59
+ u,
60
+ t,
61
+ a,
133
62
  n,
134
- g,
135
- !!w
136
- );
137
- return /* @__PURE__ */ v(
138
- pe,
63
+ o
64
+ ]);
65
+ return /* @__PURE__ */ w(D, { label: `test card click ${m}`, onClick: N, children: /* @__PURE__ */ w(
66
+ S,
139
67
  {
140
- $gapX: 1,
141
- $gutterX: 1,
142
- $flexGapX: 1.25,
143
- $background: $,
144
- $justifyContent: "space-between",
145
- $heightX: 8,
146
- $isMilestoneWidget: w,
147
- children: [
148
- /* @__PURE__ */ e(
149
- A,
150
- {
151
- renderAs: "primary",
152
- position: "bottom",
153
- tooltipItem: C,
154
- hidden: !D,
155
- widthX: 21.75,
156
- children: /* @__PURE__ */ e(fe, { ref: r, $renderAs: "ab2", $color: "BLACK_T_87", children: C })
157
- }
158
- ),
159
- /* @__PURE__ */ v(se, { $flexDirection: "row", $justifyContent: "space-between", $alignItems: "center", children: [
160
- /* @__PURE__ */ e(A, { position: "bottom", tooltipItem: j, renderAs: "secondary", children: /* @__PURE__ */ e(
161
- ae,
162
- {
163
- renderAs: "primary",
164
- label: W ?? "",
165
- Icon: F,
166
- backgroundColor: $,
167
- state: P,
168
- hoverActive: !1,
169
- onClick: Y,
170
- accuracy: V,
171
- widthX: 8.5
172
- }
173
- ) }),
174
- !n && (g ? /* @__PURE__ */ e(
175
- de,
176
- {
177
- $flexDirection: "row",
178
- $alignItems: "center",
179
- $justifyContent: "center",
180
- onClick: K,
181
- children: /* @__PURE__ */ e(re, {})
182
- }
183
- ) : /* @__PURE__ */ e(
184
- ie,
185
- {
186
- targetElement: /* @__PURE__ */ e(ue, { invertHover: !0 }),
187
- menuElement: /* @__PURE__ */ e(le, { menuOptions: q })
188
- }
189
- ))
190
- ] })
191
- ]
68
+ nodeType: i,
69
+ cardHeader: H,
70
+ imageHue: y || "ORANGE",
71
+ imageUrl: v,
72
+ header: m,
73
+ subHeader: T,
74
+ userType: d,
75
+ state: j,
76
+ accuracy: h,
77
+ dueDateTs: E
192
78
  }
193
- );
79
+ ) });
194
80
  }
195
81
  );
196
82
  export {
197
- Me as default
83
+ B as default
198
84
  };
199
85
  //# sourceMappingURL=resource-item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-item.js","sources":["../../../../../src/features/sheets/resources-list/resource-item/resource-item.tsx"],"sourcesContent":["import type { IMenuOptionsProps } from './context-menu-helper/menu-element-types';\nimport type { IResourceItemProps } from './types';\nimport type { FC } from 'react';\n\nimport { useCallback, useLayoutEffect, useRef, memo, useState, useMemo } from 'react';\n\nimport Minus2Icon from '../../../../assets/line-icons/icons/minus2';\nimport Plus2Icon from '../../../../assets/line-icons/icons/plus2';\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 { useUIContext } from '../../../ui/context/context';\nimport FlexView from '../../../ui/layout/flex-view';\nimport SheetButton from '../../comps/sheet-button';\nimport ContextMenuTargetElement from '../../lessons-list/lesson-item/context-menu-helper/target-element';\nimport { SHEETS_ANALYTICS_EVENTS } from '../../sheets-analytics-events';\nimport { TEACHER_MENU_OPTIONS } from '../../sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant';\nimport { isV3Worksheet } from '../../utils/is-v3-worksheet';\nimport ContextMenuElement from './context-menu-helper/menu-element';\nimport * as Styled from './styled';\nimport {\n getResourceItemBackgroundColor,\n getResourceItemCtaInfo,\n getResourceItemCtaState,\n} from './utils';\n\nconst { UNASSIGN, REDO } = TEACHER_MENU_OPTIONS;\n\nconst ResourceItem: FC<IResourceItemProps> = memo(\n ({\n sheet,\n userType,\n isMilestoneWidget,\n userMilestoneId,\n onUnlock,\n onUnAssignSheet,\n onReset,\n onPreview,\n onReview,\n onStart,\n }) => {\n const { onClick: trackClick } = useUIContext();\n const titleTextRef = useRef<HTMLDivElement>(null);\n const [showTitleTooltip, setShowTitleTooltip] = useState(false);\n\n const {\n accuracy,\n permissions,\n title,\n sheet_statement: sheetStatement,\n state: sheetState,\n node_id: nodeId,\n user_node_id: userNodeId,\n node_sub_group: nodeSubGroup,\n node_type: nodeType,\n } = sheet;\n const {\n can_start: canStart,\n can_resume: canResume,\n can_unlock: canUnlock,\n can_review: canReview,\n can_teacher_review: canTeacherReview,\n can_unassign: canUnassign,\n can_reset: canReset,\n } = permissions;\n\n const sheetAccuracy = typeof accuracy === 'number' ? `${accuracy}%` : undefined;\n const isStudent = userType === 'STUDENT';\n const canReviewSheet = isStudent ? canReview : canTeacherReview;\n\n const ctaState = getResourceItemCtaState(sheetState);\n const { label, Icon } = getResourceItemCtaInfo(nodeSubGroup) || {};\n\n const analyticsProps = useMemo(\n () => ({\n node_id: nodeId,\n node_type: nodeType,\n }),\n [nodeId, nodeType],\n );\n\n const handleAssignSheet = useCallback(() => {\n trackClick({\n analyticsLabel: SHEETS_ANALYTICS_EVENTS.RESOURCE_ASSIGNED,\n props: analyticsProps,\n });\n\n onUnlock?.(nodeId);\n }, [onUnlock, nodeId, trackClick, analyticsProps]);\n\n const handleOnClick = useCallback(() => {\n if (isStudent && (canStart || canResume)) {\n if (typeof onStart === 'function') {\n onStart(nodeId, isV3Worksheet(sheet), userNodeId);\n\n return;\n }\n\n throw new Error('No callback is available');\n }\n\n if (canReviewSheet) {\n if (typeof onReview !== 'function') {\n throw new Error('onReview must be a function');\n }\n\n if (!userNodeId) {\n throw new Error('user node id must be present to review the sheet');\n }\n\n onReview(userNodeId, isV3Worksheet(sheet, 'review'), userMilestoneId);\n\n return;\n }\n\n if (typeof onPreview !== 'function') {\n throw new Error('onPreview must be a function');\n }\n\n onPreview(sheet, isV3Worksheet(sheet));\n }, [\n canResume,\n canReviewSheet,\n canStart,\n isStudent,\n nodeId,\n sheet,\n userMilestoneId,\n userNodeId,\n onStart,\n onReview,\n onPreview,\n ]);\n\n const handleMenuOptionClick = useCallback(\n (selectedOption: string) => {\n switch (selectedOption) {\n case UNASSIGN:\n if (typeof onUnAssignSheet !== 'function') {\n throw new Error('onUnassignSheet must be a function');\n }\n\n trackClick({\n analyticsLabel: SHEETS_ANALYTICS_EVENTS.RESOURCE_UNASSIGNED,\n props: analyticsProps,\n });\n\n onUnAssignSheet(sheet);\n\n return;\n\n case REDO:\n if (typeof onReset !== 'function') {\n throw new Error('onReset must be a function');\n }\n\n onReset(sheet);\n\n return;\n }\n },\n [sheet, onUnAssignSheet, onReset, analyticsProps, trackClick],\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 const menuOptions: IMenuOptionsProps[] = [\n {\n id: 'supplementary_resources_unassign',\n label: 'Unassign',\n icon: <Minus2Icon width={20} height={20} />,\n option: UNASSIGN,\n visible: canUnassign,\n onClick: handleMenuOptionClick,\n },\n {\n id: 'supplementary_resources_redo',\n label: 'Redo',\n icon: <RedoIcon />,\n option: REDO,\n visible: canReset,\n onClick: handleMenuOptionClick,\n },\n ];\n\n const backgroundColor = getResourceItemBackgroundColor(\n sheetState,\n isStudent,\n canUnlock,\n !!isMilestoneWidget,\n );\n\n return (\n <Styled.ResourceItemCard\n $gapX={1}\n $gutterX={1}\n $flexGapX={1.25}\n $background={backgroundColor}\n $justifyContent=\"space-between\"\n $heightX={8}\n $isMilestoneWidget={isMilestoneWidget}\n >\n <ArrowTooltip\n renderAs=\"primary\"\n position=\"bottom\"\n tooltipItem={title}\n hidden={!showTitleTooltip}\n widthX={21.75}\n >\n <Styled.ResourceItemTitle ref={titleTextRef} $renderAs=\"ab2\" $color=\"BLACK_T_87\">\n {title}\n </Styled.ResourceItemTitle>\n </ArrowTooltip>\n\n <FlexView $flexDirection=\"row\" $justifyContent=\"space-between\" $alignItems=\"center\">\n <ArrowTooltip position=\"bottom\" tooltipItem={sheetStatement} renderAs=\"secondary\">\n <SheetButton\n renderAs=\"primary\"\n label={label ?? ''}\n Icon={Icon}\n backgroundColor={backgroundColor}\n state={ctaState}\n hoverActive={false}\n onClick={handleOnClick}\n accuracy={sheetAccuracy}\n widthX={8.5}\n />\n </ArrowTooltip>\n\n {!isStudent &&\n (canUnlock ? (\n <Styled.IconButtonWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n onClick={handleAssignSheet}\n >\n <Plus2Icon />\n </Styled.IconButtonWrapper>\n ) : (\n <ContextMenu\n targetElement={<ContextMenuTargetElement invertHover />}\n menuElement={<ContextMenuElement menuOptions={menuOptions} />}\n />\n ))}\n </FlexView>\n </Styled.ResourceItemCard>\n );\n },\n);\n\nexport default ResourceItem;\n"],"names":["UNASSIGN","REDO","TEACHER_MENU_OPTIONS","ResourceItem","memo","sheet","userType","isMilestoneWidget","userMilestoneId","onUnlock","onUnAssignSheet","onReset","onPreview","onReview","onStart","trackClick","useUIContext","titleTextRef","useRef","showTitleTooltip","setShowTitleTooltip","useState","accuracy","permissions","title","sheetStatement","sheetState","nodeId","userNodeId","nodeSubGroup","nodeType","canStart","canResume","canUnlock","canReview","canTeacherReview","canUnassign","canReset","sheetAccuracy","isStudent","canReviewSheet","ctaState","getResourceItemCtaState","label","Icon","getResourceItemCtaInfo","analyticsProps","useMemo","handleAssignSheet","useCallback","SHEETS_ANALYTICS_EVENTS","handleOnClick","isV3Worksheet","handleMenuOptionClick","selectedOption","useLayoutEffect","menuOptions","jsx","Minus2Icon","RedoIcon","backgroundColor","getResourceItemBackgroundColor","jsxs","Styled.ResourceItemCard","ArrowTooltip","Styled.ResourceItemTitle","FlexView","SheetButton","Styled.IconButtonWrapper","Plus2Icon","ContextMenu","ContextMenuTargetElement","ContextMenuElement"],"mappings":"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"}
1
+ {"version":3,"file":"resource-item.js","sources":["../../../../../src/features/sheets/resources-list/resource-item/resource-item.tsx"],"sourcesContent":["import type { TSheetStates } from '../../../chapters-v2/comps/node-card/node-card-types';\nimport type { IResourceItemProps } from './types';\nimport type { FC } from 'react';\n\nimport { pluralize } from 'humanize-plus';\nimport { useCallback, memo, useMemo } from 'react';\n\nimport HomeworkCard from '../../../homework/homework-card';\nimport { getNodeTypeBasedHWCardTitle } from '../../../homework/utils';\nimport Clickable from '../../../ui/buttons/clickable/clickable';\nimport { isV3Worksheet } from '../../utils/is-v3-worksheet';\n\nconst ResourceItem: FC<IResourceItemProps> = memo(\n ({ sheet, userType, userMilestoneId, onPreview, onReview, onStart }) => {\n const {\n accuracy,\n permissions,\n title,\n state: sheetState,\n node_id: nodeId,\n user_node_id: userNodeId,\n node_type: nodeType,\n image_url: imageUrl,\n image_hue: imageHue,\n due_date_ts: dueDateTs,\n total_questions: totalQuestions,\n } = sheet;\n const {\n can_start: canStart,\n can_resume: canResume,\n can_review: canReview,\n can_teacher_review: canTeacherReview,\n } = permissions;\n\n const isStudent = userType === 'STUDENT';\n const canReviewSheet = isStudent ? canReview : canTeacherReview;\n const cardHeader = useMemo(() => getNodeTypeBasedHWCardTitle(nodeType), [nodeType]);\n const subHeader = useMemo(\n () =>\n `${\n typeof totalQuestions === 'number'\n ? `${totalQuestions} ${pluralize(\n totalQuestions,\n 'Question',\n )} sjkdnskjn skdnkj fsdjn fks dvkjs dfkncsdkj vcjksd ckn`\n : ''\n }`,\n [totalQuestions],\n );\n const handleOnClick = useCallback(() => {\n if (isStudent && (canStart || canResume)) {\n if (typeof onStart === 'function') {\n onStart(nodeId, isV3Worksheet(sheet), userNodeId);\n\n return;\n }\n\n throw new Error('No callback is available');\n }\n\n if (canReviewSheet) {\n if (typeof onReview !== 'function') {\n throw new Error('onReview must be a function');\n }\n\n if (!userNodeId) {\n throw new Error('user node id must be present to review the sheet');\n }\n\n onReview(userNodeId, isV3Worksheet(sheet, 'review'), userMilestoneId);\n\n return;\n }\n\n if (typeof onPreview !== 'function') {\n throw new Error('onPreview must be a function');\n }\n\n onPreview(sheet, isV3Worksheet(sheet));\n }, [\n canResume,\n canReviewSheet,\n canStart,\n isStudent,\n nodeId,\n sheet,\n userMilestoneId,\n userNodeId,\n onStart,\n onReview,\n onPreview,\n ]);\n\n return (\n <Clickable label={`test card click ${title}`} onClick={handleOnClick}>\n <HomeworkCard\n nodeType={nodeType}\n cardHeader={cardHeader}\n imageHue={imageHue || 'ORANGE'}\n imageUrl={imageUrl}\n header={title}\n subHeader={subHeader}\n userType={userType}\n state={sheetState as TSheetStates}\n accuracy={accuracy}\n dueDateTs={dueDateTs}\n />\n </Clickable>\n );\n },\n);\n\nexport default ResourceItem;\n"],"names":["ResourceItem","memo","sheet","userType","userMilestoneId","onPreview","onReview","onStart","accuracy","permissions","title","sheetState","nodeId","userNodeId","nodeType","imageUrl","imageHue","dueDateTs","totalQuestions","canStart","canResume","canReview","canTeacherReview","isStudent","canReviewSheet","cardHeader","useMemo","getNodeTypeBasedHWCardTitle","subHeader","pluralize","handleOnClick","useCallback","isV3Worksheet","Clickable","jsx","HomeworkCard"],"mappings":";;;;;;;AAYA,MAAMA,IAAuCC;AAAA,EAC3C,CAAC,EAAE,OAAAC,GAAO,UAAAC,GAAU,iBAAAC,GAAiB,WAAAC,GAAW,UAAAC,GAAU,SAAAC,QAAc;AAChE,UAAA;AAAA,MACJ,UAAAC;AAAA,MACA,aAAAC;AAAA,MACA,OAAAC;AAAA,MACA,OAAOC;AAAA,MACP,SAASC;AAAA,MACT,cAAcC;AAAA,MACd,WAAWC;AAAA,MACX,WAAWC;AAAA,MACX,WAAWC;AAAA,MACX,aAAaC;AAAA,MACb,iBAAiBC;AAAA,IACf,IAAAhB,GACE;AAAA,MACJ,WAAWiB;AAAA,MACX,YAAYC;AAAA,MACZ,YAAYC;AAAA,MACZ,oBAAoBC;AAAA,IAClB,IAAAb,GAEEc,IAAYpB,MAAa,WACzBqB,IAAiBD,IAAYF,IAAYC,GACzCG,IAAaC,EAAQ,MAAMC,EAA4Bb,CAAQ,GAAG,CAACA,CAAQ,CAAC,GAC5Ec,IAAYF;AAAA,MAChB,MACE,GACE,OAAOR,KAAmB,WACtB,GAAGA,CAAc,IAAIW,EAAA;AAAA,QACnBX;AAAA,QACA;AAAA,MAAA,CACD,2DACD,EACN;AAAA,MACF,CAACA,CAAc;AAAA,IAAA,GAEXY,IAAgBC,EAAY,MAAM;AAClC,UAAAR,MAAcJ,KAAYC,IAAY;AACpC,YAAA,OAAOb,KAAY,YAAY;AACjC,UAAAA,EAAQK,GAAQoB,EAAc9B,CAAK,GAAGW,CAAU;AAEhD;AAAA,QACF;AAEM,cAAA,IAAI,MAAM,0BAA0B;AAAA,MAC5C;AAEA,UAAIW,GAAgB;AACd,YAAA,OAAOlB,KAAa;AAChB,gBAAA,IAAI,MAAM,6BAA6B;AAG/C,YAAI,CAACO;AACG,gBAAA,IAAI,MAAM,kDAAkD;AAGpE,QAAAP,EAASO,GAAYmB,EAAc9B,GAAO,QAAQ,GAAGE,CAAe;AAEpE;AAAA,MACF;AAEI,UAAA,OAAOC,KAAc;AACjB,cAAA,IAAI,MAAM,8BAA8B;AAGtC,MAAAA,EAAAH,GAAO8B,EAAc9B,CAAK,CAAC;AAAA,IAAA,GACpC;AAAA,MACDkB;AAAA,MACAI;AAAA,MACAL;AAAA,MACAI;AAAA,MACAX;AAAA,MACAV;AAAA,MACAE;AAAA,MACAS;AAAA,MACAN;AAAA,MACAD;AAAA,MACAD;AAAA,IAAA,CACD;AAED,6BACG4B,GAAU,EAAA,OAAO,mBAAmBvB,CAAK,IAAI,SAASoB,GACrD,UAAA,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAArB;AAAA,QACA,YAAAW;AAAA,QACA,UAAUT,KAAY;AAAA,QACtB,UAAAD;AAAA,QACA,QAAQL;AAAA,QACR,WAAAkB;AAAA,QACA,UAAAzB;AAAA,QACA,OAAOQ;AAAA,QACP,UAAAH;AAAA,QACA,WAAAS;AAAA,MAAA;AAAA,IAEJ,EAAA,CAAA;AAAA,EAEJ;AACF;"}
@@ -4,22 +4,22 @@ import L from "../../ui/layout/flex-view.js";
4
4
  import R from "./resource-item/resource-item.js";
5
5
  import { ResourceItemListWrapper as g } from "./styled.js";
6
6
  const y = a(
7
- ({ sheets: o, userType: i, isMilestoneWidget: t, ...m }) => {
8
- const e = u(null), s = l(() => o.length, [o]), n = u(0);
7
+ ({ sheets: t, userType: i, isMilestoneWidget: o, ...m }) => {
8
+ const e = u(null), s = l(() => t.length, [t]), n = u(0);
9
9
  return d(() => {
10
- if (e.current && !t) {
10
+ if (e.current && !o) {
11
11
  e.current.style.height = "auto";
12
12
  const r = e.current.clientHeight;
13
13
  r > n.current && (n.current = r), e.current.style.height = `${n.current}px`;
14
14
  }
15
- }, [s, t]), /* @__PURE__ */ c(L, { ref: e, children: /* @__PURE__ */ c(g, { $isMilestoneWidget: t, children: o.map((r, f) => {
15
+ }, [s, o]), /* @__PURE__ */ c(L, { ref: e, children: /* @__PURE__ */ c(g, { children: t.map((r, f) => {
16
16
  const { worksheet_id: h, node_id: p } = r;
17
17
  return /* @__PURE__ */ c(
18
18
  R,
19
19
  {
20
20
  sheet: r,
21
21
  userType: i,
22
- isMilestoneWidget: t,
22
+ isMilestoneWidget: o,
23
23
  ...m
24
24
  },
25
25
  `${h}_${p}_${f}`
@@ -1 +1 @@
1
- {"version":3,"file":"resources-list.js","sources":["../../../../src/features/sheets/resources-list/resources-list.tsx"],"sourcesContent":["import type { IResourcesListProps } from './types';\nimport type { FC } from 'react';\n\nimport { useRef, useLayoutEffect, useMemo, memo } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport ResourceItem from './resource-item/resource-item';\nimport * as Styled from './styled';\n\nconst ResourcesList: FC<IResourcesListProps> = memo(\n ({ sheets, userType, isMilestoneWidget, ...sheetCallBacks }) => {\n const resourceListContainerRef = useRef<HTMLDivElement>(null);\n const resourceListLength = useMemo(() => sheets.length, [sheets]);\n const maxHeightRef = useRef(0);\n\n useLayoutEffect(() => {\n if (resourceListContainerRef.current && !isMilestoneWidget) {\n resourceListContainerRef.current.style.height = 'auto';\n\n const newHeight = resourceListContainerRef.current.clientHeight;\n\n if (newHeight > maxHeightRef.current) {\n maxHeightRef.current = newHeight;\n }\n\n resourceListContainerRef.current.style.height = `${maxHeightRef.current}px`;\n }\n }, [resourceListLength, isMilestoneWidget]);\n\n return (\n <FlexView ref={resourceListContainerRef}>\n <Styled.ResourceItemListWrapper $isMilestoneWidget={isMilestoneWidget}>\n {sheets.map((sheet, idx) => {\n const { worksheet_id: worksheetId, node_id: nodeId } = sheet;\n\n return (\n <ResourceItem\n key={`${worksheetId}_${nodeId}_${idx}`}\n sheet={sheet}\n userType={userType}\n isMilestoneWidget={isMilestoneWidget}\n {...sheetCallBacks}\n />\n );\n })}\n </Styled.ResourceItemListWrapper>\n </FlexView>\n );\n },\n);\n\nexport default ResourcesList;\n"],"names":["ResourcesList","memo","sheets","userType","isMilestoneWidget","sheetCallBacks","resourceListContainerRef","useRef","resourceListLength","useMemo","maxHeightRef","useLayoutEffect","newHeight","jsx","FlexView","Styled.ResourceItemListWrapper","sheet","idx","worksheetId","nodeId","ResourceItem"],"mappings":";;;;;AASA,MAAMA,IAAyCC;AAAA,EAC7C,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,mBAAAC,GAAmB,GAAGC,QAAqB;AACxD,UAAAC,IAA2BC,EAAuB,IAAI,GACtDC,IAAqBC,EAAQ,MAAMP,EAAO,QAAQ,CAACA,CAAM,CAAC,GAC1DQ,IAAeH,EAAO,CAAC;AAE7B,WAAAI,EAAgB,MAAM;AAChB,UAAAL,EAAyB,WAAW,CAACF,GAAmB;AACjC,QAAAE,EAAA,QAAQ,MAAM,SAAS;AAE1C,cAAAM,IAAYN,EAAyB,QAAQ;AAE/C,QAAAM,IAAYF,EAAa,YAC3BA,EAAa,UAAUE,IAGzBN,EAAyB,QAAQ,MAAM,SAAS,GAAGI,EAAa,OAAO;AAAA,MACzE;AAAA,IAAA,GACC,CAACF,GAAoBJ,CAAiB,CAAC,GAGvC,gBAAAS,EAAAC,GAAA,EAAS,KAAKR,GACb,4BAACS,GAAA,EAA+B,oBAAoBX,GACjD,UAAAF,EAAO,IAAI,CAACc,GAAOC,MAAQ;AAC1B,YAAM,EAAE,cAAcC,GAAa,SAASC,MAAWH;AAGrD,aAAA,gBAAAH;AAAA,QAACO;AAAA,QAAA;AAAA,UAEC,OAAAJ;AAAA,UACA,UAAAb;AAAA,UACA,mBAAAC;AAAA,UACC,GAAGC;AAAA,QAAA;AAAA,QAJC,GAAGa,CAAW,IAAIC,CAAM,IAAIF,CAAG;AAAA,MAAA;AAAA,IAKtC,CAEH,GACH,EACF,CAAA;AAAA,EAEJ;AACF;"}
1
+ {"version":3,"file":"resources-list.js","sources":["../../../../src/features/sheets/resources-list/resources-list.tsx"],"sourcesContent":["import type { IResourcesListProps } from './types';\nimport type { FC } from 'react';\n\nimport { useRef, useLayoutEffect, useMemo, memo } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport ResourceItem from './resource-item/resource-item';\nimport * as Styled from './styled';\n\nconst ResourcesList: FC<IResourcesListProps> = memo(\n ({ sheets, userType, isMilestoneWidget, ...sheetCallBacks }) => {\n const resourceListContainerRef = useRef<HTMLDivElement>(null);\n const resourceListLength = useMemo(() => sheets.length, [sheets]);\n const maxHeightRef = useRef(0);\n\n useLayoutEffect(() => {\n if (resourceListContainerRef.current && !isMilestoneWidget) {\n resourceListContainerRef.current.style.height = 'auto';\n\n const newHeight = resourceListContainerRef.current.clientHeight;\n\n if (newHeight > maxHeightRef.current) {\n maxHeightRef.current = newHeight;\n }\n\n resourceListContainerRef.current.style.height = `${maxHeightRef.current}px`;\n }\n }, [resourceListLength, isMilestoneWidget]);\n\n return (\n <FlexView ref={resourceListContainerRef}>\n <Styled.ResourceItemListWrapper>\n {sheets.map((sheet, idx) => {\n const { worksheet_id: worksheetId, node_id: nodeId } = sheet;\n\n return (\n <ResourceItem\n key={`${worksheetId}_${nodeId}_${idx}`}\n sheet={sheet}\n userType={userType}\n isMilestoneWidget={isMilestoneWidget}\n {...sheetCallBacks}\n />\n );\n })}\n </Styled.ResourceItemListWrapper>\n </FlexView>\n );\n },\n);\n\nexport default ResourcesList;\n"],"names":["ResourcesList","memo","sheets","userType","isMilestoneWidget","sheetCallBacks","resourceListContainerRef","useRef","resourceListLength","useMemo","maxHeightRef","useLayoutEffect","newHeight","jsx","FlexView","Styled.ResourceItemListWrapper","sheet","idx","worksheetId","nodeId","ResourceItem"],"mappings":";;;;;AASA,MAAMA,IAAyCC;AAAA,EAC7C,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,mBAAAC,GAAmB,GAAGC,QAAqB;AACxD,UAAAC,IAA2BC,EAAuB,IAAI,GACtDC,IAAqBC,EAAQ,MAAMP,EAAO,QAAQ,CAACA,CAAM,CAAC,GAC1DQ,IAAeH,EAAO,CAAC;AAE7B,WAAAI,EAAgB,MAAM;AAChB,UAAAL,EAAyB,WAAW,CAACF,GAAmB;AACjC,QAAAE,EAAA,QAAQ,MAAM,SAAS;AAE1C,cAAAM,IAAYN,EAAyB,QAAQ;AAE/C,QAAAM,IAAYF,EAAa,YAC3BA,EAAa,UAAUE,IAGzBN,EAAyB,QAAQ,MAAM,SAAS,GAAGI,EAAa,OAAO;AAAA,MACzE;AAAA,IAAA,GACC,CAACF,GAAoBJ,CAAiB,CAAC,GAGvC,gBAAAS,EAAAC,GAAA,EAAS,KAAKR,GACb,UAAC,gBAAAO,EAAAE,GAAA,EACE,UAAOb,EAAA,IAAI,CAACc,GAAOC,MAAQ;AAC1B,YAAM,EAAE,cAAcC,GAAa,SAASC,MAAWH;AAGrD,aAAA,gBAAAH;AAAA,QAACO;AAAA,QAAA;AAAA,UAEC,OAAAJ;AAAA,UACA,UAAAb;AAAA,UACA,mBAAAC;AAAA,UACC,GAAGC;AAAA,QAAA;AAAA,QAJC,GAAGa,CAAW,IAAIC,CAAM,IAAIF,CAAG;AAAA,MAAA;AAAA,IAKtC,CAEH,GACH,EACF,CAAA;AAAA,EAEJ;AACF;"}
@@ -1,16 +1,12 @@
1
- import o from "styled-components";
2
- const a = o.div(
3
- ({ theme: t, $isMilestoneWidget: e }) => {
4
- const { layout: r } = t;
5
- return `
6
- display: grid;
7
- grid-template-columns: repeat(2, 1fr);
8
- grid-template-rows: max-content;
9
- gap: ${e ? 0 : `${r.gutter * 1.5}px`};
10
- `;
11
- }
12
- );
1
+ import e from "styled-components";
2
+ const p = e.div`
3
+ display: grid;
4
+ grid-template-columns: repeat(3, 200px);
5
+ grid-gap: 32px;
6
+ justify-content: center;
7
+ padding: 32px 0;
8
+ `;
13
9
  export {
14
- a as ResourceItemListWrapper
10
+ p as ResourceItemListWrapper
15
11
  };
16
12
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../../src/features/sheets/resources-list/styled.tsx"],"sourcesContent":["import type { IResourcesListProps } from './types';\n\nimport styled from 'styled-components';\n\ninterface IResourceItemListWrapper {\n $isMilestoneWidget: IResourcesListProps['isMilestoneWidget'];\n}\n\nconst ResourceItemListWrapper = styled.div<IResourceItemListWrapper>(\n ({ theme, $isMilestoneWidget }) => {\n const { layout } = theme;\n\n return `\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n grid-template-rows: max-content;\n gap: ${$isMilestoneWidget ? 0 : `${layout.gutter * 1.5}px`};\n `;\n },\n);\n\nexport { ResourceItemListWrapper };\n"],"names":["ResourceItemListWrapper","styled","theme","$isMilestoneWidget","layout"],"mappings":";AAQA,MAAMA,IAA0BC,EAAO;AAAA,EACrC,CAAC,EAAE,OAAAC,GAAO,oBAAAC,QAAyB;AAC3B,UAAA,EAAE,QAAAC,EAAW,IAAAF;AAEZ,WAAA;AAAA;AAAA;AAAA;AAAA,WAIAC,IAAqB,IAAI,GAAGC,EAAO,SAAS,GAAG,IAAI;AAAA;AAAA,EAE5D;AACF;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../../src/features/sheets/resources-list/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nconst ResourceItemListWrapper = styled.div`\n display: grid;\n grid-template-columns: repeat(3, 200px);\n grid-gap: 32px;\n justify-content: center;\n padding: 32px 0;\n`;\n\nexport { ResourceItemListWrapper };\n"],"names":["ResourceItemListWrapper","styled"],"mappings":";AAEA,MAAMA,IAA0BC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -1,4 +1,4 @@
1
- const E = {
1
+ const A = {
2
2
  CHANGE_LOCATION: "Change location",
3
3
  RESET_PROGRESS: "Reset progress",
4
4
  MARK_AS_FAMILIAR: "Mark as learned",
@@ -11,9 +11,10 @@ const E = {
11
11
  MARK_AS_DONE: "Mark as Done",
12
12
  SKIP: "Skip",
13
13
  REVERT_SKIP: "Revert Skip",
14
- REDO: "Redo"
14
+ REDO: "Redo",
15
+ ASSIGN_AS_HW: "Assign as HW"
15
16
  };
16
17
  export {
17
- E as TEACHER_MENU_OPTIONS
18
+ A as TEACHER_MENU_OPTIONS
18
19
  };
19
20
  //# sourceMappingURL=teacher-actions-constant.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"teacher-actions-constant.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.ts"],"sourcesContent":["export const TEACHER_MENU_OPTIONS = {\n CHANGE_LOCATION: 'Change location',\n RESET_PROGRESS: 'Reset progress',\n MARK_AS_FAMILIAR: 'Mark as learned',\n MARK_BACK_AS_RELEVANT: 'Mark back as relevant',\n MARK_AS_NOT_NEEDED: 'Mark as not needed',\n UNASSIGN: 'Unassign',\n //* New options\n ENABLE_AS_HW: 'Enable as HW',\n REVERT_TO_CW: 'Revert to CW',\n MARK_AS_DONE: 'Mark as Done',\n SKIP: 'Skip',\n REVERT_SKIP: 'Revert Skip',\n REDO: 'Redo',\n} as const;\n"],"names":["TEACHER_MENU_OPTIONS"],"mappings":"AAAO,MAAMA,IAAuB;AAAA,EAClC,iBAAiB;AAAA,EACjB,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,uBAAuB;AAAA,EACvB,oBAAoB;AAAA,EACpB,UAAU;AAAA;AAAA,EAEV,cAAc;AAAA,EACd,cAAc;AAAA,EACd,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,MAAM;AACR;"}
1
+ {"version":3,"file":"teacher-actions-constant.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions-constant.ts"],"sourcesContent":["export const TEACHER_MENU_OPTIONS = {\n CHANGE_LOCATION: 'Change location',\n RESET_PROGRESS: 'Reset progress',\n MARK_AS_FAMILIAR: 'Mark as learned',\n MARK_BACK_AS_RELEVANT: 'Mark back as relevant',\n MARK_AS_NOT_NEEDED: 'Mark as not needed',\n UNASSIGN: 'Unassign',\n //* New options\n ENABLE_AS_HW: 'Enable as HW',\n REVERT_TO_CW: 'Revert to CW',\n MARK_AS_DONE: 'Mark as Done',\n SKIP: 'Skip',\n REVERT_SKIP: 'Revert Skip',\n REDO: 'Redo',\n ASSIGN_AS_HW: 'Assign as HW',\n} as const;\n"],"names":["TEACHER_MENU_OPTIONS"],"mappings":"AAAO,MAAMA,IAAuB;AAAA,EAClC,iBAAiB;AAAA,EACjB,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,uBAAuB;AAAA,EACvB,oBAAoB;AAAA,EACpB,UAAU;AAAA;AAAA,EAEV,cAAc;AAAA,EACd,cAAc;AAAA,EACd,cAAc;AAAA,EACd,MAAM;AAAA,EACN,aAAa;AAAA,EACb,MAAM;AAAA,EACN,cAAc;AAChB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { IWorksheetAttemptModel } from '../../../types/models/worksheet';\nimport type { TLPARSheetData } from '../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-type';\nimport type { ISheetDataProps, TNodeTypeProps } from '../sheets-list/sheet-item/sheet-item-types';\n\nimport { NODE_TYPE } from '../constants/sheet';\n\nconst SAT_V3_NODE_TYPES: TNodeTypeProps[] = [\n 'SAT_MATH_ASSESSMENT',\n 'SAT_ENGLISH_ASSESSMENT',\n 'SAT_MATH_RECAP',\n 'SAT_MATH_LEARNING',\n 'SAT_ENGLISH_LEARNING',\n];\nconst WORKSHEET_V3_NODE_TYPES: TNodeTypeProps[] = [\n ...SAT_V3_NODE_TYPES,\n NODE_TYPE.REMEDIAL,\n NODE_TYPE.LEGACY,\n NODE_TYPE.RECAP,\n NODE_TYPE.GENERAL,\n NODE_TYPE.LEVEL3,\n NODE_TYPE.LEVEL2,\n NODE_TYPE.REVISION,\n NODE_TYPE.TARGET_PRACTICE,\n NODE_TYPE.EXTRA_PRACTICE,\n NODE_TYPE.PRACTICE,\n NODE_TYPE.LEARNING,\n NODE_TYPE.PUZZLE_EASY,\n NODE_TYPE.PUZZLE_MEDIUM,\n NODE_TYPE.PUZZLE_HARD,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.TURING_PRACTICE,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.SUBJECTIVE,\n NODE_TYPE.TURING_SUBJECTIVE,\n];\n\nconst isV3Worksheet = (\n sheet: ISheetDataProps | TLPARSheetData,\n mode?: 'resume' | 'review',\n): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = sheet;\n\n if (mode === 'review') {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n const canStart = 'can_start' in sheet ? sheet.can_start : sheet.permissions.can_start;\n const canReattempt =\n 'can_reattempt' in sheet ? sheet.can_reattempt : sheet.permissions.can_reattempt;\n const canRedo = 'can_redo' in sheet ? sheet.can_redo : false;\n\n if (is_worksheet_v3 || is_lesson_v3_enabled) {\n return true;\n }\n\n // For new and reattemptable worksheets start the worksheet in v3 mode\n if (canStart || canReattempt || canRedo) {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n // For SAT assessments start the worksheet in v3 mode\n if (SAT_V3_NODE_TYPES.includes(node_type)) {\n return true;\n }\n\n return false;\n};\n\nconst isV3WorksheetAttempt = (attempt: IWorksheetAttemptModel): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = attempt;\n\n return (\n is_worksheet_v3 ||\n is_lesson_v3_enabled ||\n SAT_V3_NODE_TYPES.includes(node_type as TNodeTypeProps)\n );\n};\n\nexport { isV3Worksheet, isV3WorksheetAttempt };\n"],"names":["SAT_V3_NODE_TYPES","WORKSHEET_V3_NODE_TYPES","NODE_TYPE","isV3Worksheet","sheet","mode","node_type","is_worksheet_v3","is_lesson_v3_enabled","canStart","canReattempt","canRedo","isV3WorksheetAttempt","attempt"],"mappings":";AAMA,MAAMA,IAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACMC,IAA4C;AAAA,EAChD,GAAGD;AAAA,EACHE,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEMC,IAAgB,CACpBC,GACAC,MACY;AACZ,QAAM,EAAE,WAAAC,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBJ;AAE7D,MAAIC,MAAS;AACJ,WAAAJ,EAAwB,SAASK,CAAS;AAGnD,QAAMG,IAAW,eAAeL,IAAQA,EAAM,YAAYA,EAAM,YAAY,WACtEM,IACJ,mBAAmBN,IAAQA,EAAM,gBAAgBA,EAAM,YAAY,eAC/DO,IAAU,cAAcP,IAAQA,EAAM,WAAW;AAEvD,SAAIG,KAAmBC,IACd,KAILC,KAAYC,KAAgBC,IACvBV,EAAwB,SAASK,CAAS,IAI/C,EAAAN,EAAkB,SAASM,CAAS;AAK1C,GAEMM,IAAuB,CAACC,MAA6C;AACzE,QAAM,EAAE,WAAAP,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBK;AAE7D,SACEN,KACAC,KACAR,EAAkB,SAASM,CAA2B;AAE1D;"}
1
+ {"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { IWorksheetAttemptModel } from '../../../types/models/worksheet';\nimport type { INodeDataProps } from '../../chapters-v2/comps/node-card/node-card-types';\nimport type { TLPARSheetData } from '../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-type';\nimport type { ISheetDataProps, TNodeTypeProps } from '../sheets-list/sheet-item/sheet-item-types';\n\nimport { NODE_TYPE } from '../constants/sheet';\n\nconst SAT_V3_NODE_TYPES: TNodeTypeProps[] = [\n 'SAT_MATH_ASSESSMENT',\n 'SAT_ENGLISH_ASSESSMENT',\n 'SAT_MATH_RECAP',\n 'SAT_MATH_LEARNING',\n 'SAT_ENGLISH_LEARNING',\n];\nconst WORKSHEET_V3_NODE_TYPES: TNodeTypeProps[] = [\n ...SAT_V3_NODE_TYPES,\n NODE_TYPE.REMEDIAL,\n NODE_TYPE.LEGACY,\n NODE_TYPE.RECAP,\n NODE_TYPE.GENERAL,\n NODE_TYPE.LEVEL3,\n NODE_TYPE.LEVEL2,\n NODE_TYPE.REVISION,\n NODE_TYPE.TARGET_PRACTICE,\n NODE_TYPE.EXTRA_PRACTICE,\n NODE_TYPE.PRACTICE,\n NODE_TYPE.LEARNING,\n NODE_TYPE.PUZZLE_EASY,\n NODE_TYPE.PUZZLE_MEDIUM,\n NODE_TYPE.PUZZLE_HARD,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.TURING_PRACTICE,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.SUBJECTIVE,\n NODE_TYPE.TURING_SUBJECTIVE,\n];\n\nconst isV3Worksheet = (\n sheet: ISheetDataProps | TLPARSheetData | INodeDataProps,\n mode?: 'resume' | 'review',\n): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = sheet;\n\n if (mode === 'review') {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n const canStart = 'can_start' in sheet ? sheet.can_start : sheet.permissions.can_start;\n const canReattempt =\n 'can_reattempt' in sheet ? sheet.can_reattempt : sheet.permissions.can_reattempt;\n const canRedo = 'can_redo' in sheet ? sheet.can_redo : false;\n\n if (is_worksheet_v3 || is_lesson_v3_enabled) {\n return true;\n }\n\n // For new and reattemptable worksheets start the worksheet in v3 mode\n if (canStart || canReattempt || canRedo) {\n return WORKSHEET_V3_NODE_TYPES.includes(node_type);\n }\n\n // For SAT assessments start the worksheet in v3 mode\n if (SAT_V3_NODE_TYPES.includes(node_type)) {\n return true;\n }\n\n return false;\n};\n\nconst isV3WorksheetAttempt = (attempt: IWorksheetAttemptModel): boolean => {\n const { node_type, is_worksheet_v3, is_lesson_v3_enabled } = attempt;\n\n return (\n is_worksheet_v3 ||\n is_lesson_v3_enabled ||\n SAT_V3_NODE_TYPES.includes(node_type as TNodeTypeProps)\n );\n};\n\nexport { isV3Worksheet, isV3WorksheetAttempt };\n"],"names":["SAT_V3_NODE_TYPES","WORKSHEET_V3_NODE_TYPES","NODE_TYPE","isV3Worksheet","sheet","mode","node_type","is_worksheet_v3","is_lesson_v3_enabled","canStart","canReattempt","canRedo","isV3WorksheetAttempt","attempt"],"mappings":";AAOA,MAAMA,IAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACMC,IAA4C;AAAA,EAChD,GAAGD;AAAA,EACHE,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEMC,IAAgB,CACpBC,GACAC,MACY;AACZ,QAAM,EAAE,WAAAC,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBJ;AAE7D,MAAIC,MAAS;AACJ,WAAAJ,EAAwB,SAASK,CAAS;AAGnD,QAAMG,IAAW,eAAeL,IAAQA,EAAM,YAAYA,EAAM,YAAY,WACtEM,IACJ,mBAAmBN,IAAQA,EAAM,gBAAgBA,EAAM,YAAY,eAC/DO,IAAU,cAAcP,IAAQA,EAAM,WAAW;AAEvD,SAAIG,KAAmBC,IACd,KAILC,KAAYC,KAAgBC,IACvBV,EAAwB,SAASK,CAAS,IAI/C,EAAAN,EAAkB,SAASM,CAAS;AAK1C,GAEMM,IAAuB,CAACC,MAA6C;AACzE,QAAM,EAAE,WAAAP,GAAW,iBAAAC,GAAiB,sBAAAC,EAAA,IAAyBK;AAE7D,SACEN,KACAC,KACAR,EAAkB,SAASM,CAA2B;AAE1D;"}
@@ -1,17 +1,17 @@
1
- import { jsxs as D, Fragment as I, jsx as r } from "react/jsx-runtime";
2
- import U from "../../../node_modules/lodash.throttle/index.js";
3
- import { useRef as W, useState as m, useCallback as $, useEffect as Y } from "react";
4
- import { useTheme as H } from "styled-components";
1
+ import { jsxs as I, Fragment as U, jsx as r } from "react/jsx-runtime";
2
+ import W from "../../../node_modules/lodash.throttle/index.js";
3
+ import { useRef as Y, useState as m, useCallback as $, useEffect as H } from "react";
4
+ import { useTheme as P } from "styled-components";
5
5
  import C from "../layout/flex-view.js";
6
- import P from "../portal/portal.js";
7
- import V from "../text/text.js";
8
- import { TooltipBody as Z } from "./arrow-tooltip-styled.js";
9
- import { computeTooltipNewCoOrdinates as q } from "./arrow-tooltip-util.js";
10
- const y = 8, G = 100, J = ({
6
+ import V from "../portal/portal.js";
7
+ import Z from "../text/text.js";
8
+ import { TooltipBody as q } from "./arrow-tooltip-styled.js";
9
+ import { computeTooltipNewCoOrdinates as y } from "./arrow-tooltip-util.js";
10
+ const G = 8, J = 100, K = ({
11
11
  isAnimated: O,
12
12
  alwaysVisible: o = !1,
13
13
  arrowColor: T,
14
- arrowSize: h = y,
14
+ arrowSize: h = G,
15
15
  arrowXCoOrdinates: g,
16
16
  arrowYCoOrdinates: w,
17
17
  backgroundColor: R,
@@ -27,61 +27,62 @@ const y = 8, G = 100, J = ({
27
27
  tooltipYCoOrdinates: k,
28
28
  width: F,
29
29
  widthX: L,
30
- zIndex: M
30
+ zIndex: M,
31
+ parentWidth: S
31
32
  }) => {
32
- const { arrowTooltip: S } = H(), { tooltipVariants: a } = S, { backgroundColorName: X } = a[i], u = W(null), [_, p] = m(o), [j, v] = m(
33
+ const { arrowTooltip: X } = P(), { tooltipVariants: a } = X, { backgroundColorName: _ } = a[i], u = Y(null), [j, p] = m(o), [v, z] = m(
33
34
  null
34
35
  ), s = $(
35
36
  (e, n) => {
36
- v(e), p(n);
37
+ z(e), p(n);
37
38
  },
38
39
  []
39
- ), z = $(() => {
40
+ ), B = $(() => {
40
41
  if (t || o)
41
42
  return null;
42
43
  s(null, !1);
43
- }, [o, s, t]), d = U(() => {
44
+ }, [o, s, t]), d = W(() => {
44
45
  var f;
45
46
  const { current: e } = u;
46
47
  if (t || !e) return null;
47
- const n = (f = e.children[0]) == null ? void 0 : f.getBoundingClientRect(), B = n ? q(c, n) : null;
48
- return s(B, !0), null;
49
- }, G);
50
- return Y(() => {
48
+ const n = (f = e.children[0]) == null ? void 0 : f.getBoundingClientRect(), D = n ? y(c, n) : null;
49
+ return s(D, !0), null;
50
+ }, J);
51
+ return H(() => {
51
52
  t && p(!1), o && d();
52
- }, [o, t]), /* @__PURE__ */ D(I, { children: [
53
+ }, [o, t]), /* @__PURE__ */ I(U, { children: [
53
54
  /* @__PURE__ */ r(
54
55
  C,
55
56
  {
56
- $width: "fit-content",
57
+ $width: S || "fit-content",
57
58
  ref: u,
58
59
  onMouseEnter: d,
59
- onMouseLeave: z,
60
+ onMouseLeave: B,
60
61
  children: /* @__PURE__ */ r(C, { children: x })
61
62
  }
62
63
  ),
63
- _ && /* @__PURE__ */ r(P, { portalId: "tooltip-root", children: /* @__PURE__ */ r(
64
- Z,
64
+ j && /* @__PURE__ */ r(V, { portalId: "tooltip-root", children: /* @__PURE__ */ r(
65
+ q,
65
66
  {
66
67
  $arrowSize: h,
67
68
  $arrowXCoOrdinates: g,
68
69
  $arrowYCoOrdinates: w,
69
70
  $position: c,
70
71
  $renderAs: i,
71
- $tooltipCoOrdinates: j,
72
+ $tooltipCoOrdinates: v,
72
73
  $tooltipOffset: E,
73
74
  $tooltipXCoOrdinates: N,
74
75
  $tooltipYCoOrdinates: k,
75
76
  $width: F,
76
77
  $widthX: L,
77
78
  $zIndex: M,
78
- $background: X,
79
+ $background: _,
79
80
  $backgroundColor: R,
80
81
  $arrowColor: T,
81
82
  $borderColor: b,
82
83
  $isAnimated: O,
83
84
  children: typeof l == "string" ? /* @__PURE__ */ r(
84
- V,
85
+ Z,
85
86
  {
86
87
  $renderAs: A || "body3",
87
88
  $color: a[i].textColorName,
@@ -92,8 +93,8 @@ const y = 8, G = 100, J = ({
92
93
  }
93
94
  ) })
94
95
  ] });
95
- }, so = J;
96
+ }, co = K;
96
97
  export {
97
- so as default
98
+ co as default
98
99
  };
99
100
  //# sourceMappingURL=arrow-tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-tooltip.js","sources":["../../../../src/features/ui/arrow-tooltip/arrow-tooltip.tsx"],"sourcesContent":["import type {\n IArrowTooltipProps,\n THandleVisibleNCoOrdinatesProps,\n TTooltipCoOrdinatesProps,\n} from './arrow-tooltip-types';\n\nimport throttle from 'lodash.throttle';\nimport { useState, type FC, useCallback, useRef, useEffect } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\nimport Portal from '../portal/portal';\nimport Text from '../text/text';\nimport * as Styled from './arrow-tooltip-styled';\nimport { computeTooltipNewCoOrdinates } from './arrow-tooltip-util';\n\nconst DEFAULT_ARROW_SIZE = 8;\nconst THROTTLE_DURATION = 100;\n\nconst ArrowTooltip: FC<IArrowTooltipProps> = ({\n isAnimated,\n alwaysVisible = false,\n arrowColor,\n arrowSize = DEFAULT_ARROW_SIZE,\n arrowXCoOrdinates,\n arrowYCoOrdinates,\n backgroundColor,\n borderColor,\n children,\n hidden,\n position,\n renderAs,\n textVariant,\n tooltipItem,\n tooltipOffset,\n tooltipXCoOrdinates,\n tooltipYCoOrdinates,\n width,\n widthX,\n zIndex,\n}) => {\n const { arrowTooltip } = useTheme();\n const { tooltipVariants } = arrowTooltip;\n const { backgroundColorName } = tooltipVariants[renderAs];\n\n const tooltipWrapperRef = useRef<HTMLDivElement>(null);\n const [visible, setVisible] = useState(alwaysVisible);\n const [tooltipCoOrdinates, setTooltipCoOrdinates] = useState<TTooltipCoOrdinatesProps | null>(\n null,\n );\n\n const handleVisibleNCoOrdinates: THandleVisibleNCoOrdinatesProps = useCallback(\n (newCoOrdinates, visibility) => {\n setTooltipCoOrdinates(newCoOrdinates);\n setVisible(visibility);\n },\n [],\n );\n\n const handleVisibility = useCallback(() => {\n if (hidden || alwaysVisible) {\n return null;\n }\n\n handleVisibleNCoOrdinates(null, false);\n\n return;\n }, [alwaysVisible, handleVisibleNCoOrdinates, hidden]);\n\n const handleOnMouseEnter = throttle(() => {\n const { current } = tooltipWrapperRef;\n\n if (hidden || !current) return null;\n\n const boundingClientRect = current.children[0]?.getBoundingClientRect();\n const newCoOrdinates = boundingClientRect\n ? computeTooltipNewCoOrdinates(position, boundingClientRect)\n : null;\n\n handleVisibleNCoOrdinates(newCoOrdinates, true);\n\n return null;\n }, THROTTLE_DURATION);\n\n useEffect(() => {\n if (hidden) {\n setVisible(false);\n }\n\n if (alwaysVisible) {\n handleOnMouseEnter();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [alwaysVisible, hidden]);\n\n return (\n <>\n <FlexView\n $width=\"fit-content\"\n ref={tooltipWrapperRef}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleVisibility}\n >\n <FlexView>{children}</FlexView>\n </FlexView>\n {visible && (\n <Portal portalId=\"tooltip-root\">\n <Styled.TooltipBody\n $arrowSize={arrowSize}\n $arrowXCoOrdinates={arrowXCoOrdinates}\n $arrowYCoOrdinates={arrowYCoOrdinates}\n $position={position}\n $renderAs={renderAs}\n $tooltipCoOrdinates={tooltipCoOrdinates}\n $tooltipOffset={tooltipOffset}\n $tooltipXCoOrdinates={tooltipXCoOrdinates}\n $tooltipYCoOrdinates={tooltipYCoOrdinates}\n $width={width}\n $widthX={widthX}\n $zIndex={zIndex}\n $background={backgroundColorName}\n $backgroundColor={backgroundColor}\n $arrowColor={arrowColor}\n $borderColor={borderColor}\n $isAnimated={isAnimated}\n >\n {typeof tooltipItem === 'string' ? (\n <Text\n $renderAs={textVariant || 'body3'}\n $color={tooltipVariants[renderAs].textColorName}\n $align=\"center\"\n >\n {tooltipItem}\n </Text>\n ) : (\n tooltipItem\n )}\n </Styled.TooltipBody>\n </Portal>\n )}\n </>\n );\n};\n\nexport default ArrowTooltip;\n"],"names":["DEFAULT_ARROW_SIZE","THROTTLE_DURATION","ArrowTooltip","isAnimated","alwaysVisible","arrowColor","arrowSize","arrowXCoOrdinates","arrowYCoOrdinates","backgroundColor","borderColor","children","hidden","position","renderAs","textVariant","tooltipItem","tooltipOffset","tooltipXCoOrdinates","tooltipYCoOrdinates","width","widthX","zIndex","arrowTooltip","useTheme","tooltipVariants","backgroundColorName","tooltipWrapperRef","useRef","visible","setVisible","useState","tooltipCoOrdinates","setTooltipCoOrdinates","handleVisibleNCoOrdinates","useCallback","newCoOrdinates","visibility","handleVisibility","handleOnMouseEnter","throttle","current","boundingClientRect","_a","computeTooltipNewCoOrdinates","useEffect","jsxs","Fragment","jsx","FlexView","Portal","Styled.TooltipBody","Text","ArrowTooltip$1"],"mappings":"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"}
1
+ {"version":3,"file":"arrow-tooltip.js","sources":["../../../../src/features/ui/arrow-tooltip/arrow-tooltip.tsx"],"sourcesContent":["import type {\n IArrowTooltipProps,\n THandleVisibleNCoOrdinatesProps,\n TTooltipCoOrdinatesProps,\n} from './arrow-tooltip-types';\n\nimport throttle from 'lodash.throttle';\nimport { useState, type FC, useCallback, useRef, useEffect } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\nimport Portal from '../portal/portal';\nimport Text from '../text/text';\nimport * as Styled from './arrow-tooltip-styled';\nimport { computeTooltipNewCoOrdinates } from './arrow-tooltip-util';\n\nconst DEFAULT_ARROW_SIZE = 8;\nconst THROTTLE_DURATION = 100;\n\nconst ArrowTooltip: FC<IArrowTooltipProps> = ({\n isAnimated,\n alwaysVisible = false,\n arrowColor,\n arrowSize = DEFAULT_ARROW_SIZE,\n arrowXCoOrdinates,\n arrowYCoOrdinates,\n backgroundColor,\n borderColor,\n children,\n hidden,\n position,\n renderAs,\n textVariant,\n tooltipItem,\n tooltipOffset,\n tooltipXCoOrdinates,\n tooltipYCoOrdinates,\n width,\n widthX,\n zIndex,\n parentWidth,\n}) => {\n const { arrowTooltip } = useTheme();\n const { tooltipVariants } = arrowTooltip;\n const { backgroundColorName } = tooltipVariants[renderAs];\n\n const tooltipWrapperRef = useRef<HTMLDivElement>(null);\n const [visible, setVisible] = useState(alwaysVisible);\n const [tooltipCoOrdinates, setTooltipCoOrdinates] = useState<TTooltipCoOrdinatesProps | null>(\n null,\n );\n\n const handleVisibleNCoOrdinates: THandleVisibleNCoOrdinatesProps = useCallback(\n (newCoOrdinates, visibility) => {\n setTooltipCoOrdinates(newCoOrdinates);\n setVisible(visibility);\n },\n [],\n );\n\n const handleVisibility = useCallback(() => {\n if (hidden || alwaysVisible) {\n return null;\n }\n\n handleVisibleNCoOrdinates(null, false);\n\n return;\n }, [alwaysVisible, handleVisibleNCoOrdinates, hidden]);\n\n const handleOnMouseEnter = throttle(() => {\n const { current } = tooltipWrapperRef;\n\n if (hidden || !current) return null;\n\n const boundingClientRect = current.children[0]?.getBoundingClientRect();\n const newCoOrdinates = boundingClientRect\n ? computeTooltipNewCoOrdinates(position, boundingClientRect)\n : null;\n\n handleVisibleNCoOrdinates(newCoOrdinates, true);\n\n return null;\n }, THROTTLE_DURATION);\n\n useEffect(() => {\n if (hidden) {\n setVisible(false);\n }\n\n if (alwaysVisible) {\n handleOnMouseEnter();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [alwaysVisible, hidden]);\n\n return (\n <>\n <FlexView\n $width={parentWidth || 'fit-content'}\n ref={tooltipWrapperRef}\n onMouseEnter={handleOnMouseEnter}\n onMouseLeave={handleVisibility}\n >\n <FlexView>{children}</FlexView>\n </FlexView>\n {visible && (\n <Portal portalId=\"tooltip-root\">\n <Styled.TooltipBody\n $arrowSize={arrowSize}\n $arrowXCoOrdinates={arrowXCoOrdinates}\n $arrowYCoOrdinates={arrowYCoOrdinates}\n $position={position}\n $renderAs={renderAs}\n $tooltipCoOrdinates={tooltipCoOrdinates}\n $tooltipOffset={tooltipOffset}\n $tooltipXCoOrdinates={tooltipXCoOrdinates}\n $tooltipYCoOrdinates={tooltipYCoOrdinates}\n $width={width}\n $widthX={widthX}\n $zIndex={zIndex}\n $background={backgroundColorName}\n $backgroundColor={backgroundColor}\n $arrowColor={arrowColor}\n $borderColor={borderColor}\n $isAnimated={isAnimated}\n >\n {typeof tooltipItem === 'string' ? (\n <Text\n $renderAs={textVariant || 'body3'}\n $color={tooltipVariants[renderAs].textColorName}\n $align=\"center\"\n >\n {tooltipItem}\n </Text>\n ) : (\n tooltipItem\n )}\n </Styled.TooltipBody>\n </Portal>\n )}\n </>\n );\n};\n\nexport default ArrowTooltip;\n"],"names":["DEFAULT_ARROW_SIZE","THROTTLE_DURATION","ArrowTooltip","isAnimated","alwaysVisible","arrowColor","arrowSize","arrowXCoOrdinates","arrowYCoOrdinates","backgroundColor","borderColor","children","hidden","position","renderAs","textVariant","tooltipItem","tooltipOffset","tooltipXCoOrdinates","tooltipYCoOrdinates","width","widthX","zIndex","parentWidth","arrowTooltip","useTheme","tooltipVariants","backgroundColorName","tooltipWrapperRef","useRef","visible","setVisible","useState","tooltipCoOrdinates","setTooltipCoOrdinates","handleVisibleNCoOrdinates","useCallback","newCoOrdinates","visibility","handleVisibility","handleOnMouseEnter","throttle","current","boundingClientRect","_a","computeTooltipNewCoOrdinates","useEffect","jsxs","Fragment","jsx","FlexView","Portal","Styled.TooltipBody","Text","ArrowTooltip$1"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  const _ = {
2
2
  CHAPTER_CROWN_ICON: 4,
3
3
  CHAPTER_PLUS_ICON: 2,
4
- CHAPTER_PROGRESS_SVG: 1,
4
+ CHAPTER_PROGRESS_SVG: 2,
5
5
  LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,
6
6
  LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,
7
7
  MODAL: 20,
@@ -1 +1 @@
1
- {"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 1,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n TILE_CONTAINER: 30, //whiteboard\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAC5B;"}
1
+ {"version":3,"file":"z-index.js","sources":["../../../../src/features/ui/constants/z-index.ts"],"sourcesContent":["const ZINDEX = {\n CHAPTER_CROWN_ICON: 4,\n CHAPTER_PLUS_ICON: 2,\n CHAPTER_PROGRESS_SVG: 2,\n LPAR_SHEET_ITEM_BOTTOM_DASH_BOX: 1,\n LPAR_SHEET_ITEM_TOP_VERTICAL_ICON: 2,\n MODAL: 20,\n SAT_SUMMARY_SCORE: 25, //* SAT_SUMMARY_SCORE > MODAL\n CANVAS_SCRIBBLING: 26, //* CANVAS_SCRIBBLING > Learnosity\n TILE_CONTAINER: 30, //whiteboard\n QUESTION_TIPS: -1,\n DESMOS_CALCULATOR: 2,\n GOAL_CHAPTER_SHEETS_MENU: 4,\n} as const;\n\nexport { ZINDEX };\n"],"names":["ZINDEX"],"mappings":"AAAA,MAAMA,IAAS;AAAA,EACb,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,OAAO;AAAA,EACP,mBAAmB;AAAA;AAAA,EACnB,mBAAmB;AAAA;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAChB,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,0BAA0B;AAC5B;"}