import React, { useState } from 'react' import { Card, ErrorState } from './ui' import type { ArticleDraft } from '@/lib/articlePublisher' import { ArticleFormButtons } from './ArticleFormButtons' import type { RelayPublishStatus } from '@/lib/publishResult' import { t } from '@/lib/i18n' import { ArticleFieldsLeft } from './ArticleEditorFormFieldsLeft' import { ArticleFieldsRight } from './ArticleEditorFormFieldsRight' import { ArticlePreviewModal } from './ArticlePreviewModal' interface ArticleEditorFormProps { draft: ArticleDraft onDraftChange: (draft: ArticleDraft) => void onSubmit: (e: React.FormEvent) => void loading: boolean error: string | null relayStatuses?: RelayPublishStatus[] onCancel?: () => void seriesOptions?: { id: string; title: string }[] | undefined onSelectSeries?: ((seriesId: string | undefined) => void) | undefined } function ErrorAlert({ error }: { error: string | null }): React.ReactElement | null { if (!error) { return null } return } function usePreviewModal(): { showPreview: boolean openPreview: () => void closePreview: () => void } { const [showPreview, setShowPreview] = useState(false) return { showPreview, openPreview: () => { setShowPreview(true) }, closePreview: () => { setShowPreview(false) }, } } export function ArticleEditorForm({ draft, onDraftChange, onSubmit, loading, error, relayStatuses, onCancel, seriesOptions, onSelectSeries, }: ArticleEditorFormProps): React.ReactElement { const { showPreview, openPreview, closePreview } = usePreviewModal() return ( <>

{t('article.editor.title')}

) }