Schema: create a new schema package for basic models (#38409)

This commit is contained in:
Ryan McKinley
2021-08-23 13:03:41 -07:00
committed by GitHub
parent 8d126de305
commit 425ec7ca9e
74 changed files with 458 additions and 130 deletions

View File

@@ -6,7 +6,8 @@ import { connect, ConnectedProps } from 'react-redux';
import AutoSizer from 'react-virtualized-auto-sizer';
import memoizeOne from 'memoize-one';
import { selectors } from '@grafana/e2e-selectors';
import { ErrorBoundaryAlert, CustomScrollbar, Collapse, TooltipDisplayMode, withTheme2, Themeable2 } from '@grafana/ui';
import { TooltipDisplayMode } from '@grafana/schema';
import { ErrorBoundaryAlert, CustomScrollbar, Collapse, withTheme2, Themeable2 } from '@grafana/ui';
import { AbsoluteTimeRange, DataQuery, LoadingState, RawTimeRange, DataFrame, GrafanaTheme2 } from '@grafana/data';
import LogsContainer from './LogsContainer';

View File

@@ -16,17 +16,16 @@ import {
import {
DrawStyle,
Icon,
LegendDisplayMode,
PanelContext,
PanelContextProvider,
SeriesVisibilityChangeMode,
TimeSeries,
TooltipDisplayMode,
TooltipPlugin,
useStyles2,
useTheme2,
ZoomPlugin,
} from '@grafana/ui';
import { LegendDisplayMode, TooltipDisplayMode } from '@grafana/schema';
import { defaultGraphConfig, getGraphFieldConfig } from 'app/plugins/panel/timeseries/config';
import { ContextMenuPlugin } from 'app/plugins/panel/timeseries/plugins/ContextMenuPlugin';
import { ExemplarsPlugin } from 'app/plugins/panel/timeseries/plugins/ExemplarsPlugin';

View File

@@ -2,7 +2,7 @@ import React, { PureComponent, createRef } from 'react';
import { css } from '@emotion/css';
import { capitalize } from 'lodash';
import memoizeOne from 'memoize-one';
import { TooltipDisplayMode } from '@grafana/schema';
import {
rangeUtil,
RawTimeRange,
@@ -28,7 +28,6 @@ import {
InlineFieldRow,
InlineSwitch,
withTheme2,
TooltipDisplayMode,
Themeable2,
} from '@grafana/ui';
import store from 'app/core/store';

View File

@@ -1,4 +1,4 @@
import { VizTooltipOptions, TooltipDisplayMode, LegendDisplayMode, LegendPlacement } from '@grafana/ui';
import { VizTooltipOptions, TooltipDisplayMode, LegendDisplayMode, LegendPlacement } from '@grafana/schema';
import { YAxis } from '@grafana/data';
export interface SeriesOptions {

View File

@@ -1,3 +1,4 @@
import { LegendDisplayMode } from '@grafana/schema';
import {
ApplyFieldOverrideOptions,
DataTransformerConfig,
@@ -6,7 +7,7 @@ import {
NavModelItem,
PanelData,
} from '@grafana/data';
import { LegendDisplayMode, Table, TimeSeries } from '@grafana/ui';
import { Table, TimeSeries } from '@grafana/ui';
import { config } from 'app/core/config';
import React, { FC, useMemo, useState } from 'react';
import { useObservable } from 'react-use';

View File

@@ -1,15 +1,8 @@
import React from 'react';
import { cloneDeep } from 'lodash';
import { DataFrame, TimeRange } from '@grafana/data';
import {
GraphNG,
GraphNGProps,
LegendDisplayMode,
PlotLegend,
UPlotConfigBuilder,
usePanelContext,
useTheme2,
} from '@grafana/ui';
import { GraphNG, GraphNGProps, PlotLegend, UPlotConfigBuilder, usePanelContext, useTheme2 } from '@grafana/ui';
import { LegendDisplayMode } from '@grafana/schema';
import { BarChartOptions } from './types';
import { preparePlotConfigBuilder, preparePlotFrame } from './utils';
import { PropDiffFn } from '../../../../../packages/grafana-ui/src/components/GraphNG/GraphNG';

View File

@@ -1,6 +1,7 @@
import React, { useMemo } from 'react';
import { TooltipDisplayMode } from '@grafana/schema';
import { PanelProps, TimeRange, VizOrientation } from '@grafana/data';
import { StackingMode, TooltipDisplayMode, TooltipPlugin, useTheme2 } from '@grafana/ui';
import { StackingMode, TooltipPlugin, useTheme2 } from '@grafana/ui';
import { BarChartOptions } from './types';
import { BarChart } from './BarChart';
import { prepareGraphableFrames } from './utils';

View File

@@ -2,10 +2,10 @@ import uPlot, { Axis, AlignedData } from 'uplot';
import { pointWithin, Quadtree, Rect } from './quadtree';
import { distribute, SPACE_BETWEEN } from './distribute';
import { DataFrame, GrafanaTheme2 } from '@grafana/data';
import { VizTextDisplayOptions } from '@grafana/schema';
import {
calculateFontSize,
PlotTooltipInterpolator,
VizTextDisplayOptions,
StackingMode,
BarValueVisibility,
ScaleDirection,

View File

@@ -1,14 +1,6 @@
import { OptionsWithLegend, OptionsWithTextFormatting, OptionsWithTooltip } from '@grafana/schema';
import { VizOrientation } from '@grafana/data';
import {
AxisConfig,
BarValueVisibility,
GraphGradientMode,
HideableFieldConfig,
OptionsWithLegend,
OptionsWithTextFormatting,
OptionsWithTooltip,
StackingMode,
} from '@grafana/ui';
import { AxisConfig, BarValueVisibility, GraphGradientMode, HideableFieldConfig, StackingMode } from '@grafana/ui';
/**
* @alpha

View File

@@ -1,4 +1,5 @@
import { prepareGraphableFrames, preparePlotConfigBuilder, preparePlotFrame } from './utils';
import { LegendDisplayMode, TooltipDisplayMode } from '@grafana/schema';
import {
createTheme,
DefaultTimeZone,
@@ -10,13 +11,7 @@ import {
VizOrientation,
} from '@grafana/data';
import { BarChartFieldConfig, BarChartOptions } from './types';
import {
BarValueVisibility,
GraphGradientMode,
LegendDisplayMode,
StackingMode,
TooltipDisplayMode,
} from '@grafana/ui';
import { BarValueVisibility, GraphGradientMode, StackingMode } from '@grafana/ui';
function mockDataFrame() {
const df1 = new MutableDataFrame({

View File

@@ -1,5 +1,6 @@
import React from 'react';
import uPlot, { AlignedData } from 'uplot';
import { VizLegendOptions, LegendDisplayMode } from '@grafana/schema';
import {
DataFrame,
formattedValueToString,
@@ -10,13 +11,11 @@ import {
import {
Themeable2,
UPlotConfigBuilder,
VizLegendOptions,
UPlotChart,
VizLayout,
AxisPlacement,
ScaleDirection,
ScaleOrientation,
LegendDisplayMode,
PlotLegend,
} from '@grafana/ui';

View File

@@ -3,14 +3,8 @@
// It is currenty hand written but will serve as the target for cuetsy
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
import {
GraphGradientMode,
HideableFieldConfig,
LegendDisplayMode,
OptionsWithLegend,
OptionsWithTooltip,
TooltipDisplayMode,
} from '@grafana/ui';
import { LegendDisplayMode, OptionsWithLegend, OptionsWithTooltip, TooltipDisplayMode } from '@grafana/schema';
import { GraphGradientMode, HideableFieldConfig } from '@grafana/ui';
export const modelVersion = Object.freeze([1, 0]);

View File

@@ -4,7 +4,8 @@ import { Field, FieldColorModeId, getColorForTheme, GrafanaTheme } from '@grafan
import { identity } from 'lodash';
import { Config } from './layout';
import { css } from '@emotion/css';
import { Icon, LegendDisplayMode, useStyles, useTheme, VizLegend, VizLegendItem, VizLegendListItem } from '@grafana/ui';
import { LegendDisplayMode } from '@grafana/schema';
import { Icon, useStyles, useTheme, VizLegend, VizLegendItem, VizLegendListItem } from '@grafana/ui';
function getStyles() {
return {

View File

@@ -1,5 +1,5 @@
import React, { FC, useCallback } from 'react';
import { VizTooltipOptions } from '@grafana/schema';
import {
FieldDisplay,
FALLBACK_COLOR,
@@ -9,7 +9,6 @@ import {
DataHoverEvent,
} from '@grafana/data';
import {
VizTooltipOptions,
useTheme2,
useStyles2,
SeriesTableRowProps,

View File

@@ -1,4 +1,5 @@
import React, { useEffect, useState } from 'react';
import { LegendDisplayMode } from '@grafana/schema';
import {
DataHoverClearEvent,
DataHoverEvent,
@@ -14,7 +15,6 @@ import { PieChart } from './PieChart';
import { PieChartLegendOptions, PieChartLegendValues, PieChartOptions } from './types';
import { Subscription } from 'rxjs';
import {
LegendDisplayMode,
SeriesVisibilityChangeBehavior,
usePanelContext,
useTheme2,

View File

@@ -1,5 +1,5 @@
import { FieldColorModeId, FieldConfigProperty, FieldMatcherID, PanelModel } from '@grafana/data';
import { LegendDisplayMode } from '@grafana/ui';
import { LegendDisplayMode } from '@grafana/schema';
import { PieChartPanelChangedHandler } from './migrations';
import { PieChartLabels } from './types';

View File

@@ -1,5 +1,5 @@
import { FieldColorModeId, FieldConfigProperty, FieldMatcherID, PanelModel } from '@grafana/data';
import { LegendDisplayMode } from '@grafana/ui';
import { LegendDisplayMode } from '@grafana/schema';
import { PieChartOptions, PieChartLabels, PieChartLegendValues, PieChartType } from './types';
export const PieChartPanelChangedHandler = (

View File

@@ -1,7 +1,8 @@
import { FieldColorModeId, FieldConfigProperty, PanelPlugin } from '@grafana/data';
import { PieChartPanel } from './PieChartPanel';
import { PieChartOptions, PieChartType, PieChartLabels, PieChartLegendValues } from './types';
import { LegendDisplayMode, commonOptionsBuilder } from '@grafana/ui';
import { LegendDisplayMode } from '@grafana/schema';
import { commonOptionsBuilder } from '@grafana/ui';
import { PieChartPanelChangedHandler } from './migrations';
import { addStandardDataReduceOptions } from '../stat/types';

View File

@@ -1,4 +1,5 @@
import { OptionsWithTooltip, SingleStatBaseOptions, VizLegendOptions } from '@grafana/ui';
import { VizLegendOptions, OptionsWithTooltip } from '@grafana/schema';
import { SingleStatBaseOptions } from '@grafana/ui';
/**
* @beta

View File

@@ -1,11 +1,11 @@
import React from 'react';
import { LegendDisplayMode } from '@grafana/schema';
import {
PanelContext,
PanelContextRoot,
GraphNG,
GraphNGProps,
BarValueVisibility,
LegendDisplayMode,
UPlotConfigBuilder,
VizLayout,
VizLegend,

View File

@@ -1,4 +1,5 @@
import { HideableFieldConfig, BarValueVisibility, OptionsWithLegend, OptionsWithTooltip } from '@grafana/ui';
import { OptionsWithTooltip, OptionsWithLegend } from '@grafana/schema';
import { HideableFieldConfig, BarValueVisibility } from '@grafana/ui';
/**
* @alpha

View File

@@ -1,4 +1,5 @@
import React from 'react';
import { VizLegendOptions } from '@grafana/schema';
import { XYFieldMatchers } from '@grafana/ui/src/components/GraphNG/types';
import {
ArrayVector,
@@ -21,7 +22,6 @@ import {
UPlotConfigBuilder,
UPlotConfigPrepFn,
VizLegendItem,
VizLegendOptions,
} from '@grafana/ui';
import { getConfig, TimelineCoreOptions } from './timeline';
import { AxisPlacement, ScaleDirection, ScaleOrientation } from '@grafana/ui/src/components/uPlot/config';

View File

@@ -1,4 +1,5 @@
import { HideableFieldConfig, BarValueVisibility, OptionsWithTooltip, OptionsWithLegend } from '@grafana/ui';
import { HideableFieldConfig, BarValueVisibility } from '@grafana/ui';
import { OptionsWithTooltip, OptionsWithLegend } from '@grafana/schema';
/**
* @alpha

View File

@@ -1,6 +1,7 @@
import { Field, PanelProps } from '@grafana/data';
import { config } from '@grafana/runtime';
import { usePanelContext, TimeSeries, TooltipPlugin, ZoomPlugin, TooltipDisplayMode } from '@grafana/ui';
import { TooltipDisplayMode } from '@grafana/schema';
import { usePanelContext, TimeSeries, TooltipPlugin, ZoomPlugin } from '@grafana/ui';
import { getFieldLinksForExplore } from 'app/features/explore/utils/links';
import React, { useMemo } from 'react';
import { AnnotationsPlugin } from './plugins/AnnotationsPlugin';

View File

@@ -18,14 +18,13 @@ import {
GraphFieldConfig,
GraphGradientMode,
GraphTresholdsStyleMode,
LegendDisplayMode,
LineInterpolation,
LineStyle,
PointVisibility,
ScaleDistribution,
StackingMode,
TooltipDisplayMode,
} from '@grafana/ui';
import { LegendDisplayMode, TooltipDisplayMode } from '@grafana/schema';
import { TimeSeriesOptions } from './types';
import { omitBy, pickBy, isNil, isNumber, isString } from 'lodash';
import { defaultGraphConfig } from './config';

View File

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

View File

@@ -1,4 +1,4 @@
import { OptionsWithTooltip, OptionsWithLegend } from '@grafana/ui';
import { OptionsWithTooltip, OptionsWithLegend } from '@grafana/schema';
export interface XYDimensionConfig {
frame: number;
x?: string; // name | first