import { useState } from 'react' import { Button, Card } from '@/components/ui' import { SponsoringForm } from '@/components/SponsoringForm' import { t } from '@/lib/i18n' import type { AuthorPresentationArticle } from '@/types/nostr' type SponsoringSummaryProps = { totalSponsoring: number author: AuthorPresentationArticle | null onSponsor: () => void } export function SponsoringSummary({ totalSponsoring, author, onSponsor }: SponsoringSummaryProps): React.ReactElement { const totalBTC = totalSponsoring / 100_000_000 const [showForm, setShowForm] = useState(false) return ( setShowForm(true)} /> setShowForm(false)} onSponsor={onSponsor} /> ) } function SponsoringSummaryHeader(params: { showSponsorButton: boolean; onSponsorClick: () => void }): React.ReactElement { return (

{t('author.sponsoring')}

{params.showSponsorButton && ( )}
) } function SponsoringTotals(params: { totalBTC: number; totalSats: number }): React.ReactElement { return (

{t('author.sponsoring.total', { amount: params.totalBTC.toFixed(6) })}

{t('author.sponsoring.sats', { amount: params.totalSats.toLocaleString() })}

) } function SponsoringFormPanel(params: { show: boolean author: AuthorPresentationArticle | null onClose: () => void onSponsor: () => void }): React.ReactElement | null { if (!params.show || !params.author) { return null } return (
{ params.onClose() params.onSponsor() }} onCancel={params.onClose} />
) }