@cuemath/leap 3.0.10-aa0 → 3.0.10-aa11
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.
- package/dist/assets/line-icons/icons/check.js +3 -3
- package/dist/assets/line-icons/icons/check.js.map +1 -1
- package/dist/assets/line-icons/icons/puzzle-icon.js +51 -0
- package/dist/assets/line-icons/icons/puzzle-icon.js.map +1 -0
- package/dist/assets/line-icons/icons/share.js +48 -0
- package/dist/assets/line-icons/icons/share.js.map +1 -0
- package/dist/assets/line-icons/icons/tile.js +54 -0
- package/dist/assets/line-icons/icons/tile.js.map +1 -0
- package/dist/features/cue-canvas/bottombar/homework-controls.js +73 -0
- package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -0
- package/dist/features/cue-canvas/cue-canvas-core.js +38 -40
- package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-helpers.js +31 -25
- package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas.js +53 -52
- package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
- package/dist/features/cue-canvas/cue-cavas-styled.js +29 -29
- package/dist/features/cue-canvas/hooks/use-upload-helper.js +23 -0
- package/dist/features/cue-canvas/hooks/use-upload-helper.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/homework/helper.js +20 -0
- package/dist/features/cue-canvas/sidebar/homework/helper.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-menu.js +33 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-request.js +61 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-styled.js +25 -0
- package/dist/features/cue-canvas/sidebar/homework/homework-styled.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/homework/homework.js +32 -0
- package/dist/features/cue-canvas/sidebar/homework/homework.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js +13 -0
- package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js +60 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js +44 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filters.js +107 -0
- package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js +42 -0
- package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js +84 -0
- package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js +36 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu-header.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js +133 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js +96 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzles-styled.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js +29 -0
- package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/puzzles/utils.js +120 -0
- package/dist/features/cue-canvas/sidebar/puzzles/utils.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/sidebar-styled.js +32 -0
- package/dist/features/cue-canvas/sidebar/sidebar-styled.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/sidebar.js +33 -0
- package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -0
- package/dist/features/cue-canvas/sidebar/tiles/tile.js +16 -0
- package/dist/features/cue-canvas/sidebar/tiles/tile.js.map +1 -0
- package/dist/features/hooks/use-debounce.js +16 -0
- package/dist/features/hooks/use-debounce.js.map +1 -0
- package/dist/features/ui/stepper/stepper.js +7 -7
- package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js +22 -19
- package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
- package/dist/index.d.ts +34 -0
- package/dist/index.js +186 -182
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
@@ -1,33 +1,36 @@
|
|
1
|
-
import { useEffect as
|
2
|
-
import { useAwsSignedKey as
|
3
|
-
import
|
4
|
-
const
|
5
|
-
const { studentId: t, query: o } =
|
6
|
-
return
|
7
|
-
s
|
8
|
-
}, [
|
9
|
-
|
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
|
14
|
+
const i = `https://${a.bucketName}.s3.amazonaws.com/`;
|
12
15
|
try {
|
13
|
-
const
|
14
|
-
const e = new FormData(),
|
15
|
-
if (e.append("key",
|
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 `${
|
21
|
-
}),
|
22
|
-
|
23
|
+
return `${i}${m}`;
|
24
|
+
}), u = await Promise.all(l);
|
25
|
+
return n == null || n(u), u;
|
23
26
|
} catch {
|
24
|
-
|
27
|
+
p == null || p();
|
25
28
|
}
|
26
29
|
},
|
27
|
-
[
|
30
|
+
[]
|
28
31
|
);
|
29
32
|
};
|
30
33
|
export {
|
31
|
-
|
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
|
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;"}
|
package/dist/index.d.ts
CHANGED
@@ -271,10 +271,14 @@ export declare const CueCanvas: React.FC<ICueCanvas>;
|
|
271
271
|
|
272
272
|
export declare const CueCanvasController: React_2.FC<IToolbarProps>;
|
273
273
|
|
274
|
+
export declare const CueCanvasHomeworkController: NamedExoticComponent<IHomeWorkControllerProps>;
|
275
|
+
|
274
276
|
export declare const CueCanvasProvider: FC<PropsWithChildren<{
|
275
277
|
userType: TUserTypes;
|
276
278
|
}>>;
|
277
279
|
|
280
|
+
export declare const CueCanvasSideBar: NamedExoticComponent<ISidebar>;
|
281
|
+
|
278
282
|
export declare const CuemathLogo: React_2.FC<React_2.SVGProps<SVGSVGElement>>;
|
279
283
|
|
280
284
|
export declare const CueRocket: React.FC<React.SVGProps<SVGSVGElement>>;
|
@@ -1356,6 +1360,30 @@ export declare interface IHomepageStartJourneyProps {
|
|
1356
1360
|
userType: TUserTypes;
|
1357
1361
|
}
|
1358
1362
|
|
1363
|
+
declare interface IHomeWorkControllerProps {
|
1364
|
+
width: number;
|
1365
|
+
hwRequests?: IHomeWorkHelpRequestModel[];
|
1366
|
+
onMarkAsResolved?: (homeworkId: string, onSuccess: () => void) => void;
|
1367
|
+
onSendImageToChat?: (homeworkId: string, snapshot: Blob[], onSuccess: () => void) => void;
|
1368
|
+
}
|
1369
|
+
|
1370
|
+
export declare interface IHomeWorkHelpRequestModel {
|
1371
|
+
channel_id: string;
|
1372
|
+
created_on_ts: number;
|
1373
|
+
homework_id: string;
|
1374
|
+
id: string;
|
1375
|
+
message_timestamp: string;
|
1376
|
+
problem_description: string;
|
1377
|
+
problem_image_urls: string[];
|
1378
|
+
state: string;
|
1379
|
+
student_id: string;
|
1380
|
+
teacher_id: string;
|
1381
|
+
}
|
1382
|
+
|
1383
|
+
declare interface IHomeWorkHelpRequestModelWithStudentName extends IHomeWorkHelpRequestModel {
|
1384
|
+
student_name: string;
|
1385
|
+
}
|
1386
|
+
|
1359
1387
|
declare interface IIconButtonProps extends Omit<IButtonProps, 'label' | 'shape' | 'widthX' | 'width' | 'iconPosition' | 'alignSelf' | 'analyticsLabel' | 'renderAs'>, Required<Pick<IClickableAnalyticsProps, 'analyticsLabel'>> {
|
1360
1388
|
Icon: React.FC<React.SVGProps<SVGSVGElement>>;
|
1361
1389
|
customBgColor?: TColorNames;
|
@@ -2793,6 +2821,11 @@ declare interface ISheetsListProps extends ISheetItemCallbackProps {
|
|
2793
2821
|
section?: TSheetsSection;
|
2794
2822
|
}
|
2795
2823
|
|
2824
|
+
declare interface ISidebar {
|
2825
|
+
grade?: string;
|
2826
|
+
hwRequests?: IHomeWorkHelpRequestModelWithStudentName[];
|
2827
|
+
}
|
2828
|
+
|
2796
2829
|
export declare interface ISignUpProps {
|
2797
2830
|
circleOnLeapSignedUp: boolean;
|
2798
2831
|
circleOnLeapPremiumEnabled: boolean;
|
@@ -3119,6 +3152,7 @@ declare interface ITile {
|
|
3119
3152
|
toTileId: string;
|
3120
3153
|
}[];
|
3121
3154
|
html?: string;
|
3155
|
+
width?: number | string;
|
3122
3156
|
}
|
3123
3157
|
|
3124
3158
|
declare interface ITimeLeftTimelineProps {
|