From 43b69cf45b12b25a65135cf038b6a5f5568c0c32 Mon Sep 17 00:00:00 2001 From: Ryczko Date: Mon, 14 Oct 2024 22:33:07 +0200 Subject: [PATCH] Fix/Change create/edit survey routes --- .../features/SurveyResults/SurveyResults.tsx | 2 +- src/pages/survey/create/index.tsx | 34 +++++++++++++++++++ .../[surveyId].tsx} | 7 ++-- 3 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 src/pages/survey/create/index.tsx rename src/pages/survey/{create/[[...surveyId]].tsx => edit/[surveyId].tsx} (94%) diff --git a/src/features/surveys/features/SurveyResults/SurveyResults.tsx b/src/features/surveys/features/SurveyResults/SurveyResults.tsx index 5b5e69ea..964eca7e 100644 --- a/src/features/surveys/features/SurveyResults/SurveyResults.tsx +++ b/src/features/surveys/features/SurveyResults/SurveyResults.tsx @@ -49,7 +49,7 @@ export default function SurveyResults() { const router = useRouter(); const handleEditSurvey = () => { - router.push(`/survey/create/${surveyId}`); + router.push(`/survey/edit/${surveyId}`); }; return ( diff --git a/src/pages/survey/create/index.tsx b/src/pages/survey/create/index.tsx new file mode 100644 index 00000000..9ab4d3f1 --- /dev/null +++ b/src/pages/survey/create/index.tsx @@ -0,0 +1,34 @@ +import Head from 'next/head'; +import useTranslation from 'next-translate/useTranslation'; + +import SurveyCreator from 'features/surveys/features/SurveyCreator/SurveyCreator'; +import { SurveyCreatorContext } from 'features/surveys/features/SurveyCreator/managers/createSurveyManager/context'; +import { useCreateSurveyManager } from 'features/surveys/features/SurveyCreator/managers/createSurveyManager/createSurveyManager'; +import FullPageWrapper from 'layout/FullPageWrapper'; +import withAnimation from 'shared/HOC/withAnimation'; +import { usePreviewPanelManager } from 'features/surveys/features/SurveyCreator/managers/previewPanelManager/previewPanelManager'; +import { PreviewPanelContext } from 'features/surveys/features/SurveyCreator/managers/previewPanelManager/context'; + +function SurveyCreatePage() { + const { t } = useTranslation('surveyCreate'); + + const manager = useCreateSurveyManager(); + const previewPanelManager = usePreviewPanelManager(); + + return ( + + + {t('title')} + + + + + + + + + + ); +} + +export default withAnimation(SurveyCreatePage); diff --git a/src/pages/survey/create/[[...surveyId]].tsx b/src/pages/survey/edit/[surveyId].tsx similarity index 94% rename from src/pages/survey/create/[[...surveyId]].tsx rename to src/pages/survey/edit/[surveyId].tsx index fbf48c90..51a68dc9 100644 --- a/src/pages/survey/create/[[...surveyId]].tsx +++ b/src/pages/survey/edit/[surveyId].tsx @@ -13,7 +13,7 @@ import { usePreviewPanelManager } from 'features/surveys/features/SurveyCreator/ import { PreviewPanelContext } from 'features/surveys/features/SurveyCreator/managers/previewPanelManager/context'; export async function getServerSideProps(context: NextPageContext) { - const surveyId = context.query.surveyId?.[0]; + const surveyId = context.query.surveyId as string; let surveyData; if (surveyId) { @@ -28,6 +28,7 @@ export async function getServerSideProps(context: NextPageContext) { surveyData = await getSurveyData(surveyId, session.user?.id); + if (!surveyData) { return { redirect: { @@ -44,7 +45,7 @@ export async function getServerSideProps(context: NextPageContext) { }; } -function SurveyCreatePage({ +function SurveyEditPage({ initialData, }: InferGetServerSidePropsType) { const { t } = useTranslation('surveyCreate'); @@ -68,4 +69,4 @@ function SurveyCreatePage({ ); } -export default withAnimation(SurveyCreatePage); +export default withAnimation(SurveyEditPage);