import { GetServerSideProps, NextPage } from "next"; import NextError from "next/error"; import { Query } from "../../common/Query"; import { ssrUrql } from "../../urql"; import { QuestionChartOrVisualization } from "../components/QuestionChartOrVisualization"; import { QuestionInfoRow } from "../components/QuestionInfoRow"; import { QuestionTitle } from "../components/QuestionTitle"; import { QuestionPageDocument } from "../queries.generated"; interface Props { id: string; } export const getServerSideProps: GetServerSideProps = async ( context ) => { const [ssrCache, client] = ssrUrql(); const id = context.query.id as string; const question = (await client.query(QuestionPageDocument, { id }).toPromise()).data ?.result || null; if (!question) { context.res.statusCode = 404; } return { props: { urqlState: ssrCache.extractData(), id, }, }; }; const EmbedQuestionPage: NextPage = ({ id }) => { return (
{({ data: { result: question } }) => question ? (
) : ( ) }
); }; export default EmbedQuestionPage;