diff options
| author | Rodrigo Santos <rr.santos1232@gmail.com> | 2025-07-13 23:45:06 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-13 23:45:06 +0100 |
| commit | ecb13cec5d5c646308b34c714401a716f3cdf199 (patch) | |
| tree | bfa3d2aa25778a87c1bf3884ab5150ff075e9338 /apps/web/components/dashboard/UploadDropzone.tsx | |
| parent | 0addc7bc329671460509d39a841293a321971584 (diff) | |
| download | karakeep-ecb13cec5d5c646308b34c714401a716f3cdf199.tar.zst | |
feat: markdown file upload support (#1647) (#1672)
* feat: Add support for uploading Markdown (.md) files
* add: markdown to supported bookmark assets
* revert the changes in the assetdb
---------
Co-authored-by: Mohamed Bassem <me@mbassem.com>
Diffstat (limited to 'apps/web/components/dashboard/UploadDropzone.tsx')
| -rw-r--r-- | apps/web/components/dashboard/UploadDropzone.tsx | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/apps/web/components/dashboard/UploadDropzone.tsx b/apps/web/components/dashboard/UploadDropzone.tsx index df7bae0a..2bac005e 100644 --- a/apps/web/components/dashboard/UploadDropzone.tsx +++ b/apps/web/components/dashboard/UploadDropzone.tsx @@ -45,8 +45,25 @@ export function useUploadAsset() { }); return useCallback( - (file: File) => { - return runUploadAsset(file); + async (file: File) => { + // Handle markdown files as text bookmarks + if (file.type === "text/markdown" || file.name.endsWith(".md")) { + try { + const content = await file.text(); + await createBookmark({ + type: BookmarkTypes.TEXT, + text: content, + title: file.name.replace(/\.md$/i, ""), // Remove .md extension from title + }); + } catch { + toast({ + description: `${file.name}: Failed to read markdown file`, + variant: "destructive", + }); + } + } else { + return runUploadAsset(file); + } }, [runUploadAsset], ); @@ -134,7 +151,7 @@ export default function UploadDropzone({ </div> ) : ( <p className="text-2xl font-bold text-gray-700"> - Drop Your Image / Bookmark file + Drop Your Image / PDF / Markdown file </p> )} </div> |
