diff --git a/app/pages/[slug]/page.tsx b/app/pages/[slug]/page.tsx index 83ee79b..b5ace03 100644 --- a/app/pages/[slug]/page.tsx +++ b/app/pages/[slug]/page.tsx @@ -1,7 +1,11 @@ +import Link from 'next/link'; import { notFound } from 'next/navigation'; import type { Metadata } from 'next'; import { allPages } from 'contentlayer/generated'; import { getPageBySlug } from '@/lib/posts'; +import { siteConfig } from '@/lib/config'; +import { ReadingProgress } from '@/components/reading-progress'; +import { PostToc } from '@/components/post-toc'; export function generateStaticParams() { return allPages.map((page) => ({ @@ -31,18 +35,65 @@ export default function StaticPage({ params }: Props) { if (!page) return notFound(); return ( -
-

{page.title}

- {page.feature_image && ( - // feature_image is stored as "../assets/xyz", serve from "/assets/xyz" - // eslint-disable-next-line @next/next/no-img-element - {page.title} - )} -
-
+ <> + +
+ +
+
+ {page.published_at && ( +

+ {new Date(page.published_at).toLocaleDateString( + siteConfig.defaultLocale + )} +

+ )} +

+ {page.title} +

+ {page.tags && ( +
+ {page.tags.map((t, i) => { + const tagColorClasses = [ + 'bg-rose-100 text-rose-700 dark:bg-rose-900/60 dark:text-rose-200', + 'bg-emerald-100 text-emerald-700 dark:bg-emerald-900/60 dark:text-emerald-200', + 'bg-sky-100 text-sky-700 dark:bg-sky-900/60 dark:text-sky-200', + 'bg-amber-100 text-amber-700 dark:bg-amber-900/60 dark:text-amber-200', + 'bg-violet-100 text-violet-700 dark:bg-violet-900/60 dark:text-violet-200' + ]; + const color = + tagColorClasses[i % tagColorClasses.length]; + return ( + + #{t} + + ); + })} +
+ )} +
+
+ {page.feature_image && ( + // feature_image is stored as "../assets/xyz", serve from "/assets/xyz" + // eslint-disable-next-line @next/next/no-img-element + {page.title} + )} +
+
+
+
+ ); }