@cuemath/leap 3.1.6-j1 → 3.1.7-aa0

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 (194) hide show
  1. package/dist/assets/illustrations/illustrations.js +2 -1
  2. package/dist/assets/illustrations/illustrations.js.map +1 -1
  3. package/dist/assets/lib/lib.js +1 -1
  4. package/dist/assets/lib/lib.js.map +1 -1
  5. package/dist/assets/line-icons/icons/check.js +3 -3
  6. package/dist/assets/line-icons/icons/check.js.map +1 -1
  7. package/dist/assets/line-icons/icons/puzzle-icon.js +51 -0
  8. package/dist/assets/line-icons/icons/puzzle-icon.js.map +1 -0
  9. package/dist/assets/line-icons/icons/share.js +48 -0
  10. package/dist/assets/line-icons/icons/share.js.map +1 -0
  11. package/dist/assets/line-icons/icons/tile.js +54 -0
  12. package/dist/assets/line-icons/icons/tile.js.map +1 -0
  13. package/dist/features/auth/account-selector/account-selector.js +33 -57
  14. package/dist/features/auth/account-selector/account-selector.js.map +1 -1
  15. package/dist/features/auth/comps/auth-page-layout/auth-page-layout-styles.js +12 -0
  16. package/dist/features/auth/comps/auth-page-layout/auth-page-layout-styles.js.map +1 -0
  17. package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js +9 -8
  18. package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
  19. package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js +1 -1
  20. package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js.map +1 -1
  21. package/dist/features/auth/forgot-password/forgot-password-styled.js +3 -15
  22. package/dist/features/auth/forgot-password/forgot-password-styled.js.map +1 -1
  23. package/dist/features/auth/forgot-password/otp-form/otp-form.js +29 -29
  24. package/dist/features/auth/forgot-password/otp-form/otp-form.js.map +1 -1
  25. package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js +18 -14
  26. package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js.map +1 -1
  27. package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js +24 -23
  28. package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js.map +1 -1
  29. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js +2 -4
  30. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js.map +1 -1
  31. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js +75 -85
  32. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js.map +1 -1
  33. package/dist/features/auth/login/social-account-not-found/social-account-not-found.js +21 -27
  34. package/dist/features/auth/login/social-account-not-found/social-account-not-found.js.map +1 -1
  35. package/dist/features/auth/login/social-login-methods/social-login-methods.js +34 -43
  36. package/dist/features/auth/login/social-login-methods/social-login-methods.js.map +1 -1
  37. package/dist/features/auth/login/username-password-form/username-password-form.js +21 -22
  38. package/dist/features/auth/login/username-password-form/username-password-form.js.map +1 -1
  39. package/dist/features/auth/user-list/user-item/user-item.js +32 -33
  40. package/dist/features/auth/user-list/user-item/user-item.js.map +1 -1
  41. package/dist/features/auth/user-list/user-list.js +51 -60
  42. package/dist/features/auth/user-list/user-list.js.map +1 -1
  43. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js +74 -74
  44. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
  45. package/dist/features/cue-canvas/bottombar/homework-controls.js +73 -0
  46. package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -0
  47. package/dist/features/cue-canvas/constants/constants.js +33 -3
  48. package/dist/features/cue-canvas/constants/constants.js.map +1 -1
  49. package/dist/features/cue-canvas/cue-canvas-context.js +8 -5
  50. package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
  51. package/dist/features/cue-canvas/cue-canvas-core.js +140 -114
  52. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  53. package/dist/features/cue-canvas/cue-canvas-helpers.js +48 -38
  54. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  55. package/dist/features/cue-canvas/cue-canvas-provider.js +21 -21
  56. package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
  57. package/dist/features/cue-canvas/cue-canvas.js +70 -62
  58. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  59. package/dist/features/cue-canvas/cue-cavas-styled.js +48 -47
  60. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  61. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +47 -44
  62. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
  63. package/dist/features/cue-canvas/hooks/use-config-updater.js +13 -0
  64. package/dist/features/cue-canvas/hooks/use-config-updater.js.map +1 -0
  65. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js +18 -14
  66. package/dist/features/cue-canvas/hooks/use-cue-canvas-actions.js.map +1 -1
  67. package/dist/features/cue-canvas/hooks/use-height-extender.js +12 -10
  68. package/dist/features/cue-canvas/hooks/use-height-extender.js.map +1 -1
  69. package/dist/features/cue-canvas/hooks/use-upload-helper.js +23 -0
  70. package/dist/features/cue-canvas/hooks/use-upload-helper.js.map +1 -0
  71. package/dist/features/cue-canvas/sidebar/homework/helper.js +20 -0
  72. package/dist/features/cue-canvas/sidebar/homework/helper.js.map +1 -0
  73. package/dist/features/cue-canvas/sidebar/homework/homework-menu.js +33 -0
  74. package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -0
  75. package/dist/features/cue-canvas/sidebar/homework/homework-request.js +68 -0
  76. package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -0
  77. package/dist/features/cue-canvas/sidebar/homework/homework-styled.js +25 -0
  78. package/dist/features/cue-canvas/sidebar/homework/homework-styled.js.map +1 -0
  79. package/dist/features/cue-canvas/sidebar/homework/homework.js +39 -0
  80. package/dist/features/cue-canvas/sidebar/homework/homework.js.map +1 -0
  81. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js +13 -0
  82. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js.map +1 -0
  83. package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js +60 -0
  84. package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -0
  85. package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js +44 -0
  86. package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -0
  87. package/dist/features/cue-canvas/sidebar/puzzles/filters.js +107 -0
  88. package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -0
  89. package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js +42 -0
  90. package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js.map +1 -0
  91. package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js +84 -0
  92. package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js.map +1 -0
  93. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js +36 -0
  94. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js.map +1 -0
  95. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js +133 -0
  96. package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -0
  97. package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js +96 -0
  98. package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js.map +1 -0
  99. package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js +29 -0
  100. package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js.map +1 -0
  101. package/dist/features/cue-canvas/sidebar/puzzles/utils.js +120 -0
  102. package/dist/features/cue-canvas/sidebar/puzzles/utils.js.map +1 -0
  103. package/dist/features/cue-canvas/sidebar/sidebar-styled.js +32 -0
  104. package/dist/features/cue-canvas/sidebar/sidebar-styled.js.map +1 -0
  105. package/dist/features/cue-canvas/sidebar/sidebar.js +29 -0
  106. package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -0
  107. package/dist/features/cue-canvas/sidebar/tiles/tile.js +16 -0
  108. package/dist/features/cue-canvas/sidebar/tiles/tile.js.map +1 -0
  109. package/dist/features/cue-canvas/toolbar/color-palette.js +42 -33
  110. package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -1
  111. package/dist/features/cue-canvas/toolbar/color-picker-menu.js +28 -25
  112. package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -1
  113. package/dist/features/cue-canvas/toolbar/grid-menu.js +13 -13
  114. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -1
  115. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js +24 -35
  116. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -1
  117. package/dist/features/cue-canvas/toolbar/tool.js +22 -20
  118. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -1
  119. package/dist/features/cue-canvas/toolbar/toolbar.js +17 -18
  120. package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
  121. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js +13 -11
  122. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
  123. package/dist/features/homework/hw-card-list/api/get-homeworks.js +1 -1
  124. package/dist/features/homework/hw-card-list/api/get-homeworks.js.map +1 -1
  125. package/dist/features/homework/hw-card-list/hw-card-list-utils.js +8 -0
  126. package/dist/features/homework/hw-card-list/hw-card-list-utils.js.map +1 -0
  127. package/dist/features/homework/hw-card-list/hw-card-list-view.js +144 -112
  128. package/dist/features/homework/hw-card-list/hw-card-list-view.js.map +1 -1
  129. package/dist/features/homework/styles.js +5 -4
  130. package/dist/features/homework/styles.js.map +1 -1
  131. package/dist/features/hooks/use-debounce.js +16 -0
  132. package/dist/features/hooks/use-debounce.js.map +1 -0
  133. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js +199 -262
  134. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js.map +1 -1
  135. package/dist/features/journey/hooks/use-home-page-journey/use-home-page-journey.js +15 -15
  136. package/dist/features/journey/hooks/use-home-page-journey/use-home-page-journey.js.map +1 -1
  137. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js +38 -36
  138. package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js.map +1 -1
  139. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js +24 -22
  140. package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js.map +1 -1
  141. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js +23 -22
  142. package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js.map +1 -1
  143. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js +49 -47
  144. package/dist/features/milestone/create/comps/chapters-selection-step/utils.js.map +1 -1
  145. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js +94 -87
  146. package/dist/features/milestone/create/comps/class-details-step/class-details-step.js.map +1 -1
  147. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js +13 -12
  148. package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js.map +1 -1
  149. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js +23 -21
  150. package/dist/features/milestone/create/comps/test-type-step/test-type-step.js.map +1 -1
  151. package/dist/features/milestone/create/milestone-create-helpers.js +165 -162
  152. package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
  153. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js +48 -47
  154. package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
  155. package/dist/features/milestone/milestone-list-container/api/get-past-milestone-count.js +18 -0
  156. package/dist/features/milestone/milestone-list-container/api/get-past-milestone-count.js.map +1 -0
  157. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +100 -121
  158. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
  159. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js +15 -14
  160. package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
  161. package/dist/features/milestone/milestone-list-container/milestone-list-container.js +52 -51
  162. package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
  163. package/dist/features/trial-session/comps/pricing/india-pricing/index.js +96 -0
  164. package/dist/features/trial-session/comps/pricing/india-pricing/index.js.map +1 -0
  165. package/dist/features/trial-session/comps/pricing/india-pricing/india-pricing-styled.js +59 -0
  166. package/dist/features/trial-session/comps/pricing/india-pricing/india-pricing-styled.js.map +1 -0
  167. package/dist/features/trial-session/comps/pricing/pricing.js +36 -35
  168. package/dist/features/trial-session/comps/pricing/pricing.js.map +1 -1
  169. package/dist/features/ui/buttons/button/button-styled.js +29 -29
  170. package/dist/features/ui/buttons/button/button-styled.js.map +1 -1
  171. package/dist/features/ui/stepper/stepper.js +7 -7
  172. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js +22 -19
  173. package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
  174. package/dist/features/worksheet/worksheet/worksheet-container.js +26 -26
  175. package/dist/features/worksheet/worksheet/worksheet-container.js.map +1 -1
  176. package/dist/index.d.ts +104 -35
  177. package/dist/index.js +323 -321
  178. package/dist/index.js.map +1 -1
  179. package/dist/static/ellipse-clip.dfb25608.svg +1 -0
  180. package/dist/static/lib/{polypad-4.5.4.js → polypad-4.5.4.v1.js} +8 -1
  181. package/package.json +1 -1
  182. package/dist/features/auth/account-selector/account-selector-styled.js +0 -9
  183. package/dist/features/auth/account-selector/account-selector-styled.js.map +0 -1
  184. package/dist/features/auth/comps/auth-page-layout/auth-page-layout-styled.js +0 -21
  185. package/dist/features/auth/comps/auth-page-layout/auth-page-layout-styled.js.map +0 -1
  186. package/dist/features/auth/login/login-styled.js +0 -13
  187. package/dist/features/auth/login/login-styled.js.map +0 -1
  188. package/dist/features/auth/login/social-login-methods/social-login-methods-styled.js +0 -9
  189. package/dist/features/auth/login/social-login-methods/social-login-methods-styled.js.map +0 -1
  190. package/dist/features/hooks/use-viewport.js +0 -21
  191. package/dist/features/hooks/use-viewport.js.map +0 -1
  192. package/dist/features/utils/media.js +0 -16
  193. package/dist/features/utils/media.js.map +0 -1
  194. package/dist/static/cuemath-app-qr-code.7205ee79.svg +0 -1
