aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/components/dashboard/bookmarks/UnknownCard.tsx
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-03-09 15:34:24 +0000
committerMohamed Bassem <me@mbassem.com>2025-03-09 21:38:51 +0000
commit82ca8e3a55f26a8709251f161224e92b93fc5828 (patch)
treedd42d6150e766fe4f51927044a966c6f496705ee /apps/web/components/dashboard/bookmarks/UnknownCard.tsx
parentdbe6c1de20bc38e54c848983d75c861be288dfe1 (diff)
downloadkarakeep-82ca8e3a55f26a8709251f161224e92b93fc5828.tar.zst
fix: Add error boundary around bookmark cards
Diffstat (limited to 'apps/web/components/dashboard/bookmarks/UnknownCard.tsx')
-rw-r--r--apps/web/components/dashboard/bookmarks/UnknownCard.tsx34
1 files changed, 34 insertions, 0 deletions
diff --git a/apps/web/components/dashboard/bookmarks/UnknownCard.tsx b/apps/web/components/dashboard/bookmarks/UnknownCard.tsx
new file mode 100644
index 00000000..970b5e30
--- /dev/null
+++ b/apps/web/components/dashboard/bookmarks/UnknownCard.tsx
@@ -0,0 +1,34 @@
+"use client";
+
+import { useTranslation } from "@/lib/i18n/client";
+import { AlertCircle } from "lucide-react";
+
+import type { ZBookmark } from "@hoarder/shared/types/bookmarks";
+
+import { BookmarkLayoutAdaptingCard } from "./BookmarkLayoutAdaptingCard";
+
+export default function UnknownCard({
+ bookmark,
+ className,
+}: {
+ bookmark: ZBookmark;
+ className?: string;
+}) {
+ const { t } = useTranslation();
+ return (
+ <BookmarkLayoutAdaptingCard
+ title={bookmark.title}
+ bookmark={bookmark}
+ className={className}
+ wrapTags={false}
+ image={(_layout) => (
+ <div className="flex size-full flex-1 flex-col items-center justify-center bg-red-50 dark:bg-red-950/10">
+ <AlertCircle className="mb-3 h-10 w-10 text-red-500" />
+ <h3 className="font-medium text-red-700 dark:text-red-400">
+ {t("common.something_went_wrong")}
+ </h3>
+ </div>
+ )}
+ />
+ );
+}