"use client"; import Image from "next/image"; import { isBookmarkStillTagging } from "@/lib/bookmarkUtils"; import { api } from "@/lib/trpc"; import { cn } from "@/lib/utils"; import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; import BookmarkActionBar from "./BookmarkActionBar"; import TagList from "./TagList"; export default function AssetCard({ bookmark: initialData, className, }: { bookmark: ZBookmark; className?: string; }) { const { data: bookmark } = api.bookmarks.getBookmark.useQuery( { bookmarkId: initialData.id, }, { initialData, refetchInterval: (query) => { const data = query.state.data; if (!data) { return false; } if (isBookmarkStillTagging(data)) { return 1000; } return false; }, }, ); const bookmarkedAsset = bookmark.content; if (bookmarkedAsset.type != "asset") { throw new Error("Unexpected bookmark type"); } return (