@abyss-project/storage 1.2.0 → 1.2.2
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/types/interface/api/requests/multipart-upload.request.d.ts +1 -0
- package/dist/types/interface/dto/upload-session.d.ts +2 -0
- package/dist/utils/initiate-upload.d.ts +1 -0
- package/dist/utils/initiate-upload.js +12 -1
- package/dist/utils/initiate-upload.js.map +1 -1
- package/dist/utils/resumable-upload.d.ts +2 -0
- package/dist/utils/resumable-upload.js +15 -0
- package/dist/utils/resumable-upload.js.map +1 -1
- package/dist/utils/tests/initiate-upload.test.js +10 -1
- package/dist/utils/tests/initiate-upload.test.js.map +1 -1
- package/dist/utils/tests/resumable-upload.test.js +66 -0
- package/dist/utils/tests/resumable-upload.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -13,5 +13,6 @@ export interface InitiateUploadArgs {
|
|
|
13
13
|
publicAccessPassword?: string;
|
|
14
14
|
customPublicAccessId?: string | null;
|
|
15
15
|
thumbnail?: ThumbnailPreSignUrlApplicationFileBody;
|
|
16
|
+
data?: Record<string, unknown>;
|
|
16
17
|
}
|
|
17
18
|
export declare const initiateUpload: (args: InitiateUploadArgs) => Promise<UploadSession>;
|
|
@@ -23,9 +23,16 @@ const initiateUpload = async (args) => {
|
|
|
23
23
|
? { customPublicAccessId: args.customPublicAccessId }
|
|
24
24
|
: {}),
|
|
25
25
|
...(args.thumbnail ? { thumbnail: args.thumbnail } : {}),
|
|
26
|
+
...(args.data ? { data: args.data } : {}),
|
|
26
27
|
};
|
|
27
28
|
const preSign = await __1.AbyssStorageCore.sdk.applicationFile.getPreSignedUrl({ applicationId: args.applicationId }, body);
|
|
28
|
-
return {
|
|
29
|
+
return {
|
|
30
|
+
kind: 'single',
|
|
31
|
+
token: preSign.data.preSignUrl,
|
|
32
|
+
...(args.maxApplicationFileSizeInOctet !== undefined
|
|
33
|
+
? { maxSizeOctet: args.maxApplicationFileSizeInOctet }
|
|
34
|
+
: {}),
|
|
35
|
+
};
|
|
29
36
|
}
|
|
30
37
|
const initiateBody = {
|
|
31
38
|
fileName: args.fileName,
|
|
@@ -61,12 +68,16 @@ const initiateUpload = async (args) => {
|
|
|
61
68
|
},
|
|
62
69
|
}
|
|
63
70
|
: {}),
|
|
71
|
+
...(args.data ? { data: args.data } : {}),
|
|
64
72
|
};
|
|
65
73
|
const initiate = await __1.AbyssStorageCore.sdk.applicationFile.multipart.initiate({ applicationId: args.applicationId }, initiateBody);
|
|
66
74
|
return {
|
|
67
75
|
kind: 'multipart',
|
|
68
76
|
multipartToken: initiate.data.multipartToken,
|
|
69
77
|
partSizeOctet: initiate.data.partSizeOctet,
|
|
78
|
+
...(args.maxApplicationFileSizeInOctet !== undefined
|
|
79
|
+
? { maxSizeOctet: args.maxApplicationFileSizeInOctet }
|
|
80
|
+
: {}),
|
|
70
81
|
};
|
|
71
82
|
};
|
|
72
83
|
exports.initiateUpload = initiateUpload;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initiate-upload.js","sourceRoot":"","sources":["../../src/utils/initiate-upload.ts"],"names":[],"mappings":";;;AAYA,0BAAsC;AACtC,oCAMkB;
|
|
1
|
+
{"version":3,"file":"initiate-upload.js","sourceRoot":"","sources":["../../src/utils/initiate-upload.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export interface UploadWithSessionArgs {
|
|
|
8
8
|
session: UploadSession;
|
|
9
9
|
onProgress?: (percent: number) => void;
|
|
10
10
|
signal?: AbortSignal;
|
|
11
|
+
maxSizeOctet?: number;
|
|
11
12
|
}
|
|
12
13
|
export interface UploadResumableArgs {
|
|
13
14
|
file: File;
|
|
@@ -16,6 +17,7 @@ export interface UploadResumableArgs {
|
|
|
16
17
|
antivirus?: IAntivirusConfig;
|
|
17
18
|
onProgress?: (percent: number) => void;
|
|
18
19
|
signal?: AbortSignal;
|
|
20
|
+
maxSizeOctet?: number;
|
|
19
21
|
}
|
|
20
22
|
export declare const uploadWithSession: (args: UploadWithSessionArgs) => Promise<string>;
|
|
21
23
|
export declare const uploadResumable: (args: UploadResumableArgs) => Promise<string>;
|
|
@@ -3,6 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.uploadResumable = exports.uploadWithSession = void 0;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const types_1 = require("../types");
|
|
6
|
+
const assertWithinCap = (file, cap) => {
|
|
7
|
+
if (cap !== undefined && file.size > cap) {
|
|
8
|
+
throw Object.assign(new Error(`File exceeds the maximum allowed size (${file.size} > ${cap} octets)`), { code: types_1.Code.fileBiggerThanLimit });
|
|
9
|
+
}
|
|
10
|
+
};
|
|
6
11
|
const clampPercent = (value) => Math.max(0, Math.min(100, value));
|
|
7
12
|
const requireStorageFileId = (id) => {
|
|
8
13
|
if (!id) {
|
|
@@ -70,6 +75,15 @@ const runMultipart = async (multipartToken, partSizeOctet, file, opts) => {
|
|
|
70
75
|
}
|
|
71
76
|
};
|
|
72
77
|
const uploadWithSession = async (args) => {
|
|
78
|
+
const cap = args.maxSizeOctet ?? args.session.maxSizeOctet;
|
|
79
|
+
if (cap !== undefined && args.file.size > cap) {
|
|
80
|
+
if (args.session.kind === 'multipart') {
|
|
81
|
+
await __1.AbyssStorageCore.sdk.applicationFile.multipart.abort({
|
|
82
|
+
token: args.session.multipartToken,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
assertWithinCap(args.file, cap);
|
|
86
|
+
}
|
|
73
87
|
const opts = { onProgress: args.onProgress, signal: args.signal };
|
|
74
88
|
if (args.session.kind === 'single') {
|
|
75
89
|
return runSingleShot(args.session.token, args.file, opts);
|
|
@@ -78,6 +92,7 @@ const uploadWithSession = async (args) => {
|
|
|
78
92
|
};
|
|
79
93
|
exports.uploadWithSession = uploadWithSession;
|
|
80
94
|
const uploadResumable = async (args) => {
|
|
95
|
+
assertWithinCap(args.file, args.maxSizeOctet);
|
|
81
96
|
const opts = { onProgress: args.onProgress, signal: args.signal };
|
|
82
97
|
if (args.file.size <= types_1.SINGLE_SHOT_THRESHOLD_OCTET) {
|
|
83
98
|
const body = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resumable-upload.js","sourceRoot":"","sources":["../../src/utils/resumable-upload.ts"],"names":[],"mappings":";;;AAqBA,0BAAsC;AACtC,
|
|
1
|
+
{"version":3,"file":"resumable-upload.js","sourceRoot":"","sources":["../../src/utils/resumable-upload.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,8 +30,13 @@ const sdk = __1.AbyssStorageCore.sdk.applicationFile;
|
|
|
30
30
|
sizeOctet: 10 * ONE_MIB,
|
|
31
31
|
maxApplicationFileSizeInOctet: 50 * ONE_MIB,
|
|
32
32
|
antivirus,
|
|
33
|
+
data: { fileId: 'x' },
|
|
34
|
+
});
|
|
35
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
36
|
+
kind: 'single',
|
|
37
|
+
token: 'presigned-token',
|
|
38
|
+
maxSizeOctet: 50 * ONE_MIB,
|
|
33
39
|
});
|
|
34
|
-
(0, vitest_1.expect)(result).toEqual({ kind: 'single', token: 'presigned-token' });
|
|
35
40
|
(0, vitest_1.expect)(initiateSpy).not.toHaveBeenCalled();
|
|
36
41
|
(0, vitest_1.expect)(preSignSpy).toHaveBeenCalledTimes(1);
|
|
37
42
|
(0, vitest_1.expect)(preSignSpy.mock.calls[0][0]).toEqual({ applicationId: 'app-1' });
|
|
@@ -40,6 +45,7 @@ const sdk = __1.AbyssStorageCore.sdk.applicationFile;
|
|
|
40
45
|
fileName: 'small.bin',
|
|
41
46
|
maxApplicationFileSizeInOctet: 50 * ONE_MIB,
|
|
42
47
|
antivirus,
|
|
48
|
+
data: { fileId: 'x' },
|
|
43
49
|
});
|
|
44
50
|
});
|
|
45
51
|
(0, vitest_1.it)('sizeOctet > SINGLE_SHOT_THRESHOLD_OCTET returns a multipart session and threads totalSizeOctet + the cap + antivirus', async () => {
|
|
@@ -57,11 +63,13 @@ const sdk = __1.AbyssStorageCore.sdk.applicationFile;
|
|
|
57
63
|
sizeOctet: totalSizeOctet,
|
|
58
64
|
maxApplicationFileSizeInOctet: 200 * ONE_MIB,
|
|
59
65
|
antivirus,
|
|
66
|
+
data: { fileId: 'x' },
|
|
60
67
|
});
|
|
61
68
|
(0, vitest_1.expect)(result).toEqual({
|
|
62
69
|
kind: 'multipart',
|
|
63
70
|
multipartToken: 'multipart-token',
|
|
64
71
|
partSizeOctet,
|
|
72
|
+
maxSizeOctet: 200 * ONE_MIB,
|
|
65
73
|
});
|
|
66
74
|
(0, vitest_1.expect)(preSignSpy).not.toHaveBeenCalled();
|
|
67
75
|
(0, vitest_1.expect)(initiateSpy).toHaveBeenCalledTimes(1);
|
|
@@ -71,6 +79,7 @@ const sdk = __1.AbyssStorageCore.sdk.applicationFile;
|
|
|
71
79
|
totalSizeOctet,
|
|
72
80
|
maxApplicationFileSizeInOctet: 200 * ONE_MIB,
|
|
73
81
|
antivirus,
|
|
82
|
+
data: { fileId: 'x' },
|
|
74
83
|
});
|
|
75
84
|
});
|
|
76
85
|
(0, vitest_1.it)('exactly at SINGLE_SHOT_THRESHOLD_OCTET still takes the single-shot path', async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initiate-upload.test.js","sourceRoot":"","sources":["../../../src/utils/tests/initiate-upload.test.ts"],"names":[],"mappings":";;AAAA,mCAA6D;AAC7D,6BAAyC;AACzC,wDAAoD;AACpD,uCAOqB;AAErB,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5B,MAAM,SAAS,GAAqB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAQ,CAAC,KAAK,EAAE,CAAC;AAEzE,MAAM,yBAAyB,GAAG,CAAC,UAAkB,EAAyC,EAAE,CAAC,CAAC;IAChG,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAC5B,cAAsB,EACtB,aAAqB,EACO,EAAE,CAAC,CAAC;IAChC,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE;CAC/D,CAAC,CAAC;AAEH,MAAM,GAAG,GAAG,oBAAgB,CAAC,GAAG,CAAC,eAAe,CAAC;AAEjD,IAAA,iBAAQ,EAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAA,kBAAS,EAAC,GAAG,EAAE;QACb,WAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,mGAAmG,EAAE,KAAK,IAAI,EAAE;QACjH,MAAM,UAAU,GAAG,WAAE;aAClB,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;aAC7B,iBAAiB,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACnE,MAAM,WAAW,GAAG,WAAE;aACnB,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC;aAChC,iBAAiB,CAAC,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC,CAAC;QAE7F,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAc,EAAC;YAClC,aAAa,EAAE,OAAO;YACtB,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,EAAE,GAAG,OAAO;YACvB,6BAA6B,EAAE,EAAE,GAAG,OAAO;YAC3C,SAAS;
|
|
1
|
+
{"version":3,"file":"initiate-upload.test.js","sourceRoot":"","sources":["../../../src/utils/tests/initiate-upload.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -181,5 +181,71 @@ const sdk = __1.AbyssStorageCore.sdk.applicationFile;
|
|
|
181
181
|
(0, vitest_1.expect)(uploadPartSpy.mock.calls.map((call) => call[0].partNumber)).toEqual([2, 3]);
|
|
182
182
|
});
|
|
183
183
|
});
|
|
184
|
+
(0, vitest_1.describe)('client-side size guard', () => {
|
|
185
|
+
(0, vitest_1.it)('uploadWithSession: rejects with fileBiggerThanLimit before uploading when the file exceeds the session cap (single)', async () => {
|
|
186
|
+
const uploadSpy = vitest_1.vi
|
|
187
|
+
.spyOn(sdk, 'upload')
|
|
188
|
+
.mockResolvedValue(buildUploadResponse(buildApplicationFile()));
|
|
189
|
+
const session = { kind: 'single', token: 'presigned-token', maxSizeOctet: 1024 };
|
|
190
|
+
const file = buildFile(2048);
|
|
191
|
+
await (0, vitest_1.expect)((0, resumable_upload_1.uploadWithSession)({ file, session })).rejects.toMatchObject({
|
|
192
|
+
code: types_1.Code.fileBiggerThanLimit,
|
|
193
|
+
});
|
|
194
|
+
(0, vitest_1.expect)(uploadSpy).not.toHaveBeenCalled();
|
|
195
|
+
});
|
|
196
|
+
(0, vitest_1.it)('uploadWithSession: aborts the already-initiated multipart and rejects, without uploading any part', async () => {
|
|
197
|
+
const abortSpy = vitest_1.vi.spyOn(sdk.multipart, 'abort').mockResolvedValue(undefined);
|
|
198
|
+
const listPartsSpy = vitest_1.vi
|
|
199
|
+
.spyOn(sdk.multipart, 'listParts')
|
|
200
|
+
.mockResolvedValue(buildListPartsResponse());
|
|
201
|
+
const uploadPartSpy = vitest_1.vi
|
|
202
|
+
.spyOn(sdk.multipart, 'uploadPart')
|
|
203
|
+
.mockResolvedValue(buildUploadPartResponse(1));
|
|
204
|
+
const session = {
|
|
205
|
+
kind: 'multipart',
|
|
206
|
+
multipartToken: 'multipart-token',
|
|
207
|
+
partSizeOctet: 10,
|
|
208
|
+
maxSizeOctet: 5,
|
|
209
|
+
};
|
|
210
|
+
const file = buildFile(20);
|
|
211
|
+
await (0, vitest_1.expect)((0, resumable_upload_1.uploadWithSession)({ file, session })).rejects.toMatchObject({
|
|
212
|
+
code: types_1.Code.fileBiggerThanLimit,
|
|
213
|
+
});
|
|
214
|
+
(0, vitest_1.expect)(abortSpy).toHaveBeenCalledWith({ token: 'multipart-token' });
|
|
215
|
+
(0, vitest_1.expect)(listPartsSpy).not.toHaveBeenCalled();
|
|
216
|
+
(0, vitest_1.expect)(uploadPartSpy).not.toHaveBeenCalled();
|
|
217
|
+
});
|
|
218
|
+
(0, vitest_1.it)('uploadWithSession: an explicit maxSizeOctet overrides a session that carries no cap', async () => {
|
|
219
|
+
const uploadSpy = vitest_1.vi
|
|
220
|
+
.spyOn(sdk, 'upload')
|
|
221
|
+
.mockResolvedValue(buildUploadResponse(buildApplicationFile()));
|
|
222
|
+
const session = { kind: 'single', token: 'presigned-token' };
|
|
223
|
+
const file = buildFile(2048);
|
|
224
|
+
await (0, vitest_1.expect)((0, resumable_upload_1.uploadWithSession)({ file, session, maxSizeOctet: 1024 })).rejects.toMatchObject({ code: types_1.Code.fileBiggerThanLimit });
|
|
225
|
+
(0, vitest_1.expect)(uploadSpy).not.toHaveBeenCalled();
|
|
226
|
+
});
|
|
227
|
+
(0, vitest_1.it)('uploadWithSession: proceeds normally when the file is within the session cap', async () => {
|
|
228
|
+
const uploadSpy = vitest_1.vi
|
|
229
|
+
.spyOn(sdk, 'upload')
|
|
230
|
+
.mockResolvedValue(buildUploadResponse(buildApplicationFile({ id: 'ok-file-id' })));
|
|
231
|
+
const session = { kind: 'single', token: 'presigned-token', maxSizeOctet: 4096 };
|
|
232
|
+
const file = buildFile(1024);
|
|
233
|
+
const result = await (0, resumable_upload_1.uploadWithSession)({ file, session });
|
|
234
|
+
(0, vitest_1.expect)(result).toBe('ok-file-id');
|
|
235
|
+
(0, vitest_1.expect)(uploadSpy).toHaveBeenCalledTimes(1);
|
|
236
|
+
});
|
|
237
|
+
(0, vitest_1.it)('uploadResumable: rejects before presigning when the file exceeds maxSizeOctet', async () => {
|
|
238
|
+
const preSignSpy = vitest_1.vi
|
|
239
|
+
.spyOn(sdk, 'getPreSignedUrl')
|
|
240
|
+
.mockResolvedValue(buildPreSignedUrlResponse('presigned-token'));
|
|
241
|
+
const initiateSpy = vitest_1.vi
|
|
242
|
+
.spyOn(sdk.multipart, 'initiate')
|
|
243
|
+
.mockResolvedValue(buildInitiateResponse('multipart-token', 10));
|
|
244
|
+
const file = buildFile(2048);
|
|
245
|
+
await (0, vitest_1.expect)((0, resumable_upload_1.uploadResumable)({ file, applicationId: 'app-1', maxSizeOctet: 1024 })).rejects.toMatchObject({ code: types_1.Code.fileBiggerThanLimit });
|
|
246
|
+
(0, vitest_1.expect)(preSignSpy).not.toHaveBeenCalled();
|
|
247
|
+
(0, vitest_1.expect)(initiateSpy).not.toHaveBeenCalled();
|
|
248
|
+
});
|
|
249
|
+
});
|
|
184
250
|
});
|
|
185
251
|
//# sourceMappingURL=resumable-upload.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resumable-upload.test.js","sourceRoot":"","sources":["../../../src/utils/tests/resumable-upload.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resumable-upload.test.js","sourceRoot":"","sources":["../../../src/utils/tests/resumable-upload.test.ts"],"names":[],"mappings":"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"}
|