'use client'; import { FileSpreadsheet, FileText, Presentation, X } from 'lucide-react'; import { Button } from '@/components/ui/button'; const FILE_ICONS: Record = { xlsx: FileSpreadsheet, docx: FileText, pptx: Presentation, }; interface FilePreviewProps { file: File; onRemove: () => void; } function formatFileSize(bytes: number): string { if (bytes < 1024) return `${bytes} B`; if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`; return `${(bytes / (1024 * 1024)).toFixed(1)} MB`; } export function FilePreview({ file, onRemove }: FilePreviewProps) { const ext = file.name.split('.').pop()?.toLowerCase() || ''; const FileIcon = FILE_ICONS[ext] || FileText; return (
{file.name} {formatFileSize(file.size)} ยท .{ext}
); }