From 19c0b29362450d1da9abe1c88feb186aba562d49 Mon Sep 17 00:00:00 2001 From: Kamila Alekbaeva Date: Mon, 17 Apr 2023 19:27:49 -0400 Subject: [PATCH] 962 - bulk connectors operations delete connectors fix --- .../Connect/List/BatchActionsBar.tsx | 23 ++++++++++++++----- .../src/lib/hooks/api/kafkaConnect.ts | 9 +++++--- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/kafka-ui-react-app/src/components/Connect/List/BatchActionsBar.tsx b/kafka-ui-react-app/src/components/Connect/List/BatchActionsBar.tsx index bb4d0aa7abc..691d4ae7551 100644 --- a/kafka-ui-react-app/src/components/Connect/List/BatchActionsBar.tsx +++ b/kafka-ui-react-app/src/components/Connect/List/BatchActionsBar.tsx @@ -34,7 +34,7 @@ const BatchActionsBar: React.FC = ({ const isMutating = mutationsNumber > 0; const routerProps = useAppParams(); - const clusterName = routerProps.clusterName; + const { clusterName } = routerProps; const client = useQueryClient(); const canEdit = usePermission( @@ -49,18 +49,29 @@ const BatchActionsBar: React.FC = ({ ); const deleteConnectorMutation = useDeleteConnector(routerProps); - const deleteConnectorsHandler = () => + const deleteConnectorsHandler = () => { confirm( - <>Are you sure you want to remove selected connectors?, + 'Are you sure you want to remove selected connectors?', async () => { try { - await deleteConnectorMutation.mutateAsync(); + await Promise.all( + selectedConnectors.map((connector) => { + deleteConnectorMutation.mutateAsync({ + clusterName, + connectName: connector.connect, + connectorName: connector.name, + }); + }) + ); resetRowSelection(); - } catch { - // do not redirect + } catch (e) { + // do nothing; + } finally { + client.invalidateQueries(['clusters', clusterName, 'connectors']); } } ); + }; const stateMutation = useUpdateConnectorState(routerProps); const updateConnector = (action: ConnectorAction, message: string) => { diff --git a/kafka-ui-react-app/src/lib/hooks/api/kafkaConnect.ts b/kafka-ui-react-app/src/lib/hooks/api/kafkaConnect.ts index 1d811554548..6447490f80f 100644 --- a/kafka-ui-react-app/src/lib/hooks/api/kafkaConnect.ts +++ b/kafka-ui-react-app/src/lib/hooks/api/kafkaConnect.ts @@ -135,7 +135,10 @@ export function useCreateConnector(clusterName: ClusterName) { export function useDeleteConnector(props: UseConnectorProps) { const client = useQueryClient(); - return useMutation(() => api.deleteConnector(props), { - onSuccess: () => client.invalidateQueries(connectorsKey(props.clusterName)), - }); + return useMutation( + (message: UseConnectorProps) => api.deleteConnector(message), + { + onSuccess: () => client.invalidateQueries(connectorKey(props)), + } + ); }