From e6486465decd612f7e437abe904960a47ff359ce Mon Sep 17 00:00:00 2001 From: kamtschatka Date: Mon, 1 Jul 2024 13:03:53 +0200 Subject: refactor: added the bookmark type to the database (#256) * refactoring asset types Extracted out functions to silently delete assets and to update them after crawling Generalized the mapping of assets to bookmark fields to make extending them easier * Added the bookmark type to the database Introduced an enum to have better type safety cleaned up the code and based some code on the type directly * add BookmarkType.UNKNWON * lint and remove unused function --------- Co-authored-by: MohamedBassem --- packages/db/schema.ts | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'packages/db/schema.ts') diff --git a/packages/db/schema.ts b/packages/db/schema.ts index 63d23782..c3e8e136 100644 --- a/packages/db/schema.ts +++ b/packages/db/schema.ts @@ -11,6 +11,8 @@ import { unique, } from "drizzle-orm/sqlite-core"; +import { BookmarkTypes } from "@hoarder/shared/types/bookmarks"; + function createdAtField() { return integer("createdAt", { mode: "timestamp" }) .notNull() @@ -117,6 +119,9 @@ export const bookmarks = sqliteTable( enum: ["pending", "failure", "success"], }).default("pending"), note: text("note"), + type: text("type", { + enum: [BookmarkTypes.LINK, BookmarkTypes.TEXT, BookmarkTypes.ASSET], + }).notNull(), }, (b) => ({ userIdIdx: index("bookmarks_userId_idx").on(b.userId), -- cgit v1.2.3-70-g09d2