| import React from 'react'; |
| import { Button, TrashIcon } from '@librechat/client'; |
| import type { TFile } from 'librechat-data-provider'; |
|
|
| type FileListItemProps = { |
| file: TFile; |
| deleteFile: (id: string | undefined) => void; |
| width?: string; |
| }; |
|
|
| export default function FileListItem({ file, deleteFile, width = '400px' }: FileListItemProps) { |
| return ( |
| <div className="w-100 my-3 mr-2 flex cursor-pointer flex-row rounded-md border border-0 bg-white p-4 transition duration-300 ease-in-out hover:bg-slate-200"> |
| <div className="flex w-1/2 flex-col justify-around align-middle"> |
| <strong>{file.filename}</strong> |
| <p className="text-sm text-gray-500">{file.object}</p> |
| </div> |
| <div className="w-2/6 text-gray-500"> |
| <p>({file.bytes / 1000}KB)</p> |
| <p className="text-sm">{file.createdAt?.toString()}</p> |
| </div> |
| <div className="flex w-1/6 justify-around"> |
| <Button |
| className="my-0 ml-3 bg-transparent p-0 text-[#666666] hover:bg-slate-200" |
| onClick={() => deleteFile(file._id)} |
| > |
| <TrashIcon className="m-0 p-0" /> |
| </Button> |
| </div> |
| </div> |
| ); |
| } |
|
|