Schema: Remove exclusion for timeseries and update imports (#65242)

This commit is contained in:
Ryan McKinley 2023-03-22 17:14:54 -07:00 committed by GitHub
parent 51fdf37faa
commit 7835aacc8f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 34 additions and 16 deletions

View File

@ -77,6 +77,7 @@ func corePlugins(rt *thema.Runtime) []pfs.ParsedPlugin {
parsePluginOrPanic("public/app/plugins/panel/table", "table", rt),
parsePluginOrPanic("public/app/plugins/panel/table-old", "table_old", rt),
parsePluginOrPanic("public/app/plugins/panel/text", "text", rt),
parsePluginOrPanic("public/app/plugins/panel/timeseries", "timeseries", rt),
parsePluginOrPanic("public/app/plugins/panel/traces", "traces", rt),
parsePluginOrPanic("public/app/plugins/panel/welcome", "welcome", rt),
parsePluginOrPanic("public/app/plugins/panel/xychart", "xychart", rt),

View File

@ -30,7 +30,7 @@ import {
useTheme2,
} from '@grafana/ui';
import { defaultGraphConfig, getGraphFieldConfig } from 'app/plugins/panel/timeseries/config';
import { TimeSeriesOptions } from 'app/plugins/panel/timeseries/types';
import { PanelOptions as TimeSeriesOptions } from 'app/plugins/panel/timeseries/panelcfg.gen';
import { ExploreGraphStyle } from 'app/types';
import { seriesVisibilityConfigFactory } from '../../dashboard/dashgrid/SeriesVisibilityConfigFactory';

View File

@ -2,7 +2,7 @@ import { VizPanel, VizPanelState } from '@grafana/scenes';
import { GraphFieldConfig, TableFieldOptions } from '@grafana/schema';
import { PanelOptions as BarGaugePanelOptions } from 'app/plugins/panel/bargauge/panelcfg.gen';
import { PanelOptions as TablePanelOptions } from 'app/plugins/panel/table/panelcfg.gen';
import { TimeSeriesOptions } from 'app/plugins/panel/timeseries/types';
import { PanelOptions as TimeSeriesOptions } from 'app/plugins/panel/timeseries/panelcfg.gen';
export type TypedVizPanelState<TOptions, TFieldConfig> = Omit<
Partial<VizPanelState<TOptions, TFieldConfig>>,

View File

@ -25,7 +25,6 @@ import (
var skipPlugins = map[string]bool{
"canvas": true,
"candlestick": true,
"timeseries": true,
"influxdb": true, // plugin.json fails validation (defaultMatchFormat)
"mixed": true, // plugin.json fails validation (mixed)
"opentsdb": true, // plugin.json fails validation (defaultMatchFormat)

View File

@ -7,16 +7,16 @@ import { KeyboardPlugin, TimeSeries, TooltipPlugin, usePanelContext, ZoomPlugin
import { config } from 'app/core/config';
import { getFieldLinksForExplore } from 'app/features/explore/utils/links';
import { PanelOptions } from './panelcfg.gen';
import { AnnotationEditorPlugin } from './plugins/AnnotationEditorPlugin';
import { AnnotationsPlugin } from './plugins/AnnotationsPlugin';
import { ContextMenuPlugin } from './plugins/ContextMenuPlugin';
import { ExemplarsPlugin, getVisibleLabels } from './plugins/ExemplarsPlugin';
import { OutsideRangePlugin } from './plugins/OutsideRangePlugin';
import { ThresholdControlsPlugin } from './plugins/ThresholdControlsPlugin';
import { TimeSeriesOptions } from './types';
import { getTimezones, prepareGraphableFields, regenerateLinksSupplier } from './utils';
interface TimeSeriesPanelProps extends PanelProps<TimeSeriesOptions> {}
interface TimeSeriesPanelProps extends PanelProps<PanelOptions> {}
export const TimeSeriesPanel = ({
data,

View File

@ -33,7 +33,7 @@ import {
} from '@grafana/schema';
import { defaultGraphConfig } from './config';
import { TimeSeriesOptions } from './types';
import { PanelOptions } from './panelcfg.gen';
/**
* This is called when the panel changes from another panel
@ -61,7 +61,7 @@ export const graphPanelChangedHandler: PanelTypeChangedHandler = (
return {};
};
export function graphToTimeseriesOptions(angular: any): { fieldConfig: FieldConfigSource; options: TimeSeriesOptions } {
export function graphToTimeseriesOptions(angular: any): { fieldConfig: FieldConfigSource; options: PanelOptions } {
const overrides: ConfigOverrideRule[] = angular.fieldConfig?.overrides ?? [];
const yaxes = angular.yaxes ?? [];
let y1 = getFieldConfigFromOldAxis(yaxes[0]);
@ -316,7 +316,7 @@ export function graphToTimeseriesOptions(angular: any): { fieldConfig: FieldConf
y1.custom = omitBy(graph, isNil);
y1.nullValueMode = angular.nullPointMode as NullValueMode;
const options: TimeSeriesOptions = {
const options: PanelOptions = {
legend: {
displayMode: LegendDisplayMode.List,
showLegend: true,

View File

@ -6,10 +6,10 @@ import { TimeSeriesPanel } from './TimeSeriesPanel';
import { TimezonesEditor } from './TimezonesEditor';
import { defaultGraphConfig, getGraphFieldConfig } from './config';
import { graphPanelChangedHandler } from './migrations';
import { PanelOptions } from './panelcfg.gen';
import { TimeSeriesSuggestionsSupplier } from './suggestions';
import { TimeSeriesOptions } from './types';
export const plugin = new PanelPlugin<TimeSeriesOptions, GraphFieldConfig>(TimeSeriesPanel)
export const plugin = new PanelPlugin<PanelOptions, GraphFieldConfig>(TimeSeriesPanel)
.setPanelChangeHandler(graphPanelChangedHandler)
.useFieldConfig(getGraphFieldConfig(defaultGraphConfig))
.setPanelOptions((builder) => {

View File

@ -24,10 +24,11 @@ composableKinds: PanelCfg: {
{
schemas: [
{
PanelOptions: {
PanelOptions: common.OptionsWithTimezones & {
legend: common.VizLegendOptions
tooltip: common.VizTooltipOptions
} @cuetsy(kind="interface")
PanelFieldConfig: common.GraphFieldConfig & {} @cuetsy(kind="interface")
},
]

View File

@ -0,0 +1,20 @@
// Code generated - EDITING IS FUTILE. DO NOT EDIT.
//
// Generated by:
// public/app/plugins/gen.go
// Using jennies:
// TSTypesJenny
// PluginTSTypesJenny
//
// Run 'make gen-cue' from repository root to regenerate.
import * as common from '@grafana/schema';
export const PanelCfgModelVersion = Object.freeze([0, 0]);
export interface PanelOptions extends common.OptionsWithTimezones {
legend: common.VizLegendOptions;
tooltip: common.VizTooltipOptions;
}
export interface PanelFieldConfig extends common.GraphFieldConfig {}

View File

@ -2,7 +2,7 @@ import { FieldColorModeId, VisualizationSuggestionsBuilder } from '@grafana/data
import { GraphDrawStyle, GraphFieldConfig, GraphGradientMode, LineInterpolation, StackingMode } from '@grafana/schema';
import { SuggestionName } from 'app/types/suggestions';
import { TimeSeriesOptions } from './types';
import { PanelOptions } from './panelcfg.gen';
export class TimeSeriesSuggestionsSupplier {
getSuggestionsForData(builder: VisualizationSuggestionsBuilder) {
@ -12,7 +12,7 @@ export class TimeSeriesSuggestionsSupplier {
return;
}
const list = builder.getListAppender<TimeSeriesOptions, GraphFieldConfig>({
const list = builder.getListAppender<PanelOptions, GraphFieldConfig>({
name: SuggestionName.LineChart,
pluginId: 'timeseries',
options: {

View File

@ -1,3 +0,0 @@
import { OptionsWithLegend, OptionsWithTimezones, OptionsWithTooltip } from '@grafana/schema';
export interface TimeSeriesOptions extends OptionsWithLegend, OptionsWithTooltip, OptionsWithTimezones {}