From 3208dda3848ad739f54cebf44c423e2b68e85b2d Mon Sep 17 00:00:00 2001 From: MohamedBassem Date: Wed, 28 Feb 2024 20:45:28 +0000 Subject: feature: Add support for storing and previewing raw notes --- .../bookmarks/components/BookmarkOptions.tsx | 68 +++++++++++++++------- 1 file changed, 47 insertions(+), 21 deletions(-) (limited to 'packages/web/app/dashboard/bookmarks/components/BookmarkOptions.tsx') diff --git a/packages/web/app/dashboard/bookmarks/components/BookmarkOptions.tsx b/packages/web/app/dashboard/bookmarks/components/BookmarkOptions.tsx index b8f6d8f2..866a4cbd 100644 --- a/packages/web/app/dashboard/bookmarks/components/BookmarkOptions.tsx +++ b/packages/web/app/dashboard/bookmarks/components/BookmarkOptions.tsx @@ -2,7 +2,7 @@ import { useToast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; -import { ZBookmark } from "@/lib/types/api/bookmarks"; +import { ZBookmark, ZBookmarkedLink } from "@/lib/types/api/bookmarks"; import { Button } from "@/components/ui/button"; import { DropdownMenu, @@ -14,12 +14,15 @@ import { Archive, Link, MoreHorizontal, + Pencil, RotateCw, Star, Tags, Trash2, } from "lucide-react"; import { useTagModel } from "./TagModal"; +import { useState } from "react"; +import { BookmarkedTextEditor } from "./BookmarkedTextEditor"; export default function BookmarkOptions({ bookmark }: { bookmark: ZBookmark }) { const { toast } = useToast(); @@ -27,6 +30,8 @@ export default function BookmarkOptions({ bookmark }: { bookmark: ZBookmark }) { const [_, setTagModalIsOpen, tagModal] = useTagModel(bookmark); + const [isTextEditorOpen, setTextEditorOpen] = useState(false); + const invalidateBookmarksCache = api.useUtils().bookmarks.invalidate; const onError = () => { @@ -72,13 +77,27 @@ export default function BookmarkOptions({ bookmark }: { bookmark: ZBookmark }) { return ( <> {tagModal} + - + {bookmark.content.type === "text" && ( + setTextEditorOpen(true)}> + + Edit + + )} updateBookmarkMutator.mutate({ @@ -101,29 +120,36 @@ export default function BookmarkOptions({ bookmark }: { bookmark: ZBookmark }) { {bookmark.archived ? "Un-archive" : "Archive"} - { - navigator.clipboard.writeText(bookmark.content.url); - toast({ - description: "Link was added to your clipboard!", - }); - }} - > - - Copy Link - + {bookmark.content.type === "link" && ( + { + navigator.clipboard.writeText( + (bookmark.content as ZBookmarkedLink).url, + ); + toast({ + description: "Link was added to your clipboard!", + }); + }} + > + + Copy Link + + )} setTagModalIsOpen(true)}> Edit Tags - - crawlBookmarkMutator.mutate({ bookmarkId: bookmark.id }) - } - > - - Refresh - + + {bookmark.content.type === "link" && ( + + crawlBookmarkMutator.mutate({ bookmarkId: bookmark.id }) + } + > + + Refresh + + )} -- cgit v1.2.3-70-g09d2