| import type { Row } from '@tanstack/react-table'; |
| import type { TFile } from 'librechat-data-provider'; |
| import ImagePreview from '~/components/Chat/Input/Files/ImagePreview'; |
| import FilePreview from '~/components/Chat/Input/Files/FilePreview'; |
| import { getFileType } from '~/utils'; |
|
|
| export default function PanelFileCell({ row }: { row: Row<TFile | undefined> }) { |
| const file = row.original; |
| return ( |
| <div className="flex w-full items-center gap-2"> |
| {file?.type?.startsWith('image') === true ? ( |
| <ImagePreview |
| url={file.filepath} |
| className="h-10 w-10 flex-shrink-0" |
| source={file.source} |
| alt={file.filename} |
| /> |
| ) : ( |
| <FilePreview fileType={getFileType(file?.type)} file={file} /> |
| )} |
| <div className="min-w-0 flex-1 overflow-hidden"> |
| <span className="block w-full overflow-hidden truncate text-ellipsis whitespace-nowrap text-xs"> |
| {file?.filename} |
| </span> |
| </div> |
| </div> |
| ); |
| } |
|
|