---
import type { GetStaticPaths } from "astro";
import PostPage from "../components/PostPage.astro";
import Pagination from "../components/control/Pagination.astro";
import { PAGE_SIZE } from "../constants/constants";
import MainGridLayout from "../layouts/MainGridLayout.astro";
import { getSortedPosts } from "../utils/content-utils";

export const getStaticPaths = (async ({ paginate }) => {
	const allBlogPosts = await getSortedPosts();
	return paginate(allBlogPosts, { pageSize: PAGE_SIZE });
}) satisfies GetStaticPaths;
// https://github.com/withastro/astro/issues/6507#issuecomment-1489916992

const { page } = Astro.props;

const len = page.data.length;
---

<MainGridLayout title={page.currentPage === 1 ? undefined : `第 ${page.currentPage} 页`}>
    <PostPage page={page}></PostPage>
    <Pagination class="mx-auto onload-animation" page={page} style=`animation-delay: calc(var(--content-delay) + ${(len)*50}ms)`></Pagination>
</MainGridLayout>