diff --git a/superset/assets/src/visualizations/nvd3/NVD3Vis.js b/superset/assets/src/visualizations/nvd3/NVD3Vis.js index f9ae3b9d55e02..6a703252317fc 100644 --- a/superset/assets/src/visualizations/nvd3/NVD3Vis.js +++ b/superset/assets/src/visualizations/nvd3/NVD3Vis.js @@ -32,7 +32,7 @@ import { boxPlotValueType, bulletDataType, categoryAndValueXYType, - colorObjectType, + rgbObjectType, numericXYType, numberOrAutoType, stringOrObjectWithLabelType, @@ -109,7 +109,21 @@ const propTypes = { showLegend: PropTypes.bool, showMarkers: PropTypes.bool, useRichTooltip: PropTypes.bool, - vizType: PropTypes.string, + vizType: PropTypes.oneOf([ + 'area', + 'bar', + 'box_plot', + 'bubble', + 'bullet', + 'compare', + 'column', + 'dist_bar', + 'line', + 'line_multi', + 'time_pivot', + 'pie', + 'dual_line', + ]), xAxisFormat: PropTypes.string, xAxisLabel: PropTypes.string, xAxisShowMinMax: PropTypes.bool, @@ -139,7 +153,13 @@ const propTypes = { // 'pie' only isDonut: PropTypes.bool, isPieLabelOutside: PropTypes.bool, - pieLabelType: PropTypes.string, + pieLabelType: PropTypes.oneOf([ + 'key', + 'value', + 'percent', + 'key_value', + 'key_percent', + ]), showLabels: PropTypes.bool, // 'area' only areaStackedStyle: PropTypes.string, @@ -150,7 +170,7 @@ const propTypes = { yField: stringOrObjectWithLabelType, sizeField: stringOrObjectWithLabelType, // time-pivot only - baseColor: colorObjectType, + baseColor: rgbObjectType, }; const NOOP = () => {}; diff --git a/superset/assets/src/visualizations/nvd3/PropTypes.js b/superset/assets/src/visualizations/nvd3/PropTypes.js index fadb06b6e1933..6c3d58daa365d 100644 --- a/superset/assets/src/visualizations/nvd3/PropTypes.js +++ b/superset/assets/src/visualizations/nvd3/PropTypes.js @@ -13,7 +13,7 @@ export const stringOrObjectWithLabelType = PropTypes.oneOfType([ }), ]); -export const colorObjectType = PropTypes.shape({ +export const rgbObjectType = PropTypes.shape({ r: PropTypes.number.isRequired, g: PropTypes.number.isRequired, b: PropTypes.number.isRequired,