aboutsummaryrefslogtreecommitdiffstats
path: root/packages/trpc/routers/bookmarks.ts
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-12-24 13:58:37 +0200
committerGitHub <noreply@github.com>2025-12-24 11:58:37 +0000
commit013ca67c151b51575151424084f6358522b83579 (patch)
treec7c57c518b6c57d6cbab9d0620cc027d51fa06e0 /packages/trpc/routers/bookmarks.ts
parent314c363e5ca69a50626650ade8968feec583e5ce (diff)
downloadkarakeep-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.ts19
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",