import ListFilterBar from '@/components/list-filter-bar'; import { RenameDialog } from '@/components/rename-dialog'; import { Button } from '@/components/ui/button'; import { RAGFlowPagination } from '@/components/ui/ragflow-pagination'; import { useFetchNextKnowledgeListByPage } from '@/hooks/use-knowledge-request'; import { pick } from 'lodash'; import { Plus } from 'lucide-react'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { DatasetCard } from './dataset-card'; import { DatasetCreatingDialog } from './dataset-creating-dialog'; import { useSaveKnowledge } from './hooks'; import { useRenameDataset } from './use-rename-dataset'; import { useSelectOwners } from './use-select-owners'; export default function Datasets() { const { t } = useTranslation(); const { visible, hideModal, showModal, onCreateOk, loading: creatingLoading, } = useSaveKnowledge(); const { kbs, total, pagination, setPagination, handleInputChange, searchString, filterValue, handleFilterSubmit, } = useFetchNextKnowledgeListByPage(); const owners = useSelectOwners(); const { datasetRenameLoading, initialDatasetName, onDatasetRenameOk, datasetRenameVisible, hideDatasetRenameModal, showDatasetRenameModal, } = useRenameDataset(); const handlePageChange = useCallback( (page: number, pageSize?: number) => { setPagination({ page, pageSize }); }, [setPagination], ); return (
{kbs.map((dataset) => { return ( ); })}
{visible && ( )} {datasetRenameVisible && ( )}
); }