import NewDocumentLink from '@/components/new-document-link'; import { useTranslate } from '@/hooks/common-hooks'; import { useDownloadFile } from '@/hooks/file-manager-hooks'; import { IFile } from '@/interfaces/database/file-manager'; import { getExtension, isSupportedPreviewDocumentType, } from '@/utils/document-util'; import { DownloadOutlined, EditOutlined, EyeOutlined, LinkOutlined, } from '@ant-design/icons'; import { Button, Space, Tooltip } from 'antd'; import { FolderInput, Trash2 } from 'lucide-react'; import { useHandleDeleteFile } from '../hooks'; interface IProps { record: IFile; setCurrentRecord: (record: any) => void; showRenameModal: (record: IFile) => void; showMoveFileModal: (ids: string[]) => void; showConnectToKnowledgeModal: (record: IFile) => void; setSelectedRowKeys(keys: string[]): void; } const ActionCell = ({ record, setCurrentRecord, showRenameModal, showConnectToKnowledgeModal, setSelectedRowKeys, showMoveFileModal, }: IProps) => { const documentId = record.id; const beingUsed = false; const { t } = useTranslate('fileManager'); const { handleRemoveFile } = useHandleDeleteFile( [documentId], setSelectedRowKeys, ); const { downloadFile, loading } = useDownloadFile(); const extension = getExtension(record.name); const isKnowledgeBase = record.source_type === 'knowledgebase'; const onDownloadDocument = () => { downloadFile({ id: documentId, filename: record.name, }); }; const setRecord = () => { setCurrentRecord(record); }; const onShowRenameModal = () => { setRecord(); showRenameModal(record); }; const onShowConnectToKnowledgeModal = () => { showConnectToKnowledgeModal(record); }; const onShowMoveFileModal = () => { showMoveFileModal([documentId]); }; return ( {isKnowledgeBase || ( )} {isKnowledgeBase || ( )} {isKnowledgeBase || ( )} {isKnowledgeBase || ( )} {record.type !== 'folder' && ( )} {isSupportedPreviewDocumentType(extension) && ( )} ); }; export default ActionCell;