aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/components/dashboard/preview
diff options
context:
space:
mode:
Diffstat (limited to 'apps/web/components/dashboard/preview')
-rw-r--r--apps/web/components/dashboard/preview/AssetContentSection.tsx4
-rw-r--r--apps/web/components/dashboard/preview/BookmarkPreview.tsx12
-rw-r--r--apps/web/components/dashboard/preview/EditableTitle.tsx8
-rw-r--r--apps/web/components/dashboard/preview/LinkContentSection.tsx8
-rw-r--r--apps/web/components/dashboard/preview/TextContentSection.tsx4
5 files changed, 20 insertions, 16 deletions
diff --git a/apps/web/components/dashboard/preview/AssetContentSection.tsx b/apps/web/components/dashboard/preview/AssetContentSection.tsx
index 4d6bb976..03ab8a43 100644
--- a/apps/web/components/dashboard/preview/AssetContentSection.tsx
+++ b/apps/web/components/dashboard/preview/AssetContentSection.tsx
@@ -1,10 +1,10 @@
import Image from "next/image";
import Link from "next/link";
-import type { ZBookmark } from "@hoarder/shared/types/bookmarks";
+import { BookmarkTypes, ZBookmark } from "@hoarder/shared/types/bookmarks";
export function AssetContentSection({ bookmark }: { bookmark: ZBookmark }) {
- if (bookmark.content.type != "asset") {
+ if (bookmark.content.type != BookmarkTypes.ASSET) {
throw new Error("Invalid content type");
}
diff --git a/apps/web/components/dashboard/preview/BookmarkPreview.tsx b/apps/web/components/dashboard/preview/BookmarkPreview.tsx
index 6a1068af..01e57e05 100644
--- a/apps/web/components/dashboard/preview/BookmarkPreview.tsx
+++ b/apps/web/components/dashboard/preview/BookmarkPreview.tsx
@@ -17,11 +17,11 @@ import dayjs from "dayjs";
import relativeTime from "dayjs/plugin/relativeTime";
import { CalendarDays, ExternalLink } from "lucide-react";
-import type { ZBookmark } from "@hoarder/shared/types/bookmarks";
import {
isBookmarkStillCrawling,
isBookmarkStillLoading,
} from "@hoarder/shared-react/utils/bookmarkUtils";
+import { BookmarkTypes, ZBookmark } from "@hoarder/shared/types/bookmarks";
import ActionBar from "./ActionBar";
import { AssetContentSection } from "./AssetContentSection";
@@ -66,10 +66,10 @@ function CreationTime({ createdAt }: { createdAt: Date }) {
}
function getSourceUrl(bookmark: ZBookmark) {
- if (bookmark.content.type === "link") {
+ if (bookmark.content.type === BookmarkTypes.LINK) {
return bookmark.content.url;
}
- if (bookmark.content.type === "asset") {
+ if (bookmark.content.type === BookmarkTypes.ASSET) {
return bookmark.content.sourceUrl;
}
return null;
@@ -108,15 +108,15 @@ export default function BookmarkPreview({
let content;
switch (bookmark.content.type) {
- case "link": {
+ case BookmarkTypes.LINK: {
content = <LinkContentSection bookmark={bookmark} />;
break;
}
- case "text": {
+ case BookmarkTypes.TEXT: {
content = <TextContentSection bookmark={bookmark} />;
break;
}
- case "asset": {
+ case BookmarkTypes.ASSET: {
content = <AssetContentSection bookmark={bookmark} />;
break;
}
diff --git a/apps/web/components/dashboard/preview/EditableTitle.tsx b/apps/web/components/dashboard/preview/EditableTitle.tsx
index 237ad108..03b95e74 100644
--- a/apps/web/components/dashboard/preview/EditableTitle.tsx
+++ b/apps/web/components/dashboard/preview/EditableTitle.tsx
@@ -1,7 +1,7 @@
import { toast } from "@/components/ui/use-toast";
import { useUpdateBookmark } from "@hoarder/shared-react/hooks/bookmarks";
-import { ZBookmark } from "@hoarder/shared/types/bookmarks";
+import { BookmarkTypes, ZBookmark } from "@hoarder/shared/types/bookmarks";
import { EditableText } from "../EditableText";
@@ -16,13 +16,13 @@ export function EditableTitle({ bookmark }: { bookmark: ZBookmark }) {
let title: string | null = null;
switch (bookmark.content.type) {
- case "link":
+ case BookmarkTypes.LINK:
title = bookmark.content.title ?? bookmark.content.url;
break;
- case "text":
+ case BookmarkTypes.TEXT:
title = null;
break;
- case "asset":
+ case BookmarkTypes.ASSET:
title = bookmark.content.fileName ?? null;
break;
}
diff --git a/apps/web/components/dashboard/preview/LinkContentSection.tsx b/apps/web/components/dashboard/preview/LinkContentSection.tsx
index 3aeacdcd..f2069821 100644
--- a/apps/web/components/dashboard/preview/LinkContentSection.tsx
+++ b/apps/web/components/dashboard/preview/LinkContentSection.tsx
@@ -10,7 +10,11 @@ import {
} from "@/components/ui/select";
import { ScrollArea } from "@radix-ui/react-scroll-area";
-import { ZBookmark, ZBookmarkedLink } from "@hoarder/shared/types/bookmarks";
+import {
+ BookmarkTypes,
+ ZBookmark,
+ ZBookmarkedLink,
+} from "@hoarder/shared/types/bookmarks";
function FullPageArchiveSection({ link }: { link: ZBookmarkedLink }) {
return (
@@ -63,7 +67,7 @@ export default function LinkContentSection({
}) {
const [section, setSection] = useState<string>("cached");
- if (bookmark.content.type != "link") {
+ if (bookmark.content.type != BookmarkTypes.LINK) {
throw new Error("Invalid content type");
}
diff --git a/apps/web/components/dashboard/preview/TextContentSection.tsx b/apps/web/components/dashboard/preview/TextContentSection.tsx
index 2df1e964..76cb23ea 100644
--- a/apps/web/components/dashboard/preview/TextContentSection.tsx
+++ b/apps/web/components/dashboard/preview/TextContentSection.tsx
@@ -1,10 +1,10 @@
import { MarkdownComponent } from "@/components/ui/markdown-component";
import { ScrollArea } from "@radix-ui/react-scroll-area";
-import type { ZBookmark } from "@hoarder/shared/types/bookmarks";
+import { BookmarkTypes, ZBookmark } from "@hoarder/shared/types/bookmarks";
export function TextContentSection({ bookmark }: { bookmark: ZBookmark }) {
- if (bookmark.content.type != "text") {
+ if (bookmark.content.type != BookmarkTypes.TEXT) {
throw new Error("Invalid content type");
}
return (