diff options
| author | schererleander <leander@schererleander.de> | 2025-12-25 18:09:23 +0100 |
|---|---|---|
| committer | schererleander <leander@schererleander.de> | 2025-12-25 18:09:23 +0100 |
| commit | d7edbf05ab0e90eedcb99e4462e3a61793b2eff9 (patch) | |
| tree | c30d7b7c73f421cf7b722ddfc9c4db3962c30b63 /src/pages/Post.tsx | |
| parent | a3c2943ebf15890f01634d030e59b7d7fcc9bf1f (diff) | |
remove all files
Diffstat (limited to 'src/pages/Post.tsx')
| -rw-r--r-- | src/pages/Post.tsx | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/src/pages/Post.tsx b/src/pages/Post.tsx deleted file mode 100644 index 83a4c20..0000000 --- a/src/pages/Post.tsx +++ /dev/null @@ -1,58 +0,0 @@ -import { useParams, Navigate } from "react-router-dom"; -import { useEffect, type FC } from "react"; - -interface Meta { - title: string; - date: string; - cover?: string; -} - -interface Post { - attributes: Meta; - ReactComponent: FC; -} - -const posts = import.meta.glob<Post>("../blog/*.md", { eager: true }); - -const formDate = new Intl.DateTimeFormat("de-DE", { dateStyle: "medium" }); - -export default function Post() { - const { slug } = useParams(); - - const post = posts[`../blog/${slug}.md`]; - const title = post?.attributes.title ?? "߸ blog post" - - useEffect(() => { - document.title = `߸ ${meta.title}`; - }, [title]) - - if (!post) return <Navigate to="/404" replace />; - - const { attributes: meta, ReactComponent: Content } = post; - - - - return ( - <> - <main> - <a href="/blog" className="no-underline hover:underline"> - ← Back - </a> - - {meta.cover && ( - <img - src={meta.cover} - alt={meta.title} - className="w-full h-60 object-cover rounded-lg my-6" - /> - )} - - <h1 className="text-2xl font-bold mb-4">{meta.title}</h1> - <p className="text-sm text-muted-foreground mb-8">{formDate.format(new Date(meta.date))}</p> - <div className="prose prose-neutral max-w-none prose-img:mx-auto prose-img:w-1/2 prose-img:rounded-lg prose-img:shadow-lg dark:prose-invert"> - <Content /> - </div> - </main> - </> - ); -} |
