@cuemath/leap 3.3.34 → 3.3.36-m

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 (224) hide show
  1. package/dist/assets/gif/gif.js +1 -4
  2. package/dist/assets/gif/gif.js.map +1 -1
  3. package/dist/assets/illustrations/illustrations.js +1 -1
  4. package/dist/assets/illustrations/illustrations.js.map +1 -1
  5. package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
  6. package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js +1 -1
  7. package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js.map +1 -1
  8. package/dist/features/auth/comps/otp-input/otp-input.js +29 -35
  9. package/dist/features/auth/comps/otp-input/otp-input.js.map +1 -1
  10. package/dist/features/auth/pla-signup/pla-analytics-events.js +3 -12
  11. package/dist/features/auth/pla-signup/pla-analytics-events.js.map +1 -1
  12. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js +34 -43
  13. package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -1
  14. package/dist/features/chapters-v2/chapter-details/chapter-details.js +101 -140
  15. package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
  16. package/dist/features/chapters-v2/utils/index.js +16 -20
  17. package/dist/features/chapters-v2/utils/index.js.map +1 -1
  18. package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js +6 -6
  19. package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js.map +1 -1
  20. package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js +21 -20
  21. package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js.map +1 -1
  22. package/dist/features/circle-games/games/web-view/web-view-types.js.map +1 -1
  23. package/dist/features/circle-games/sign-up/sign-up.js +6 -6
  24. package/dist/features/circle-games/sign-up/sign-up.js.map +1 -1
  25. package/dist/features/homework/hw-card-list/hw-card-list-view.js +17 -17
  26. package/dist/features/journey/journey-id/journey-id-student.js +1 -1
  27. package/dist/features/journey/journey-id/journey-id-student.js.map +1 -1
  28. package/dist/features/journey/journey-id/journey-id-teacher.js +2 -2
  29. package/dist/features/journey/journey-id/journey-id-teacher.js.map +1 -1
  30. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +0 -400
  31. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
  32. package/dist/features/milestone/constants.js +15 -28
  33. package/dist/features/milestone/constants.js.map +1 -1
  34. package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector.js +6 -6
  35. package/dist/features/milestone/create/comps/sheets-list/sheets-list-styled.js +2 -2
  36. package/dist/features/milestone/create/comps/test-type-step/test-type-utils.js +16 -23
  37. package/dist/features/milestone/create/comps/test-type-step/test-type-utils.js.map +1 -1
  38. package/dist/features/milestone/create/milestone-create-helpers.js +7 -13
  39. package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
  40. package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js +22 -28
  41. package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js.map +1 -1
  42. package/dist/features/parent-dashboard/hooks/use-fetch-parent-home.js +1 -1
  43. package/dist/features/parent-dashboard/hooks/use-fetch-parent-home.js.map +1 -1
  44. package/dist/features/parent-dashboard/hooks/use-parent-home-data.js +46 -48
  45. package/dist/features/parent-dashboard/hooks/use-parent-home-data.js.map +1 -1
  46. package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js +12 -0
  47. package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-styled.js.map +1 -0
  48. package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js +17 -16
  49. package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js.map +1 -1
  50. package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js +8 -4
  51. package/dist/features/parent-dashboard/modals/trial-report/trial-report-styled.js.map +1 -1
  52. package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-styled.js +3 -3
  53. package/dist/features/parent-dashboard/modals/tutor-change/tutor-change-styled.js.map +1 -1
  54. package/dist/features/parent-dashboard/parent-dashboard-constants.js +4 -45
  55. package/dist/features/parent-dashboard/parent-dashboard-constants.js.map +1 -1
  56. package/dist/features/parent-dashboard/parent-dashboard-types.js +3 -3
  57. package/dist/features/parent-dashboard/parent-dashboard-types.js.map +1 -1
  58. package/dist/features/parent-dashboard/parent-dashboard-view.js +174 -197
  59. package/dist/features/parent-dashboard/parent-dashboard-view.js.map +1 -1
  60. package/dist/features/stickers/sticker-selector/hooks/use-handle-sticker-send.js +32 -0
  61. package/dist/features/stickers/sticker-selector/hooks/use-handle-sticker-send.js.map +1 -0
  62. package/dist/features/stickers/sticker-selector/hooks/use-stickers-journey/use-stickers-journey.js +72 -0
  63. package/dist/features/stickers/sticker-selector/hooks/use-stickers-journey/use-stickers-journey.js.map +1 -0
  64. package/dist/features/stickers/sticker-selector/sticker-selector.js +58 -57
  65. package/dist/features/stickers/sticker-selector/sticker-selector.js.map +1 -1
  66. package/dist/features/stickers/stickers-effects/comps/sticker-with-fallback.js +34 -0
  67. package/dist/features/stickers/stickers-effects/comps/sticker-with-fallback.js.map +1 -0
  68. package/dist/features/stickers/stickers-effects/constants.js +26 -0
  69. package/dist/features/stickers/stickers-effects/constants.js.map +1 -0
  70. package/dist/features/stickers/stickers-effects/context/sticker-provider.js +28 -0
  71. package/dist/features/stickers/stickers-effects/context/sticker-provider.js.map +1 -0
  72. package/dist/features/stickers/stickers-effects/hooks/use-stickers.js +12 -0
  73. package/dist/features/stickers/stickers-effects/hooks/use-stickers.js.map +1 -0
  74. package/dist/features/stickers/stickers-effects/stickers-effects-helper.js.map +1 -1
  75. package/dist/features/stickers/stickers-effects/stickers-effects-styled.js +32 -17
  76. package/dist/features/stickers/stickers-effects/stickers-effects-styled.js.map +1 -1
  77. package/dist/features/stickers/stickers-effects/stickers-effects-types.js +6 -0
  78. package/dist/features/stickers/stickers-effects/stickers-effects-types.js.map +1 -0
  79. package/dist/features/stickers/stickers-effects/stickers-effects.js +40 -56
  80. package/dist/features/stickers/stickers-effects/stickers-effects.js.map +1 -1
  81. package/dist/features/student-details/class-details/class-details-utils.js +6 -6
  82. package/dist/features/trial-session/comps/class-preference/class-preference.js +58 -74
  83. package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
  84. package/dist/features/trial-session/comps/learning-plan/index.js +45 -47
  85. package/dist/features/trial-session/comps/learning-plan/index.js.map +1 -1
  86. package/dist/features/trial-session/comps/navigation-bar/index.js +40 -41
  87. package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
  88. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps-constants.js +1 -1
  89. package/dist/features/trial-session/comps/pla/next-steps/next-steps-constants.js.map +1 -0
  90. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps-styled.js +1 -1
  91. package/dist/features/trial-session/comps/pla/next-steps/next-steps-styled.js.map +1 -0
  92. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/next-steps/next-steps.js +5 -5
  93. package/dist/features/trial-session/comps/pla/next-steps/next-steps.js.map +1 -0
  94. package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-countdown.js +29 -0
  95. package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-countdown.js.map +1 -0
  96. package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-status-config.js +132 -0
  97. package/dist/features/trial-session/comps/pla/session-status/hooks/use-session-status-config.js.map +1 -0
  98. package/dist/features/trial-session/comps/pla/session-status/session-status-constants.js +11 -0
  99. package/dist/features/trial-session/comps/pla/session-status/session-status-constants.js.map +1 -0
  100. package/dist/features/trial-session/comps/pla/session-status/session-status-helpers.js +19 -0
  101. package/dist/features/trial-session/comps/pla/session-status/session-status-helpers.js.map +1 -0
  102. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-status/session-status-styled.js +2 -2
  103. package/dist/features/trial-session/comps/pla/session-status/session-status-styled.js.map +1 -0
  104. package/dist/features/trial-session/comps/pla/session-status/session-status.js +127 -0
  105. package/dist/features/trial-session/comps/pla/session-status/session-status.js.map +1 -0
  106. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-summary/session-summary-constants.js +12 -18
  107. package/dist/features/trial-session/comps/pla/session-summary/session-summary-constants.js.map +1 -0
  108. package/dist/features/trial-session/comps/pla/session-summary/session-summary.js +53 -0
  109. package/dist/features/trial-session/comps/pla/session-summary/session-summary.js.map +1 -0
  110. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/session-summary/summary-card/summary-card-styled.js +1 -1
  111. package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card-styled.js.map +1 -0
  112. package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js +56 -0
  113. package/dist/features/trial-session/comps/pla/session-summary/summary-card/summary-card.js.map +1 -0
  114. package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-constants.js.map +1 -0
  115. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-styled.js +1 -1
  116. package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-styled.js.map +1 -0
  117. package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions-types.js.map +1 -0
  118. package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions.js +14 -14
  119. package/dist/features/trial-session/comps/pla/upcoming-sessions/upcoming-sessions.js.map +1 -0
  120. package/dist/features/trial-session/comps/school-goals/school-goals.js +57 -59
  121. package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
  122. package/dist/features/trial-session/comps/session-report/session-report.js +15 -15
  123. package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
  124. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +40 -41
  125. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
  126. package/dist/features/trial-session/comps/student-feedback/student-feedback-constants.js +0 -5
  127. package/dist/features/trial-session/comps/student-feedback/student-feedback-constants.js.map +1 -1
  128. package/dist/features/trial-session/comps/student-feedback/student-feedback.js +51 -96
  129. package/dist/features/trial-session/comps/student-feedback/student-feedback.js.map +1 -1
  130. package/dist/features/trial-session/comps/student-profile/student-profile.js +63 -70
  131. package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
  132. package/dist/features/trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js +44 -43
  133. package/dist/features/trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js.map +1 -1
  134. package/dist/features/trial-session/comps/test-prep/test-prep.js +40 -41
  135. package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
  136. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js +61 -60
  137. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js.map +1 -1
  138. package/dist/features/trial-session/helper.js +61 -76
  139. package/dist/features/trial-session/helper.js.map +1 -1
  140. package/dist/features/trial-session/hooks/use-trial-session-navigation.js +144 -174
  141. package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
  142. package/dist/features/trial-session/trial-session-types.js.map +1 -1
  143. package/dist/features/trial-session/trial-session-view.js +110 -99
  144. package/dist/features/trial-session/trial-session-view.js.map +1 -1
  145. package/dist/features/ui/accordion/accordion-items/accordion-items.js +13 -13
  146. package/dist/features/ui/accordion/accordion-items/accordion-items.js.map +1 -1
  147. package/dist/features/ui/modals/modal-styled.js +13 -45
  148. package/dist/features/ui/modals/modal-styled.js.map +1 -1
  149. package/dist/features/ui/modals/modal.js +31 -31
  150. package/dist/features/ui/modals/modal.js.map +1 -1
  151. package/dist/features/utils/utils.js +1 -1
  152. package/dist/features/utils/utils.js.map +1 -1
  153. package/dist/index.d.ts +145 -94
  154. package/dist/index.js +301 -292
  155. package/dist/index.js.map +1 -1
  156. package/dist/node_modules/date-fns/_lib/getRoundingMethod.js +10 -0
  157. package/dist/node_modules/date-fns/_lib/getRoundingMethod.js.map +1 -0
  158. package/dist/node_modules/date-fns/differenceInMilliseconds.js +9 -0
  159. package/dist/node_modules/date-fns/differenceInMilliseconds.js.map +1 -0
  160. package/dist/node_modules/date-fns/differenceInSeconds.js +11 -0
  161. package/dist/node_modules/date-fns/differenceInSeconds.js.map +1 -0
  162. package/dist/static/trophy.a8ea85ef.json +6813 -0
  163. package/package.json +3 -2
  164. package/dist/features/journey/hooks/use-chapter-page-journey/use-download-block-journey.js +0 -86
  165. package/dist/features/journey/hooks/use-chapter-page-journey/use-download-block-journey.js.map +0 -1
  166. package/dist/features/journey/hooks/use-chapter-page-journey/use-download-node-journey.js +0 -140
  167. package/dist/features/journey/hooks/use-chapter-page-journey/use-download-node-journey.js.map +0 -1
  168. package/dist/features/parent-dashboard/api/cancel-subscription.js +0 -9
  169. package/dist/features/parent-dashboard/api/cancel-subscription.js.map +0 -1
  170. package/dist/features/parent-dashboard/comps/billing-information/billing-information-styled.js +0 -20
  171. package/dist/features/parent-dashboard/comps/billing-information/billing-information-styled.js.map +0 -1
  172. package/dist/features/parent-dashboard/comps/billing-information/billing-information.js +0 -74
  173. package/dist/features/parent-dashboard/comps/billing-information/billing-information.js.map +0 -1
  174. package/dist/features/parent-dashboard/comps/next-steps/next-steps-constants.js.map +0 -1
  175. package/dist/features/parent-dashboard/comps/next-steps/next-steps-styled.js.map +0 -1
  176. package/dist/features/parent-dashboard/comps/next-steps/next-steps.js.map +0 -1
  177. package/dist/features/parent-dashboard/comps/session-status/hooks/use-countdown.js +0 -34
  178. package/dist/features/parent-dashboard/comps/session-status/hooks/use-countdown.js.map +0 -1
  179. package/dist/features/parent-dashboard/comps/session-status/hooks/use-session-status-config.js +0 -137
  180. package/dist/features/parent-dashboard/comps/session-status/hooks/use-session-status-config.js.map +0 -1
  181. package/dist/features/parent-dashboard/comps/session-status/session-status-constants.js +0 -20
  182. package/dist/features/parent-dashboard/comps/session-status/session-status-constants.js.map +0 -1
  183. package/dist/features/parent-dashboard/comps/session-status/session-status-helpers.js +0 -19
  184. package/dist/features/parent-dashboard/comps/session-status/session-status-helpers.js.map +0 -1
  185. package/dist/features/parent-dashboard/comps/session-status/session-status-styled.js.map +0 -1
  186. package/dist/features/parent-dashboard/comps/session-status/session-status.js +0 -124
  187. package/dist/features/parent-dashboard/comps/session-status/session-status.js.map +0 -1
  188. package/dist/features/parent-dashboard/comps/session-summary/session-summary-constants.js.map +0 -1
  189. package/dist/features/parent-dashboard/comps/session-summary/session-summary.js +0 -54
  190. package/dist/features/parent-dashboard/comps/session-summary/session-summary.js.map +0 -1
  191. package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card-styled.js.map +0 -1
  192. package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card.js +0 -72
  193. package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card.js.map +0 -1
  194. package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-constants.js.map +0 -1
  195. package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-styled.js.map +0 -1
  196. package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions-types.js.map +0 -1
  197. package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions.js.map +0 -1
  198. package/dist/features/parent-dashboard/modals/cancel-subscription/cancel-subscription-constants.js +0 -21
  199. package/dist/features/parent-dashboard/modals/cancel-subscription/cancel-subscription-constants.js.map +0 -1
  200. package/dist/features/parent-dashboard/modals/cancel-subscription/cancel-subscription.js +0 -85
  201. package/dist/features/parent-dashboard/modals/cancel-subscription/cancel-subscription.js.map +0 -1
  202. package/dist/features/parent-dashboard/modals/cancellation-confirmation/cancellation-confirmation.js +0 -23
  203. package/dist/features/parent-dashboard/modals/cancellation-confirmation/cancellation-confirmation.js.map +0 -1
  204. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason-constant.js +0 -55
  205. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason-constant.js.map +0 -1
  206. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason-styled.js +0 -71
  207. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason-styled.js.map +0 -1
  208. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason.js +0 -119
  209. package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason.js.map +0 -1
  210. package/dist/features/parent-dashboard/modals/hooks/use-pla-model-handlers.js +0 -58
  211. package/dist/features/parent-dashboard/modals/hooks/use-pla-model-handlers.js.map +0 -1
  212. package/dist/features/parent-dashboard/modals/view-payment-method/view-payment-method.js +0 -76
  213. package/dist/features/parent-dashboard/modals/view-payment-method/view-payment-method.js.map +0 -1
  214. package/dist/features/trial-session/api/teacher-availability.js +0 -9
  215. package/dist/features/trial-session/api/teacher-availability.js.map +0 -1
  216. package/dist/features/trial-session/comps/class-preference/helpers.js +0 -28
  217. package/dist/features/trial-session/comps/class-preference/helpers.js.map +0 -1
  218. package/dist/features/trial-session/hooks/use-slide-config-update.js +0 -49
  219. package/dist/features/trial-session/hooks/use-slide-config-update.js.map +0 -1
  220. package/dist/static/learning-session-grid-bg-mobile.8d2b7258.gif +0 -0
  221. package/dist/static/way-forward-grid-bg-mobile.374043d7.gif +0 -0
  222. package/dist/static/your-goals-grid-bg-mobile.62557024.gif +0 -0
  223. /package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-constants.js +0 -0
  224. /package/dist/features/{parent-dashboard/comps → trial-session/comps/pla}/upcoming-sessions/upcoming-sessions-types.js +0 -0
