From 652e7a500bce2b200f040bdf3e0ee313663cea1c Mon Sep 17 00:00:00 2001 From: Alex Corey Date: Wed, 17 Mar 2021 13:25:42 -0400 Subject: [PATCH] adds counts for inventory groups and hosts that are related to an inventory source --- .../src/api/models/InventorySources.js | 8 +++ .../components/DeleteButton/DeleteButton.jsx | 9 +++ .../PaginatedDataList/ToolbarDeleteButton.jsx | 12 +++- .../ToolbarDeleteButton.test.jsx.snap | 4 +- .../ExecutionEnviromentList.test.jsx | 32 ++++++++++- .../InventorySourceDetail.jsx | 5 +- .../InventorySourceDetail.test.jsx | 2 +- .../InventorySources/InventorySourceList.jsx | 5 +- .../InventorySourceList.test.jsx | 6 +- .../util/getRelatedResourceDeleteDetails.js | 55 +++++++++++-------- 10 files changed, 102 insertions(+), 36 deletions(-) diff --git a/awx/ui_next/src/api/models/InventorySources.js b/awx/ui_next/src/api/models/InventorySources.js index baa2a85cb0..479978db13 100644 --- a/awx/ui_next/src/api/models/InventorySources.js +++ b/awx/ui_next/src/api/models/InventorySources.js @@ -22,6 +22,14 @@ class InventorySources extends LaunchUpdateMixin( }); } + readGroups(id) { + return this.http.get(`${this.baseUrl}${id}/groups/`); + } + + readHosts(id) { + return this.http.get(`${this.baseUrl}${id}/hosts/`); + } + destroyGroups(id) { return this.http.delete(`${this.baseUrl}${id}/groups/`); } diff --git a/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx b/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx index 7d82a3239d..783360ab59 100644 --- a/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx +++ b/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx @@ -32,7 +32,10 @@ function DeleteButton({ const [isOpen, setIsOpen] = useState(false); const [deleteMessageError, setDeleteMessageError] = useState(); const [deleteDetails, setDeleteDetails] = useState({}); + const [isLoading, setIsLoading] = useState(false); + const toggleModal = async isModalOpen => { + setIsLoading(true); if (deleteDetailsRequests?.length && isModalOpen) { const { results, error } = await getRelatedResourceDeleteCounts( deleteDetailsRequests @@ -43,6 +46,7 @@ function DeleteButton({ setDeleteDetails(results); } } + setIsLoading(false); setIsOpen(isModalOpen); }; @@ -66,10 +70,13 @@ function DeleteButton({
@@ -77,6 +84,8 @@ function DeleteButton({ ) : (