Alerting: adds missing type info to the `FieldConfigSource` (#43619)

pull/43630/head
Gilles De Mey 3 years ago committed by GitHub
parent d7273c1158
commit 7de5d5fbd1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      public/app/features/alerting/unified/components/rule-editor/VizWrapper.tsx

@ -4,6 +4,7 @@ import { css } from '@emotion/css';
import { FieldConfigSource, GrafanaTheme2, PanelData, ThresholdsConfig } from '@grafana/data';
import { PanelRenderer } from '@grafana/runtime';
import { PanelContext, PanelContextProvider, useStyles2 } from '@grafana/ui';
import { GraphFieldConfig, GraphTresholdsStyleMode } from '@grafana/schema';
import { PanelOptions } from 'app/plugins/panel/table/models.gen';
import { useVizHeight } from '../../hooks/useVizHeight';
import { SupportedPanelPlugins, PanelPluginsButtonGroup } from '../PanelPluginsButtonGroup';
@ -17,6 +18,8 @@ interface Props {
onThresholdsChange: (thresholds: ThresholdsConfig) => void;
}
type PanelFieldConfig = FieldConfigSource<GraphFieldConfig>;
export const VizWrapper: FC<Props> = ({ data, currentPanel, changePanel, onThresholdsChange, thresholds }) => {
const [options, setOptions] = useState<PanelOptions>({
frameIndex: 0,
@ -25,7 +28,7 @@ export const VizWrapper: FC<Props> = ({ data, currentPanel, changePanel, onThres
const vizHeight = useVizHeight(data, currentPanel, options.frameIndex);
const styles = useStyles2(getStyles(vizHeight));
const [fieldConfig, setFieldConfig] = useState<FieldConfigSource>(defaultFieldConfig(thresholds, data));
const [fieldConfig, setFieldConfig] = useState<PanelFieldConfig>(defaultFieldConfig(thresholds, data));
useEffect(() => {
setFieldConfig((fieldConfig) => ({
@ -37,7 +40,7 @@ export const VizWrapper: FC<Props> = ({ data, currentPanel, changePanel, onThres
custom: {
...fieldConfig.defaults.custom,
thresholdsStyle: {
mode: 'line',
mode: GraphTresholdsStyleMode.Line,
},
},
},
@ -104,7 +107,7 @@ function defaultUnit(data: PanelData): string | undefined {
return data.series[0]?.fields.find((field) => field.type === 'number')?.config.unit;
}
function defaultFieldConfig(thresholds: ThresholdsConfig, data: PanelData): FieldConfigSource {
function defaultFieldConfig(thresholds: ThresholdsConfig, data: PanelData): PanelFieldConfig {
if (!thresholds) {
return { defaults: {}, overrides: [] };
}
@ -115,7 +118,7 @@ function defaultFieldConfig(thresholds: ThresholdsConfig, data: PanelData): Fiel
unit: defaultUnit(data),
custom: {
thresholdsStyle: {
mode: 'line',
mode: GraphTresholdsStyleMode.Line,
},
},
},

Loading…
Cancel
Save