mirror of
https://github.com/infiniflow/ragflow.git
synced 2026-08-12 03:33:33 +08:00
Feat: Render the skills list using a tree view. (#17115)
### Summary Feat: Render the skills list using a tree view.
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
import message from '@/components/ui/message';
|
||||
import {
|
||||
DatasetSkillPage,
|
||||
DatasetSkillTree,
|
||||
} from '@/interfaces/database/dataset-skill';
|
||||
import i18n from '@/locales/config';
|
||||
import datasetSkillService from '@/services/dataset-skill-service';
|
||||
import { useQuery } from '@tanstack/react-query';
|
||||
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
|
||||
|
||||
import { useKnowledgeBaseId } from './use-knowledge-request';
|
||||
|
||||
@@ -51,3 +53,56 @@ export function useFetchDatasetSkillPage(skillKwd: string | null | undefined) {
|
||||
|
||||
return { data, loading };
|
||||
}
|
||||
|
||||
export function useDeleteDatasetSkillTree() {
|
||||
const kbId = useKnowledgeBaseId();
|
||||
const queryClient = useQueryClient();
|
||||
|
||||
const {
|
||||
data,
|
||||
isPending: loading,
|
||||
mutateAsync,
|
||||
} = useMutation({
|
||||
mutationFn: async () => {
|
||||
const { data } = await datasetSkillService.deleteTree({
|
||||
datasetId: kbId,
|
||||
});
|
||||
if (data?.code === 0) {
|
||||
message.success(i18n.t('message.deleted'));
|
||||
queryClient.invalidateQueries({
|
||||
queryKey: DatasetSkillKeys.all(kbId),
|
||||
});
|
||||
}
|
||||
return data;
|
||||
},
|
||||
});
|
||||
|
||||
return { data, loading, deleteSkillTree: mutateAsync };
|
||||
}
|
||||
|
||||
export function useDeleteDatasetSkillPage() {
|
||||
const kbId = useKnowledgeBaseId();
|
||||
const queryClient = useQueryClient();
|
||||
|
||||
const {
|
||||
data,
|
||||
isPending: loading,
|
||||
mutateAsync,
|
||||
} = useMutation({
|
||||
mutationFn: async (skillKwd: string) => {
|
||||
const { data } = await datasetSkillService.deletePage({
|
||||
datasetId: kbId,
|
||||
skillKwd,
|
||||
});
|
||||
if (data?.code === 0) {
|
||||
message.success(i18n.t('message.deleted'));
|
||||
queryClient.invalidateQueries({
|
||||
queryKey: DatasetSkillKeys.all(kbId),
|
||||
});
|
||||
}
|
||||
return data;
|
||||
},
|
||||
});
|
||||
|
||||
return { data, loading, deleteSkillPage: mutateAsync };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user