import { Modal } from './ui'
import type { ArticleDraft } from '@/lib/articlePublisher'
import { t } from '@/lib/i18n'
interface ArticlePreviewModalProps {
isOpen: boolean
onClose: () => void
draft: ArticleDraft
}
export function ArticlePreviewModal({ isOpen, onClose, draft }: ArticlePreviewModalProps): React.ReactElement {
return (
)
}
function ArticlePreviewContent({ draft }: { draft: ArticleDraft }): React.ReactElement {
return (
)
}
function ArticlePreviewHeader({ draft }: { draft: ArticleDraft }): React.ReactElement {
return (
{draft.title || t('article.preview.noTitle')}
{draft.category && (
{t(`category.${draft.category}`)}
)}
)
}
function ArticlePreviewBody({ draft }: { draft: ArticleDraft }): React.ReactElement {
return (
{draft.preview && (
{t('article.preview.previewLabel')}
{draft.preview}
)}
{draft.content && (
{t('article.preview.contentLabel')}
{draft.content}
)}
{(!draft.preview && !draft.content) && (
{t('article.preview.empty')}
)}
)
}
function ArticlePreviewMeta({ draft }: { draft: ArticleDraft }): React.ReactElement {
return (
{t('article.preview.zapAmount')}: {draft.zapAmount} sats
{draft.seriesId && (
{t('article.preview.series')}: {draft.seriesId}
)}
{draft.media && draft.media.length > 0 && (
{t('article.preview.media')}: {draft.media.length} {t('article.preview.mediaItems')}
)}
)
}