Feat: Filter document by running status and file type. #3221 (#7340)

### What problem does this PR solve?
Feat: Filter document by running status and file type. #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu
2025-04-27 14:39:05 +08:00
committed by GitHub
parent dadd8d9f94
commit bdebd1b2e3
17 changed files with 392 additions and 76 deletions

View File

@ -1,28 +1,18 @@
import { FilterCollection } from '@/components/list-filter-bar/interface';
import { useFetchKnowledgeList } from '@/hooks/knowledge-hooks';
import { groupListByType } from '@/utils/dataset-util';
import { useMemo } from 'react';
export type OwnerFilterType = {
id: string;
label: string;
count: number;
};
export function useSelectOwners() {
const { list } = useFetchKnowledgeList();
const owners = useMemo(() => {
const ownerList: OwnerFilterType[] = [];
list.forEach((x) => {
const item = ownerList.find((y) => y.id === x.tenant_id);
if (!item) {
ownerList.push({ id: x.tenant_id, label: x.nickname, count: 1 });
} else {
item.count += 1;
}
});
return ownerList;
return groupListByType(list, 'tenant_id', 'nickname');
}, [list]);
return owners;
const filters: FilterCollection[] = [
{ field: 'owner', list: owners, label: 'Owner' },
];
return filters;
}