ragflow/web/src/hooks/logic-hooks/use-pagination.ts
balibabu 933e075f8b
Feat: Display agent version in pages #3221 (#8947)
### What problem does this PR solve?

Feat: Display agent version in pages #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
2025-07-21 17:52:15 +08:00

24 lines
579 B
TypeScript

import { useCallback, useMemo, useState } from 'react';
export function useClientPagination(list: Array<any>) {
const [page, setPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const onPaginationChange = useCallback((page: number, pageSize: number) => {
setPage(page);
setPageSize(pageSize);
}, []);
const pagedList = useMemo(() => {
return list?.slice((page - 1) * pageSize, page * pageSize);
}, [list, page, pageSize]);
return {
page,
pageSize,
setPage,
setPageSize,
onPaginationChange,
pagedList,
};
}