@@ -1,5 +1,4 @@
1
- import { EPLAState as e } from "./parent-dashboard-types.js";
2
- const l = {
1
+ const a = {
3
2
  small: 40,
4
3
  medium: 40,
5
4
  large: 80,
@@ -9,7 +8,7 @@ const l = {
9
8
  large: 24,
10
9
  extraLarge: 80
11
10
  }
12
- }, E = {
11
+ }, e = {
13
12
  small: 16,
14
13
  medium: 24,
15
14
  large: 40,
@@ -19,49 +18,9 @@ const l = {
19
18
  large: 22,
20
19
  extraLarge: 40
21
20
  }
22
- }, t = [
23
- e.SUBSCRIPTION_CANCELLED_AFTER_PAYMENT,
24
- e.SUBSCRIPTION_CANCELLED_AFTER_TRIAL_BEFORE_PAYMENT,
25
- e.SUBSCRIPTION_CANCELLED_BEFORE_TRIAL
26
- ], s = [
27
- e.TRIAL_COMPLETED_PAYMENT_PENDING,
28
- e.TRIAL_COMPLETED_PAYMENT_SUCCESSFUL,
29
- e.REGULAR_CLASS_COMPLETED
30
- ], T = [
31
- e.CARD_ADDED_SEARCHING_TUTOR,
32
- e.CARD_ADDED_TUTOR_ASSIGNED,
33
- ...s
34
- ], S = {
35
- plaState: null,
36
- sessionDetails: null,
37
- teacherDetails: null,
38
- billingDetails: null,
39
- isOnlyTrialDone: !1,
40
- isRegularClassDone: !1,
41
- isTrialDone: !1,
42
- isSubscriptionCancelled: !1,
43
- isCardDeclined: !1,
44
- cardOnFileNotAvailable: !1,
45
- isTutorNoShow: !1,
46
- isStudentNoShow: !1,
47
- completedSessions: 0,
48
- nextSessionEnd: 0,
49
- nextSessionStart: 0,
50
- upcomingSessions: [],
51
- teacherName: "",
52
- showLoading: !0,
53
- demoId: "",
54
- userAttemptId: "",
55
- isProcessingFailed: !1,
56
- canChangeTutor: !1,
57
- showPLAIntroduction: !1
58
21
  };
59
22
  export {
60
- S as DEFAULT_LOADING_STATE,
61
- l as DESKTOP_SPACING,
62
- E as MOBILE_SPACING,
63
- T as PLA_INTRO_ELIGIBLE_STATES,
64
- t as SUBSCRIPTION_CANCELLED_STATES,
65
- s as TRIAL_COMPLETED_STATES
23
+ a as DESKTOP_SPACING,
24
+ e as MOBILE_SPACING
66
25
  };
67
26
  //# sourceMappingURL=parent-dashboard-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parent-dashboard-constants.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-constants.ts"],"sourcesContent":["import { EPLAState, type IUseParentHomeDataReturn } from './parent-dashboard-types';\n\nexport const MODAL_KEYS = {\n STUDENT_PROFILE: 'studentProfile',\n INSIGHTS: 'insights',\n LEARNING_PLAN: 'learningPlan',\n CHANGE_TUTOR: 'pla-change-tutor',\n STUDENT_PROFILE_SUMMARY: 'student-profile-summary',\n} as const;\n\nexport const DESKTOP_SPACING = {\n small: 40,\n medium: 40,\n large: 80,\n separator: {\n small: 12,\n medium: 20,\n large: 24,\n extraLarge: 80,\n },\n} as const;\n\nexport const MOBILE_SPACING = {\n small: 16,\n medium: 24,\n large: 40,\n separator: {\n small: 8,\n medium: 16,\n large: 22,\n extraLarge: 40,\n },\n} as const;\n\nexport const SUBSCRIPTION_CANCELLED_STATES = [\n EPLAState.SUBSCRIPTION_CANCELLED_AFTER_PAYMENT,\n EPLAState.SUBSCRIPTION_CANCELLED_AFTER_TRIAL_BEFORE_PAYMENT,\n EPLAState.SUBSCRIPTION_CANCELLED_BEFORE_TRIAL,\n];\n\nexport const TRIAL_COMPLETED_STATES = [\n EPLAState.TRIAL_COMPLETED_PAYMENT_PENDING,\n EPLAState.TRIAL_COMPLETED_PAYMENT_SUCCESSFUL,\n EPLAState.REGULAR_CLASS_COMPLETED,\n];\n\nexport const PLA_INTRO_ELIGIBLE_STATES = [\n EPLAState.CARD_ADDED_SEARCHING_TUTOR,\n EPLAState.CARD_ADDED_TUTOR_ASSIGNED,\n ...TRIAL_COMPLETED_STATES,\n];\n\nexport const DEFAULT_LOADING_STATE: IUseParentHomeDataReturn = {\n plaState: null,\n sessionDetails: null,\n teacherDetails: null,\n billingDetails: null,\n isOnlyTrialDone: false,\n isRegularClassDone: false,\n isTrialDone: false,\n isSubscriptionCancelled: false,\n isCardDeclined: false,\n cardOnFileNotAvailable: false,\n isTutorNoShow: false,\n isStudentNoShow: false,\n completedSessions: 0,\n nextSessionEnd: 0,\n nextSessionStart: 0,\n upcomingSessions: [],\n teacherName: '',\n showLoading: true,\n demoId: '',\n userAttemptId: '',\n isProcessingFailed: false,\n canChangeTutor: false,\n showPLAIntroduction: false,\n};\n"],"names":["DESKTOP_SPACING","MOBILE_SPACING","SUBSCRIPTION_CANCELLED_STATES","EPLAState","TRIAL_COMPLETED_STATES","PLA_INTRO_ELIGIBLE_STATES","DEFAULT_LOADING_STATE"],"mappings":";AAUO,MAAMA,IAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,WAAW;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,EACd;AACF,GAEaC,IAAiB;AAAA,EAC5B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,WAAW;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,EACd;AACF,GAEaC,IAAgC;AAAA,EAC3CC,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEaC,IAAyB;AAAA,EACpCD,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEaE,IAA4B;AAAA,EACvCF,EAAU;AAAA,EACVA,EAAU;AAAA,EACV,GAAGC;AACL,GAEaE,IAAkD;AAAA,EAC7D,UAAU;AAAA,EACV,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,aAAa;AAAA,EACb,yBAAyB;AAAA,EACzB,gBAAgB;AAAA,EAChB,wBAAwB;AAAA,EACxB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,kBAAkB,CAAC;AAAA,EACnB,aAAa;AAAA,EACb,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,eAAe;AAAA,EACf,oBAAoB;AAAA,EACpB,gBAAgB;AAAA,EAChB,qBAAqB;AACvB;"}
1
+ {"version":3,"file":"parent-dashboard-constants.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-constants.ts"],"sourcesContent":["export const MODAL_KEYS = {\n STUDENT_PROFILE: 'studentProfile',\n INSIGHTS: 'insights',\n LEARNING_PLAN: 'learningPlan',\n CHANGE_TUTOR: 'pla-change-tutor',\n STUDENT_PROFILE_SUMMARY: 'student-profile-summary',\n} as const;\n\nexport const DESKTOP_SPACING = {\n small: 40,\n medium: 40,\n large: 80,\n separator: {\n small: 12,\n medium: 20,\n large: 24,\n extraLarge: 80,\n },\n} as const;\n\nexport const MOBILE_SPACING = {\n small: 16,\n medium: 24,\n large: 40,\n separator: {\n small: 8,\n medium: 16,\n large: 22,\n extraLarge: 40,\n },\n} as const;\n"],"names":["DESKTOP_SPACING","MOBILE_SPACING"],"mappings":"AAQO,MAAMA,IAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,WAAW;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,EACd;AACF,GAEaC,IAAiB;AAAA,EAC5B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,WAAW;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,EACd;AACF;"}
@@ -1,6 +1,6 @@
1
- var T = /* @__PURE__ */ ((_) => (_.STUDENT_PROFILE = "studentProfile", _.INSIGHTS = "insights", _.LEARNING_PLAN = "learningPlan", _))(T || {}), e = /* @__PURE__ */ ((_) => (_.NO_CARD_ON_FILE = "no_card_on_file", _.CARD_ADDED_SEARCHING_TUTOR = "card_added_searching_tutor", _.CARD_ADDED_TUTOR_ASSIGNED = "card_added_tutor_assigned", _.TRIAL_TUTOR_NO_SHOW = "trial_tutor_no_show", _.TRIAL_STUDENT_NO_SHOW = "trial_student_no_show", _.TRIAL_COMPLETED_PAYMENT_PENDING = "trial_completed_payment_pending", _.TRIAL_COMPLETED_CARD_DECLINED = "trial_completed_card_declined", _.TRIAL_COMPLETED_PAYMENT_SUCCESSFUL = "trial_completed_payment_successful", _.REGULAR_CLASS_COMPLETED = "regular_class_completed", _.SUBSCRIPTION_CANCELLED_BEFORE_TRIAL = "cancelled_before_trial", _.SUBSCRIPTION_CANCELLED_AFTER_TRIAL_BEFORE_PAYMENT = "cancelled_after_trial_before_payment", _.SUBSCRIPTION_CANCELLED_AFTER_PAYMENT = "cancelled_after_payment", _))(e || {});
1
+ var N = /* @__PURE__ */ ((_) => (_.S_NO_SHOW = "S_NO_SHOW", _.T_NO_SHOW = "T_NO_SHOW", _))(N || {}), O = /* @__PURE__ */ ((_) => (_.STUDENT_PROFILE = "studentProfile", _.INSIGHTS = "insights", _.LEARNING_PLAN = "learningPlan", _))(O || {});
2
2
  export {
3
- e as EPLAState,
4
- T as ESummaryType
3
+ N as EClassStatus,
4
+ O as ESummaryType
5
5
  };
