This commit is contained in:
User
2025-02-07 18:24:52 -05:00
parent 75d4a616dd
commit b7f9b0aff7
17 changed files with 304 additions and 245 deletions

View File

@@ -14,9 +14,11 @@ export default function Index({ comics, offset, auth }) {
const url = new URL(window.location); // searchParams
const [favourites, setFavourites] = useState(auth.user?.favourites ?? []);
const [favourites, setFavourites] = useState((auth?.user?.favourites !== null) ? auth.user.favourites : []);
const { toast } = useToast();
const itemsPerPage = 30;
/**
* On click handler for the star
* Do posting and make a toast
@@ -84,19 +86,21 @@ export default function Index({ comics, offset, auth }) {
</Head>
<div className="p-3 pt-1 pb-1 flex flex-wrap justify-center" scroll-region="true"
style={{ overflowAnchor: "none", height: "calc(100dvh - 90px)", overflowY: "scroll" }}>
<div className="grid 2xl:grid-cols-6 xl:grid-cols-4 sm:grid-cols-2 gap-2">
<div className="grid 2xl:grid-cols-6 xl:grid-cols-4 grid-cols-2 gap-2">
<ComicCards { ...comics } />
</div>
<Pagination className="justify-end pt-2">
<PaginationContent>
{ parseInt(offset) !== 0 &&
<PaginationItem>
<PaginationPrevious href={ `${ url.pathname }?${ url.searchParams }` } only={['comics', 'offset']} headers={{ offset: parseInt(offset) - 30 }} />
<PaginationPrevious href={ `${ url.pathname }?${ url.searchParams }` } only={['comics', 'offset']} headers={{ offset: parseInt(offset) - itemsPerPage }} />
</PaginationItem>
}
{ parseInt(comics.total) > parseInt(offset) + itemsPerPage &&
<PaginationItem>
<PaginationNext href={ `${ url.pathname }?${ url.searchParams }` } only={['comics', 'offset']} headers={{ offset: parseInt(offset) + itemsPerPage }} />
</PaginationItem>
}
<PaginationItem>
<PaginationNext href={ `${ url.pathname }?${ url.searchParams }` } only={['comics', 'offset']} headers={{ offset: parseInt(offset) + 30 }} />
</PaginationItem>
</PaginationContent>
</Pagination>
</div>