Skip to content

Commit

Permalink
Merge pull request #15735 from apache/series-type-register
Browse files Browse the repository at this point in the history
feat(type): provide ability to extend series option
  • Loading branch information
pissang committed Sep 16, 2021
2 parents b29726d + a11d9af commit 5ff6216
Showing 1 changed file with 41 additions and 22 deletions.
63 changes: 41 additions & 22 deletions src/export/option.ts
Expand Up @@ -201,28 +201,47 @@ export type ThemeRiverSeriesOption = ThemeRiverSeriesOptionInner & SeriesInjecte
export type SunburstSeriesOption = SunburstSeriesOptionInner & SeriesInjectedOption;
export type CustomSeriesOption = CustomSeriesOptionInner & SeriesInjectedOption;

export type SeriesOption = LineSeriesOption
| BarSeriesOption
| ScatterSeriesOption
| PieSeriesOption
| RadarSeriesOption
| MapSeriesOption
| TreeSeriesOption
| TreemapSeriesOption
| GraphSeriesOption
| GaugeSeriesOption
| FunnelSeriesOption
| ParallelSeriesOption
| SankeySeriesOption
| BoxplotSeriesOption
| CandlestickSeriesOption
| EffectScatterSeriesOption
| LinesSeriesOption
| HeatmapSeriesOption
| PictorialBarSeriesOption
| ThemeRiverSeriesOption
| SunburstSeriesOption
| CustomSeriesOption;

/**
* A map from series 'type' to series option
* It's used for declaration merging in echarts extensions.
* For example:
* ```ts
* import echarts from 'echarts';
* declare module 'echarts/types/dist/echarts' {
* interface RegisteredSeriesOption {
* wordCloud: WordCloudSeriesOption
* }
* }
* ```
*/
export interface RegisteredSeriesOption {
line: LineSeriesOption
bar: BarSeriesOption
scatter: ScatterSeriesOption
pie: PieSeriesOption
radar: RadarSeriesOption
map: MapSeriesOption
tree: TreeSeriesOption
treemap: TreemapSeriesOption
graph: GraphSeriesOption
gauge: GaugeSeriesOption
funnel: FunnelSeriesOption
parallel: ParallelSeriesOption
sankey: SankeySeriesOption
boxplot: BoxplotSeriesOption
candlestick: CandlestickSeriesOption
effectScatter: EffectScatterSeriesOption
lines: LinesSeriesOption
heatmap: HeatmapSeriesOption
pictorialBar: PictorialBarSeriesOption
themeRiver: ThemeRiverSeriesOption
sunburst: SunburstSeriesOption
custom: CustomSeriesOption
}
type Values<T> = T[keyof T];

export type SeriesOption = Values<RegisteredSeriesOption>;

export interface EChartsOption extends ECBasicOption {
dataset?: DatasetComponentOption | DatasetComponentOption[];
Expand Down

0 comments on commit 5ff6216

Please sign in to comment.