6
6
  //# sourceMappingURL=parent-dashboard-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parent-dashboard-types.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-types.ts"],"sourcesContent":["import type { TSession } from './comps/upcoming-sessions/upcoming-sessions-types';\nimport type { ReactElement } from 'react';\n\nexport interface ISessionDetails {\n completed_sessions: number;\n next_session_start: number;\n next_session_end: number;\n student_demo_id: string;\n upcoming_sessions: TSession[];\n user_attempt_id?: string;\n}\n\ninterface IDegreeInfo {\n degree_name: string;\n degree_code: string;\n field_of_study: string;\n}\nexport interface ITeacherDetails {\n first_name: string;\n last_name: string;\n years_of_experience: number;\n number_of_students_taught: number;\n lower_grade: string;\n higher_grade: string;\n degree: IDegreeInfo;\n countries: string[];\n teacher_profile_url: string;\n header_image: string;\n}\n\nexport interface IPaymentMethodDetails {\n brand: string;\n last_4_digits: string;\n type: string;\n exp_month: number;\n exp_year: number;\n}\n\nexport interface IBillingDetails {\n amount: number;\n cycle_frequency: string;\n next_due_date: string;\n payment_method_details: IPaymentMethodDetails;\n}\n\nexport interface IParentHome {\n pla_state: EPLAState;\n session_details: ISessionDetails;\n teacher_details: ITeacherDetails | null;\n billing_details: IBillingDetails;\n}\n\nexport interface IStudentProfileSummary {\n studentLevel: string;\n studentObjectives: string[] | string;\n learningPlan: string[] | string;\n levelPreference?: string;\n}\n\nexport interface IOnViewSummaryParams extends IStudentProfileSummary {\n userAttemptId?: string | null;\n}\nexport enum ESummaryType {\n STUDENT_PROFILE = 'studentProfile',\n INSIGHTS = 'insights',\n LEARNING_PLAN = 'learningPlan',\n}\n\nexport interface IParentDashboardProps {\n studentName: string;\n studentId: string;\n onRescheduleDemo: (demoId?: string | null) => void;\n onChangeTutor: (demoId?: string | null) => void;\n onGetStartedAgain?: () => void;\n onViewSummary?: (key: ESummaryType, summaryData: IOnViewSummaryParams) => void;\n onSwitchUser?: () => void;\n HeaderAvatar: ReactElement;\n}\n\nexport interface ISpacingConfig {\n small: number;\n medium: number;\n large: number;\n separator: {\n small: number;\n medium: number;\n large: number;\n extraLarge: number;\n };\n}\n\nexport enum EPLAState {\n // Initial Setup Phase\n NO_CARD_ON_FILE = 'no_card_on_file',\n CARD_ADDED_SEARCHING_TUTOR = 'card_added_searching_tutor',\n CARD_ADDED_TUTOR_ASSIGNED = 'card_added_tutor_assigned',\n TRIAL_TUTOR_NO_SHOW = 'trial_tutor_no_show',\n TRIAL_STUDENT_NO_SHOW = 'trial_student_no_show',\n\n // Post-Trial Payment Phase\n TRIAL_COMPLETED_PAYMENT_PENDING = 'trial_completed_payment_pending',\n TRIAL_COMPLETED_CARD_DECLINED = 'trial_completed_card_declined',\n TRIAL_COMPLETED_PAYMENT_SUCCESSFUL = 'trial_completed_payment_successful',\n\n // Active Subscription Phase\n REGULAR_CLASS_COMPLETED = 'regular_class_completed',\n\n // Cancellation States\n SUBSCRIPTION_CANCELLED_BEFORE_TRIAL = 'cancelled_before_trial',\n SUBSCRIPTION_CANCELLED_AFTER_TRIAL_BEFORE_PAYMENT = 'cancelled_after_trial_before_payment',\n SUBSCRIPTION_CANCELLED_AFTER_PAYMENT = 'cancelled_after_payment',\n}\n\nexport interface IUseParentHomeDataReturn {\n plaState: EPLAState | null;\n sessionDetails: ISessionDetails | null;\n teacherDetails: ITeacherDetails | null;\n billingDetails: IBillingDetails | null;\n completedSessions: number;\n nextSessionEnd: number;\n nextSessionStart: number;\n teacherName: string;\n upcomingSessions: TSession[];\n isTrialDone: boolean;\n isOnlyTrialDone: boolean;\n isRegularClassDone: boolean;\n isCardDeclined: boolean;\n isSubscriptionCancelled: boolean;\n cardOnFileNotAvailable: boolean;\n isTutorNoShow: boolean;\n isStudentNoShow: boolean;\n showLoading: boolean;\n demoId: string | null;\n userAttemptId: string | null;\n isProcessingFailed: boolean;\n canChangeTutor: boolean;\n showPLAIntroduction?: boolean;\n}\n"],"names":["ESummaryType","EPLAState"],"mappings":"AA8DY,IAAAA,sBAAAA,OACVA,EAAA,kBAAkB,kBAClBA,EAAA,WAAW,YACXA,EAAA,gBAAgB,gBAHNA,IAAAA,KAAA,CAAA,CAAA,GA6BAC,sBAAAA,OAEVA,EAAA,kBAAkB,mBAClBA,EAAA,6BAA6B,8BAC7BA,EAAA,4BAA4B,6BAC5BA,EAAA,sBAAsB,uBACtBA,EAAA,wBAAwB,yBAGxBA,EAAA,kCAAkC,mCAClCA,EAAA,gCAAgC,iCAChCA,EAAA,qCAAqC,sCAGrCA,EAAA,0BAA0B,2BAG1BA,EAAA,sCAAsC,0BACtCA,EAAA,oDAAoD,wCACpDA,EAAA,uCAAuC,2BAnB7BA,IAAAA,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"parent-dashboard-types.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-types.ts"],"sourcesContent":["import type { TSession } from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions-types';\nimport type { ReactElement } from 'react';\n\nexport enum EClassStatus {\n S_NO_SHOW = 'S_NO_SHOW',\n T_NO_SHOW = 'T_NO_SHOW',\n}\nexport interface ISessionDetails {\n completed_sessions: number;\n next_session_start: number;\n next_session_end: number;\n student_demo_id: string;\n upcoming_sessions: TSession[];\n demo_class_status: EClassStatus | null;\n user_attempt_id?: string;\n}\n\ninterface IDegreeInfo {\n degree_name: string;\n degree_code: string;\n field_of_study: string;\n}\nexport interface ITeacherDetails {\n first_name: string;\n last_name: string;\n years_of_experience: number;\n number_of_students_taught: number;\n lower_grade: string;\n higher_grade: string;\n degree: IDegreeInfo;\n countries: string[];\n teacher_profile_url: string;\n header_image: string;\n}\n\ninterface PaymentMethodDetails {\n brand: string;\n last_4_digits: string;\n type: string;\n exp_month: number;\n exp_year: number;\n}\n\ninterface IBillingDetails {\n amount: number;\n next_due_date: string;\n payment_method_details: PaymentMethodDetails;\n}\n\nexport interface IParentHome {\n session_details: ISessionDetails;\n teacher_details: ITeacherDetails | null;\n billing_details: IBillingDetails;\n}\n\nexport interface IStudentProfileSummary {\n studentLevel: string;\n studentObjectives: string[] | string;\n learningPlan: string[] | string;\n levelPreference?: string;\n}\n\nexport interface IOnViewSummaryParams extends IStudentProfileSummary {\n userAttemptId?: string | null;\n}\nexport enum ESummaryType {\n STUDENT_PROFILE = 'studentProfile',\n INSIGHTS = 'insights',\n LEARNING_PLAN = 'learningPlan',\n}\n\nexport interface IParentDashboardProps {\n studentName: string;\n studentId: string;\n onRescheduleDemo: (demoId?: string | null) => void;\n onChangeTutor: (demoId?: string | null) => void;\n onGetStartedAgain?: () => void;\n onViewSummary?: (key: ESummaryType, summaryData: IOnViewSummaryParams) => void;\n onSwitchUser?: () => void;\n canChangeTutor: boolean;\n isSubscriptionCancelled: boolean;\n HeaderAvatar: ReactElement;\n}\n\nexport interface ISpacingConfig {\n small: number;\n medium: number;\n large: number;\n separator: {\n small: number;\n medium: number;\n large: number;\n extraLarge: number;\n };\n}\n"],"names":["EClassStatus","ESummaryType"],"mappings":"AAGY,IAAAA,sBAAAA,OACVA,EAAA,YAAY,aACZA,EAAA,YAAY,aAFFA,IAAAA,KAAA,CAAA,CAAA,GA8DAC,sBAAAA,OACVA,EAAA,kBAAkB,kBAClBA,EAAA,WAAW,YACXA,EAAA,gBAAgB,gBAHNA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -1,231 +1,208 @@
