From 92eb23bb45b9738500608374cd4980b7d2ffc8c1 Mon Sep 17 00:00:00 2001 From: Shiven Ajwaliya Date: Wed, 20 May 2026 11:32:53 +1000 Subject: [PATCH] 4218-uploads-not-displaying-on-parts-review-page clear stale files state when part form modals close --- .../PartFormModels/ReviewFormModal.tsx | 9 ++++++++- .../PartFormModels/SubmissionFormModal.tsx | 6 ++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/ReviewFormModal.tsx b/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/ReviewFormModal.tsx index a531490763..3057b0e81c 100644 --- a/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/ReviewFormModal.tsx +++ b/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/ReviewFormModal.tsx @@ -3,7 +3,7 @@ import { useToast } from '../../../../../../hooks/toasts.hooks'; import * as yup from 'yup'; import { Controller, useFieldArray, useForm } from 'react-hook-form'; import { yupResolver } from '@hookform/resolvers/yup'; -import React, { useState } from 'react'; +import React, { useEffect, useState } from 'react'; import NERFormModal from '../../../../../../components/NERFormModal'; import { Autocomplete, Button, Grid, IconButton, List, ListItem, Typography } from '@mui/material'; import { FormControl, FormHelperText, FormLabel, TextField } from '@mui/material'; @@ -25,6 +25,13 @@ const ReviewFormModal = ({ open, handleClose, defaultValues, onSubmit, partsInPr const [uploading, setUploading] = useState(false); const { mutateAsync: uploadFile } = useUploadFile(); + useEffect(() => { + if (!open) { + setFiles([]); + setSelectedPartIndex(undefined); + } + }, [open]); + const schema = yup.object().shape({ submissionId: yup.string().required(), notes: yup.string().optional(), diff --git a/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/SubmissionFormModal.tsx b/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/SubmissionFormModal.tsx index 4b7004226a..5b5eab0832 100644 --- a/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/SubmissionFormModal.tsx +++ b/src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/PartReview/PartReviewComponents/PartFormModels/SubmissionFormModal.tsx @@ -39,6 +39,12 @@ const SubmissionFormModal = ({ const [uploading, setUploading] = useState(false); const { mutateAsync: uploadFile } = useUploadFile(); + useEffect(() => { + if (!open) { + setFiles([]); + } + }, [open]); + const schema = yup.object().shape({ partId: yup.string().required(), name: yup.string().required(),