diff --git a/plugins/scaffolder/src/components/JobStatusModal/JobStatusModal.tsx b/plugins/scaffolder/src/components/JobStatusModal/JobStatusModal.tsx index 5051475ae8..d35385ec3b 100644 --- a/plugins/scaffolder/src/components/JobStatusModal/JobStatusModal.tsx +++ b/plugins/scaffolder/src/components/JobStatusModal/JobStatusModal.tsx @@ -31,14 +31,14 @@ type Props = { job: Job | null; toCatalogLink?: string; open: boolean; - setOpen: (newState: boolean) => void; + onModalClose: () => void; }; export const JobStatusModal = ({ job, toCatalogLink, open, - setOpen, + onModalClose, }: Props) => { const renderTitle = () => { switch (job?.status) { @@ -52,14 +52,14 @@ export const JobStatusModal = ({ }; const onClose = useCallback(() => { - setOpen(false); if (!job) { return; } + // Disallow closing modal if the job is in progress. if (job.status === 'COMPLETED' || job.status === 'FAILED') { - setOpen(false); + onModalClose(); } - }, [job, setOpen]); + }, [job, onModalClose]); return ( @@ -87,7 +87,7 @@ export const JobStatusModal = ({ )} {job?.status === 'FAILED' && ( - setOpen(false)}>Close + Close )} diff --git a/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx b/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx index cdf9b05b4c..fd4e4c3ded 100644 --- a/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx +++ b/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx @@ -165,7 +165,7 @@ export const TemplatePage = () => { job={job} toCatalogLink={catalogLink} open={modalOpen} - setOpen={setModalOpen} + onModalClose={() => setModalOpen(false)} /> {template && (