import type { Article } from '@/types/nostr' import { Button } from './ui' import { ArticlePages } from './ArticlePages' import { ReadingMode } from './ReadingMode' import { ShareButtons } from './ShareButtons' import { ArticleSuggestions } from './ArticleSuggestions' import { findSimilarArticles, findAuthorArticles } from '@/lib/articleSuggestions' interface ArticlePreviewProps { article: Article loading: boolean onUnlock: () => void allArticles?: Article[] unlockedArticles?: Set } function PaidArticleContent({ article, onUnlock, allArticles, unlockedArticles, }: { article: Article onUnlock: () => void allArticles: Article[] unlockedArticles: Set }): React.ReactElement { const similarArticles = findSimilarArticles(article, allArticles) const authorArticles = findAuthorArticles(article, allArticles) return (

{article.preview}

{article.content}

{article.pages && article.pages.length > 0 && }
) } export function ArticlePreview({ article, loading, onUnlock, allArticles = [], unlockedArticles = new Set(), }: ArticlePreviewProps): React.ReactElement { if (article.paid) { return ( ) } return (

{article.preview}

Contenu complet disponible après un zap de {article.zapAmount} sats

) }