diff --git a/website-next/app/blog/[...slug]/page.tsx b/website-next/app/blog/[...slug]/page.tsx index 7bc91197ac2..7792598c83a 100644 --- a/website-next/app/blog/[...slug]/page.tsx +++ b/website-next/app/blog/[...slug]/page.tsx @@ -4,9 +4,13 @@ import type { Metadata } from "next"; import { notFound } from "next/navigation"; import { BlogMetadata } from "@/src/components/BlogMetadata"; import { BlogShareBar } from "@/src/components/BlogShareBar"; +import { BlogSidebar } from "@/src/components/BlogSidebar"; import { BlogTags } from "@/src/components/BlogTags"; import { BlogTeaserGrid } from "@/src/components/BlogTeaserGrid"; +import { DocsToolbar } from "@/src/components/DocsToolbar"; import { NotFoundContent } from "@/src/components/NotFoundContent"; +import { SidebarDrawer } from "@/src/components/SidebarDrawer"; +import { TableOfContents } from "@/src/components/TableOfContents"; import { Pagination } from "@/src/design-system/Pagination"; import { Picture } from "@/src/design-system/Picture"; import { SimilarPosts } from "@/src/components/SimilarPosts"; @@ -147,7 +151,7 @@ export default async function BlogSlugPage({ params }: PageProps) { } const absPath = path.join(BLOG_ROOT, rel); - const [{ content, frontmatter }, raw] = await Promise.all([ + const [{ content, frontmatter, toc }, raw] = await Promise.all([ compileDoc(absPath), fs.readFile(absPath, "utf-8"), ]); @@ -159,6 +163,9 @@ export default async function BlogSlugPage({ params }: PageProps) { const similar = current ? findSimilarPosts(current, summaries) : []; const featuredImage = current?.featuredImage ?? null; + const sidebarPosts = summaries.slice(0, 10); + const currentHref = current?.href ?? `/blog/${stem}`; + const jsonLd = current ? { "@context": "https://schema.org", @@ -183,50 +190,64 @@ export default async function BlogSlugPage({ params }: PageProps) { : null; return ( -
- {jsonLd ? ( -