import { getAllPostSlugs, getPostMeta } from '@/lib/posts' import { ogImageSize, renderOgCard, renderOgCover } from '@/lib/og-image' export const size = ogImageSize export const contentType = 'image/png' export function generateStaticParams() { return getAllPostSlugs().map((slug) => ({ slug })) } /** Uses the post's cover image when it has one, otherwise a generated title card. */ export default async function OpengraphImage({ params }: { params: Promise<{ slug: string }> }) { const { slug } = await params const meta = getPostMeta(slug) return ( (meta.coverImage && renderOgCover(meta.coverImage)) ?? renderOgCard({ title: meta.title, description: meta.description, eyebrow: meta.category }) ) }