From e6486465decd612f7e437abe904960a47ff359ce Mon Sep 17 00:00:00 2001
From: kamtschatka <simon.schatka@gmx.at>
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 <me@mbassem.com>
---
 apps/web/components/dashboard/UploadDropzone.tsx | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

(limited to 'apps/web/components/dashboard/UploadDropzone.tsx')

diff --git a/apps/web/components/dashboard/UploadDropzone.tsx b/apps/web/components/dashboard/UploadDropzone.tsx
index 2807b892..05e8901e 100644
--- a/apps/web/components/dashboard/UploadDropzone.tsx
+++ b/apps/web/components/dashboard/UploadDropzone.tsx
@@ -8,6 +8,7 @@ import { TRPCClientError } from "@trpc/client";
 import DropZone from "react-dropzone";
 
 import { useCreateBookmarkWithPostHook } from "@hoarder/shared-react/hooks/bookmarks";
+import { BookmarkTypes } from "@hoarder/shared/types/bookmarks";
 import {
   zUploadErrorSchema,
   zUploadResponseSchema,
@@ -50,7 +51,7 @@ export function useUploadAsset() {
     onSuccess: async (resp) => {
       const assetType =
         resp.contentType === "application/pdf" ? "pdf" : "image";
-      return createBookmark({ ...resp, type: "asset", assetType });
+      return createBookmark({ ...resp, type: BookmarkTypes.ASSET, assetType });
     },
     onError: (error, req) => {
       const err = zUploadErrorSchema.parse(JSON.parse(error.message));
@@ -68,7 +69,7 @@ export function useUploadAsset() {
     onSuccess: async (resp) => {
       return Promise.all(
         resp.map((url) =>
-          createBookmark({ type: "link", url: url.toString() }),
+          createBookmark({ type: BookmarkTypes.LINK, url: url.toString() }),
         ),
       );
     },
-- 
cgit v1.2.3-70-g09d2

