Files
ragflow/web/src/pages/datasets/dataset-card.tsx
chanx 0089e2b30c Fix: bug fixes and icon replacement #10703 (#10814)
### What problem does this PR solve?

Fix: bug fixes and icon replacement #10703

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
2025-10-27 19:02:18 +08:00

56 lines
1.7 KiB
TypeScript

import { HomeCard } from '@/components/home-card';
import { MoreButton } from '@/components/more-button';
import { SharedBadge } from '@/components/shared-badge';
import { Card, CardContent } from '@/components/ui/card';
import { useNavigatePage } from '@/hooks/logic-hooks/navigate-hooks';
import { IKnowledge } from '@/interfaces/database/knowledge';
import { t } from 'i18next';
import { ChevronRight } from 'lucide-react';
import { DatasetDropdown } from './dataset-dropdown';
import { useRenameDataset } from './use-rename-dataset';
export type DatasetCardProps = {
dataset: IKnowledge;
} & Pick<ReturnType<typeof useRenameDataset>, 'showDatasetRenameModal'>;
export function DatasetCard({
dataset,
showDatasetRenameModal,
}: DatasetCardProps) {
const { navigateToDataset } = useNavigatePage();
return (
<HomeCard
data={{
...dataset,
description: `${dataset.doc_num} ${t('knowledgeDetails.files')}`,
}}
moreDropdown={
<DatasetDropdown
showDatasetRenameModal={showDatasetRenameModal}
dataset={dataset}
>
<MoreButton></MoreButton>
</DatasetDropdown>
}
sharedBadge={<SharedBadge>{dataset.nickname}</SharedBadge>}
onClick={navigateToDataset(dataset.id)}
/>
);
}
export function SeeAllCard() {
const { navigateToDatasetList } = useNavigatePage();
return (
<Card
className="w-full flex-none h-full cursor-pointer"
onClick={navigateToDatasetList}
>
<CardContent className="p-2.5 pt-1 w-full h-full flex items-center justify-center gap-1.5 text-text-secondary">
See All <ChevronRight className="size-4" />
</CardContent>
</Card>
);
}