| import { memo } from 'react'; | |
| import { useRecoilValue } from 'recoil'; | |
| import type { TConversation } from 'librechat-data-provider'; | |
| import { useChatContext } from '~/Providers'; | |
| import { useFileHandling } from '~/hooks'; | |
| import FileRow from './FileRow'; | |
| import store from '~/store'; | |
| function FileFormChat({ conversation }: { conversation: TConversation | null }) { | |
| const { files, setFiles, setFilesLoading } = useChatContext(); | |
| const chatDirection = useRecoilValue(store.chatDirection).toLowerCase(); | |
| const { endpoint: _endpoint } = conversation ?? { endpoint: null }; | |
| const { abortUpload } = useFileHandling(); | |
| const isRTL = chatDirection === 'rtl'; | |
| return ( | |
| <> | |
| <FileRow | |
| files={files} | |
| setFiles={setFiles} | |
| abortUpload={abortUpload} | |
| setFilesLoading={setFilesLoading} | |
| isRTL={isRTL} | |
| Wrapper={({ children }) => <div className="mx-2 mt-2 flex flex-wrap gap-2">{children}</div>} | |
| /> | |
| </> | |
| ); | |
| } | |
| export default memo(FileFormChat); | |