Nested folders: Redo search query when actions complete (#68102)

redo search query if searching when actions complete
This commit is contained in:
Ashley Harrison 2023-05-10 11:13:27 +01:00 committed by GitHub
parent 1e8cad625b
commit 135b0a25aa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,6 +4,7 @@ import React from 'react';
import { GrafanaTheme2 } from '@grafana/data';
import { Button, useStyles2 } from '@grafana/ui';
import appEvents from 'app/core/app_events';
import { useSearchStateManager } from 'app/features/search/state/SearchStateManager';
import { useDispatch, useSelector } from 'app/types';
import { ShowModalReactEvent } from 'app/types/events';
@ -33,6 +34,8 @@ export function BrowseActions() {
const selectedFolders = Object.keys(selectedItems.folder).filter((uid) => selectedItems.folder[uid]);
const rootItems = useSelector(rootItemsSelector);
const childrenByParentUID = useSelector(childrenByParentUIDSelector);
const [, stateManager] = useSearchStateManager();
const isSearching = stateManager.hasSearchFilters();
const onActionComplete = (parentsToRefresh: Set<string | undefined>) => {
dispatch(
@ -40,8 +43,14 @@ export function BrowseActions() {
isSelected: false,
})
);
for (const parentUID of parentsToRefresh) {
dispatch(fetchChildren(parentUID));
if (isSearching) {
// Redo search query
stateManager.doSearchWithDebounce();
} else {
// Refetch parents
for (const parentUID of parentsToRefresh) {
dispatch(fetchChildren(parentUID));
}
}
};