From 29e9602346c320471dcd4ef3d3609587751936a7 Mon Sep 17 00:00:00 2001 From: Doma Date: Thu, 16 Jun 2022 15:26:35 +0800 Subject: [PATCH] refactor: use tree-shakable api from echarts 5 --- src/components/DataZoom.ts | 6 ++++-- src/components/Legend.ts | 7 ++++--- src/components/Radar.ts | 6 ++++-- src/components/Tooltip.ts | 6 ++++-- src/components/VisualMap.ts | 6 ++++-- src/series/Bars.ts | 6 ++++-- src/series/Funnel.ts | 6 ++++-- src/series/Line.ts | 6 ++++-- src/series/Map.ts | 6 ++++-- src/series/Pie.ts | 6 ++++-- src/series/Scatter.ts | 6 ++++-- src/series/Tree.ts | 6 ++++-- src/series/Treemap.ts | 6 ++++-- 13 files changed, 52 insertions(+), 27 deletions(-) diff --git a/src/components/DataZoom.ts b/src/components/DataZoom.ts index bbbbf0a..a6966d7 100644 --- a/src/components/DataZoom.ts +++ b/src/components/DataZoom.ts @@ -1,7 +1,9 @@ -import type { DataZoomComponentOption } from 'echarts'; -import 'echarts/lib/component/dataZoom'; +import * as echarts from 'echarts/core'; +import { DataZoomComponent, type DataZoomComponentOption } from 'echarts/components'; import { symbols } from '../constants'; +echarts.use([DataZoomComponent]); + export type DataZoomProps = DataZoomComponentOption; function DataZoom(_: DataZoomProps) { diff --git a/src/components/Legend.ts b/src/components/Legend.ts index 8e33624..cca924d 100644 --- a/src/components/Legend.ts +++ b/src/components/Legend.ts @@ -1,8 +1,9 @@ -import type { LegendComponentOption } from 'echarts'; -import 'echarts/lib/component/legend'; -import 'echarts/lib/component/legendScroll'; +import * as echarts from 'echarts/core'; +import { LegendComponent, type LegendComponentOption } from 'echarts/components'; import { symbols } from '../constants'; +echarts.use([LegendComponent]); + export type LegendProps = LegendComponentOption; function Legend(_: LegendProps) { diff --git a/src/components/Radar.ts b/src/components/Radar.ts index 4117a95..1ee914a 100644 --- a/src/components/Radar.ts +++ b/src/components/Radar.ts @@ -1,7 +1,9 @@ -import type { RadarComponentOption } from 'echarts'; -import 'echarts/lib/component/radar'; +import * as echarts from 'echarts/core'; +import { RadarComponent, type RadarComponentOption } from 'echarts/components'; import { symbols } from '../constants'; +echarts.use([RadarComponent]); + export type RadarProps = RadarComponentOption; function Radar(_: RadarProps) { diff --git a/src/components/Tooltip.ts b/src/components/Tooltip.ts index 71923fc..96ce9bd 100644 --- a/src/components/Tooltip.ts +++ b/src/components/Tooltip.ts @@ -1,7 +1,9 @@ -import type { TooltipComponentOption } from 'echarts'; -import 'echarts/lib/component/tooltip'; +import * as echarts from 'echarts/core'; +import { TooltipComponent, type TooltipComponentOption } from 'echarts/components'; import { symbols } from '../constants'; +echarts.use([TooltipComponent]); + export type TooltipProps = TooltipComponentOption; function Tooltip(_: TooltipProps) { diff --git a/src/components/VisualMap.ts b/src/components/VisualMap.ts index 5936037..3c99cd0 100644 --- a/src/components/VisualMap.ts +++ b/src/components/VisualMap.ts @@ -1,7 +1,9 @@ -import type { VisualMapComponentOption } from 'echarts'; -import 'echarts/lib/component/visualMap'; +import * as echarts from 'echarts/core'; +import { VisualMapComponent, type VisualMapComponentOption } from 'echarts/components'; import { symbols } from '../constants'; +echarts.use([VisualMapComponent]); + export type VisualMapProps = VisualMapComponentOption; function VisualMap(_: VisualMapProps) { diff --git a/src/series/Bars.ts b/src/series/Bars.ts index 70485a2..dcc273b 100644 --- a/src/series/Bars.ts +++ b/src/series/Bars.ts @@ -1,7 +1,9 @@ -import type { BarSeriesOption } from 'echarts'; -import 'echarts/lib/chart/bar'; +import * as echarts from 'echarts/core'; +import { BarChart, type BarSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([BarChart]); + type BarsProps = Omit & { color?: string | string[]; stack?: string | true; diff --git a/src/series/Funnel.ts b/src/series/Funnel.ts index 7336890..c45cd6b 100644 --- a/src/series/Funnel.ts +++ b/src/series/Funnel.ts @@ -1,7 +1,9 @@ -import type { FunnelSeriesOption } from 'echarts'; -import 'echarts/lib/chart/funnel'; +import * as echarts from 'echarts/core'; +import { FunnelChart, type FunnelSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([FunnelChart]); + export interface FunnelProps extends FunnelSeriesOption { asc?: boolean; } diff --git a/src/series/Line.ts b/src/series/Line.ts index dd2923e..8057f8d 100644 --- a/src/series/Line.ts +++ b/src/series/Line.ts @@ -1,7 +1,9 @@ -import type { LineSeriesOption } from 'echarts'; -import 'echarts/lib/chart/line'; +import * as echarts from 'echarts/core'; +import { LineChart, type LineSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([LineChart]); + export type LineProps = Omit & { stack?: string | boolean; area?: boolean; diff --git a/src/series/Map.ts b/src/series/Map.ts index fefac71..6048ef2 100644 --- a/src/series/Map.ts +++ b/src/series/Map.ts @@ -1,7 +1,9 @@ -import type { MapSeriesOption } from 'echarts'; -import 'echarts/lib/chart/map'; +import * as echarts from 'echarts/core'; +import { MapChart, type MapSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([MapChart]); + export type MapProps = MapSeriesOption; function Map(_: MapProps) { diff --git a/src/series/Pie.ts b/src/series/Pie.ts index 4994881..2aaacc6 100644 --- a/src/series/Pie.ts +++ b/src/series/Pie.ts @@ -1,7 +1,9 @@ -import type { PieSeriesOption } from 'echarts'; -import 'echarts/lib/chart/pie'; +import * as echarts from 'echarts/core'; +import { PieChart, type PieSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([PieChart]); + export interface PieProps extends PieSeriesOption { donut?: boolean; } diff --git a/src/series/Scatter.ts b/src/series/Scatter.ts index fafe343..c44b516 100644 --- a/src/series/Scatter.ts +++ b/src/series/Scatter.ts @@ -1,7 +1,9 @@ -import type { ScatterSeriesOption } from 'echarts'; -import 'echarts/lib/chart/scatter'; +import * as echarts from 'echarts/core'; +import { ScatterChart, type ScatterSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([ScatterChart]); + export type ScatterProps = ScatterSeriesOption; function Scatter(_: ScatterProps) { diff --git a/src/series/Tree.ts b/src/series/Tree.ts index f09f32e..b371a6d 100644 --- a/src/series/Tree.ts +++ b/src/series/Tree.ts @@ -1,7 +1,9 @@ -import type { TreeSeriesOption } from 'echarts'; -import 'echarts/lib/chart/tree'; +import * as echarts from 'echarts/core'; +import { TreeChart, type TreeSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([TreeChart]); + export type TreeProps = TreeSeriesOption; function Tree(_: TreeProps) { diff --git a/src/series/Treemap.ts b/src/series/Treemap.ts index cba2384..f63d28d 100644 --- a/src/series/Treemap.ts +++ b/src/series/Treemap.ts @@ -1,7 +1,9 @@ -import type { TreemapSeriesOption } from 'echarts'; -import 'echarts/lib/chart/treemap'; +import * as echarts from 'echarts/core'; +import { TreemapChart, type TreemapSeriesOption } from 'echarts/charts'; import { symbols } from '../constants'; +echarts.use([TreemapChart]); + export type TreemapProps = TreemapSeriesOption; function Treemap(_: TreemapProps) {