import { source } from "@/lib/source"; import { DocsPage, DocsBody, DocsDescription, DocsTitle } from "fumadocs-ui/page"; import { notFound } from "next/navigation"; import { createRelativeLink } from "fumadocs-ui/mdx"; import { getMDXComponents } from "@/mdx-components"; import { LLMCopyButton, ViewOptions } from "@/components/ai/page-actions"; export default async function Page(props: { params: Promise<{ slug?: string[] }>; }) { const params = await props.params; const page = source.getPage(params.slug); if (!page) notFound(); const MDXContent = page.data.body; // in case a page exports a custom toc const toc = (page.data as any).custom_toc ?? page.data.toc; return ( {page.data.title} {page.data.description}
); } export async function generateStaticParams() { return source.generateParams(); } export async function generateMetadata(props: { params: Promise<{ slug?: string[] }>; }) { const params = await props.params; const page = source.getPage(params.slug); if (!page) notFound(); return { title: page.data.title, description: page.data.description, icons: { icon: "/favicon.svg", }, }; }