This refactors the collection pages (teams, saved and profiles) into a bunch of hooks that handle various chunks of functionality. This way, the actual "pages" have significantly less logic and significantly less repeated code. * **useFavorites** handles favoriting teams * **useFilterState** handles the URL query filters * **usePaginationState** simply holds data pertaining to pagination * **useFetchTeams** handles fetching and parsing team data from the server * **useTeamFilter** pulls all other states together and handles some logic that is closest to the page Co-authored-by: Justin Edmund <383021+jedmund@users.noreply.github.com>
16 lines
357 B
TypeScript
16 lines
357 B
TypeScript
import { useState } from 'react'
|
|
|
|
export const usePaginationState = () => {
|
|
const [currentPage, setCurrentPage] = useState(1)
|
|
const [totalPages, setTotalPages] = useState(1)
|
|
const [recordCount, setRecordCount] = useState(0)
|
|
|
|
return {
|
|
currentPage,
|
|
setCurrentPage,
|
|
totalPages,
|
|
setTotalPages,
|
|
recordCount,
|
|
setRecordCount,
|
|
}
|
|
}
|