diff options
| author | xuatz <xzlow10@gmail.com> | 2025-11-03 04:32:18 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-02 19:32:18 +0000 |
| commit | 33f407797213c56dd2f13e98228a5305efdf90fd (patch) | |
| tree | 149f477c1ab61b46bb0d9cc49c656a03b1c56f64 /apps/mobile/components/bookmarks/BookmarkCard.tsx | |
| parent | b63a49fc3980296c6a6ea6ac0624142e8af94d52 (diff) | |
| download | karakeep-33f407797213c56dd2f13e98228a5305efdf90fd.tar.zst | |
feat: display notes on bookmark card (#2083)
* feat: display notes on bookmark card
* apply styling
* include mobile impl
* apply pr comments
* add display options menu into PR
* put it under app setting
* cleanup
* address pr comments
* change the default for show notes to false
* make the in-card note font lighter
---------
Co-authored-by: Mohamed Bassem <me@mbassem.com>
Diffstat (limited to 'apps/mobile/components/bookmarks/BookmarkCard.tsx')
| -rw-r--r-- | apps/mobile/components/bookmarks/BookmarkCard.tsx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/apps/mobile/components/bookmarks/BookmarkCard.tsx b/apps/mobile/components/bookmarks/BookmarkCard.tsx index 62e74e97..98d8d3e2 100644 --- a/apps/mobile/components/bookmarks/BookmarkCard.tsx +++ b/apps/mobile/components/bookmarks/BookmarkCard.tsx @@ -1,4 +1,3 @@ -import React from "react"; import { ActivityIndicator, Alert, @@ -37,6 +36,7 @@ import { Skeleton } from "../ui/Skeleton"; import { useToast } from "../ui/Toast"; import BookmarkAssetImage from "./BookmarkAssetImage"; import BookmarkTextMarkdown from "./BookmarkTextMarkdown"; +import { NotePreview } from "./NotePreview"; import TagPill from "./TagPill"; function ActionBar({ bookmark }: { bookmark: ZBookmark }) { @@ -285,6 +285,7 @@ function LinkCard({ throw new Error("Wrong content type rendered"); } + const note = settings.showNotes ? bookmark.note?.trim() : undefined; const url = bookmark.content.url; const parsedUrl = new URL(url); @@ -329,6 +330,7 @@ function LinkCard({ > {bookmark.title ?? bookmark.content.title ?? parsedUrl.host} </Text> + {note && <NotePreview note={note} bookmarkId={bookmark.id} />} <TagList bookmark={bookmark} /> <Divider orientation="vertical" className="mt-2 h-0.5 w-full" /> <View className="mt-2 flex flex-row justify-between px-2 pb-2"> @@ -347,9 +349,11 @@ function TextCard({ bookmark: ZBookmark; onOpenBookmark: () => void; }) { + const { settings } = useAppSettings(); if (bookmark.content.type !== BookmarkTypes.TEXT) { throw new Error("Wrong content type rendered"); } + const note = settings.showNotes ? bookmark.note?.trim() : undefined; const content = bookmark.content.text; return ( <View className="flex max-h-96 gap-2 p-2"> @@ -365,6 +369,7 @@ function TextCard({ <BookmarkTextMarkdown text={content} /> </Pressable> </View> + {note && <NotePreview note={note} bookmarkId={bookmark.id} />} <TagList bookmark={bookmark} /> <Divider orientation="vertical" className="mt-2 h-0.5 w-full" /> <View className="flex flex-row justify-between p-2"> @@ -382,9 +387,11 @@ function AssetCard({ bookmark: ZBookmark; onOpenBookmark: () => void; }) { + const { settings } = useAppSettings(); if (bookmark.content.type !== BookmarkTypes.ASSET) { throw new Error("Wrong content type rendered"); } + const note = settings.showNotes ? bookmark.note?.trim() : undefined; const title = bookmark.title ?? bookmark.content.fileName; const assetImage = @@ -405,6 +412,7 @@ function AssetCard({ <Text className="line-clamp-2 text-xl font-bold">{title}</Text> )} </Pressable> + {note && <NotePreview note={note} bookmarkId={bookmark.id} />} <TagList bookmark={bookmark} /> <Divider orientation="vertical" className="mt-2 h-0.5 w-full" /> <View className="mt-2 flex flex-row justify-between px-2 pb-2"> |
