Files
000_notes/aastock/1/blog/app/components/posts.tsx
louiscklaw 8013ac2455 update,
2025-02-01 20:19:28 +08:00

37 lines
1.0 KiB
TypeScript

import Link from 'next/link'
import { formatDate, getBlogPosts } from 'app/blog/utils'
export function BlogPosts() {
let allBlogs = getBlogPosts()
return (
<div>
{allBlogs
.sort((a, b) => {
if (
new Date(a.metadata.publishedAt) > new Date(b.metadata.publishedAt)
) {
return -1
}
return 1
})
.map((post) => (
<Link
key={post.slug}
className="flex flex-col space-y-1 mb-4"
href={`/blog/${post.slug}`}
>
<div className="w-full flex flex-col md:flex-row space-x-0 md:space-x-2">
<p className="text-neutral-600 dark:text-neutral-400 w-[100px] tabular-nums">
{formatDate(post.metadata.publishedAt, false)}
</p>
<p className="text-neutral-900 dark:text-neutral-100 tracking-tight">
{post.metadata.title}
</p>
</div>
</Link>
))}
</div>
)
}