diff --git a/client/src/app/pages/assessment/components/assessment-actions/components/dynamic-assessment-actions-row.tsx b/client/src/app/pages/assessment/components/assessment-actions/components/dynamic-assessment-actions-row.tsx index a5491825f..f6f85cce6 100644 --- a/client/src/app/pages/assessment/components/assessment-actions/components/dynamic-assessment-actions-row.tsx +++ b/client/src/app/pages/assessment/components/assessment-actions/components/dynamic-assessment-actions-row.tsx @@ -102,7 +102,7 @@ const DynamicAssessmentActionsRow: FunctionComponent< onDeleteError ); - const determineAction = () => { + const determineAction = React.useCallback(() => { if (!assessment) { return AssessmentAction.Take; } else if (assessment.status === "started") { @@ -110,7 +110,13 @@ const DynamicAssessmentActionsRow: FunctionComponent< } else { return AssessmentAction.Retake; } - }; + }, [assessment]); + + const [action, setAction] = React.useState(determineAction()); + + React.useEffect(() => { + setAction(determineAction()); + }, [determineAction, assessment]); const determineButtonClassName = () => { const action = determineAction(); @@ -213,7 +219,7 @@ const DynamicAssessmentActionsRow: FunctionComponent< onHandleAssessmentAction(); }} > - {determineAction()} + {action} ) : ( diff --git a/client/src/app/queries/assessments.ts b/client/src/app/queries/assessments.ts index 2b24138b7..b3796cbe0 100644 --- a/client/src/app/queries/assessments.ts +++ b/client/src/app/queries/assessments.ts @@ -182,7 +182,6 @@ export const useFetchAssessmentsByItemId = ( }; const assessmentsWithOrder: AssessmentWithSectionOrder[] = data?.map(addSectionOrderToQuestions) || []; - return { assessments: assessmentsWithOrder, isFetching: isLoading,