aboutsummaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorMohamed Bassem (aider) <me@mbassem.com>2025-01-05 14:01:40 +0000
committerMohamed Bassem <me@mbassem.com>2025-01-05 14:11:50 +0000
commitc98722c4781379c680d9ec9efc066e555bad318c (patch)
tree7e4918b96613c1c6b6998450e3c580d5392de48c /packages
parent88dc6f911bdae49ca72fc82d6da9dce84853bce0 (diff)
downloadkarakeep-c98722c4781379c680d9ec9efc066e555bad318c.tar.zst
refactor: Implement file streaming for asset route. Fixes #818
Diffstat (limited to 'packages')
-rw-r--r--packages/shared/assetdb.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/packages/shared/assetdb.ts b/packages/shared/assetdb.ts
index fb7d2461..2ef69279 100644
--- a/packages/shared/assetdb.ts
+++ b/packages/shared/assetdb.ts
@@ -123,6 +123,25 @@ export async function readAsset({
return { asset, metadata };
}
+export function createAssetReadStream({
+ userId,
+ assetId,
+ start,
+ end,
+}: {
+ userId: string;
+ assetId: string;
+ start?: number;
+ end?: number;
+}) {
+ const assetDir = getAssetDir(userId, assetId);
+
+ return fs.createReadStream(path.join(assetDir, "asset.bin"), {
+ start,
+ end,
+ });
+}
+
export async function readAssetMetadata({
userId,
assetId,