import styles from '@styles/Home.module.css' import NewPost from '@components/new-post' import Header from '@components/header' import PageSeo from '@components/page-seo' import { Page } from '@geist-ui/core' import Head from 'next/head' import { GetServerSideProps } from 'next' import { Post } from '@lib/types' import cookie from 'cookie' const NewFromExisting = ({ post, parentId }: { post: Post, parentId: string }) => { console.log(parentId, post) return ( {/* TODO: solve this. */} {/* eslint-disable-next-line @next/next/no-css-tags */}
) } export const getServerSideProps: GetServerSideProps = async ({ req, params }) => { const id = params?.id const redirect = { redirect: { destination: '/new', permanent: false, } } if (!id) { return redirect } const driftToken = cookie.parse(req.headers.cookie || '')[`drift-token`] const post = await fetch(`${process.env.API_URL}/posts/${id}`, { method: "GET", headers: { "Content-Type": "application/json", "Authorization": `Bearer ${driftToken}`, "x-secret-key": process.env.SECRET_KEY || "" } }) if (!post.ok) { return redirect } const data = await post.json() if (!data) { return redirect } return { props: { post: data, parentId: id } } } export default NewFromExisting