MarketTrend: rename to candlestick panel (#41582)

This commit is contained in:
Ryan McKinley
2021-11-15 14:09:59 -08:00
committed by GitHub
parent 53905f2d4a
commit 1aac13e5d0
19 changed files with 165 additions and 108 deletions

View File

@@ -0,0 +1,53 @@
import { VisualizationSuggestionsBuilder } from '@grafana/data';
import { config } from '@grafana/runtime';
import { SuggestionName } from 'app/types/suggestions';
import { prepareCandlestickFields } from './fields';
import { CandlestickOptions, defaultPanelOptions } from './models.gen';
export class CandlestickSuggestionsSupplier {
getSuggestionsForData(builder: VisualizationSuggestionsBuilder) {
const { dataSummary } = builder;
if (
!builder.data?.series ||
!dataSummary.hasData ||
dataSummary.timeFieldCount < 1 ||
dataSummary.numberFieldCount < 2 ||
dataSummary.numberFieldCount > 10
) {
return;
}
const info = prepareCandlestickFields(builder.data.series, defaultPanelOptions, config.theme2);
if (!info.open || info.warn || info.noTimeField) {
return;
}
// Regular timeseries
if (info.open === info.high && info.open === info.low) {
return;
}
const list = builder.getListAppender<CandlestickOptions, {}>({
name: '',
pluginId: 'candlestick',
options: {},
fieldConfig: {
defaults: {
custom: {},
},
overrides: [],
},
previewModifier: (s) => {},
});
list.append({
name: SuggestionName.Candlestick,
options: defaultPanelOptions,
fieldConfig: {
defaults: {},
overrides: [],
},
});
}
}