import { FileIcon } from '@/components/icons/FileIcon' import clsx from 'clsx' type Props = { file: { name: string } } export const FilePreview = (props: Props) => { const fileColor = getFileAssociatedColor(props.file) return (
{props.file.name} {formatFileExtensionHumanReadable(props.file)}
) } const formatFileExtensionHumanReadable = (file: { name: string }) => { const extension = file.name.split('.').pop() switch (extension) { case 'pdf': return 'PDF' case 'doc': case 'docx': return 'Word' case 'xls': case 'xlsx': case 'csv': return 'Sheet' case 'json': return 'JSON' case 'md': return 'Markdown' default: return 'DOCUMENT' } } const getFileAssociatedColor = (file: { name: string }): 'pink' | 'blue' | 'green' | 'gray' | 'orange' => { const extension = file.name.split('.').pop() if (!extension) return 'gray' switch (extension) { case 'pdf': return 'pink' case 'doc': case 'docx': return 'blue' case 'xls': case 'xlsx': case 'csv': return 'green' case 'json': return 'orange' default: return 'gray' } }