From 6137e45fe156a969972ccd0719f7464fc81b7db3 Mon Sep 17 00:00:00 2001 From: Polina Boneva <13227501+polibb@users.noreply.github.com> Date: Tue, 9 May 2023 15:31:30 +0300 Subject: [PATCH] Template Variables: Input field in dashboard does not send network requests for query var with ${__searchFilter} (#67839) Co-authored-by: Ivan Ortega Alba --- .../variables/pickers/OptionsPicker/actions.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/public/app/features/variables/pickers/OptionsPicker/actions.ts b/public/app/features/variables/pickers/OptionsPicker/actions.ts index a4c5b3bd134..00e27452a66 100644 --- a/public/app/features/variables/pickers/OptionsPicker/actions.ts +++ b/public/app/features/variables/pickers/OptionsPicker/actions.ts @@ -64,20 +64,24 @@ export const filterOrSearchOptions = ( const { id, queryValue } = getVariablesState(rootStateKey, getState()).optionsPicker; const identifier: KeyedVariableIdentifier = { id, rootStateKey: rootStateKey, type: 'query' }; const variable = getVariable(identifier, getState()); - if (!hasOptions(variable)) { + + if (!('options' in variable)) { return; } - const { query, options } = variable; dispatch(toKeyedAction(rootStateKey, updateSearchQuery(searchQuery))); if (trim(queryValue) === trim(searchQuery)) { return; } - if (containsSearchFilter(query)) { + const { query, options } = variable; + + const queryTarget = typeof query === 'string' ? query : query.target; + if (containsSearchFilter(queryTarget)) { return searchForOptionsWithDebounce(dispatch, getState, searchQuery, rootStateKey); } + return dispatch(toKeyedAction(rootStateKey, updateOptionsAndFilter(options))); }; };