From 5bdb2d944a08f63772497e203f47533ffb640d82 Mon Sep 17 00:00:00 2001 From: Mohamed Bassem Date: Sun, 13 Apr 2025 18:29:14 +0000 Subject: fix: Dont download html content by default in the bookmark grid. Fixes #1198 --- .../dashboard/preview/LinkContentSection.tsx | 36 +++++++++++++--------- 1 file changed, 22 insertions(+), 14 deletions(-) (limited to 'apps/web/components/dashboard/preview') diff --git a/apps/web/components/dashboard/preview/LinkContentSection.tsx b/apps/web/components/dashboard/preview/LinkContentSection.tsx index f37f110e..dd419fcd 100644 --- a/apps/web/components/dashboard/preview/LinkContentSection.tsx +++ b/apps/web/components/dashboard/preview/LinkContentSection.tsx @@ -1,6 +1,7 @@ import { useState } from "react"; import Image from "next/image"; import BookmarkHTMLHighlighter from "@/components/dashboard/preview/BookmarkHtmlHighlighter"; +import { FullPageSpinner } from "@/components/ui/full-page-spinner"; import { Select, SelectContent, @@ -52,16 +53,23 @@ function ScreenshotSection({ link }: { link: ZBookmarkedLink }) { ); } -function CachedContentSection({ - bookmarkId, - link, -}: { - bookmarkId: string; - link: ZBookmarkedLink; -}) { - const { data } = api.highlights.getForBookmark.useQuery({ +function CachedContentSection({ bookmarkId }: { bookmarkId: string }) { + const { data: highlights } = api.highlights.getForBookmark.useQuery({ bookmarkId, }); + const { data: cachedContent, isPending: isCachedContentLoading } = + api.bookmarks.getBookmark.useQuery( + { + bookmarkId, + includeContent: true, + }, + { + select: (data) => + data.content.type == BookmarkTypes.LINK + ? data.content.htmlContent + : null, + }, + ); const { mutate: createHighlight } = useCreateHighlight({ onSuccess: () => { @@ -106,16 +114,18 @@ function CachedContentSection({ }); let content; - if (!link.htmlContent) { + if (isCachedContentLoading) { + content = ; + } else if (!cachedContent) { content = (
Failed to fetch link content ...
); } else { content = ( deleteHighlight({ highlightId: h.id, @@ -171,9 +181,7 @@ export default function LinkContentSection({ let content; if (section === "cached") { - content = ( - - ); + content = ; } else if (section === "archive") { content = ; } else if (section === "video") { -- cgit v1.2.3-70-g09d2