import { useParams, Outlet } from "react-router"; import { posts } from "../lib/post"; import { Link } from "react-router"; import { ContentState, convertFromRaw, Editor, EditorState } from "draft-js"; import { useState } from "react"; import { useNavigate } from "react-router"; export function BlogPostDetail({ deletePost, }: { deletePost: (id: number) => void; }) { const { postId } = useParams(); const post = posts.find((post) => post.id === parseInt(postId!)); const [editorState, setEditorState] = useState(() => { try { const data = JSON.parse(`"${post?.content ?? ""}"`); return EditorState.createWithContent(convertFromRaw(data)); } catch { console.log("fallback"); return EditorState.createWithContent( ContentState.createFromText(post?.content ?? ""), ); } }); const navigate = useNavigate(); if (!post) { return
Post not found
; } const formattedDate = new Date(post.datePosted).toLocaleDateString("en-US", { month: "long", day: "numeric", year: "numeric", }); return ( <> {post.title}
Home

{post.title}

Edit Post

By: {post.author}

Published on {formattedDate}

); } export function PostLayout() { return (
); }