diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-12-24 13:58:37 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-24 11:58:37 +0000 |
| commit | 013ca67c151b51575151424084f6358522b83579 (patch) | |
| tree | c7c57c518b6c57d6cbab9d0620cc027d51fa06e0 /packages/trpc/routers/bookmarks.ts | |
| parent | 314c363e5ca69a50626650ade8968feec583e5ce (diff) | |
| download | karakeep-013ca67c151b51575151424084f6358522b83579.tar.zst | |
refactor: move assets to their own model (#2301)
* refactor: move assets to their own model
* move asset privacy checks to the model
Diffstat (limited to 'packages/trpc/routers/bookmarks.ts')
| -rw-r--r-- | packages/trpc/routers/bookmarks.ts | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/packages/trpc/routers/bookmarks.ts b/packages/trpc/routers/bookmarks.ts index 65d401e2..a9d0df38 100644 --- a/packages/trpc/routers/bookmarks.ts +++ b/packages/trpc/routers/bookmarks.ts @@ -48,9 +48,9 @@ import { normalizeTagName } from "@karakeep/shared/utils/tag"; import type { AuthedContext } from "../index"; import { authedProcedure, createRateLimitMiddleware, router } from "../index"; import { getBookmarkIdsFromMatcher } from "../lib/search"; +import { Asset } from "../models/assets"; import { BareBookmark, Bookmark } from "../models/bookmarks"; import { ImportSession } from "../models/importSessions"; -import { ensureAssetOwnership } from "./assets"; export const ensureBookmarkOwnership = experimental_trpcMiddleware<{ ctx: AuthedContext; @@ -178,10 +178,7 @@ export const bookmarksAppRouter = router({ .returning() )[0]; if (input.precrawledArchiveId) { - await ensureAssetOwnership({ - ctx, - assetId: input.precrawledArchiveId, - }); + await Asset.ensureOwnership(ctx, input.precrawledArchiveId); await tx .update(assets) .set({ @@ -232,13 +229,13 @@ export const bookmarksAppRouter = router({ sourceUrl: null, }) .returning(); - const uploadedAsset = await ensureAssetOwnership({ - ctx, - assetId: input.assetId, - }); + const uploadedAsset = await Asset.fromId(ctx, input.assetId); + uploadedAsset.ensureOwnership(); if ( - !uploadedAsset.contentType || - !SUPPORTED_BOOKMARK_ASSET_TYPES.has(uploadedAsset.contentType) + !uploadedAsset.asset.contentType || + !SUPPORTED_BOOKMARK_ASSET_TYPES.has( + uploadedAsset.asset.contentType, + ) ) { throw new TRPCError({ code: "BAD_REQUEST", |
