From 81cdd728bc6e07fc4398bab3656e5408449cebbc Mon Sep 17 00:00:00 2001 From: vichansson Date: Tue, 6 Feb 2024 15:06:37 +0200 Subject: [PATCH] B OpenNebula/one#6384: VM state updates table actions (#2922) * VM states are now calculated in the Enhanced table * VM state used as dependency for re-calculating table actions Signed-off-by: Victor Hansson (cherry picked from commit a1059292a1ddadb253ba23c1cd848d26ff2966b7) --- .../src/client/components/Tables/Enhanced/index.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/fireedge/src/client/components/Tables/Enhanced/index.js b/src/fireedge/src/client/components/Tables/Enhanced/index.js index 59d6e9653c..66151a1cd2 100644 --- a/src/fireedge/src/client/components/Tables/Enhanced/index.js +++ b/src/fireedge/src/client/components/Tables/Enhanced/index.js @@ -174,13 +174,21 @@ const EnhancedTable = ({ ?.scrollIntoView({ behavior: 'smooth', block: 'center' }) } + const selectedRowStates = useMemo( + () => + data + ?.filter((row) => state?.selectedRowIds?.[row?.ID]) + ?.map((selected) => selected?.STATE), + [data] + ) + const selectedRows = useMemo(() => { const selectedIds = Object.keys(state.selectedRowIds ?? {}) return selectedIds .map((id) => preGlobalFilteredRowsById[id]) .filter(Boolean) - }, [state.selectedRowIds]) + }, [state.selectedRowIds, selectedRowStates]) useEffect(() => { if (