import React from 'react'; import { FileText, Trash2, CheckCircle, AlertCircle } from 'lucide-react'; import type { Document } from '../../types'; import { useApp } from '../../context/AppContext'; interface DocumentCardProps { document: Document; } export const DocumentCard: React.FC = ({ document }) => { const { state, dispatch, handleDeleteDocument } = useApp(); const isSelected = state.selectedDocuments.includes(document.id); const handleToggle = () => { dispatch({ type: 'TOGGLE_DOCUMENT_SELECTION', payload: document.id }); }; const handleDelete = async (e: React.MouseEvent) => { e.stopPropagation(); await handleDeleteDocument(document.id); }; const formatDate = (dateString: string) => { const date = new Date(dateString); return date.toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric', }); }; return (
{isSelected ? ( ) : ( )}

{document.filename}

{formatDate(document.uploadDate)} {document.chunkCount} chunks
{document.status !== 'ready' && (
{document.status === 'processing' ? ( <> Processing... ) : ( <> Error processing )}
)}
); };