import React, { useState } from 'react'; import { useProfile } from "nostr-react"; import { nip19, } from "nostr-tools"; import { Card, SmallCardContent, } from "@/components/ui/card" import Link from 'next/link'; import Image from 'next/image'; import { extractDimensions } from '@/utils/utils'; interface QuickViewKind20NoteCardProps { pubkey: string; text: string; image: string; eventId: string; tags: string[][]; event: any; linkToNote: boolean; } const QuickViewKind20NoteCard: React.FC = ({ pubkey, text, image, eventId, tags, event, linkToNote }) => { const {data, isLoading} = useProfile({ pubkey, }); const [imageError, setImageError] = useState(false); if (!image || !image.startsWith("http") || imageError) return null; text = text.replaceAll('\n', ' '); const encodedNoteId = nip19.noteEncode(event.id) const { width, height } = extractDimensions(event); const card = (
{text} setImageError(true)} />
); return ( <> {linkToNote ? ( {card} ) : ( card )} ); } export default QuickViewKind20NoteCard;