refactor list pagination to use nuqs

This commit is contained in:
jeffvli
2025-10-10 18:39:09 -07:00
parent 3a30f536d4
commit ae0a6497cb
@@ -1,18 +1,13 @@
import { useSearchParams } from 'react-router-dom'; import { parseAsInteger, useQueryState } from 'nuqs';
export const useItemListPagination = () => { export const useItemListPagination = () => {
const [searchParams, setSearchParams] = useSearchParams(); const [currentPage, setCurrentPage] = useQueryState(
'currentPage',
const currentPage = Number(searchParams.get('currentPage')) || 0; parseAsInteger.withDefault(0),
);
const onChange = (index: number) => { const onChange = (index: number) => {
setSearchParams( setCurrentPage(index);
(params) => {
params.set('currentPage', String(index));
return params;
},
{ replace: true },
);
}; };
return { currentPage, onChange }; return { currentPage, onChange };