This is an automated email from the ASF dual-hosted git repository. ccwilliams pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to refs/heads/master by this push: new 9d01af2 Add annotation information to ChartMetadata (#6136) 9d01af2 is described below commit 9d01af201e168e9c41935bd4492c0393d6a374ff Author: Krist Wongsuphasawat <krist.wo...@gmail.com> AuthorDate: Thu Oct 18 17:59:30 2018 -0700 Add annotation information to ChartMetadata (#6136) * add annotations information to ChartMetadata * rename fields --- .../src/visualizations/Table/TableChartPlugin.js | 5 +++++ .../src/visualizations/core/models/ChartMetadata.js | 18 +++++++++++++++--- .../src/visualizations/nvd3/Area/AreaChartPlugin.js | 5 +++++ .../src/visualizations/nvd3/Bar/BarChartPlugin.js | 5 +++++ .../src/visualizations/nvd3/Line/LineChartPlugin.js | 10 ++++++++++ 5 files changed, 40 insertions(+), 3 deletions(-) diff --git a/superset/assets/src/visualizations/Table/TableChartPlugin.js b/superset/assets/src/visualizations/Table/TableChartPlugin.js index 2b76f9b..b8d379e 100644 --- a/superset/assets/src/visualizations/Table/TableChartPlugin.js +++ b/superset/assets/src/visualizations/Table/TableChartPlugin.js @@ -2,10 +2,15 @@ import ChartPlugin from '../core/models/ChartPlugin'; import ChartMetadata from '../core/models/ChartMetadata'; import transformProps from './transformProps'; import thumbnail from './images/thumbnail.png'; +import { ANNOTATION_TYPES } from '../../modules/AnnotationTypes'; const metadata = new ChartMetadata({ name: 'Table', description: '', + canBeAnnotationTypes: [ + ANNOTATION_TYPES.EVENT, + ANNOTATION_TYPES.INTERVAL, + ], thumbnail, }); diff --git a/superset/assets/src/visualizations/core/models/ChartMetadata.js b/superset/assets/src/visualizations/core/models/ChartMetadata.js index 653ebc6..daa3f32 100644 --- a/superset/assets/src/visualizations/core/models/ChartMetadata.js +++ b/superset/assets/src/visualizations/core/models/ChartMetadata.js @@ -2,14 +2,26 @@ export default class ChartMetadata { constructor({ name, credits = [], - description, - thumbnail, + description = '', show = true, + canBeAnnotationTypes = [], + supportedAnnotationTypes = [], + thumbnail, }) { this.name = name; this.credits = credits; this.description = description; - this.thumbnail = thumbnail; this.show = show; + this.canBeAnnotationTypesLookup = canBeAnnotationTypes.reduce((prev, type) => { + const lookup = prev; + lookup[type] = true; + return lookup; + }, {}); + this.supportedAnnotationTypes = supportedAnnotationTypes; + this.thumbnail = thumbnail; + } + + canBeAnnotationType(type) { + return this.canBeAnnotationTypesLookup[type] || false; } } diff --git a/superset/assets/src/visualizations/nvd3/Area/AreaChartPlugin.js b/superset/assets/src/visualizations/nvd3/Area/AreaChartPlugin.js index 638f2f8..fcfdbde 100644 --- a/superset/assets/src/visualizations/nvd3/Area/AreaChartPlugin.js +++ b/superset/assets/src/visualizations/nvd3/Area/AreaChartPlugin.js @@ -2,11 +2,16 @@ import ChartPlugin from '../../core/models/ChartPlugin'; import ChartMetadata from '../../core/models/ChartMetadata'; import transformProps from '../transformProps'; import thumbnail from './images/thumbnail.png'; +import { ANNOTATION_TYPES } from '../../../modules/AnnotationTypes'; const metadata = new ChartMetadata({ name: 'Area Chart', description: '', credits: ['http://nvd3.org'], + supportedAnnotationTypes: [ + ANNOTATION_TYPES.INTERVAL, + ANNOTATION_TYPES.EVENT, + ], thumbnail, }); diff --git a/superset/assets/src/visualizations/nvd3/Bar/BarChartPlugin.js b/superset/assets/src/visualizations/nvd3/Bar/BarChartPlugin.js index cf1d1e4..6b88403 100644 --- a/superset/assets/src/visualizations/nvd3/Bar/BarChartPlugin.js +++ b/superset/assets/src/visualizations/nvd3/Bar/BarChartPlugin.js @@ -2,11 +2,16 @@ import ChartPlugin from '../../core/models/ChartPlugin'; import ChartMetadata from '../../core/models/ChartMetadata'; import transformProps from '../transformProps'; import thumbnail from './images/thumbnail.png'; +import { ANNOTATION_TYPES } from '../../../modules/AnnotationTypes'; const metadata = new ChartMetadata({ name: 'Time-series Bar Chart', description: 'A bar chart where the x axis is time', credits: ['http://nvd3.org'], + supportedAnnotationTypes: [ + ANNOTATION_TYPES.INTERVAL, + ANNOTATION_TYPES.EVENT, + ], thumbnail, }); diff --git a/superset/assets/src/visualizations/nvd3/Line/LineChartPlugin.js b/superset/assets/src/visualizations/nvd3/Line/LineChartPlugin.js index 7a43c5f..a1ea0d9 100644 --- a/superset/assets/src/visualizations/nvd3/Line/LineChartPlugin.js +++ b/superset/assets/src/visualizations/nvd3/Line/LineChartPlugin.js @@ -2,11 +2,21 @@ import ChartPlugin from '../../core/models/ChartPlugin'; import ChartMetadata from '../../core/models/ChartMetadata'; import transformProps from '../transformProps'; import thumbnail from './images/thumbnail.png'; +import { ANNOTATION_TYPES } from '../../../modules/AnnotationTypes'; const metadata = new ChartMetadata({ name: 'Line Chart', description: '', credits: ['http://nvd3.org'], + canBeAnnotationTypes: [ + ANNOTATION_TYPES.TIME_SERIES, + ], + supportedAnnotationTypes: [ + ANNOTATION_TYPES.TIME_SERIES, + ANNOTATION_TYPES.INTERVAL, + ANNOTATION_TYPES.EVENT, + ANNOTATION_TYPES.FORMULA, + ], thumbnail, });