blob: e8a78029c46bdcb56a81daca278788d1828b5e66 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import {
BookmarkLinkArchivePreview,
BookmarkLinkBrowserPreview,
BookmarkLinkReaderPreview,
BookmarkLinkScreenshotPreview,
} from "@/components/bookmarks/BookmarkLinkPreview";
import { BookmarkTypes, ZBookmark } from "@karakeep/shared/types/bookmarks";
import { BookmarkLinkType } from "./BookmarkLinkTypeSelector";
interface BookmarkLinkViewProps {
bookmark: ZBookmark;
bookmarkPreviewType: BookmarkLinkType;
}
export default function BookmarkLinkView({
bookmark,
bookmarkPreviewType,
}: BookmarkLinkViewProps) {
if (bookmark.content.type !== BookmarkTypes.LINK) {
throw new Error("Wrong content type rendered");
}
switch (bookmarkPreviewType) {
case "browser":
return <BookmarkLinkBrowserPreview bookmark={bookmark} />;
case "reader":
return <BookmarkLinkReaderPreview bookmark={bookmark} />;
case "screenshot":
return <BookmarkLinkScreenshotPreview bookmark={bookmark} />;
case "archive":
return <BookmarkLinkArchivePreview bookmark={bookmark} />;
}
}
|