ragflow
/
web
/src
/pages
/add-knowledge
/components
/knowledge-file
/parsing-action-cell
/index.tsx
balibabu
feat: save the selected parser to the backend on the upload file page and upload document (#54)
f305776
| import showDeleteConfirm from '@/components/deleting-confirm'; | |
| import { IKnowledgeFile } from '@/interfaces/database/knowledge'; | |
| import { DeleteOutlined, EditOutlined, ToolOutlined } from '@ant-design/icons'; | |
| import { Button, Dropdown, MenuProps, Space, Tooltip } from 'antd'; | |
| import { useDispatch } from 'umi'; | |
| interface IProps { | |
| knowledgeBaseId: string; | |
| record: IKnowledgeFile; | |
| setDocumentAndParserId: () => void; | |
| } | |
| const ParsingActionCell = ({ | |
| knowledgeBaseId, | |
| record, | |
| setDocumentAndParserId, | |
| }: IProps) => { | |
| const dispatch = useDispatch(); | |
| const documentId = record.id; | |
| const removeDocument = () => { | |
| dispatch({ | |
| type: 'kFModel/document_rm', | |
| payload: { | |
| doc_id: documentId, | |
| kb_id: knowledgeBaseId, | |
| }, | |
| }); | |
| }; | |
| const onRmDocument = () => { | |
| showDeleteConfirm({ onOk: removeDocument }); | |
| }; | |
| const setCurrentRecord = () => { | |
| dispatch({ | |
| type: 'kFModel/setCurrentRecord', | |
| payload: record, | |
| }); | |
| }; | |
| const showSegmentSetModal = () => { | |
| dispatch({ | |
| type: 'kFModel/updateState', | |
| payload: { | |
| isShowSegmentSetModal: true, | |
| }, | |
| }); | |
| }; | |
| const showRenameModal = () => { | |
| setCurrentRecord(); | |
| dispatch({ | |
| type: 'kFModel/setIsShowRenameModal', | |
| payload: true, | |
| }); | |
| }; | |
| const onRename = () => {}; | |
| const chunkItems: MenuProps['items'] = [ | |
| { | |
| key: '1', | |
| label: ( | |
| <div> | |
| <Button type="link" onClick={showSegmentSetModal}> | |
| 分段设置 | |
| </Button> | |
| </div> | |
| ), | |
| }, | |
| ]; | |
| return ( | |
| <Space size={'middle'}> | |
| <Dropdown menu={{ items: chunkItems }} trigger={['click']}> | |
| <ToolOutlined size={20} onClick={setDocumentAndParserId} /> | |
| </Dropdown> | |
| <Tooltip title="Rename"> | |
| <EditOutlined size={20} onClick={showRenameModal} /> | |
| </Tooltip> | |
| <DeleteOutlined size={20} onClick={onRmDocument} /> | |
| </Space> | |
| ); | |
| }; | |
| export default ParsingActionCell; | |