1
- import { jsxs as o, jsx as r } from "react/jsx-runtime";
2
- import { memo as hr, useMemo as t, useCallback as g } from "react";
3
- import { useTheme as pr } from "styled-components";
4
- import ur from "../auth/pla-signup/onboarding-guide/onboarding-guide.js";
5
- import dr from "../auth/pla-signup/signup-header/signup-header.js";
6
- import Z from "../trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js";
7
- import fr from "../ui/buttons/button/button.js";
8
- import gr from "../ui/buttons/text-button/text-button.js";
9
- import Sr from "../ui/error/error.js";
10
- import i from "../ui/layout/flex-view.js";
11
- import xr from "../ui/loader/app-loader/app-loader.js";
1
+ import { jsxs as o, jsx as e } from "react/jsx-runtime";
2
+ import { memo as Z, useCallback as t, useMemo as ee } from "react";
3
+ import { useTheme as re } from "styled-components";
4
+ import te from "../auth/pla-signup/onboarding-guide/onboarding-guide.js";
5
+ import oe from "../auth/pla-signup/signup-header/signup-header.js";
6
+ import ne from "../trial-session/comps/pla/next-steps/next-steps.js";
7
+ import ae from "../trial-session/comps/pla/session-status/session-status.js";
8
+ import ie from "../trial-session/comps/pla/session-summary/session-summary.js";
9
+ import se from "../trial-session/comps/pla/upcoming-sessions/upcoming-sessions.js";
10
+ import q from "../trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js";
11
+ import le from "../ui/buttons/button/button.js";
12
+ import me from "../ui/buttons/text-button/text-button.js";
13
+ import ce from "../ui/error/error.js";
14
+ import n from "../ui/layout/flex-view.js";
15
+ import he from "../ui/loader/app-loader/app-loader.js";
12
16
  import a from "../ui/separator/separator.js";
