diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-09-06 06:24:05 +0000 |
|---|---|---|
| committer | Mohamed Bassem <me@mbassem.com> | 2025-09-06 06:25:15 +0000 |
| commit | 3760d23abc4d02eb2c3823b8aa322f53914fd9b6 (patch) | |
| tree | 1d720b1f1d1391317185b319d1fb1fba3f18a274 /packages/api/utils/upload.ts | |
| parent | fcfe6a53b49dc2fdff6abac876b41b52f1b0fed7 (diff) | |
| download | karakeep-3760d23abc4d02eb2c3823b8aa322f53914fd9b6.tar.zst | |
refactor: Extract quota logic into its own class
Diffstat (limited to 'packages/api/utils/upload.ts')
| -rw-r--r-- | packages/api/utils/upload.ts | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/packages/api/utils/upload.ts b/packages/api/utils/upload.ts index 6f18790b..a843e29c 100644 --- a/packages/api/utils/upload.ts +++ b/packages/api/utils/upload.ts @@ -5,6 +5,7 @@ import { Readable } from "stream"; import { pipeline } from "stream/promises"; import { assets, AssetTypes } from "@karakeep/db/schema"; +import { QuotaService, StorageQuotaError } from "@karakeep/shared-server"; import { newAssetId, saveAssetFromFile, @@ -12,10 +13,6 @@ import { } from "@karakeep/shared/assetdb"; import serverConfig from "@karakeep/shared/config"; import { AuthedContext } from "@karakeep/trpc"; -import { - checkStorageQuota, - StorageQuotaError, -} from "@karakeep/trpc/lib/storageQuota"; const MAX_UPLOAD_SIZE_BYTES = serverConfig.maxAssetSizeMb * 1024 * 1024; @@ -73,7 +70,11 @@ export async function uploadAsset( let quotaApproved; try { - quotaApproved = await checkStorageQuota(db, user.id, data.size); + quotaApproved = await QuotaService.checkStorageQuota( + db, + user.id, + data.size, + ); } catch (error) { if (error instanceof StorageQuotaError) { return { error: error.message, status: 403 }; |
