Expression: Filter query, mixed mode fixes and panel error message (#50218)

* implement filterQuery to support query.hide

* Fixed - expression ds name in mixed mode

* Execute expression query on blur

* show actual error message when ds return Query data error
This commit is contained in:
Sriram
2022-06-06 11:51:23 +01:00
committed by GitHub
parent 37aedd6906
commit a3071b7797
5 changed files with 35 additions and 6 deletions

View File

@@ -14,6 +14,8 @@ import { ActionMeta, HorizontalGroup, PluginSignatureBadge, Select } from '@graf
import { getDataSourceSrv } from '../services/dataSourceSrv';
import { ExpressionDatasourceRef } from './../utils/DataSourceWithBackend';
/**
* Component props description for the {@link DataSourcePicker}
*
@@ -117,6 +119,11 @@ export class DataSourcePicker extends PureComponent<DataSourcePickerProps, DataS
}
const uid = getDataSourceUID(current);
if (uid === ExpressionDatasourceRef.uid || uid === ExpressionDatasourceRef.name) {
return { label: uid, value: uid, hideText: hideTextValue };
}
return {
label: (uid ?? 'no name') + ' - not found',
value: uid ?? undefined,

View File

@@ -17,8 +17,10 @@ export function toDataQueryError(err: DataQueryError | string | Object): DataQue
let message = 'Query error';
if (error.message) {
message = error.message;
} else if (error.data && error.data.message) {
} else if (error.data && error.data.message && error.data?.message !== 'Query data error') {
message = error.data.message;
} else if (error?.data?.message === 'Query data error' && error?.data?.error) {
message = error.data.error;
} else if (error.data && error.data.error) {
message = error.data.error;
} else if (error.status) {