@ebuilding/chart 2.1.6 → 2.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,211 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as echarts from 'echarts/core';
5
+ import { BarChart } from 'echarts/charts';
6
+ import { TitleComponent, TooltipComponent, GridComponent, LegendComponent } from 'echarts/components';
7
+ import { CanvasRenderer } from 'echarts/renderers';
8
+ import { GramBaseChartService } from '@ebuilding/chart/service';
9
+ import _ from 'lodash';
10
+
11
+ /**
12
+ * 堆积图
13
+ */
14
+ echarts.use([BarChart, TitleComponent, TooltipComponent, GridComponent, LegendComponent, CanvasRenderer]);
15
+ class EchartCategoryStackComponent extends GramBaseChartService {
16
+ color = [
17
+ '#71D1FF',
18
+ '#71A9FF',
19
+ '#8C94FC',
20
+ '#DDB0F0',
21
+ '#FFCA5E',
22
+ '#FFB15E',
23
+ '#71D1FF',
24
+ '#71A9FF',
25
+ '#8C94FC',
26
+ '#DDB0F0',
27
+ '#FFCA5E',
28
+ '#FFB15E',
29
+ ];
30
+ constructor() {
31
+ super();
32
+ }
33
+ ngOnInit() { }
34
+ /**
35
+ * 初始化数据
36
+ */
37
+ initChartData() {
38
+ if (this.config && this.config.data && this.config.data.val && Array.isArray(this.config.data.val)) {
39
+ let isSingle = this.config.data.val.length == 1;
40
+ this.chartData = this.config.data.val.map((item, index) => {
41
+ if (!isSingle) {
42
+ item.data = item.data.map((a) => {
43
+ let newA = { value: a, itemStyle: { color: this.color[index] } };
44
+ return newA;
45
+ });
46
+ }
47
+ let obj = {
48
+ type: 'bar',
49
+ name: item.text,
50
+ data: item.data,
51
+ barMaxWidth: 35,
52
+ stack: 'total',
53
+ label: this.config.data?.label ? this.config.data.label : {},
54
+ // itemStyle:
55
+ // isSingle == true
56
+ // ? {
57
+ // normal: {
58
+ // borderRadius: [12, 12, 0, 0],
59
+ // color: (a: any) => {
60
+ // return this.color[a.dataIndex];
61
+ // },
62
+ // },
63
+ // }
64
+ // : {
65
+ // normal: {
66
+ // borderRadius: [12, 12, 0, 0],
67
+ // },
68
+ // },
69
+ };
70
+ if (item?.type && item.type == 'line') {
71
+ obj['type'] = 'line';
72
+ obj['lineStyle'] = {
73
+ color: this.color[index],
74
+ };
75
+ }
76
+ return obj;
77
+ });
78
+ }
79
+ }
80
+ /**
81
+ * 初始化X轴
82
+ * @returns
83
+ */
84
+ initChartAxis() {
85
+ if (this.config &&
86
+ this.config.data &&
87
+ this.config.data.x &&
88
+ this.config.data.x.data &&
89
+ Array.isArray(this.config.data.x.data)) {
90
+ return _.cloneDeep(this.config.data.x.data);
91
+ }
92
+ }
93
+ /**
94
+ * 初始化图表配置
95
+ */
96
+ initChartOption() {
97
+ this.chartOption = {
98
+ title: this.chartTitle,
99
+ animation: this.config?.animation == false ? false : true,
100
+ color: this.color,
101
+ grid: {
102
+ left: '3%',
103
+ right: '18',
104
+ y2: '50',
105
+ containLabel: true,
106
+ },
107
+ legend: this.chartLegend,
108
+ tooltip: {},
109
+ yAxis: {
110
+ splitLine: {
111
+ show: true,
112
+ lineStyle: {
113
+ type: 'dashed',
114
+ },
115
+ },
116
+ type: 'category',
117
+ data: this.initChartAxis(),
118
+ },
119
+ xAxis: {
120
+ type: "value",
121
+ splitLine: {
122
+ show: true,
123
+ lineStyle: {
124
+ type: 'dashed',
125
+ },
126
+ },
127
+ axisPointer: {
128
+ type: 'shadow',
129
+ },
130
+ axisLine: {
131
+ lineStyle: {
132
+ color: '#dbdbdb',
133
+ width: '1',
134
+ type: 'dotted',
135
+ },
136
+ },
137
+ axisLabel: {
138
+ textStyle: {
139
+ color: '#4d4d4d',
140
+ },
141
+ },
142
+ nameTextStyle: {
143
+ color: '#4d4d4d',
144
+ },
145
+ axisTick: {
146
+ lineStyle: {
147
+ show: true,
148
+ color: '#dbdbdb',
149
+ type: 'dotted',
150
+ },
151
+ },
152
+ },
153
+ series: this.chartData,
154
+ };
155
+ }
156
+ /**
157
+ * 初始化图表数据
158
+ */
159
+ loadChartInfo() {
160
+ if (this.config) {
161
+ this.initChartData();
162
+ this.initChartLegend();
163
+ this.initChartTitle();
164
+ this.initChartOption();
165
+ setTimeout(() => {
166
+ this.renderChart();
167
+ }, 0);
168
+ }
169
+ }
170
+ /**
171
+ * 渲染图表
172
+ */
173
+ renderChart() {
174
+ if (!this.chartInstance) {
175
+ this.chartInstance = echarts.init(this.chartContainer.nativeElement);
176
+ this.chartInstance.setOption(this.chartOption);
177
+ window.addEventListener('resize', () => {
178
+ this.chartInstance?.resize();
179
+ });
180
+ }
181
+ }
182
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
183
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: EchartCategoryStackComponent, isStandalone: true, selector: "echart-category-stack", usesInheritance: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
184
+ }
185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackComponent, decorators: [{
186
+ type: Component,
187
+ args: [{ selector: 'echart-category-stack', imports: [
188
+ CommonModule
189
+ ], template: "<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}\n"] }]
190
+ }], ctorParameters: () => [] });
191
+
192
+ const components = [EchartCategoryStackComponent];
193
+ class EchartCategoryStackModule {
194
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
195
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackModule, imports: [EchartCategoryStackComponent], exports: [EchartCategoryStackComponent] });
196
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackModule, imports: [components] });
197
+ }
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartCategoryStackModule, decorators: [{
199
+ type: NgModule,
200
+ args: [{
201
+ imports: [...components],
202
+ exports: [...components],
203
+ }]
204
+ }] });
205
+
206
+ /**
207
+ * Generated bundle index. Do not edit.
208
+ */
209
+
210
+ export { EchartCategoryStackComponent, EchartCategoryStackModule };
211
+ //# sourceMappingURL=echart.category-stack.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"echart.category-stack.mjs","sources":["../../../../packages/chart/echart/category-stack/src/default/index.ts","../../../../packages/chart/echart/category-stack/src/default/index.html","../../../../packages/chart/echart/category-stack/src/index.module.ts","../../../../packages/chart/echart/category-stack/echart.category-stack.ts"],"sourcesContent":["/**\n * 堆积图\n */\nimport { Component, OnInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport * as echarts from 'echarts/core';\nimport { BarChart } from 'echarts/charts';\nimport { TitleComponent, TooltipComponent, GridComponent, LegendComponent } from 'echarts/components';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport { GramBaseChartService } from '@ebuilding/chart/service';\nimport _ from 'lodash';\necharts.use([BarChart, TitleComponent, TooltipComponent, GridComponent, LegendComponent, CanvasRenderer]);\n\n@Component({\n selector: 'echart-category-stack',\n templateUrl: './index.html',\n styleUrls: ['./index.less'],\n imports: [\n CommonModule\n ]\n})\nexport class EchartCategoryStackComponent extends GramBaseChartService implements OnInit {\n override color = [\n '#71D1FF',\n '#71A9FF',\n '#8C94FC',\n '#DDB0F0',\n '#FFCA5E',\n '#FFB15E',\n '#71D1FF',\n '#71A9FF',\n '#8C94FC',\n '#DDB0F0',\n '#FFCA5E',\n '#FFB15E',\n ];\n\n constructor() {\n super();\n }\n\n ngOnInit(): void { }\n\n /**\n * 初始化数据\n */\n initChartData() {\n if (this.config!! && this.config.data!! && this.config.data.val!! && Array.isArray(this.config.data.val)) {\n let isSingle: boolean = this.config.data.val.length == 1;\n this.chartData = this.config.data.val.map((item: any, index: number) => {\n if (!isSingle) {\n item.data = item.data.map((a: any) => {\n let newA: any = { value: a, itemStyle: { color: this.color[index] } };\n return newA;\n });\n }\n let obj: any = {\n type: 'bar',\n name: item.text,\n data: item.data,\n barMaxWidth: 35,\n stack: 'total',\n\n label: this.config.data?.label ? this.config.data.label : {},\n // itemStyle:\n // isSingle == true\n // ? {\n // normal: {\n // borderRadius: [12, 12, 0, 0],\n // color: (a: any) => {\n // return this.color[a.dataIndex];\n // },\n // },\n // }\n // : {\n // normal: {\n // borderRadius: [12, 12, 0, 0],\n // },\n // },\n };\n if (item?.type!! && item.type == 'line') {\n obj['type'] = 'line';\n obj['lineStyle'] = {\n color: this.color[index],\n };\n }\n return obj;\n });\n }\n }\n\n /**\n * 初始化X轴\n * @returns\n */\n initChartAxis() {\n if (\n this.config!! &&\n this.config.data!! &&\n this.config.data.x!! &&\n this.config.data.x.data!! &&\n Array.isArray(this.config.data.x.data)\n ) {\n return _.cloneDeep(this.config.data.x.data);\n }\n }\n\n /**\n * 初始化图表配置\n */\n initChartOption() {\n this.chartOption = {\n title: this.chartTitle,\n animation: this.config?.animation == false ? false : true,\n color: this.color,\n grid: {\n left: '3%',\n right: '18',\n y2: '50',\n containLabel: true,\n },\n legend: this.chartLegend,\n tooltip: {},\n yAxis: {\n splitLine: {\n show: true,\n lineStyle: {\n type: 'dashed',\n },\n },\n\n type: 'category',\n data: this.initChartAxis(),\n },\n xAxis: {\n type: \"value\",\n splitLine: {\n show: true,\n lineStyle: {\n type: 'dashed',\n },\n },\n axisPointer: {\n type: 'shadow',\n },\n axisLine: {\n lineStyle: {\n color: '#dbdbdb',\n width: '1',\n type: 'dotted',\n },\n },\n axisLabel: {\n textStyle: {\n color: '#4d4d4d',\n },\n },\n nameTextStyle: {\n color: '#4d4d4d',\n },\n axisTick: {\n lineStyle: {\n show: true,\n color: '#dbdbdb',\n type: 'dotted',\n },\n },\n },\n series: this.chartData,\n };\n }\n\n /**\n * 初始化图表数据\n */\n override loadChartInfo() {\n if (this.config!!) {\n this.initChartData();\n this.initChartLegend();\n this.initChartTitle();\n this.initChartOption();\n setTimeout(() => {\n this.renderChart();\n }, 0);\n }\n }\n\n /**\n * 渲染图表\n */\n renderChart() {\n if (!this.chartInstance) {\n this.chartInstance = echarts.init(this.chartContainer.nativeElement);\n this.chartInstance.setOption(this.chartOption);\n window.addEventListener('resize', () => {\n this.chartInstance?.resize();\n });\n }\n }\n}\n","<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>","import { NgModule } from '@angular/core';\nimport { EchartCategoryStackComponent } from './default/index';\nconst components: any[] = [EchartCategoryStackComponent];\n\n@NgModule({\n imports: [...components],\n exports: [...components],\n})\nexport class EchartCategoryStackModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as echarts from 'echarts/core';
5
+ import { GaugeChart } from 'echarts/charts';
6
+ import { TitleComponent, TooltipComponent, GridComponent, LegendComponent } from 'echarts/components';
7
+ import { CanvasRenderer } from 'echarts/renderers';
8
+ import { GramBaseChartService } from '@ebuilding/chart/service';
9
+
10
+ /**
11
+ * gauge
12
+ */
13
+ echarts.use([GaugeChart, TitleComponent, TooltipComponent, GridComponent, LegendComponent, CanvasRenderer]);
14
+ class EchartGaugeMainComponent extends GramBaseChartService {
15
+ color = [
16
+ '#71D1FF',
17
+ '#71A9FF',
18
+ '#8C94FC',
19
+ '#DDB0F0',
20
+ '#FFCA5E',
21
+ '#FFB15E',
22
+ '#71D1FF',
23
+ '#71A9FF',
24
+ '#8C94FC',
25
+ '#DDB0F0',
26
+ '#FFCA5E',
27
+ '#FFB15E',
28
+ ];
29
+ constructor() {
30
+ super();
31
+ }
32
+ ngOnInit() { }
33
+ initChartData() {
34
+ if (this.config && this.config?.data && this.config?.data?.val && Array.isArray(this.config.data.val) && this.config.data.val.length > 0) {
35
+ let item = this.config.data.val[0];
36
+ if (item && item?.data && item?.data?.length > 0) {
37
+ this.chartData = [
38
+ {
39
+ value: item?.data[0],
40
+ name: null
41
+ }
42
+ ];
43
+ }
44
+ }
45
+ }
46
+ /**
47
+ * 初始化图表配置
48
+ */
49
+ initChartOption() {
50
+ this.chartOption = {
51
+ tooltip: {
52
+ formatter: '{a} <br/>{b} : {c}%'
53
+ },
54
+ series: [
55
+ {
56
+ name: 'Pressure',
57
+ type: 'gauge',
58
+ startAngle: 180,
59
+ endAngle: 0,
60
+ progress: {
61
+ show: true
62
+ },
63
+ detail: {
64
+ valueAnimation: true,
65
+ formatter: '{value}'
66
+ },
67
+ data: this.chartData
68
+ }
69
+ ]
70
+ };
71
+ }
72
+ /**
73
+ * 初始化图表数据
74
+ */
75
+ loadChartInfo() {
76
+ if (this.config) {
77
+ this.initChartData();
78
+ this.initChartLegend();
79
+ this.initChartTitle();
80
+ this.initChartOption();
81
+ setTimeout(() => {
82
+ this.renderChart();
83
+ }, 0);
84
+ }
85
+ }
86
+ /**
87
+ * 渲染图表
88
+ */
89
+ renderChart() {
90
+ if (!this.chartInstance) {
91
+ this.chartInstance = echarts.init(this.chartContainer.nativeElement);
92
+ this.chartInstance.setOption(this.chartOption);
93
+ window.addEventListener('resize', () => {
94
+ this.chartInstance?.resize();
95
+ });
96
+ }
97
+ }
98
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeMainComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
99
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: EchartGaugeMainComponent, isStandalone: true, selector: "echart-gauge", usesInheritance: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
100
+ }
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeMainComponent, decorators: [{
102
+ type: Component,
103
+ args: [{ selector: 'echart-gauge', imports: [
104
+ CommonModule
105
+ ], template: "<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}\n"] }]
106
+ }], ctorParameters: () => [] });
107
+
108
+ const components = [EchartGaugeMainComponent];
109
+ class EchartGaugeModule {
110
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
111
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeModule, imports: [EchartGaugeMainComponent], exports: [EchartGaugeMainComponent] });
112
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeModule, imports: [components] });
113
+ }
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EchartGaugeModule, decorators: [{
115
+ type: NgModule,
116
+ args: [{
117
+ imports: [...components],
118
+ exports: [...components],
119
+ }]
120
+ }] });
121
+
122
+ /**
123
+ * Generated bundle index. Do not edit.
124
+ */
125
+
126
+ export { EchartGaugeMainComponent, EchartGaugeModule };
127
+ //# sourceMappingURL=echart.gauge.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"echart.gauge.mjs","sources":["../../../../packages/chart/echart/gauge/src/default/index.ts","../../../../packages/chart/echart/gauge/src/default/index.html","../../../../packages/chart/echart/gauge/src/index.module.ts","../../../../packages/chart/echart/gauge/echart.gauge.ts"],"sourcesContent":["/**\n * gauge\n */\nimport { Component, OnInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport * as echarts from 'echarts/core';\nimport { GaugeChart } from 'echarts/charts';\nimport { TitleComponent, TooltipComponent, GridComponent, LegendComponent } from 'echarts/components';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport { GramBaseChartService } from '@ebuilding/chart/service';\nimport _ from 'lodash';\necharts.use([GaugeChart, TitleComponent, TooltipComponent, GridComponent, LegendComponent, CanvasRenderer]);\n\n@Component({\n selector: 'echart-gauge',\n templateUrl: './index.html',\n styleUrls: ['./index.less'],\n imports: [\n CommonModule\n ]\n})\nexport class EchartGaugeMainComponent extends GramBaseChartService implements OnInit {\n override color = [\n '#71D1FF',\n '#71A9FF',\n '#8C94FC',\n '#DDB0F0',\n '#FFCA5E',\n '#FFB15E',\n '#71D1FF',\n '#71A9FF',\n '#8C94FC',\n '#DDB0F0',\n '#FFCA5E',\n '#FFB15E',\n ];\n\n constructor() {\n super();\n }\n\n ngOnInit(): void { }\n\n initChartData() {\n if (this.config && this.config?.data && this.config?.data?.val && Array.isArray(this.config.data.val) && this.config.data.val.length > 0) {\n let item: any = this.config.data.val[0];\n if (item && item?.data && item?.data?.length > 0) {\n this.chartData = [\n {\n value: item?.data[0],\n name: null\n }\n ];\n }\n }\n }\n\n /**\n * 初始化图表配置\n */\n initChartOption() {\n\n this.chartOption = {\n tooltip: {\n formatter: '{a} <br/>{b} : {c}%'\n },\n series: [\n {\n name: 'Pressure',\n type: 'gauge',\n startAngle: 180,\n endAngle: 0,\n progress: {\n show: true\n },\n detail: {\n valueAnimation: true,\n formatter: '{value}'\n },\n data: this.chartData\n }\n ]\n };\n }\n\n /**\n * 初始化图表数据\n */\n override loadChartInfo() {\n if (this.config) {\n this.initChartData();\n this.initChartLegend();\n this.initChartTitle();\n this.initChartOption();\n setTimeout(() => {\n this.renderChart();\n }, 0);\n }\n }\n\n /**\n * 渲染图表\n */\n renderChart() {\n if (!this.chartInstance) {\n this.chartInstance = echarts.init(this.chartContainer.nativeElement);\n this.chartInstance.setOption(this.chartOption);\n window.addEventListener('resize', () => {\n this.chartInstance?.resize();\n });\n }\n }\n}\n","<div #chartContainer id=\"chartContainer\" style=\"width: 100%; height: 100%;\"></div>","import { NgModule } from '@angular/core';\nimport { EchartGaugeMainComponent } from './default/index';\nconst components: any[] = [EchartGaugeMainComponent];\n\n@NgModule({\n imports: [...components],\n exports: [...components],\n})\nexport class EchartGaugeModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ebuilding/chart",
3
- "version": "2.1.6",
3
+ "version": "2.1.8",
4
4
  "dependencies": {
5
5
  "extend": "undefined",
6
6
  "tslib": "^2.3.0"
@@ -31,17 +31,21 @@
31
31
  "types": "./echart/bar/index.d.ts",
32
32
  "default": "./fesm2022/echart.bar.mjs"
33
33
  },
