From d66b3b8619e8fff36c0243f7cc67eef864c5009b Mon Sep 17 00:00:00 2001 From: Mohamed Bassem Date: Fri, 4 Jul 2025 23:58:42 +0100 Subject: feat: Add support for S3 as an asset storage layer (#1703) * feat: Add support for S3 as an asset storage layer. Fixes #305 * some minor fixes * use bulk deletion api * stream the file to s3 --- packages/api/utils/assets.ts | 4 ++-- packages/api/utils/upload.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'packages/api') diff --git a/packages/api/utils/assets.ts b/packages/api/utils/assets.ts index d8a726a6..205e1a76 100644 --- a/packages/api/utils/assets.ts +++ b/packages/api/utils/assets.ts @@ -28,7 +28,7 @@ export async function serveAsset(c: Context, assetId: string, userId: string) { const start = parseInt(parts[0], 10); const end = parts[1] ? parseInt(parts[1], 10) : size - 1; - const fStream = createAssetReadStream({ + const fStream = await createAssetReadStream({ userId, assetId, start, @@ -43,7 +43,7 @@ export async function serveAsset(c: Context, assetId: string, userId: string) { await stream.pipe(toWebReadableStream(fStream)); }); } else { - const fStream = createAssetReadStream({ + const fStream = await createAssetReadStream({ userId, assetId, }); diff --git a/packages/api/utils/upload.ts b/packages/api/utils/upload.ts index d96a0f60..daff1fb9 100644 --- a/packages/api/utils/upload.ts +++ b/packages/api/utils/upload.ts @@ -24,7 +24,7 @@ export function webStreamToNode( } export function toWebReadableStream( - nodeStream: fs.ReadStream, + nodeStream: NodeJS.ReadableStream, ): ReadableStream { const reader = nodeStream as unknown as Readable; -- cgit v1.2.3-70-g09d2