diff --git a/.betterer.results b/.betterer.results index 8cbc0a8204c..e397f28d6ad 100644 --- a/.betterer.results +++ b/.betterer.results @@ -4446,8 +4446,8 @@ exports[`better eslint`] = { [28, 4, 25, "Do not use any type assertions.", "2565039386"], [106, 22, 82, "Do not use any type assertions.", "713417051"] ], - "public/app/features/alerting/unified/utils/datasource.ts:2520335938": [ - [136, 5, 69, "Do not use any type assertions.", "2540015575"] + "public/app/features/alerting/unified/utils/datasource.ts:3850518020": [ + [137, 5, 69, "Do not use any type assertions.", "2540015575"] ], "public/app/features/alerting/unified/utils/misc.test.ts:962758579": [ [19, 29, 3, "Unexpected any. Specify a different type.", "193409811"], diff --git a/public/app/features/alerting/unified/components/rule-editor/QueryEditor.tsx b/public/app/features/alerting/unified/components/rule-editor/QueryEditor.tsx index 26082c6e8b0..ee4979f7445 100644 --- a/public/app/features/alerting/unified/components/rule-editor/QueryEditor.tsx +++ b/public/app/features/alerting/unified/components/rule-editor/QueryEditor.tsx @@ -11,7 +11,7 @@ import { } from '@grafana/data'; import { selectors } from '@grafana/e2e-selectors'; import { config } from '@grafana/runtime'; -import { Button, HorizontalGroup, stylesFactory } from '@grafana/ui'; +import { Button, HorizontalGroup, stylesFactory, Tooltip } from '@grafana/ui'; import { getNextRefIdChar } from 'app/core/utils/query'; import { dataSource as expressionDatasource, @@ -20,10 +20,10 @@ import { import { isExpressionQuery } from 'app/features/expressions/guards'; import { ExpressionQueryType } from 'app/features/expressions/types'; import { defaultCondition } from 'app/features/expressions/utils/expressionTypes'; -import { getDatasourceSrv } from 'app/features/plugins/datasource_srv'; import { AlertQuery } from 'app/types/unified-alerting-dto'; import { AlertingQueryRunner } from '../../state/AlertingQueryRunner'; +import { getDefaultOrFirstCompatibleDataSource } from '../../utils/datasource'; import { QueryRows } from './QueryRows'; @@ -77,20 +77,20 @@ export class QueryEditor extends PureComponent { onNewAlertingQuery = () => { const { queries } = this; - const defaultDataSource = getDatasourceSrv().getInstanceSettings('default'); + const datasource = getDefaultOrFirstCompatibleDataSource(); - if (!defaultDataSource) { + if (!datasource) { return; } this.onChangeQueries( addQuery(queries, { - datasourceUid: defaultDataSource.uid, + datasourceUid: datasource.uid, model: { refId: '', datasource: { - type: defaultDataSource.type, - uid: defaultDataSource.uid, + type: datasource.type, + uid: datasource.uid, }, }, }) @@ -139,6 +139,8 @@ export class QueryEditor extends PureComponent { const { panelDataByRefId } = this.state; const styles = getStyles(config.theme2); + const noCompatibleDataSources = getDefaultOrFirstCompatibleDataSource() === undefined; + return (
{ onRunQueries={this.onRunQueries} /> - + + + {config.expressionsEnabled && (