13
- import rr from "../ui/text/text.js";
14
- import { EDeviceType as Tr } from "../ui/theme/constants.js";
15
- import { invalidateParentHome as br } from "./api/parent-home.js";
16
- import Cr from "./comps/billing-information/billing-information.js";
17
- import Lr from "./comps/compact-header/compact-header.js";
18
- import Pr from "./comps/cuemath-app-features/cuemath-app-features.js";
19
- import Dr from "./comps/math-practice/math-practice.js";
20
- import $r from "./comps/next-steps/next-steps.js";
21
- import Ar from "./comps/parent-dashboard-faqs/parent-dashboard-faqs.js";
22
- import yr from "./comps/session-status/session-status.js";
23
- import Mr from "./comps/session-summary/session-summary.js";
24
- import Er from "./comps/upcoming-sessions/upcoming-sessions.js";
25
- import Ir from "./hooks/use-parent-home-data.js";
26
- import Or from "./hooks/use-student-profile-summary-data.js";
27
- import { usePLAModalHandlers as wr } from "./modals/hooks/use-pla-model-handlers.js";
28
- import { MOBILE_SPACING as Hr, DESKTOP_SPACING as kr } from "./parent-dashboard-constants.js";
29
- import { MathPracticeWrapper as Br, Container as Fr, ContentWrapper as Wr } from "./parent-dashboard-styled.js";
30
- const de = hr(
17
+ import G from "../ui/text/text.js";
18
+ import { EDeviceType as pe } from "../ui/theme/constants.js";
19
+ import { invalidateParentHome as de } from "./api/parent-home.js";
20
+ import ue from "./comps/compact-header/compact-header.js";
21
+ import fe from "./comps/cuemath-app-features/cuemath-app-features.js";
22
+ import ge from "./comps/math-practice/math-practice.js";
23
+ import Se from "./comps/parent-dashboard-faqs/parent-dashboard-faqs.js";
24
+ import xe from "./hooks/use-parent-home-data.js";
25
+ import be from "./hooks/use-student-profile-summary-data.js";
26
+ import { MOBILE_SPACING as Le, DESKTOP_SPACING as Ce } from "./parent-dashboard-constants.js";
27
+ import { MathPracticeWrapper as Te, Container as $e, ContentWrapper as Pe } from "./parent-dashboard-styled.js";
28
+ const Ye = Z(
31
29
  ({
32
30
  studentName: l,
33
- studentId: c,
34
- onRescheduleDemo: C,
35
- onViewSummary: h,
36
- onGetStartedAgain: S,
37
- onChangeTutor: L,
38
- onSwitchUser: P,
39
- HeaderAvatar: er
31
+ studentId: m,
32
+ onRescheduleDemo: f,
33
+ onViewSummary: c,
34
+ onGetStartedAgain: d,
35
+ onChangeTutor: g,
36
+ canChangeTutor: S,
37
+ onSwitchUser: x,
38
+ isSubscriptionCancelled: K,
39
+ HeaderAvatar: z
40
40
  }) => {
41
- const { device: tr } = pr(), p = tr <= Tr.MOBILE, or = Ir(c), {
42
- isStudentNoShow: D,
43
- isTutorNoShow: $,
44
- teacherDetails: s,
45
- billingDetails: u,
46
- teacherName: x,
47
- completedSessions: A,
48
- nextSessionStart: y,
49
- nextSessionEnd: M,
50
- upcomingSessions: E,
51
- isTrialDone: n,
52
- isOnlyTrialDone: d,
53
- isRegularClassDone: f,
54
- showLoading: I = !1,
55
- demoId: m,
56
- isProcessingFailed: ir,
57
- userAttemptId: O,
58
- isSubscriptionCancelled: ar,
59
- canChangeTutor: w,
60
- sessionDetails: H,
61
- cardOnFileNotAvailable: k,
62
- isCardDeclined: B
63
- } = or, { summaryInfo: F, fetchSummaryData: W } = Or(c), e = t(
64
- () => p ? Hr : kr,
65
- [p]
66
- ), v = t(() => p ? "100%" : 200, [p]), nr = g(() => {
67
- br(c), W();
68
- }, [W, c]), T = g(() => {
69
- C(m);
70
- }, [m, C]), b = g(() => {
71
- L(m);
72
- }, [m, L]), { onCancelSubscription: N, onViewPaymentMethod: _ } = wr({
73
- demoId: m,
74
- studentId: c,
75
- isTrialDone: n,
76
- studentName: l,
77
- billingDetails: u,
78
- withTutor: !!x,
79
- onChangeTutor: b,
80
- onRescheduleDemo: T
81
- }), j = g(
82
- (mr) => {
83
- h == null || h(mr, { ...F, userAttemptId: O ?? null });
41
+ const { device: N } = re(), u = N <= pe.MOBILE, {
42
+ teacherDetails: i,
43
+ teacherName: b,
44
+ completedSessions: L,
45
+ nextSessionStart: C,
46
+ nextSessionEnd: T,
47
+ classStatus: $,
48
+ upcomingSessions: P,
49
+ isDemoDone: s,
50
+ isOnlyOneSessionCompleted: A,
51
+ isMoreThanOneSessionCompleted: h,
52
+ showLoading: R = !1,
53
+ demoId: p,
54
+ isProcessingFailed: X,
55
+ userAttemptId: y
56
+ } = xe(m), { summaryInfo: D, fetchSummaryData: M } = be(m), J = t(() => {
57
+ de(m), M();
58
+ }, [M, m]), O = t(() => {
59
+ f(p);
60
+ }, [p, f]), E = t(() => {
61
+ g(p);
62
+ }, [p, g]), r = ee(
63
+ () => u ? Le : Ce,
64
+ [u]
65
+ ), I = t(
66
+ (Y) => {
67
+ c == null || c(Y, { ...D, userAttemptId: y ?? null });
84
68
  },
85
- [h, F, O]
86
- ), q = t(
87
- () => ({
88
- completedSessions: A,
89
- nextSessionStartTime: y,
90
- teacherName: x,
91
- isTutorNoShow: $,
92
- isStudentNoShow: D,
93
- nextSessionEndTime: M,
94
- studentName: l,
95
- onRescheduleClick: T,
96
- isTrialDone: n,
97
- isOnlyTrialDone: d
98
- }),
99
- [
100
- A,
101
- y,
102
- x,
103
- $,
104
- D,
105
- M,
106
- l,
107
- T,
108
- n,
109
- d
110
- ]
111
- ), z = t(
112
- () => ({
113
- isTrialDone: n,
114
- studentName: l,
115
- onViewSummary: j
116
- }),
117
- [n, l, j]
118
- ), sr = t(
119
- () => /* @__PURE__ */ o(i, { children: [
120
- /* @__PURE__ */ r(dr, {}),
121
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
122
- /* @__PURE__ */ r(ur, { orientation: "horizontal" }),
123
- S && /* @__PURE__ */ o(i, { children: [
124
- /* @__PURE__ */ r(a, { height: e.medium }),
125
- /* @__PURE__ */ r(
126
- fr,
69
+ [c, D, y]
70
+ ), k = u ? "100%" : 200, Q = t(
71
+ () => /* @__PURE__ */ o(n, { children: [
72
+ /* @__PURE__ */ e(oe, {}),
73
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
74
+ /* @__PURE__ */ e(te, { orientation: "horizontal" }),
75
+ d && /* @__PURE__ */ o(n, { children: [
76
+ /* @__PURE__ */ e(a, { height: r.medium }),
77
+ /* @__PURE__ */ e(
78
+ le,
127
79
  {
128
80
  label: "Get Started",
129
81
  renderAs: "yellow-dark",
130
82
  shape: "square",
131
- size: "small",
132
- width: v,
133
- onClick: S
83
+ width: k,
84
+ onClick: d
134
85
  }
135
86
  )
136
87
  ] })
137
88
  ] }),
138
- [e, v, S]
139
- ), G = t(
140
- () => /* @__PURE__ */ r(yr, { ...q }),
141
- [q]
142
- ), K = t(() => !s || n ? null : /* @__PURE__ */ o(i, { children: [
143
- /* @__PURE__ */ r(a, { height: e.separator.large }),
144
- /* @__PURE__ */ r(Z, { teacherProfile: s })
145
- ] }), [s, n, e.separator.large]), R = t(() => f ? null : /* @__PURE__ */ o(i, { children: [
146
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
147
- /* @__PURE__ */ r(Mr, { ...z })
148
- ] }), [f, e.separator.extraLarge, z]), V = t(() => w ? /* @__PURE__ */ o(i, { children: [
149
- /* @__PURE__ */ r(a, { height: e.separator.small }),
150
- /* @__PURE__ */ o(i, { $flexDirection: "row", $flexColumnGapX: 0.25, children: [
151
- /* @__PURE__ */ r(rr, { $renderAs: "ub1", $renderOnMobileAs: "ub2", $color: "WHITE", children: "Not the right fit for your child?" }),
152
- /* @__PURE__ */ r(
153
- gr,
89
+ [r, k, d]
90
+ ), H = t(
91
+ () => /* @__PURE__ */ e(
92
+ ae,
93
+ {
94
+ completedSessions: L,
95
+ nextSessionStartTime: C,
96
+ teacherName: b,
97
+ status: $,
98
+ nextSessionEndTime: T,
99
+ studentName: l,
100
+ onRescheduleClick: O
101
+ }
102
+ ),
103
+ [
104
+ L,
105
+ C,
106
+ b,
107
+ $,
108
+ T,
109
+ l,
110
+ O
111
+ ]
112
+ ), F = t(() => !i || s ? null : /* @__PURE__ */ o(n, { children: [
113
+ /* @__PURE__ */ e(a, { height: r.separator.large }),
114
+ /* @__PURE__ */ e(q, { teacherProfile: i })
115
+ ] }), [i, s, r.separator.large]), W = t(() => h ? null : /* @__PURE__ */ o(n, { children: [
116
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
117
+ /* @__PURE__ */ e(
118
+ ie,
119
+ {
120
+ isDemoDone: s,
121
+ studentName: l,
122
+ onViewSummary: I
123
+ }
124
+ )
125
+ ] }), [
126
+ h,
127
+ r.separator.extraLarge,
128
+ s,
129
+ l,
130
+ I
131
+ ]), w = t(() => S ? /* @__PURE__ */ o(n, { children: [
132
+ /* @__PURE__ */ e(a, { height: r.separator.small }),
133
+ /* @__PURE__ */ o(n, { $flexDirection: "row", $flexColumnGapX: 0.25, children: [
134
+ /* @__PURE__ */ e(G, { $renderAs: "ub1", $renderOnMobileAs: "ub2", $color: "WHITE", children: "Not the right fit for your child?" }),
135
+ /* @__PURE__ */ e(
136
+ me,
154
137
  {
155
138
  color: "WHITE_1",
156
139
  sizeOnMobile: "small",
157
140
  label: "Try another tutor",
158
- onClick: b
141
+ onClick: E
159
142
  }
160
143
  )
161
144
  ] })
162
- ] }) : null, [w, e.separator.small, b]), X = t(() => s ? /* @__PURE__ */ o(i, { children: [
163
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
164
- /* @__PURE__ */ r(rr, { $renderAs: "ah4-bold", $renderOnMobileAs: "ab1-bold", $color: "WHITE", children: "Know your tutor" }),
165
- /* @__PURE__ */ r(a, { height: e.separator.medium }),
166
- /* @__PURE__ */ r(Z, { teacherProfile: s }),
167
- V
168
- ] }) : null, [s, e.separator, V]), J = t(() => d ? /* @__PURE__ */ o(i, { children: [
169
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
170
- /* @__PURE__ */ r($r, {}),
171
- /* @__PURE__ */ r(Er, { sessions: E }),
172
- X
173
- ] }) : null, [d, e.separator.extraLarge, E, X]), Q = t(() => n ? /* @__PURE__ */ o(i, { children: [
174
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
175
- /* @__PURE__ */ r(Pr, {})
176
- ] }) : null, [n, e.separator.extraLarge]), U = t(() => f ? null : /* @__PURE__ */ o(i, { children: [
177
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
178
- /* @__PURE__ */ r(Br, { children: /* @__PURE__ */ r(Dr, { onSwitchUser: P }) })
179
- ] }), [f, e.separator.extraLarge, P]), Y = t(() => u ? /* @__PURE__ */ o(i, { children: [
180
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
181
- /* @__PURE__ */ r(
182
- Cr,
183
- {
184
- billingDetails: u,
185
- onViewPaymentMethod: _,
186
- onCancelSubscription: N
187
- }
188
- )
189
- ] }) : null, [u, e.separator.extraLarge, _, N]), lr = t(
190
- () => /* @__PURE__ */ o(i, { children: [
191
- G,
192
- K,
193
- R,
194
- J,
195
- Q,
196
- U,
197
- Y
145
+ ] }) : null, [S, r.separator.small, E]), B = t(() => i ? /* @__PURE__ */ o(n, { children: [
146
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
147
+ /* @__PURE__ */ e(G, { $renderAs: "ah4-bold", $renderOnMobileAs: "ab1-bold", $color: "WHITE", children: "Know your tutor" }),
148
+ /* @__PURE__ */ e(a, { height: r.separator.medium }),
149
+ /* @__PURE__ */ e(q, { teacherProfile: i }),
150
+ w()
151
+ ] }) : null, [i, r.separator, w]), v = t(() => A ? /* @__PURE__ */ o(n, { children: [
152
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
153
+ /* @__PURE__ */ e(ne, {}),
154
+ /* @__PURE__ */ e(se, { sessions: P }),
155
+ B()
156
+ ] }) : null, [
157
+ A,
158
+ r.separator.extraLarge,
159
+ P,
160
+ B
161
+ ]), _ = t(() => s ? /* @__PURE__ */ o(n, { children: [
162
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
163
+ /* @__PURE__ */ e(fe, {})
164
+ ] }) : null, [s, r.separator.extraLarge]), j = t(() => h ? null : /* @__PURE__ */ o(n, { children: [
165
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
166
+ /* @__PURE__ */ e(Te, { children: /* @__PURE__ */ e(ge, { onSwitchUser: x }) })
167
+ ] }), [h, r.separator.extraLarge, x]), U = t(
168
+ () => /* @__PURE__ */ o(n, { children: [
169
+ H(),
170
+ F(),
171
+ W(),
172
+ v(),
173
+ _(),
174
+ j()
198
175
  ] }),
199
176
  [
200
- G,
201
- K,
202
- R,
203
- J,
204
- Q,
205
- U,
206
- Y
177
+ H,
178
+ F,
179
+ W,
180
+ v,
181
+ _,
182
+ j
207
183
  ]
208
- ), cr = t(
209
- () => /* @__PURE__ */ o(i, { children: [
210
- /* @__PURE__ */ r(a, { height: e.separator.extraLarge }),
211
- /* @__PURE__ */ r(Ar, {})
184
+ ), V = t(
185
+ () => /* @__PURE__ */ o(n, { children: [
186
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge }),
187
+ /* @__PURE__ */ e(Se, {}),
188
+ /* @__PURE__ */ e(a, { height: r.separator.extraLarge })
212
189
  ] }),
213
- [e.separator.extraLarge]
190
+ [r.separator.extraLarge]
214
191
  );
215
- return t(() => B || k || !H || I, [k, B, H, I]) ? /* @__PURE__ */ r(xr, { height: "100dvh" }) : ir ? /* @__PURE__ */ r(i, { $flex: 1, $alignItems: "center", $justifyContent: "center", children: /* @__PURE__ */ r(Sr, { theme: "dark", onTryAgain: nr }) }) : /* @__PURE__ */ o(Fr, { children: [
216
- /* @__PURE__ */ r(Lr, { HeaderAvatar: er }),
192
+ return R ? /* @__PURE__ */ e(he, { height: "100dvh" }) : X ? /* @__PURE__ */ e(n, { $flex: 1, $alignItems: "center", $justifyContent: "center", children: /* @__PURE__ */ e(ce, { theme: "dark", onTryAgain: J }) }) : /* @__PURE__ */ o($e, { children: [
193
+ /* @__PURE__ */ e(ue, { HeaderAvatar: z }),
217
194
  /* @__PURE__ */ o(
218
- Wr,
195
+ Pe,
219
196
  {
220
197
  $flex: 1,
221
198
  $width: "100%",
222
199
  $height: "100%",
223
200
  $background: "BLACK_1",
224
- $gap: e.medium,
225
- $gutter: e.small,
201
+ $gap: r.medium,
202
+ $gutter: r.small,
226
203
  children: [
227
- ar ? sr : lr,
228
- cr
204
+ K ? Q() : U(),
205
+ V()
229
206
  ]
230
207
  }
231
208
  )
@@ -233,6 +210,6 @@ const de = hr(
233
210
  }
234
211
  );
235
212
  export {
236
- de as default
213
+ Ye as default
237
214
  };
238
215
  //# sourceMappingURL=parent-dashboard-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import type { ESummaryType, IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\n\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport OnboardingGuide from '../auth/pla-signup/onboarding-guide/onboarding-guide';\nimport SignupHeader from '../auth/pla-signup/signup-header/signup-header';\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport Button from '../ui/buttons/button/button';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport Error from '../ui/error/error';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport { invalidateParentHome } from './api/parent-home';\nimport BillingInformation from './comps/billing-information/billing-information';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport NextSteps from './comps/next-steps/next-steps';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport SessionStatus from './comps/session-status/session-status';\nimport SessionSummary from './comps/session-summary/session-summary';\nimport UpcomingSessions from './comps/upcoming-sessions/upcoming-sessions';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport useStudentProfileSummaryData from './hooks/use-student-profile-summary-data';\nimport { usePLAModalHandlers } from './modals/hooks/use-pla-model-handlers';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\n\nconst ParentDashboardView: React.FC<IParentDashboardProps> = memo(\n ({\n studentName,\n studentId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n onSwitchUser,\n HeaderAvatar,\n }) => {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const parentHomeData = useParentHomeData(studentId);\n const {\n isStudentNoShow,\n isTutorNoShow,\n teacherDetails,\n billingDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n upcomingSessions,\n isTrialDone,\n isOnlyTrialDone,\n isRegularClassDone,\n showLoading = false,\n demoId,\n isProcessingFailed,\n userAttemptId,\n isSubscriptionCancelled,\n canChangeTutor,\n sessionDetails,\n cardOnFileNotAvailable,\n isCardDeclined,\n } = parentHomeData;\n const { summaryInfo, fetchSummaryData } = useStudentProfileSummaryData(studentId);\n\n const spacing = useMemo<ISpacingConfig>(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const buttonWidth = useMemo(() => (isMobile ? '100%' : 200), [isMobile]);\n\n const handleTryAgain = useCallback(() => {\n invalidateParentHome(studentId);\n fetchSummaryData();\n }, [fetchSummaryData, studentId]);\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n onChangeTutor(demoId);\n }, [demoId, onChangeTutor]);\n\n const { onCancelSubscription, onViewPaymentMethod } = usePLAModalHandlers({\n demoId,\n studentId,\n isTrialDone,\n studentName,\n billingDetails,\n withTutor: !!teacherName,\n onChangeTutor: handleChangeTutor,\n onRescheduleDemo: handleRescheduleDemo,\n });\n\n const handleViewSummary = useCallback(\n (key: ESummaryType) => {\n onViewSummary?.(key, { ...summaryInfo, userAttemptId: userAttemptId ?? null });\n },\n [onViewSummary, summaryInfo, userAttemptId],\n );\n\n const sessionStatusProps = useMemo(\n () => ({\n completedSessions,\n nextSessionStartTime: nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEndTime: nextSessionEnd,\n studentName,\n onRescheduleClick: handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n }),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n ],\n );\n\n const sessionSummaryProps = useMemo(\n () => ({\n isTrialDone,\n studentName,\n onViewSummary: handleViewSummary,\n }),\n [isTrialDone, studentName, handleViewSummary],\n );\n\n const CancelledSubscriptionView = useMemo(\n () => (\n <FlexView>\n <SignupHeader />\n <Separator height={spacing.separator.extraLarge} />\n <OnboardingGuide orientation=\"horizontal\" />\n {onGetStartedAgain && (\n <FlexView>\n <Separator height={spacing.medium} />\n <Button\n label=\"Get Started\"\n renderAs=\"yellow-dark\"\n shape=\"square\"\n size=\"small\"\n width={buttonWidth}\n onClick={onGetStartedAgain}\n />\n </FlexView>\n )}\n </FlexView>\n ),\n [spacing, buttonWidth, onGetStartedAgain],\n );\n\n const SessionStatusSection = useMemo(\n () => <SessionStatus {...sessionStatusProps} />,\n [sessionStatusProps],\n );\n\n const TeacherProfileSection = useMemo(() => {\n if (!teacherDetails || isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isTrialDone, spacing.separator.large]);\n\n const SessionSummarySection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary {...sessionSummaryProps} />\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, sessionSummaryProps]);\n\n const TutorChangeSection = useMemo(() => {\n if (!canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const TeacherDetailsSection = useMemo(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {TutorChangeSection}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, TutorChangeSection]);\n\n const OnlyTrialDoneSection = useMemo(() => {\n if (!isOnlyTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <UpcomingSessions sessions={upcomingSessions} />\n {TeacherDetailsSection}\n </FlexView>\n );\n }, [isOnlyTrialDone, spacing.separator.extraLarge, upcomingSessions, TeacherDetailsSection]);\n\n const AppFeaturesSection = useMemo(() => {\n if (!isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isTrialDone, spacing.separator.extraLarge]);\n\n const MathPracticeSection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, onSwitchUser]);\n\n const BillingInformationSection = useMemo(() => {\n if (!billingDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <BillingInformation\n billingDetails={billingDetails}\n onViewPaymentMethod={onViewPaymentMethod}\n onCancelSubscription={onCancelSubscription}\n />\n </FlexView>\n );\n }, [billingDetails, spacing.separator.extraLarge, onViewPaymentMethod, onCancelSubscription]);\n\n const MainContent = useMemo(\n () => (\n <FlexView>\n {SessionStatusSection}\n {TeacherProfileSection}\n {SessionSummarySection}\n {OnlyTrialDoneSection}\n {AppFeaturesSection}\n {MathPracticeSection}\n {BillingInformationSection}\n </FlexView>\n ),\n [\n SessionStatusSection,\n TeacherProfileSection,\n SessionSummarySection,\n OnlyTrialDoneSection,\n AppFeaturesSection,\n MathPracticeSection,\n BillingInformationSection,\n ],\n );\n\n const FaqsSection = useMemo(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n const isLoading = useMemo(() => {\n return isCardDeclined || cardOnFileNotAvailable || !sessionDetails || showLoading;\n }, [cardOnFileNotAvailable, isCardDeclined, sessionDetails, showLoading]);\n\n if (isLoading) {\n return <AppLoader height=\"100dvh\" />;\n }\n\n if (isProcessingFailed) {\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\">\n <Error theme=\"dark\" onTryAgain={handleTryAgain} />\n </FlexView>\n );\n }\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? CancelledSubscriptionView : MainContent}\n {FaqsSection}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n },\n);\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","onSwitchUser","HeaderAvatar","device","useTheme","isMobile","EDeviceType","parentHomeData","useParentHomeData","isStudentNoShow","isTutorNoShow","teacherDetails","billingDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","upcomingSessions","isTrialDone","isOnlyTrialDone","isRegularClassDone","showLoading","demoId","isProcessingFailed","userAttemptId","isSubscriptionCancelled","canChangeTutor","sessionDetails","cardOnFileNotAvailable","isCardDeclined","summaryInfo","fetchSummaryData","useStudentProfileSummaryData","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","buttonWidth","handleTryAgain","useCallback","invalidateParentHome","handleRescheduleDemo","handleChangeTutor","onCancelSubscription","onViewPaymentMethod","usePLAModalHandlers","handleViewSummary","key","sessionStatusProps","sessionSummaryProps","CancelledSubscriptionView","FlexView","jsx","SignupHeader","Separator","OnboardingGuide","Button","SessionStatusSection","SessionStatus","TeacherProfileSection","TeacherProfile","SessionSummarySection","SessionSummary","TutorChangeSection","jsxs","Text","TextButton","TeacherDetailsSection","OnlyTrialDoneSection","NextSteps","UpcomingSessions","AppFeaturesSection","CuemathAppFeatures","MathPracticeSection","Styled.MathPracticeWrapper","MathPractice","BillingInformationSection","BillingInformation","MainContent","FaqsSection","ParentDashboardFaqs","AppLoader","Error","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,MAAMA,KAAuDC;AAAA,EAC3D,CAAC;AAAA,IACC,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,cAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,MACI;AACE,UAAA,EAAE,QAAAC,OAAWC,MACbC,IAAWF,MAAUG,GAAY,QAEjCC,KAAiBC,GAAkBZ,CAAS,GAC5C;AAAA,MACJ,iBAAAa;AAAA,MACA,eAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,aAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,aAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,oBAAAC;AAAA,MACA,aAAAC,IAAc;AAAA,MACd,QAAAC;AAAA,MACA,oBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,yBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,wBAAAC;AAAA,MACA,gBAAAC;AAAA,IACE,IAAAtB,IACE,EAAE,aAAAuB,GAAa,kBAAAC,EAAiB,IAAIC,GAA6BpC,CAAS,GAE1EqC,IAAUC;AAAA,MACd,MAAO7B,IAAW8B,KAAiBC;AAAA,MACnC,CAAC/B,CAAQ;AAAA,IAAA,GAGLgC,IAAcH,EAAQ,MAAO7B,IAAW,SAAS,KAAM,CAACA,CAAQ,CAAC,GAEjEiC,KAAiBC,EAAY,MAAM;AACvC,MAAAC,GAAqB5C,CAAS,GACbmC;IAAA,GAChB,CAACA,GAAkBnC,CAAS,CAAC,GAE1B6C,IAAuBF,EAAY,MAAM;AAC7C,MAAA1C,EAAiByB,CAAM;AAAA,IAAA,GACtB,CAACA,GAAQzB,CAAgB,CAAC,GAEvB6C,IAAoBH,EAAY,MAAM;AAC1C,MAAAvC,EAAcsB,CAAM;AAAA,IAAA,GACnB,CAACA,GAAQtB,CAAa,CAAC,GAEpB,EAAE,sBAAA2C,GAAsB,qBAAAC,EAAoB,IAAIC,GAAoB;AAAA,MACxE,QAAAvB;AAAA,MACA,WAAA1B;AAAA,MACA,aAAAsB;AAAA,MACA,aAAAvB;AAAA,MACA,gBAAAiB;AAAA,MACA,WAAW,CAAC,CAACC;AAAA,MACb,eAAe6B;AAAA,MACf,kBAAkBD;AAAA,IAAA,CACnB,GAEKK,IAAoBP;AAAA,MACxB,CAACQ,OAAsB;AACrB,QAAAjD,KAAA,QAAAA,EAAgBiD,IAAK,EAAE,GAAGjB,GAAa,eAAeN,KAAiB;MACzE;AAAA,MACA,CAAC1B,GAAegC,GAAaN,CAAa;AAAA,IAAA,GAGtCwB,IAAqBd;AAAA,MACzB,OAAO;AAAA,QACL,mBAAApB;AAAA,QACA,sBAAsBC;AAAA,QACtB,aAAAF;AAAA,QACA,eAAAH;AAAA,QACA,iBAAAD;AAAA,QACA,oBAAoBO;AAAA,QACpB,aAAArB;AAAA,QACA,mBAAmB8C;AAAA,QACnB,aAAAvB;AAAA,QACA,iBAAAC;AAAA,MAAA;AAAA,MAEF;AAAA,QACEL;AAAA,QACAC;AAAA,QACAF;AAAA,QACAH;AAAA,QACAD;AAAA,QACAO;AAAA,QACArB;AAAA,QACA8C;AAAA,QACAvB;AAAA,QACAC;AAAA,MACF;AAAA,IAAA,GAGI8B,IAAsBf;AAAA,MAC1B,OAAO;AAAA,QACL,aAAAhB;AAAA,QACA,aAAAvB;AAAA,QACA,eAAemD;AAAA,MAAA;AAAA,MAEjB,CAAC5B,GAAavB,GAAamD,CAAiB;AAAA,IAAA,GAGxCI,KAA4BhB;AAAA,MAChC,wBACGiB,GACC,EAAA,UAAA;AAAA,QAAA,gBAAAC,EAACC,IAAa,EAAA;AAAA,QACb,gBAAAD,EAAAE,GAAA,EAAU,QAAQrB,EAAQ,UAAU,YAAY;AAAA,QACjD,gBAAAmB,EAACG,IAAgB,EAAA,aAAY,aAAa,CAAA;AAAA,QACzCxD,uBACEoD,GACC,EAAA,UAAA;AAAA,UAAC,gBAAAC,EAAAE,GAAA,EAAU,QAAQrB,EAAQ,OAAQ,CAAA;AAAA,UACnC,gBAAAmB;AAAA,YAACI;AAAA,YAAA;AAAA,cACC,OAAM;AAAA,cACN,UAAS;AAAA,cACT,OAAM;AAAA,cACN,MAAK;AAAA,cACL,OAAOnB;AAAA,cACP,SAAStC;AAAA,YAAA;AAAA,UACX;AAAA,QAAA,GACF;AAAA,MAAA,GAEJ;AAAA,MAEF,CAACkC,GAASI,GAAatC,CAAiB;AAAA,IAAA,GAGpC0D,IAAuBvB;AAAA,MAC3B,MAAM,gBAAAkB,EAACM,IAAe,EAAA,GAAGV,EAAoB,CAAA;AAAA,MAC7C,CAACA,CAAkB;AAAA,IAAA,GAGfW,IAAwBzB,EAAQ,MAChC,CAACvB,KAAkBO,IAAoB,yBAGxCiC,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,OAAO;AAAA,MAC5C,gBAAAmB,EAACQ,GAAe,EAAA,gBAAgBjD,EAAgB,CAAA;AAAA,IAClD,EAAA,CAAA,GAED,CAACA,GAAgBO,GAAae,EAAQ,UAAU,KAAK,CAAC,GAEnD4B,IAAwB3B,EAAQ,MAChCd,IAA2B,yBAG5B+B,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,MACjD,gBAAAmB,EAACU,IAAgB,EAAA,GAAGb,GAAqB;AAAA,IAC3C,EAAA,CAAA,GAED,CAAC7B,GAAoBa,EAAQ,UAAU,YAAYgB,CAAmB,CAAC,GAEpEc,IAAqB7B,EAAQ,MAC5BR,sBAGFyB,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,OAAO;AAAA,MAC3C,gBAAA+B,EAAAb,GAAA,EAAS,gBAAe,OAAM,iBAAiB,MAC9C,UAAA;AAAA,QAAA,gBAAAC,EAACa,MAAK,WAAU,OAAM,mBAAkB,OAAM,QAAO,SAAQ,UAE7D,oCAAA,CAAA;AAAA,QACA,gBAAAb;AAAA,UAACc;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,cAAa;AAAA,YACb,OAAM;AAAA,YACN,SAASxB;AAAA,UAAA;AAAA,QACX;AAAA,MAAA,GACF;AAAA,IACF,EAAA,CAAA,IAhB0B,MAkB3B,CAAChB,GAAgBO,EAAQ,UAAU,OAAOS,CAAiB,CAAC,GAEzDyB,IAAwBjC,EAAQ,MAC/BvB,sBAGFwC,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,MACjD,gBAAAmB,EAACa,MAAK,WAAU,YAAW,mBAAkB,YAAW,QAAO,SAAQ,UAEvE,kBAAA,CAAA;AAAA,MACC,gBAAAb,EAAAE,GAAA,EAAU,QAAQrB,EAAQ,UAAU,QAAQ;AAAA,MAC7C,gBAAAmB,EAACQ,GAAe,EAAA,gBAAgBjD,EAAgB,CAAA;AAAA,MAC/CoD;AAAA,IACH,EAAA,CAAA,IAX0B,MAa3B,CAACpD,GAAgBsB,EAAQ,WAAW8B,CAAkB,CAAC,GAEpDK,IAAuBlC,EAAQ,MAC9Bf,sBAGFgC,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,wBAChDoC,IAAU,EAAA;AAAA,MACX,gBAAAjB,EAACkB,IAAiB,EAAA,UAAUrD,EAAkB,CAAA;AAAA,MAC7CkD;AAAA,IACH,EAAA,CAAA,IAR2B,MAU5B,CAAChD,GAAiBc,EAAQ,UAAU,YAAYhB,GAAkBkD,CAAqB,CAAC,GAErFI,IAAqBrC,EAAQ,MAC5BhB,sBAGFiC,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,wBAChDuC,IAAmB,EAAA;AAAA,IACtB,EAAA,CAAA,IANuB,MAQxB,CAACtD,GAAae,EAAQ,UAAU,UAAU,CAAC,GAExCwC,IAAsBvC,EAAQ,MAC9Bd,IAA2B,yBAG5B+B,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,wBAChDyC,IAAA,EACC,UAAC,gBAAAtB,EAAAuB,IAAA,EAAa,cAAA1E,EAA4B,CAAA,GAC5C;AAAA,IACF,EAAA,CAAA,GAED,CAACmB,GAAoBa,EAAQ,UAAU,YAAYhC,CAAY,CAAC,GAE7D2E,IAA4B1C,EAAQ,MACnCtB,sBAGFuC,GACC,EAAA,UAAA;AAAA,MAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,MACjD,gBAAAmB;AAAA,QAACyB;AAAA,QAAA;AAAA,UACC,gBAAAjE;AAAA,UACA,qBAAAgC;AAAA,UACA,sBAAAD;AAAA,QAAA;AAAA,MACF;AAAA,IACF,EAAA,CAAA,IAV0B,MAY3B,CAAC/B,GAAgBqB,EAAQ,UAAU,YAAYW,GAAqBD,CAAoB,CAAC,GAEtFmC,KAAc5C;AAAA,MAClB,wBACGiB,GACE,EAAA,UAAA;AAAA,QAAAM;AAAA,QACAE;AAAA,QACAE;AAAA,QACAO;AAAA,QACAG;AAAA,QACAE;AAAA,QACAG;AAAA,MAAA,GACH;AAAA,MAEF;AAAA,QACEnB;AAAA,QACAE;AAAA,QACAE;AAAA,QACAO;AAAA,QACAG;AAAA,QACAE;AAAA,QACAG;AAAA,MACF;AAAA,IAAA,GAGIG,KAAc7C;AAAA,MAClB,wBACGiB,GACC,EAAA,UAAA;AAAA,QAAA,gBAAAC,EAACE,GAAU,EAAA,QAAQrB,EAAQ,UAAU,YAAY;AAAA,0BAChD+C,IAAoB,EAAA;AAAA,MAAA,GACvB;AAAA,MAEF,CAAC/C,EAAQ,UAAU,UAAU;AAAA,IAAA;AAO/B,WAJkBC,EAAQ,MACjBL,KAAkBD,KAA0B,CAACD,KAAkBN,GACrE,CAACO,GAAwBC,GAAgBF,GAAgBN,CAAW,CAAC,IAG/D,gBAAA+B,EAAC6B,IAAU,EAAA,QAAO,SAAS,CAAA,IAGhC1D,KAEC,gBAAA6B,EAAAD,GAAA,EAAS,OAAO,GAAG,aAAY,UAAS,iBAAgB,UACvD,UAAA,gBAAAC,EAAC8B,IAAM,EAAA,OAAM,QAAO,YAAY5C,IAAgB,EAClD,CAAA,IAKF,gBAAA0B,EAACmB,IAAA,EACC,UAAA;AAAA,MAAA,gBAAA/B,EAACgC,MAAc,cAAAlF,IAA4B;AAAA,MAC3C,gBAAA8D;AAAA,QAACqB;AAAAA,QAAA;AAAA,UACC,OAAO;AAAA,UACP,QAAO;AAAA,UACP,SAAQ;AAAA,UACR,aAAY;AAAA,UACZ,MAAMpD,EAAQ;AAAA,UACd,SAASA,EAAQ;AAAA,UAEhB,UAAA;AAAA,YAAAR,KAA0ByB,KAA4B4B;AAAA,YACtDC;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IACF,EAAA,CAAA;AAAA,EAEJ;AACF;"}
1
+ {"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import type { ESummaryType, IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\n\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport OnboardingGuide from '../auth/pla-signup/onboarding-guide/onboarding-guide';\nimport SignupHeader from '../auth/pla-signup/signup-header/signup-header';\nimport NextSteps from '../trial-session/comps/pla/next-steps/next-steps';\nimport SessionStatus from '../trial-session/comps/pla/session-status/session-status';\nimport SessionSummary from '../trial-session/comps/pla/session-summary/session-summary';\nimport UpcomingSessions from '../trial-session/comps/pla/upcoming-sessions/upcoming-sessions';\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport Button from '../ui/buttons/button/button';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport Error from '../ui/error/error';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport { invalidateParentHome } from './api/parent-home';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport useStudentProfileSummaryData from './hooks/use-student-profile-summary-data';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\n\nconst ParentDashboardView: React.FC<IParentDashboardProps> = memo(\n ({\n studentName,\n studentId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n canChangeTutor,\n onSwitchUser,\n isSubscriptionCancelled,\n HeaderAvatar,\n }) => {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const {\n teacherDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n classStatus,\n upcomingSessions,\n isDemoDone,\n isOnlyOneSessionCompleted,\n isMoreThanOneSessionCompleted,\n showLoading = false,\n demoId,\n isProcessingFailed,\n userAttemptId,\n } = useParentHomeData(studentId);\n\n const { summaryInfo, fetchSummaryData } = useStudentProfileSummaryData(studentId);\n\n const handleTryAgain = useCallback(() => {\n invalidateParentHome(studentId);\n fetchSummaryData();\n }, [fetchSummaryData, studentId]);\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n onChangeTutor(demoId);\n }, [demoId, onChangeTutor]);\n\n const spacing: ISpacingConfig = useMemo(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const handleViewSummary = useCallback(\n (key: ESummaryType) => {\n onViewSummary?.(key, { ...summaryInfo, userAttemptId: userAttemptId ?? null });\n },\n [onViewSummary, summaryInfo, userAttemptId],\n );\n\n const buttonWidth = isMobile ? '100%' : 200;\n\n const renderCancelledSubscriptionView = useCallback(\n () => (\n <FlexView>\n <SignupHeader />\n <Separator height={spacing.separator.extraLarge} />\n <OnboardingGuide orientation=\"horizontal\" />\n {onGetStartedAgain && (\n <FlexView>\n <Separator height={spacing.medium} />\n <Button\n label=\"Get Started\"\n renderAs=\"yellow-dark\"\n shape=\"square\"\n width={buttonWidth}\n onClick={onGetStartedAgain}\n />\n </FlexView>\n )}\n </FlexView>\n ),\n [spacing, buttonWidth, onGetStartedAgain],\n );\n\n const renderSessionStatusSection = useCallback(\n () => (\n <SessionStatus\n completedSessions={completedSessions}\n nextSessionStartTime={nextSessionStart}\n teacherName={teacherName}\n status={classStatus}\n nextSessionEndTime={nextSessionEnd}\n studentName={studentName}\n onRescheduleClick={handleRescheduleDemo}\n />\n ),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n classStatus,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n ],\n );\n\n const renderTeacherProfileSection = useCallback(() => {\n if (!teacherDetails || isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isDemoDone, spacing.separator.large]);\n\n const renderSessionSummarySection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary\n isDemoDone={isDemoDone}\n studentName={studentName}\n onViewSummary={handleViewSummary}\n />\n </FlexView>\n );\n }, [\n isMoreThanOneSessionCompleted,\n spacing.separator.extraLarge,\n isDemoDone,\n studentName,\n handleViewSummary,\n ]);\n\n const renderTutorChangeSection = useCallback(() => {\n if (!canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const renderTeacherDetailsSection = useCallback(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {renderTutorChangeSection()}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, renderTutorChangeSection]);\n\n const renderOnlyOneSessionSection = useCallback(() => {\n if (!isOnlyOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <UpcomingSessions sessions={upcomingSessions} />\n {renderTeacherDetailsSection()}\n </FlexView>\n );\n }, [\n isOnlyOneSessionCompleted,\n spacing.separator.extraLarge,\n upcomingSessions,\n renderTeacherDetailsSection,\n ]);\n\n const renderAppFeaturesSection = useCallback(() => {\n if (!isDemoDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isDemoDone, spacing.separator.extraLarge]);\n\n const renderMathPracticeSection = useCallback(() => {\n if (isMoreThanOneSessionCompleted) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isMoreThanOneSessionCompleted, spacing.separator.extraLarge, onSwitchUser]);\n\n const renderMainContent = useCallback(\n () => (\n <FlexView>\n {renderSessionStatusSection()}\n {renderTeacherProfileSection()}\n {renderSessionSummarySection()}\n {renderOnlyOneSessionSection()}\n {renderAppFeaturesSection()}\n {renderMathPracticeSection()}\n </FlexView>\n ),\n [\n renderSessionStatusSection,\n renderTeacherProfileSection,\n renderSessionSummarySection,\n renderOnlyOneSessionSection,\n renderAppFeaturesSection,\n renderMathPracticeSection,\n ],\n );\n\n const renderFaqsSection = useCallback(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n <Separator height={spacing.separator.extraLarge} />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n if (showLoading) {\n return <AppLoader height=\"100dvh\" />;\n }\n\n if (isProcessingFailed)\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\">\n <Error theme=\"dark\" onTryAgain={handleTryAgain} />\n </FlexView>\n );\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? renderCancelledSubscriptionView() : renderMainContent()}\n {renderFaqsSection()}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n },\n);\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","canChangeTutor","onSwitchUser","isSubscriptionCancelled","HeaderAvatar","device","useTheme","isMobile","EDeviceType","teacherDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","classStatus","upcomingSessions","isDemoDone","isOnlyOneSessionCompleted","isMoreThanOneSessionCompleted","showLoading","demoId","isProcessingFailed","userAttemptId","useParentHomeData","summaryInfo","fetchSummaryData","useStudentProfileSummaryData","handleTryAgain","useCallback","invalidateParentHome","handleRescheduleDemo","handleChangeTutor","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","handleViewSummary","key","buttonWidth","renderCancelledSubscriptionView","FlexView","jsx","SignupHeader","Separator","OnboardingGuide","Button","renderSessionStatusSection","SessionStatus","renderTeacherProfileSection","TeacherProfile","renderSessionSummarySection","SessionSummary","renderTutorChangeSection","jsxs","Text","TextButton","renderTeacherDetailsSection","renderOnlyOneSessionSection","NextSteps","UpcomingSessions","renderAppFeaturesSection","CuemathAppFeatures","renderMathPracticeSection","Styled.MathPracticeWrapper","MathPractice","renderMainContent","renderFaqsSection","ParentDashboardFaqs","AppLoader","Error","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":"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"}