@@ -1,33 +1,36 @@
1
- import { useEffect as g, useCallback as w } from "react";
2
- import { useAwsSignedKey as S } from "../api/subjective-review.js";
3
- import h from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
4
- const A = (c) => {
5
- const { studentId: t, query: o } = c, { data: a, get: s } = S();
6
- return g(() => {
7
- s(t, o);
8
- }, [o, s, t]), w(
9
- async ({ images: d, onSuccess: i, onError: l, fileKey: u, fileName: m }) => {
1
+ import { useRef as h, useEffect as f, useCallback as k } from "react";
2
+ import { useAwsSignedKey as I } from "../api/subjective-review.js";
3
+ import S from "../../../../node_modules/uuid/dist/esm-browser/v4.js";
4
+ const C = (y) => {
5
+ const { studentId: t, query: o, enabled: r = !0 } = y, { data: s, get: d } = I(), c = h(s);
6
+ return f(() => {
7
+ c.current = s;
8
+ }, [s]), f(() => {
9
+ r && t && d(t, o);
10
+ }, [o, d, t, r]), k(
11
+ async ({ images: g, onSuccess: n, onError: p, fileKey: w, fileName: K }) => {
12
+ const a = c.current;
10
13
  if (!a) return;
11
- const r = `https://${a.bucketName}.s3.amazonaws.com/`;
14
+ const i = `https://${a.bucketName}.s3.amazonaws.com/`;
12
15
  try {
13
- const n = d.map(async (f) => {
14
- const e = new FormData(), p = `${u}${m ?? h()}`;
15
- if (e.append("key", p), e.append("AWSAccessKeyId", a.awsKey), e.append("acl", "public-read"), e.append("success_action_redirect", ""), e.append("policy", a.policy), e.append("signature", a.signature), e.append("Content-Type", "image/jpeg"), e.append("file", f.file), !(await fetch(r, {
16
+ const l = g.map(async (b) => {
17
+ const e = new FormData(), m = `${w}${K ?? S()}`;
18
+ if (e.append("key", m), e.append("AWSAccessKeyId", a.awsKey), e.append("acl", "public-read"), e.append("success_action_redirect", ""), e.append("policy", a.policy), e.append("signature", a.signature), e.append("Content-Type", "image/jpeg"), e.append("file", b.file), !(await fetch(i, {
16
19
  method: "POST",
17
20
  body: e
18
21
  })).ok)
19
22
  throw new Error("Upload failed");
20
- return `${r}${p}`;
21
- }), y = await Promise.all(n);
22
- i(y);
23
+ return `${i}${m}`;
24
+ }), u = await Promise.all(l);
25
+ return n == null || n(u), u;
23
26
  } catch {
24
- l();
27
+ p == null || p();
25
28
  }
26
29
  },
27
- [a]
30
+ []
28
31
  );
29
32
  };
30
33
  export {
31
- A as default
34
+ C as default
32
35
  };
33
36
  //# sourceMappingURL=use-s3-helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-s3-helper.js","sources":["../../../../../src/features/worksheet/worksheet/hooks/use-s3-helper.ts"],"sourcesContent":["import type { IFile } from '../worksheet-question/subjective-review';\n\nimport { useCallback, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { useAwsSignedKey } from '../api/subjective-review';\n\ninterface IUseS3helper {\n (params: {\n studentId: string;\n query: {\n type: string;\n };\n }): (props: IUploadImageProps) => void;\n}\n\ninterface IUploadImageProps {\n images: IFile[];\n onSuccess: (urls: string[]) => void;\n onError: () => void;\n fileKey: string;\n fileName?: string;\n}\n\nconst useS3ImageUploadHelper: IUseS3helper = props => {\n const { studentId, query } = props;\n const { data: awsSignedKey, get: getAwsSignedKey } = useAwsSignedKey();\n\n useEffect(() => {\n getAwsSignedKey(studentId, query);\n }, [query, getAwsSignedKey, studentId]);\n\n const uploadImagesToS3 = useCallback(\n async ({ images, onSuccess, onError, fileKey, fileName }: IUploadImageProps) => {\n if (!awsSignedKey) return;\n\n const url = `https://${awsSignedKey.bucketName}.s3.amazonaws.com/`;\n\n try {\n const uploadPromises = images.map(async (item: { file: string | Blob }) => {\n const formData = new FormData();\n const key = `${fileKey}${fileName ?? uuidv4()}`;\n\n formData.append('key', key);\n formData.append('AWSAccessKeyId', awsSignedKey.awsKey);\n formData.append('acl', 'public-read');\n formData.append('success_action_redirect', '');\n formData.append('policy', awsSignedKey.policy);\n formData.append('signature', awsSignedKey.signature);\n formData.append('Content-Type', 'image/jpeg');\n formData.append('file', item.file);\n\n const res = await fetch(url, {\n method: 'POST',\n body: formData,\n });\n\n if (!res.ok) {\n throw new Error('Upload failed');\n }\n\n return `${url}${key}`;\n });\n\n const uploadedUrls = await Promise.all(uploadPromises);\n\n onSuccess(uploadedUrls);\n } catch (error) {\n onError();\n }\n },\n [awsSignedKey],\n );\n\n return uploadImagesToS3;\n};\n\nexport default useS3ImageUploadHelper;\n"],"names":["useS3ImageUploadHelper","props","studentId","query","awsSignedKey","getAwsSignedKey","useAwsSignedKey","useEffect","useCallback","images","onSuccess","onError","fileKey","fileName","url","uploadPromises","item","formData","key","uuidv4","uploadedUrls"],"mappings":";;;AAwBA,MAAMA,IAAuC,CAASC,MAAA;AAC9C,QAAA,EAAE,WAAAC,GAAW,OAAAC,EAAU,IAAAF,GACvB,EAAE,MAAMG,GAAc,KAAKC,EAAA,IAAoBC;AAErD,SAAAC,EAAU,MAAM;AACd,IAAAF,EAAgBH,GAAWC,CAAK;AAAA,EAC/B,GAAA,CAACA,GAAOE,GAAiBH,CAAS,CAAC,GAEbM;AAAA,IACvB,OAAO,EAAE,QAAAC,GAAQ,WAAAC,GAAW,SAAAC,GAAS,SAAAC,GAAS,UAAAC,QAAkC;AAC9E,UAAI,CAACT,EAAc;AAEb,YAAAU,IAAM,WAAWV,EAAa,UAAU;AAE1C,UAAA;AACF,cAAMW,IAAiBN,EAAO,IAAI,OAAOO,MAAkC;AACnE,gBAAAC,IAAW,IAAI,YACfC,IAAM,GAAGN,CAAO,GAAGC,KAAYM,EAAQ,CAAA;AAgBzC,cAdKF,EAAA,OAAO,OAAOC,CAAG,GACjBD,EAAA,OAAO,kBAAkBb,EAAa,MAAM,GAC5Ca,EAAA,OAAO,OAAO,aAAa,GAC3BA,EAAA,OAAO,2BAA2B,EAAE,GACpCA,EAAA,OAAO,UAAUb,EAAa,MAAM,GACpCa,EAAA,OAAO,aAAab,EAAa,SAAS,GAC1Ca,EAAA,OAAO,gBAAgB,YAAY,GACnCA,EAAA,OAAO,QAAQD,EAAK,IAAI,GAO7B,EALQ,MAAM,MAAMF,GAAK;AAAA,YAC3B,QAAQ;AAAA,YACR,MAAMG;AAAA,UAAA,CACP,GAEQ;AACD,kBAAA,IAAI,MAAM,eAAe;AAG1B,iBAAA,GAAGH,CAAG,GAAGI,CAAG;AAAA,QAAA,CACpB,GAEKE,IAAe,MAAM,QAAQ,IAAIL,CAAc;AAErD,QAAAL,EAAUU,CAAY;AAAA,cACR;AACN,QAAAT;MACV;AAAA,IACF;AAAA,IACA,CAACP,CAAY;AAAA,EAAA;AAIjB;"}
1
+ {"version":3,"file":"use-s3-helper.js","sources":["../../../../../src/features/worksheet/worksheet/hooks/use-s3-helper.ts"],"sourcesContent":["import type { IFile } from '../worksheet-question/subjective-review';\n\nimport { useCallback, useEffect, useRef } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { useAwsSignedKey } from '../api/subjective-review';\n\ninterface IUseS3helperProps {\n studentId: string;\n query: {\n type: string;\n };\n enabled?: boolean;\n}\n\ninterface IUploadImageProps {\n images: IFile[];\n onSuccess?: (urls: string[]) => void;\n onError?: () => void;\n fileKey: string;\n fileName?: string;\n}\n\nconst useS3ImageUploadHelper = (props: IUseS3helperProps) => {\n const { studentId, query, enabled = true } = props;\n const { data, get: getAwsSignedKey } = useAwsSignedKey();\n const awsSignedKeyRef = useRef(data);\n\n useEffect(() => {\n awsSignedKeyRef.current = data;\n }, [data]);\n\n useEffect(() => {\n if (enabled && studentId) {\n getAwsSignedKey(studentId, query);\n }\n }, [query, getAwsSignedKey, studentId, enabled]);\n\n const uploadImagesToS3 = useCallback(\n async ({ images, onSuccess, onError, fileKey, fileName }: IUploadImageProps) => {\n const awsSignedKey = awsSignedKeyRef.current;\n\n if (!awsSignedKey) return;\n\n const url = `https://${awsSignedKey.bucketName}.s3.amazonaws.com/`;\n\n try {\n const uploadPromises = images.map(async (item: { file: string | Blob }) => {\n const formData = new FormData();\n const key = `${fileKey}${fileName ?? uuidv4()}`;\n\n formData.append('key', key);\n formData.append('AWSAccessKeyId', awsSignedKey.awsKey);\n formData.append('acl', 'public-read');\n formData.append('success_action_redirect', '');\n formData.append('policy', awsSignedKey.policy);\n formData.append('signature', awsSignedKey.signature);\n formData.append('Content-Type', 'image/jpeg');\n formData.append('file', item.file);\n\n const res = await fetch(url, {\n method: 'POST',\n body: formData,\n });\n\n if (!res.ok) {\n throw new Error('Upload failed');\n }\n\n return `${url}${key}`;\n });\n\n const uploadedUrls = await Promise.all(uploadPromises);\n\n onSuccess?.(uploadedUrls);\n\n return uploadedUrls;\n } catch (error) {\n onError?.();\n }\n },\n [],\n );\n\n return uploadImagesToS3;\n};\n\nexport default useS3ImageUploadHelper;\n"],"names":["useS3ImageUploadHelper","props","studentId","query","enabled","data","getAwsSignedKey","useAwsSignedKey","awsSignedKeyRef","useRef","useEffect","useCallback","images","onSuccess","onError","fileKey","fileName","awsSignedKey","url","uploadPromises","item","formData","key","uuidv4","uploadedUrls"],"mappings":";;;AAuBM,MAAAA,IAAyB,CAACC,MAA6B;AAC3D,QAAM,EAAE,WAAAC,GAAW,OAAAC,GAAO,SAAAC,IAAU,OAASH,GACvC,EAAE,MAAAI,GAAM,KAAKC,MAAoBC,EAAgB,GACjDC,IAAkBC,EAAOJ,CAAI;AAEnC,SAAAK,EAAU,MAAM;AACd,IAAAF,EAAgB,UAAUH;AAAA,EAAA,GACzB,CAACA,CAAI,CAAC,GAETK,EAAU,MAAM;AACd,IAAIN,KAAWF,KACbI,EAAgBJ,GAAWC,CAAK;AAAA,KAEjC,CAACA,GAAOG,GAAiBJ,GAAWE,CAAO,CAAC,GAEtBO;AAAA,IACvB,OAAO,EAAE,QAAAC,GAAQ,WAAAC,GAAW,SAAAC,GAAS,SAAAC,GAAS,UAAAC,QAAkC;AAC9E,YAAMC,IAAeT,EAAgB;AAErC,UAAI,CAACS,EAAc;AAEb,YAAAC,IAAM,WAAWD,EAAa,UAAU;AAE1C,UAAA;AACF,cAAME,IAAiBP,EAAO,IAAI,OAAOQ,MAAkC;AACnE,gBAAAC,IAAW,IAAI,YACfC,IAAM,GAAGP,CAAO,GAAGC,KAAYO,EAAQ,CAAA;AAgBzC,cAdKF,EAAA,OAAO,OAAOC,CAAG,GACjBD,EAAA,OAAO,kBAAkBJ,EAAa,MAAM,GAC5CI,EAAA,OAAO,OAAO,aAAa,GAC3BA,EAAA,OAAO,2BAA2B,EAAE,GACpCA,EAAA,OAAO,UAAUJ,EAAa,MAAM,GACpCI,EAAA,OAAO,aAAaJ,EAAa,SAAS,GAC1CI,EAAA,OAAO,gBAAgB,YAAY,GACnCA,EAAA,OAAO,QAAQD,EAAK,IAAI,GAO7B,EALQ,MAAM,MAAMF,GAAK;AAAA,YAC3B,QAAQ;AAAA,YACR,MAAMG;AAAA,UAAA,CACP,GAEQ;AACD,kBAAA,IAAI,MAAM,eAAe;AAG1B,iBAAA,GAAGH,CAAG,GAAGI,CAAG;AAAA,QAAA,CACpB,GAEKE,IAAe,MAAM,QAAQ,IAAIL,CAAc;AAErD,eAAAN,KAAA,QAAAA,EAAYW,IAELA;AAAA,cACO;AACJ,QAAAV,KAAA,QAAAA;AAAA,MACZ;AAAA,IACF;AAAA,IACA,CAAC;AAAA,EAAA;AAIL;"}
@@ -1,25 +1,25 @@
1
1
  import { jsx as f } from "react/jsx-runtime";
2
2
  import { memo as W, forwardRef as S, useCallback as q, useEffect as m } from "react";
3
- import L from "../../cue-canvas/cue-canvas-provider.js";
4
- import v from "../constants/events.js";
5
- import I from "./hooks/use-learnosity.js";
6
- import T from "./hooks/use-worksheet-data-helper.js";
7
- import w from "./worksheet.js";
8
- const x = (u, l) => {
3
+ import v from "../../cue-canvas/cue-canvas-provider.js";
4
+ import L from "../constants/events.js";
5
+ import A from "./hooks/use-learnosity.js";
6
+ import I from "./hooks/use-worksheet-data-helper.js";
7
+ import T from "./worksheet.js";
8
+ const w = (u, l) => {
9
9
  const {
10
10
  attemptId: R,
11
11
  itemsSignedRequest: g,
12
- questionsSignedRequest: p,
12
+ questionsSignedRequest: c,
13
13
  onLoaded: r,
14
14
  onErrored: t,
15
15
  onResponsesLoaded: a,
16
- loggerRef: o,
17
- userType: c,
16
+ loggerRef: s,
17
+ userType: d,
18
18
  ...E
19
- } = u, { loadingState: s, learnosityActivityRef: h, data: e, error: d } = T({
19
+ } = u, { loadingState: o, learnosityActivityRef: h, data: e, error: p } = I({
20
20
  attemptId: R,
21
21
  signedRequest: g,
22
- loggerRef: o
22
+ loggerRef: s
23
23
  }), y = q(
24
24
  (i) => {
25
25
  t({
@@ -28,39 +28,39 @@ const x = (u, l) => {
28
28
  });
29
29
  },
30
30
  [t]
31
- ), { learnosity: n, appendedQuestionIds: k } = I(
32
- p,
31
+ ), { learnosity: n, appendedQuestionIds: k } = A(
32
+ c,
33
33
  y,
34
- o
34
+ s
35
35
  );
36
36
  if (m(() => {
37
- s === "error" && t({
38
- message: d ?? "Error loading worksheet"
37
+ o === "error" && t({
38
+ message: p ?? "Error loading worksheet"
39
39
  });
40
- }, [s, d, r, t]), m(() => {
41
- n && s === "success" && r && (o.current(v.WORKSHEET_V3_READY), r());
42
- }, [n, s, o, r]), m(() => {
40
+ }, [o, p, r, t]), m(() => {
41
+ n && o === "success" && r && (s.current(L.WORKSHEET_V3_READY), r());
42
+ }, [n, o, s, r]), m(() => {
43
43
  e != null && e.responses && a && a(e.responses ?? {});
44
- }, [e == null ? void 0 : e.responses, a]), s === "success" && e && n) {
44
+ }, [e == null ? void 0 : e.responses, a]), o === "success" && e && n) {
45
45
  const { learnosityItems: i, responses: C } = e;
46
- return /* @__PURE__ */ f(L, { userType: c, children: /* @__PURE__ */ f(
47
- w,
46
+ return /* @__PURE__ */ f(v, { userType: d, renderAs: "canvas", children: /* @__PURE__ */ f(
47
+ T,
48
48
  {
49
49
  ref: l,
50
- questionsSignedRequest: p,
50
+ questionsSignedRequest: c,
51
51
  learnosity: n,
52
52
  appendedQuestionIds: k,
53
53
  learnosityActivityRef: h,
54
54
  learnosityItems: i,
55
55
  learnosityResponses: C,
56
- loggerRef: o,
57
- userType: c,
56
+ loggerRef: s,
57
+ userType: d,
58
58
  ...E
59
59
  }
60
60
  ) });
61
61
  }
62
62
  return null;
63
- }, A = W(S(x)), N = A;
63
+ }, x = W(S(w)), N = x;
64
64
  export {
65
65
  N as default
66
66
  };
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-container.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-container.tsx"],"sourcesContent":["import type { IWorksheetRef } from './worksheet-types';\nimport type { ForwardRefRenderFunction } from 'react';\n\nimport { forwardRef, memo, useCallback, useEffect } from 'react';\n\nimport CueCanvasProvider from '../../cue-canvas/cue-canvas-provider';\nimport EVENTS from '../constants/events';\nimport useLearnosity from './hooks/use-learnosity';\nimport useWorksheetDataHelper from './hooks/use-worksheet-data-helper';\nimport Worksheet from './worksheet';\nimport { type ILearnosityError, type IWorksheetContainerProps } from './worksheet-types';\n\nconst WorksheetContainerComp: ForwardRefRenderFunction<IWorksheetRef, IWorksheetContainerProps> = (\n props,\n ref,\n) => {\n const {\n attemptId,\n itemsSignedRequest,\n questionsSignedRequest,\n onLoaded,\n onErrored,\n onResponsesLoaded,\n loggerRef,\n userType,\n ...other\n } = props;\n\n const { loadingState, learnosityActivityRef, data, error } = useWorksheetDataHelper({\n attemptId,\n signedRequest: itemsSignedRequest,\n loggerRef,\n });\n\n const onLearnosityErrored = useCallback(\n (err: ILearnosityError) => {\n onErrored({\n code: err.code,\n message: err.detail,\n });\n },\n [onErrored],\n );\n\n const { learnosity, appendedQuestionIds } = useLearnosity(\n questionsSignedRequest,\n onLearnosityErrored,\n loggerRef,\n );\n\n useEffect(() => {\n if (loadingState === 'error') {\n onErrored({\n message: error ?? 'Error loading worksheet',\n });\n }\n }, [loadingState, error, onLoaded, onErrored]);\n\n useEffect(() => {\n if (learnosity && loadingState === 'success' && onLoaded) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n onLoaded();\n }\n }, [learnosity, loadingState, loggerRef, onLoaded]);\n\n useEffect(() => {\n if (data?.responses && onResponsesLoaded) {\n onResponsesLoaded(data.responses ?? {});\n }\n }, [data?.responses, onResponsesLoaded]);\n\n if (loadingState === 'success' && data && learnosity) {\n const { learnosityItems, responses } = data;\n\n return (\n <CueCanvasProvider userType={userType}>\n <Worksheet\n ref={ref}\n questionsSignedRequest={questionsSignedRequest}\n learnosity={learnosity}\n appendedQuestionIds={appendedQuestionIds}\n learnosityActivityRef={learnosityActivityRef}\n learnosityItems={learnosityItems}\n learnosityResponses={responses}\n loggerRef={loggerRef}\n userType={userType}\n {...other}\n />\n </CueCanvasProvider>\n );\n }\n\n return null;\n};\n\nconst WorksheetContainer = memo(forwardRef(WorksheetContainerComp));\n\nexport default WorksheetContainer;\n"],"names":["WorksheetContainerComp","props","ref","attemptId","itemsSignedRequest","questionsSignedRequest","onLoaded","onErrored","onResponsesLoaded","loggerRef","userType","other","loadingState","learnosityActivityRef","data","error","useWorksheetDataHelper","onLearnosityErrored","useCallback","err","learnosity","appendedQuestionIds","useLearnosity","useEffect","EVENTS","learnosityItems","responses","jsx","CueCanvasProvider","Worksheet","WorksheetContainer","memo","forwardRef","WorksheetContainer$1"],"mappings":";;;;;;;AAYA,MAAMA,IAA4F,CAChGC,GACAC,MACG;AACG,QAAA;AAAA,IACJ,WAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EACD,IAAAV,GAEE,EAAE,cAAAW,GAAc,uBAAAC,GAAuB,MAAAC,GAAM,OAAAC,EAAA,IAAUC,EAAuB;AAAA,IAClF,WAAAb;AAAA,IACA,eAAeC;AAAA,IACf,WAAAK;AAAA,EAAA,CACD,GAEKQ,IAAsBC;AAAA,IAC1B,CAACC,MAA0B;AACf,MAAAZ,EAAA;AAAA,QACR,MAAMY,EAAI;AAAA,QACV,SAASA,EAAI;AAAA,MAAA,CACd;AAAA,IACH;AAAA,IACA,CAACZ,CAAS;AAAA,EAAA,GAGN,EAAE,YAAAa,GAAY,qBAAAC,EAAA,IAAwBC;AAAA,IAC1CjB;AAAA,IACAY;AAAA,IACAR;AAAA,EAAA;AAwBE,MArBJc,EAAU,MAAM;AACd,IAAIX,MAAiB,WACTL,EAAA;AAAA,MACR,SAASQ,KAAS;AAAA,IAAA,CACnB;AAAA,KAEF,CAACH,GAAcG,GAAOT,GAAUC,CAAS,CAAC,GAE7CgB,EAAU,MAAM;AACV,IAAAH,KAAcR,MAAiB,aAAaN,MACpCG,EAAA,QAAQe,EAAO,kBAAkB,GAClClB;KAEV,CAACc,GAAYR,GAAcH,GAAWH,CAAQ,CAAC,GAElDiB,EAAU,MAAM;AACV,IAAAT,KAAA,QAAAA,EAAM,aAAaN,KACHA,EAAAM,EAAK,aAAa,CAAA,CAAE;AAAA,EAEvC,GAAA,CAACA,KAAA,gBAAAA,EAAM,WAAWN,CAAiB,CAAC,GAEnCI,MAAiB,aAAaE,KAAQM,GAAY;AAC9C,UAAA,EAAE,iBAAAK,GAAiB,WAAAC,EAAc,IAAAZ;AAGrC,WAAA,gBAAAa,EAACC,KAAkB,UAAAlB,GACjB,UAAA,gBAAAiB;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,KAAA3B;AAAA,QACA,wBAAAG;AAAA,QACA,YAAAe;AAAA,QACA,qBAAAC;AAAA,QACA,uBAAAR;AAAA,QACA,iBAAAY;AAAA,QACA,qBAAqBC;AAAA,QACrB,WAAAjB;AAAA,QACA,UAAAC;AAAA,QACC,GAAGC;AAAA,MAAA;AAAA,IAER,EAAA,CAAA;AAAA,EAEJ;AAEO,SAAA;AACT,GAEMmB,IAAqBC,EAAKC,EAAWhC,CAAsB,CAAC,GAElEiC,IAAeH;"}
1
+ {"version":3,"file":"worksheet-container.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-container.tsx"],"sourcesContent":["import type { IWorksheetRef } from './worksheet-types';\nimport type { ForwardRefRenderFunction } from 'react';\n\nimport { forwardRef, memo, useCallback, useEffect } from 'react';\n\nimport CueCanvasProvider from '../../cue-canvas/cue-canvas-provider';\nimport EVENTS from '../constants/events';\nimport useLearnosity from './hooks/use-learnosity';\nimport useWorksheetDataHelper from './hooks/use-worksheet-data-helper';\nimport Worksheet from './worksheet';\nimport { type ILearnosityError, type IWorksheetContainerProps } from './worksheet-types';\n\nconst WorksheetContainerComp: ForwardRefRenderFunction<IWorksheetRef, IWorksheetContainerProps> = (\n props,\n ref,\n) => {\n const {\n attemptId,\n itemsSignedRequest,\n questionsSignedRequest,\n onLoaded,\n onErrored,\n onResponsesLoaded,\n loggerRef,\n userType,\n ...other\n } = props;\n\n const { loadingState, learnosityActivityRef, data, error } = useWorksheetDataHelper({\n attemptId,\n signedRequest: itemsSignedRequest,\n loggerRef,\n });\n\n const onLearnosityErrored = useCallback(\n (err: ILearnosityError) => {\n onErrored({\n code: err.code,\n message: err.detail,\n });\n },\n [onErrored],\n );\n\n const { learnosity, appendedQuestionIds } = useLearnosity(\n questionsSignedRequest,\n onLearnosityErrored,\n loggerRef,\n );\n\n useEffect(() => {\n if (loadingState === 'error') {\n onErrored({\n message: error ?? 'Error loading worksheet',\n });\n }\n }, [loadingState, error, onLoaded, onErrored]);\n\n useEffect(() => {\n if (learnosity && loadingState === 'success' && onLoaded) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n onLoaded();\n }\n }, [learnosity, loadingState, loggerRef, onLoaded]);\n\n useEffect(() => {\n if (data?.responses && onResponsesLoaded) {\n onResponsesLoaded(data.responses ?? {});\n }\n }, [data?.responses, onResponsesLoaded]);\n\n if (loadingState === 'success' && data && learnosity) {\n const { learnosityItems, responses } = data;\n\n return (\n <CueCanvasProvider userType={userType} renderAs=\"canvas\">\n <Worksheet\n ref={ref}\n questionsSignedRequest={questionsSignedRequest}\n learnosity={learnosity}\n appendedQuestionIds={appendedQuestionIds}\n learnosityActivityRef={learnosityActivityRef}\n learnosityItems={learnosityItems}\n learnosityResponses={responses}\n loggerRef={loggerRef}\n userType={userType}\n {...other}\n />\n </CueCanvasProvider>\n );\n }\n\n return null;\n};\n\nconst WorksheetContainer = memo(forwardRef(WorksheetContainerComp));\n\nexport default WorksheetContainer;\n"],"names":["WorksheetContainerComp","props","ref","attemptId","itemsSignedRequest","questionsSignedRequest","onLoaded","onErrored","onResponsesLoaded","loggerRef","userType","other","loadingState","learnosityActivityRef","data","error","useWorksheetDataHelper","onLearnosityErrored","useCallback","err","learnosity","appendedQuestionIds","useLearnosity","useEffect","EVENTS","learnosityItems","responses","jsx","CueCanvasProvider","Worksheet","WorksheetContainer","memo","forwardRef","WorksheetContainer$1"],"mappings":";;;;;;;AAYA,MAAMA,IAA4F,CAChGC,GACAC,MACG;AACG,QAAA;AAAA,IACJ,WAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EACD,IAAAV,GAEE,EAAE,cAAAW,GAAc,uBAAAC,GAAuB,MAAAC,GAAM,OAAAC,EAAA,IAAUC,EAAuB;AAAA,IAClF,WAAAb;AAAA,IACA,eAAeC;AAAA,IACf,WAAAK;AAAA,EAAA,CACD,GAEKQ,IAAsBC;AAAA,IAC1B,CAACC,MAA0B;AACf,MAAAZ,EAAA;AAAA,QACR,MAAMY,EAAI;AAAA,QACV,SAASA,EAAI;AAAA,MAAA,CACd;AAAA,IACH;AAAA,IACA,CAACZ,CAAS;AAAA,EAAA,GAGN,EAAE,YAAAa,GAAY,qBAAAC,EAAA,IAAwBC;AAAA,IAC1CjB;AAAA,IACAY;AAAA,IACAR;AAAA,EAAA;AAwBE,MArBJc,EAAU,MAAM;AACd,IAAIX,MAAiB,WACTL,EAAA;AAAA,MACR,SAASQ,KAAS;AAAA,IAAA,CACnB;AAAA,KAEF,CAACH,GAAcG,GAAOT,GAAUC,CAAS,CAAC,GAE7CgB,EAAU,MAAM;AACV,IAAAH,KAAcR,MAAiB,aAAaN,MACpCG,EAAA,QAAQe,EAAO,kBAAkB,GAClClB;KAEV,CAACc,GAAYR,GAAcH,GAAWH,CAAQ,CAAC,GAElDiB,EAAU,MAAM;AACV,IAAAT,KAAA,QAAAA,EAAM,aAAaN,KACHA,EAAAM,EAAK,aAAa,CAAA,CAAE;AAAA,EAEvC,GAAA,CAACA,KAAA,gBAAAA,EAAM,WAAWN,CAAiB,CAAC,GAEnCI,MAAiB,aAAaE,KAAQM,GAAY;AAC9C,UAAA,EAAE,iBAAAK,GAAiB,WAAAC,EAAc,IAAAZ;AAEvC,WACG,gBAAAa,EAAAC,GAAA,EAAkB,UAAAlB,GAAoB,UAAS,UAC9C,UAAA,gBAAAiB;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,KAAA3B;AAAA,QACA,wBAAAG;AAAA,QACA,YAAAe;AAAA,QACA,qBAAAC;AAAA,QACA,uBAAAR;AAAA,QACA,iBAAAY;AAAA,QACA,qBAAqBC;AAAA,QACrB,WAAAjB;AAAA,QACA,UAAAC;AAAA,QACC,GAAGC;AAAA,MAAA;AAAA,IAER,EAAA,CAAA;AAAA,EAEJ;AAEO,SAAA;AACT,GAEMmB,IAAqBC,EAAKC,EAAWhC,CAAsB,CAAC,GAElEiC,IAAeH;"}
package/dist/index.d.ts CHANGED
@@ -277,8 +277,6 @@ export declare const CopyIcon: React.FC<React.SVGProps<SVGSVGElement>>;
277
277
 
278
278
  export declare const CountdownTimer: FC<ICountdownTimer>;
279
279
 
280
- export declare const COUNTRY_CODE_MAP: ICountryOption[];
281
-
282
280
  declare const COURSE_STREAMS: {
283
281
  readonly SAT_DEMO: "SAT-DEMO";
284
282
  readonly SAT_MATH: "SAT-MATH";
@@ -297,10 +295,15 @@ export declare const CueCanvas: React.FC<ICueCanvas>;
297
295
 
298
296
  export declare const CueCanvasController: React_2.FC<IToolbarProps>;
299
297
 
298
+ export declare const CueCanvasHomeworkController: NamedExoticComponent<IHomeWorkControllerProps>;
299
+
300
300
  export declare const CueCanvasProvider: FC<PropsWithChildren<{
301
301
  userType: TUserTypes;
302
+ renderAs: TRenderAs_2;
302
303
  }>>;
303
304
 
305
+ export declare const CueCanvasSideBar: NamedExoticComponent<ISidebar>;
306
+
304
307
  export declare const CuemathLogo: React_2.FC<React_2.SVGProps<SVGSVGElement>>;
305
308
 
306
309
  export declare const CueRocket: React.FC<React.SVGProps<SVGSVGElement>>;
@@ -755,7 +758,7 @@ declare interface IButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>,
755
758
  shape?: 'curved' | 'square';
756
759
  disabled?: boolean;
757
760
  busy?: boolean;
758
- width?: number | string;
761
+ width?: number;
759
762
  widthX?: number;
760
763
  Icon?: React.FC<React.SVGProps<SVGSVGElement>>;
761
764
  iconPosition?: 'left' | 'right';
@@ -801,6 +804,13 @@ declare interface ICalloutProps {
801
804
  marginBottomX: number;
802
805
  }
803
806
 
807
+ declare interface ICanvasUpdateConfig {
808
+ dimesion?: IViewport;
809
+ gridName?: TCueCanvasGridName;
810
+ height?: number;
811
+ users?: Record<string, IUserCanvasConfig>;
812
+ }
813
+
804
814
  declare interface ICascadeSelectValue {
805
815
  variant: string;
806
816
  detail: string;
@@ -1206,6 +1216,8 @@ declare interface ICueCanvas {
1206
1216
  onUpdateHeight?: TUpdateHeight;
1207
1217
  onPublish?: TPublish;
1208
1218
  onSubscribe?: TSubscribe;
1219
+ canvasConfig?: ICanvasUpdateConfig | null;
1220
+ updateCanvasConfig?: TUpdateCanvasConfig;
1209
1221
  }
1210
1222
 
1211
1223
  declare interface ICueCanvasCallbackProps {
@@ -1453,6 +1465,7 @@ declare interface IGoalCurriculumMap {
1453
1465
  program_code: string;
1454
1466
  program_name: string;
1455
1467
  program_id: string;
1468
+ is_live: boolean;
1456
1469
  }
1457
1470
 
1458
1471
  declare interface IGooglePlaceOption extends google.maps.places.AutocompletePrediction, ISelectOption<string> {
@@ -1480,6 +1493,30 @@ export declare interface IHomepageStartJourneyProps {
1480
1493
  userType: TUserTypes;
1481
1494
  }
1482
1495
 
1496
+ declare interface IHomeWorkControllerProps {
1497
+ width: number;
1498
+ hwRequests?: IHomeWorkHelpRequestModel[];
1499
+ onMarkAsResolved?: (homeworkId: string, onSuccess: () => void) => void;
1500
+ onSendImageToChat?: (homeworkId: string, snapshot: Blob[], onSuccess: () => void) => void;
1501
+ }
1502
+
1503
+ export declare interface IHomeWorkHelpRequestModel {
1504
+ channel_id: string;
1505
+ created_on_ts: number;
1506
+ homework_id: string;
1507
+ id: string;
1508
+ message_timestamp: string;
1509
+ problem_description: string;
1510
+ problem_image_urls: string[];
1511
+ state: string;
1512
+ student_id: string;
1513
+ teacher_id: string;
1514
+ }
1515
+
1516
+ declare interface IHomeWorkHelpRequestModelWithStudentName extends IHomeWorkHelpRequestModel {
1517
+ student_name: string;
1518
+ }
1519
+
1483
1520
  declare interface IIconButtonProps extends Omit<IButtonProps, 'label' | 'shape' | 'widthX' | 'width' | 'iconPosition' | 'alignSelf' | 'analyticsLabel' | 'renderAs'>, Required<Pick<IClickableAnalyticsProps, 'analyticsLabel'>> {
1484
1521
  Icon: React.FC<React.SVGProps<SVGSVGElement>>;
1485
1522
  customBgColor?: TColorNames;
@@ -1910,6 +1947,7 @@ export declare const ILLUSTRATIONS: {
1910
1947
  DURATION_60MIN_GRAY: string;
1911
1948
  DURATION_90MIN_GRAY: string;
1912
1949
  EARTH_GREEN: string;
1950
+ ELLIPSE_CLIP: string;
1913
1951
  FEMALE_AVATAR: string;
1914
1952
  GAME_PLAY: string;
1915
1953
  GLOBE_WITH_BLUE_FILL: string;
@@ -2374,38 +2412,38 @@ export declare interface INodeDataProps {
2374
2412
  attempt_location: TSheetAttemptLocation_2;
2375
2413
  block_id: string;
2376
2414
  card_header: string;
2377
- chapter_id: string;
2415
+ chapter_id: string | null;
2416
+ chapter_name?: string;
2378
2417
  complete_status: boolean;
2379
2418
  course_type: TCourseType;
2380
2419
  desmos_calculator_enabled: boolean;
2381
2420
  due_date_ts: number | null;
2421
+ homework_id?: string;
2422
+ id: string;
2423
+ image_hue: THueNames;
2424
+ image_url: string | null;
2382
2425
  is_lesson_v3_enabled: boolean;
2383
2426
  is_optional: boolean;
2384
2427
  is_timed: boolean;
2385
2428
  is_worksheet_v3: boolean | null;
2429
+ items?: TNodeDataTestItemsDataProps[];
2386
2430
  learnosity_activity_ref: string;
2387
2431
  marked_as_completed: boolean;
2388
2432
  node_id: string;
2389
- id: string;
2390
2433
  node_type: TNodeTypes_2;
2391
- sheet_statement: string;
2392
2434
  permissions: INodePermissions;
2435
+ sheet_statement: string;
2393
2436
  sheet_time: number | null;
2394
2437
  state: TSheetStates;
2438
+ subtext: string | null;
2395
2439
  title: string;
2396
- user_chapter_id: string | null;
2397
- user_node_id: string | null;
2398
- worksheet_id: string;
2399
- image_url: string;
2400
- image_hue: THueNames;
2401
2440
  total_questions: number | null;
2402
2441
  unlocked_on_ts: number | null;
2403
- items?: TNodeDataTestItemsDataProps[];
2404
- user_milestone_id?: string;
2405
2442
  user_attempt_id: string | null;
2406
- subtext: string | null;
2407
- homework_id?: string;
2408
- chapter_name?: string;
2443
+ user_chapter_id: string | null;
2444
+ user_milestone_id?: string;
2445
+ user_node_id: string | null;
2446
+ worksheet_id: string;
2409
2447
  }
2410
2448
 
2411
2449
  declare interface INodePermissions {
@@ -2442,6 +2480,8 @@ export declare const invalidateMilestoneResources: (id: string, query?: void | u
2442
2480
 
2443
2481
  export declare const invalidateMilestonesData: (query?: TQuery | undefined) => void;
2444
2482
 
2483
+ export declare const invalidatePastMilestoneCount: (id: string, query?: void | undefined, allIdsInvalid?: boolean) => void;
2484
+
2445
2485
  export declare const invalidateTestHelpData: (id: string, query?: void | undefined, allIdsInvalid?: boolean) => void;
2446
2486
 
2447
2487
  declare interface IOnChapterExitWarningProps {
@@ -2465,7 +2505,7 @@ declare interface IOTPResendProps {
2465
2505
  showVoiceOTP?: boolean;
2466
2506
  disabled?: boolean;
2467
2507
  renderAs?: 'submit' | 'text';
2468
- width?: number | string;
2508
+ width?: number;
2469
2509
  }
2470
2510
 
2471
2511
  declare interface IOutcomeConfig {
@@ -2973,6 +3013,11 @@ declare interface ISheetsListProps extends ISheetItemCallbackProps {
2973
3013
  section?: TSheetsSection;
2974
3014
  }
2975
3015
 
3016
+ declare interface ISidebar {
3017
+ grade?: string;
3018
+ hwRequests?: IHomeWorkHelpRequestModelWithStudentName[];
3019
+ }
3020
+
2976
3021
  declare interface ISignupMethodsProps {
2977
3022
  onEmailSignup: () => void;
2978
3023
  onPhoneSignup: () => void;
@@ -3012,8 +3057,7 @@ declare interface ISingleFieldFormProps {
3012
3057
 
3013
3058
  declare interface ISocialAccountNotFoundProps {
3014
3059
  onRetryLogin: () => void;
3015
- onGoToSignup?: () => void;
3016
- showSignupButton?: boolean;
3060
+ onGoToSignup: () => void;
3017
3061
  }
3018
3062
 
3019
3063
  declare interface ISocialLoginMethodsProps {
@@ -3342,6 +3386,8 @@ declare interface ITile {
3342
3386
  toPort?: string;
3343
3387
  toTileId: string;
3344
3388
  }[];
3389
+ html?: string;
3390
+ width?: number | string;
3345
3391
  }
3346
3392
 
3347
3393
  declare interface ITimeLeftTimelineProps {
@@ -3530,6 +3576,11 @@ declare interface IusePointerSyncProps {
3530
3576
  targetUserId?: string;
3531
3577
  }
3532
3578
 
3579
+ declare interface IUserCanvasConfig {
3580
+ tool?: TCueCanvasTool;
3581
+ color?: TCueCanvasColors;
3582
+ }
3583
+
3533
3584
  export declare interface IUserChapterData {
3534
3585
  chapter_code: string;
3535
3586
  chapter_id: string;
@@ -3584,12 +3635,6 @@ declare interface IUseTrialSessionMessageBroker {
3584
3635
  };
3585
3636
  }
3586
3637
 
3587
- declare interface IUseViewportReturn {
3588
- isCompact: boolean;
3589
- isMobile: boolean;
3590
- isDesktop: boolean;
3591
- }
3592
-
3593
3638
  declare interface IUseWorksheetLayout {
3594
3639
  (options: {
3595
3640
  userType: TUserTypes;
@@ -4058,11 +4103,6 @@ export declare const Maintenance: React_2.FC<IMaintenanceProps>;
4058
4103
 
4059
4104
  declare const MASTERY: "mastery";
4060
4105
 
4061
- export declare const media: {
4062
- up920: string;
4063
- down919: string;
4064
- };
4065
-
4066
4106
  export declare const MilestoneActionWidget: React_2.FC<IMilestoneActionWidgetProps>;
4067
4107
 
4068
4108
  export declare const MilestoneCreate: React.FC<IMileStoneCreateContainerProps>;
@@ -4487,7 +4527,7 @@ export declare const SkipColoredIcon: React.FC<React.SVGProps<SVGSVGElement>>;
4487
4527
 
4488
4528
  export declare const SkipIcon: React.FC<React.SVGProps<SVGSVGElement>>;
4489
4529
 
4490
- export declare const SocialAccountNotFound: MemoExoticComponent<({ onRetryLogin, onGoToSignup, showSignupButton, }: ISocialAccountNotFoundProps) => JSX_2.Element>;
4530
+ export declare const SocialAccountNotFound: MemoExoticComponent<({ onRetryLogin, onGoToSignup }: ISocialAccountNotFoundProps) => JSX_2.Element>;
4491
4531
 
4492
4532
  export declare const SocialLoginMethods: NamedExoticComponent<ISocialLoginMethodsProps>;
4493
4533
 
@@ -4746,8 +4786,12 @@ declare type TCreateOnPresubmit = (options: TOnPreSubmitOptions) => void;
4746
4786
 
4747
4787
  declare type TCueCanvasChangeDataObject = Record<string, TDrawingData[]>;
4748
4788
 
4789
+ declare type TCueCanvasColors = 'CANVAS_RED' | 'CANVAS_YELLOW' | 'CANVAS_GREEN' | 'CANVAS_BLUE' | 'CANVAS_PURPLE' | 'CANVAS_PINK' | 'LIGHT_ORANGE' | 'LIGHT_RED' | 'LIGHT_PINK' | 'LIGHT_PURPLE' | 'LIGHT_BLUE' | 'LIGHT_TEAL' | 'LIGHT_GREEN' | 'LIGHT_YELLOW' | 'WHITE' | 'ORANGE' | 'RED' | 'PINK' | 'PURPLE' | 'BLUE' | 'TEAL' | 'GREEN' | 'YELLOW' | 'GREY' | 'DARK_ORANGE' | 'DARK_RED' | 'DARK_PINK' | 'DARK_PURPLE' | 'DARK_BLUE' | 'DARK_TEAL' | 'DARK_GREEN' | 'DARK_YELLOW' | 'BLACK';
4790
+
4749
4791
  declare type TCueCanvasGridName = 'none' | 'square2-grid' | 'square-checked' | 'square-dots' | 'square-grid' | 'tri-dots' | 'tri-grid' | 'tri2-dots' | 'tri2-grid';
4750
4792
 
4793
+ declare type TCueCanvasTool = 'pen' | 'eraser' | 'move' | 'undo' | 'redo' | 'marker' | 'highlighter' | 'ruler' | 'pan' | 'clearAll' | 'text' | 'equation' | 'grid' | 'home' | 'lock' | 'unlock' | 'zoomIn' | 'zoomOut' | 'upload' | 'download';
4794
+
4751
4795
  declare type TCueProgramData = {
4752
4796
  description: string;
4753
4797
  id: string;
@@ -5358,6 +5402,11 @@ declare type TQuery = {
5358
5402
  course_stream: TCourseStream;
5359
5403
  };
5360
5404
 
5405
+ declare type TQuery_2 = {
5406
+ milestone_state_group: 'ALL' | 'DRAFT' | 'STUDENT_ALL' | 'LIVE' | 'STUDENT_LIVE' | 'INACTIVE';
5407
+ course_stream: TCourseStream;
5408
+ };
5409
+
5361
5410
  declare type TQuestionByQuestionOverviewList = {
5362
5411
  section: string;
5363
5412
  question_no: number;
@@ -5583,6 +5632,8 @@ export declare type TTrialSessionMessage = {
5583
5632
  };
5584
5633
  };
5585
5634
 
5635
+ declare type TUpdateCanvasConfig = (data: ICanvasUpdateConfig) => void;
5636
+
5586
5637
  declare type TUpdateHeight = (height: number) => void;
5587
5638
 
5588
5639
  declare type TUserAccount = {
@@ -5634,12 +5685,14 @@ export declare const UpIcon: React.FC<React.SVGProps<SVGSVGElement>>;
5634
5685
 
5635
5686
  export declare const useAutoPlayPermission: () => IAutoPlayPermissionContextType;
5636
5687
 
5637
- export declare const useCanvasSyncBroker: (channelId: string, logEvent: (type: string, payload?: Record<string, unknown>) => void, initialCanvasData?: Array<IChannelMessage>) => {
5638
- publishStrokes: ((message: unknown) => boolean) | undefined;
5688
+ export declare const useCanvasSyncBroker: (channelId: string, logEvent: (type: string, payload?: Record<string, unknown>) => void, initialCanvasData?: Array<IChannelMessage>, type?: TRenderAs_2) => {
5689
+ publishStrokes: ((message: IPublishData) => boolean) | undefined;
5639
5690
  channelStatus: ChannelStatus | undefined;
5640
5691
  closeChannel: () => void;
5641
5692
  initialStrokesData: Record<string, IActionData[]>;
5642
5693
  registerCallback: (qrId: string, cb: (data: IActionData) => void) => void;
5694
+ setChannelMetadata: ((metadata: ICanvasUpdateConfig, merge?: boolean) => void) | undefined;
5695
+ channelMetadata: ICanvasUpdateConfig | null | undefined;
5643
5696
  };
5644
5697
 
5645
5698
  export declare const useChapterPageJourney: () => {
@@ -5732,6 +5785,24 @@ export declare const useGetMilestoneResources: (initialId?: string, initialQuery
5732
5785
  } & Record<string, unknown>) | undefined;
5733
5786
  };
5734
5787
 
5788
+ export declare const useGetPastMilestoneCount: (initialId?: string, initialQuery?: void | undefined) => {
5789
+ get: (id: string, query: void, meta: TQuery_2) => Promise<void>;
5790
+ resource: ResourceModel<{
5791
+ user_milestones_count: number;
5792
+ }> | undefined;
5793
+ data: {
5794
+ user_milestones_count: number;
5795
+ } | undefined;
5796
+ permissions: Record<string, unknown> | undefined;
5797
+ isProcessing: boolean;
5798
+ isProcessed: boolean;
5799
+ isProcessingFailed: boolean;
5800
+ isStale: boolean;
5801
+ error: ({
5802
+ message?: string | undefined;
5803
+ } & Record<string, unknown>) | undefined;
5804
+ };
5805
+
5735
5806
  export declare const useGetTestHelpData: (initialId?: string, initialQuery?: void | undefined) => {
5736
5807
  get: (id: string, query: void, meta: {
5737
5808
  studentId: string;
@@ -5792,8 +5863,6 @@ export declare const useTrialSessionMessageBroker: IUseTrialSessionMessageBroker
5792
5863
 
5793
5864
  export declare const useUIContext: () => UIContextProps;
5794
5865
 
5795
- export declare const useViewport: () => IUseViewportReturn;
5796
-
5797
5866
  export declare const useWorksheetLayout: IUseWorksheetLayout;
5798
5867
 
5799
5868
  export declare const useZoomDisable: () => void;