diff --git a/packages/frontend-2/components/automate/viewer/panel/FunctionRunRowObjectResult.vue b/packages/frontend-2/components/automate/viewer/panel/FunctionRunRowObjectResult.vue
index 78a8a8cb9..92dd116c9 100644
--- a/packages/frontend-2/components/automate/viewer/panel/FunctionRunRowObjectResult.vue
+++ b/packages/frontend-2/components/automate/viewer/panel/FunctionRunRowObjectResult.vue
@@ -22,7 +22,7 @@
@@ -56,12 +56,18 @@ const props = defineProps<{
const {
viewer: {
- metadata: { filteringState, filteringDataStore }
+ metadata: { filteringDataStore }
}
} = useInjectedViewerState()
-const { isolateObjects, resetFilters, addActiveFilter, toggleFilterApplied, filters } =
- useFilterUtilities()
+const {
+ isolateObjects,
+ resetFilters,
+ resetIsolations,
+ addActiveFilter,
+ toggleFilterApplied,
+ filters
+} = useFilterUtilities()
const { setSelectionFromObjectIds, clearSelection } = useSelectionUtilities()
const { setColorFilter, removeColorFilter } = useFilterColoringHelpers()
@@ -70,16 +76,18 @@ const hasMetadataGradient = computed(() => {
return false
})
-const isolatedObjects = computed(() => filteringState.value?.isolatedObjects)
const isIsolated = computed(() => {
- if (!isolatedObjects.value?.length) return false
+ const isolatedIds = filters.isolatedObjectIds.value
+ if (!isolatedIds?.length) return false
+
if (
props.functionId &&
- filteringState.value?.activePropFilterKey === props.functionId
+ filters.propertyFilters.value.some((f) => f.filter?.key === props.functionId)
)
return false
+
const ids = resultObjectIds.value
- return containsAll(ids, isolatedObjects.value)
+ return containsAll(ids, isolatedIds)
})
const resultObjectIds = computed(() => {
@@ -102,6 +110,7 @@ const isolateOrUnisolateObjects = () => {
resetFilters()
if (isCurrentlyIsolated) {
+ resetIsolations()
clearSelection()
} else {
isolateObjects(ids, { replace: true })