34
+ "./echart/content": {
35
+ "types": "./echart/content/index.d.ts",
36
+ "default": "./fesm2022/echart.content.mjs"
37
+ },
34
38
  "./echart/bar2": {
35
39
  "types": "./echart/bar2/index.d.ts",
36
40
  "default": "./fesm2022/echart.bar2.mjs"
37
41
  },
38
- "./echart/content": {
39
- "types": "./echart/content/index.d.ts",
40
- "default": "./fesm2022/echart.content.mjs"
42
+ "./echart/gauge": {
43
+ "types": "./echart/gauge/index.d.ts",
44
+ "default": "./fesm2022/echart.gauge.mjs"
41
45
  },
42
46
  "./echart/category-stack": {
43
47
  "types": "./echart/category-stack/index.d.ts",
44
- "default": "./fesm2022/echart.bar.mjs"
48
+ "default": "./fesm2022/echart.category-stack.mjs"
45
49
  },
46
50
  "./echart/line": {
47
51
  "types": "./echart/line/index.d.ts",
@@ -51,21 +55,17 @@
51
55
  "types": "./echart/indicator/index.d.ts",
52
56
  "default": "./fesm2022/echart.indicator.mjs"
53
57
  },
54
- "./echart/gauge": {
55
- "types": "./echart/gauge/index.d.ts",
56
- "default": "./fesm2022/echart.bar.mjs"
57
- },
58
- "./echart/number": {
59
- "types": "./echart/number/index.d.ts",
60
- "default": "./fesm2022/echart.number.mjs"
58
+ "./echart/radar": {
59
+ "types": "./echart/radar/index.d.ts",
60
+ "default": "./fesm2022/echart.radar.mjs"
61
61
  },
62
62
  "./echart/sort": {
63
63
  "types": "./echart/sort/index.d.ts",
64
64
  "default": "./fesm2022/echart.sort.mjs"
65
65
  },
66
- "./echart/radar": {
67
- "types": "./echart/radar/index.d.ts",
68
- "default": "./fesm2022/echart.radar.mjs"
66
+ "./echart/number": {
67
+ "types": "./echart/number/index.d.ts",
68
+ "default": "./fesm2022/echart.number.mjs"
69
69
  },
70
70
  "./echart/pie": {
71
71
  "types": "./echart/pie/index.d.ts",