Skip to content

Commit

Permalink
Disallow deletion of generation in progress reports (#2076)
Browse files Browse the repository at this point in the history
* disallow deletion of generation in progress reports

* remove unused console.log
  • Loading branch information
manV authored Apr 10, 2024
1 parent 0b915a7 commit 9ae92b0
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,10 @@ const ActionDropdown = ({
return status && status.toLowerCase() === 'complete';
}, [row]);

const isError = useMemo(() => {
return status && status.toLowerCase() === 'error';
}, [row]);

return (
<Dropdown
triggerAsChild={true}
Expand All @@ -83,8 +87,9 @@ const ActionDropdown = ({
Download report
</DropdownItem>
<DropdownItem
onClick={() => onTableAction(row, ActionEnumType.DELETE)}
onSelect={() => onTableAction(row, ActionEnumType.DELETE)}
color="error"
disabled={!isCompleted && !isError}
>
Delete
</DropdownItem>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -272,16 +272,24 @@ const DownloadReport = () => {
const fetcher = useFetcher<ActionData>();
const [rowSelectionState, setRowSelectionState] = useState<RowSelectionState>({});

const selectdRow = useMemo<
const selectdDeleteableRow = useMemo<
{
status: string;
id: string;
}[]
>(() => {
return Object.keys(rowSelectionState).map((item) => {
return JSON.parse(item);
});
return Object.keys(rowSelectionState)
.map((item) => {
return JSON.parse(item);
})
.filter((value) => {
return (
value.status?.toLowerCase() === 'complete' ||
value.status?.toLowerCase() === 'error'
);
});
}, [rowSelectionState]);

const [filtersExpanded, setFiltersExpanded] = useState(false);
const [searchParams] = useSearchParams();

Expand Down Expand Up @@ -318,10 +326,10 @@ const DownloadReport = () => {
variant="flat"
color="error"
loading={fetcher.state === 'submitting'}
disabled={selectdRow.length === 0 || fetcher.state === 'submitting'}
disabled={selectdDeleteableRow.length === 0 || fetcher.state === 'submitting'}
onClick={(e) => {
e.preventDefault();
setReportIdsToDelete(selectdRow.map((row) => row.id));
setReportIdsToDelete(selectdDeleteableRow.map((row) => row.id));
setShowDeleteDialog(true);
}}
>
Expand Down

0 comments on commit 9ae92b0

Please sign in to comment.