feat: Move files in file manager #1826 (#1837)

### What problem does this PR solve?

feat: Move files in file manager #1826

### Type of change

- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu
2024-08-07 10:12:11 +08:00
committed by GitHub
parent 4c2906d6fd
commit c55e9d16da
14 changed files with 292 additions and 24 deletions

View File

@@ -17,13 +17,14 @@ import {
MenuProps,
Space,
} from 'antd';
import { useMemo } from 'react';
import { useCallback, useMemo } from 'react';
import {
useHandleBreadcrumbClick,
useHandleDeleteFile,
useSelectBreadcrumbItems,
} from './hooks';
import SvgIcon from '@/components/svg-icon';
import {
IListResult,
useFetchParentFolderList,
@@ -36,6 +37,7 @@ interface IProps
showFolderCreateModal: () => void;
showFileUploadModal: () => void;
setSelectedRowKeys: (keys: string[]) => void;
showMoveFileModal: (ids: string[]) => void;
}
const FileToolbar = ({
@@ -45,6 +47,7 @@ const FileToolbar = ({
setSelectedRowKeys,
searchString,
handleInputChange,
showMoveFileModal,
}: IProps) => {
const { t } = useTranslate('knowledgeDetails');
const breadcrumbItems = useSelectBreadcrumbItems();
@@ -111,6 +114,10 @@ const FileToolbar = ({
setSelectedRowKeys,
);
const handleShowMoveFileModal = useCallback(() => {
showMoveFileModal(selectedRowKeys);
}, [selectedRowKeys, showMoveFileModal]);
const disabled = selectedRowKeys.length === 0;
const items: MenuProps['items'] = useMemo(() => {
@@ -127,8 +134,20 @@ const FileToolbar = ({
</Flex>
),
},
{
key: '5',
onClick: handleShowMoveFileModal,
label: (
<Flex gap={10}>
<span className={styles.deleteIconWrapper}>
<SvgIcon name={`move`} width={18}></SvgIcon>
</span>
<b>{t('move', { keyPrefix: 'common' })}</b>
</Flex>
),
},
];
}, [handleRemoveFile, t]);
}, [handleShowMoveFileModal, t, handleRemoveFile]);
return (
<div className={styles.filter}>