diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx index 1004cd8230..d1f394701e 100644 --- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx @@ -239,18 +239,15 @@ export default function LogicEditor({ - {conditions[question.type].map( - (condition) => - !(question.required && condition === "skipped") && ( - - {logicConditions[condition].label} - - ) - )} + {conditions[question.type].map((condition) => ( + + {logicConditions[condition].label} + + ))} diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx index 4a2186755f..e0095e6633 100644 --- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx @@ -46,7 +46,7 @@ export default function SurveyMenuBar({ let faultyQuestions: String[] = []; const existingLogicConditions = new Set(); - + useEffect(() => { if (audiencePrompt && activeId === "settings") { setAudiencePrompt(false); @@ -119,6 +119,11 @@ export default function SurveyMenuBar({ for (const question of survey.questions) { for (const logic of question.logic || []) { + if (question.required && logic.condition === "skipped") { + toast.error("User cannot skip a required question, please change the logic jump!"); + return false; + } + const validFields = ["condition", "destination", "value"].filter( (field) => logic[field] !== undefined ).length;