import type { Metadata } from "next"; import { notFound } from "next/navigation"; import { GoogleAdsense } from "@/components/public/google-adsense"; import { publicSections, StructuredGuideShell } from "@/components/public/structured-guide"; import { getCachedPublicGuide, getCachedPublicGuideSummary } from "@/lib/cache/public"; type Params = Promise<{ character: string; page: string }>; export const instant = false; export async function generateMetadata({ params }: { params: Params }): Promise { const { character } = await params; const guide = await getCachedPublicGuideSummary(character); return guide ? { title: `${guide.name}`, description: guide.overview, openGraph: { images: [guide.coverUrl] }, twitter: { images: [guide.coverUrl] }, } : { title: "ไม่พบไกด์" }; } export default async function GuideSectionPage({ params }: { params: Params }) { const { character, page } = await params; const guide = await getCachedPublicGuide(character, page); if (!guide || !publicSections(guide).some((section) => section.slug === page)) notFound(); return ( <> ); }