diff --git a/src/layouts/Posts.astro b/src/layouts/Posts.astro new file mode 100644 index 0000000..a861253 --- /dev/null +++ b/src/layouts/Posts.astro @@ -0,0 +1,74 @@ +--- +import Layout from "@layouts/Layout.astro"; +import Main from "@layouts/Main.astro"; +import Header from "@components/Header.astro"; +import Footer from "@components/Footer.astro"; +import Card from "@components/Card"; +import LinkButton from "@components/LinkButton.astro"; +import type { Frontmatter } from "@utils/types"; +import type { MarkdownInstance } from "astro"; + +export interface Props { + pageNum: number; + totalPages: number; + posts: MarkdownInstance[]; +} + +const { pageNum, totalPages, posts } = Astro.props; + +const prev = pageNum > 1 ? "" : "disabled"; +const next = pageNum < totalPages ? "" : "disabled"; +--- + + +
+
+
    + { + posts.map(({ frontmatter }) => { + return ( + + ); + }) + } +
+
+ +
+ + + + + Prev + + + Next + + + + +
+