diff --git a/.changeset/gorgeous-coins-attack.md b/.changeset/gorgeous-coins-attack.md new file mode 100644 index 0000000000..d500459225 --- /dev/null +++ b/.changeset/gorgeous-coins-attack.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-react': patch +--- + +Added delete alert popup when user delete the entity diff --git a/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.test.tsx b/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.test.tsx index baa4b3732c..7f139854f6 100644 --- a/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.test.tsx +++ b/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.test.tsx @@ -48,6 +48,10 @@ describe('UnregisterEntityDialog', () => { }, }; + beforeEach(() => { + jest.spyOn(alertApi, 'post').mockImplementation(() => {}); + }); + const entity = { apiVersion: 'backstage.io/v1alpha1', kind: 'Component', @@ -346,6 +350,11 @@ describe('UnregisterEntityDialog', () => { await waitFor(() => { expect(deleteEntity).toHaveBeenCalled(); expect(onConfirm).toHaveBeenCalled(); + expect(alertApi.post).toHaveBeenCalledWith({ + message: 'Removed entity n', + severity: 'success', + display: 'transient', + }); }); }); }); diff --git a/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.tsx b/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.tsx index 6c4984129e..56689c71ce 100644 --- a/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.tsx +++ b/plugins/catalog-react/src/components/UnregisterEntityDialog/UnregisterEntityDialog.tsx @@ -85,7 +85,13 @@ const Contents = ({ setBusy(true); try { await state.deleteEntity(); + const entityName = entity.metadata.title ?? entity.metadata.name; onConfirm(); + alertApi.post({ + message: `Removed entity ${entityName}`, + severity: 'success', + display: 'transient', + }); } catch (err) { assertError(err); alertApi.post({ message: err.message }); @@ -94,7 +100,7 @@ const Contents = ({ } } }, - [alertApi, onConfirm, state], + [alertApi, onConfirm, state, entity], ); const DialogActionsPanel = () => (