refactoring-backend #3
@@ -151,7 +151,7 @@ export function MapPage(): React.JSX.Element {
|
||||
|
||||
useEffect(() => {
|
||||
setPage(1);
|
||||
}, [range, originFilter, selectedCountry, bans, pageSize]);
|
||||
}, [range, originFilter, selectedCountry, pageSize]);
|
||||
|
||||
/** Bans visible in the companion table (filtered by selected country). */
|
||||
const visibleBans = useMemo(() => {
|
||||
@@ -164,6 +164,14 @@ export function MapPage(): React.JSX.Element {
|
||||
: null;
|
||||
|
||||
const totalPages = Math.max(1, Math.ceil(visibleBans.length / pageSize));
|
||||
|
||||
// Clamp page to totalPages when data shrinks below current page offset
|
||||
useEffect(() => {
|
||||
if (page > totalPages) {
|
||||
setPage(totalPages);
|
||||
}
|
||||
}, [totalPages, page]);
|
||||
|
||||
const hasPrev = page > 1;
|
||||
const hasNext = page < totalPages;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user