@delon/chart 13.2.0 → 13.2.1
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.
- package/core/g2.base.component.d.ts +2 -0
- package/esm2020/bar/bar.component.mjs +5 -5
- package/esm2020/bar/bar.module.mjs +4 -4
- package/esm2020/card/card.component.mjs +3 -3
- package/esm2020/card/card.module.mjs +4 -4
- package/esm2020/chart-echarts/echarts.component.mjs +3 -3
- package/esm2020/chart-echarts/echarts.module.mjs +4 -4
- package/esm2020/chart-echarts/echarts.service.mjs +3 -3
- package/esm2020/core/g2.base.component.mjs +8 -5
- package/esm2020/core/g2.servicce.mjs +5 -5
- package/esm2020/custom/custom.component.mjs +3 -3
- package/esm2020/custom/custom.module.mjs +4 -4
- package/esm2020/gauge/gauge.component.mjs +6 -6
- package/esm2020/gauge/gauge.module.mjs +4 -4
- package/esm2020/mini-area/mini-area.component.mjs +5 -5
- package/esm2020/mini-area/mini-area.module.mjs +4 -4
- package/esm2020/mini-bar/mini-bar.component.mjs +5 -5
- package/esm2020/mini-bar/mini-bar.module.mjs +4 -4
- package/esm2020/mini-progress/mini-progress.component.mjs +3 -3
- package/esm2020/mini-progress/mini-progress.module.mjs +4 -4
- package/esm2020/number-info/number-info.component.mjs +3 -3
- package/esm2020/number-info/number-info.module.mjs +4 -4
- package/esm2020/pie/pie.component.mjs +16 -10
- package/esm2020/pie/pie.module.mjs +4 -4
- package/esm2020/radar/radar.component.mjs +5 -5
- package/esm2020/radar/radar.module.mjs +4 -4
- package/esm2020/single-bar/single-bar.component.mjs +5 -5
- package/esm2020/single-bar/single-bar.module.mjs +4 -4
- package/esm2020/tag-cloud/tag-cloud.component.mjs +8 -7
- package/esm2020/tag-cloud/tag-cloud.module.mjs +4 -4
- package/esm2020/timeline/timeline.component.mjs +5 -5
- package/esm2020/timeline/timeline.module.mjs +4 -4
- package/esm2020/trend/trend.component.mjs +3 -3
- package/esm2020/trend/trend.module.mjs +4 -4
- package/esm2020/water-wave/water-wave.component.mjs +3 -3
- package/esm2020/water-wave/water-wave.module.mjs +4 -4
- package/fesm2015/bar.mjs +8 -8
- package/fesm2015/bar.mjs.map +1 -1
- package/fesm2015/card.mjs +7 -7
- package/fesm2015/chart-echarts.mjs +10 -10
- package/fesm2015/core.mjs +11 -8
- package/fesm2015/core.mjs.map +1 -1
- package/fesm2015/custom.mjs +7 -7
- package/fesm2015/gauge.mjs +9 -9
- package/fesm2015/gauge.mjs.map +1 -1
- package/fesm2015/mini-area.mjs +8 -8
- package/fesm2015/mini-area.mjs.map +1 -1
- package/fesm2015/mini-bar.mjs +8 -8
- package/fesm2015/mini-bar.mjs.map +1 -1
- package/fesm2015/mini-progress.mjs +7 -7
- package/fesm2015/number-info.mjs +7 -7
- package/fesm2015/pie.mjs +19 -13
- package/fesm2015/pie.mjs.map +1 -1
- package/fesm2015/radar.mjs +8 -8
- package/fesm2015/radar.mjs.map +1 -1
- package/fesm2015/single-bar.mjs +8 -8
- package/fesm2015/single-bar.mjs.map +1 -1
- package/fesm2015/tag-cloud.mjs +11 -10
- package/fesm2015/tag-cloud.mjs.map +1 -1
- package/fesm2015/timeline.mjs +8 -8
- package/fesm2015/timeline.mjs.map +1 -1
- package/fesm2015/trend.mjs +7 -7
- package/fesm2015/water-wave.mjs +7 -7
- package/fesm2020/bar.mjs +8 -8
- package/fesm2020/bar.mjs.map +1 -1
- package/fesm2020/card.mjs +7 -7
- package/fesm2020/chart-echarts.mjs +10 -10
- package/fesm2020/core.mjs +11 -8
- package/fesm2020/core.mjs.map +1 -1
- package/fesm2020/custom.mjs +7 -7
- package/fesm2020/gauge.mjs +9 -9
- package/fesm2020/gauge.mjs.map +1 -1
- package/fesm2020/mini-area.mjs +8 -8
- package/fesm2020/mini-area.mjs.map +1 -1
- package/fesm2020/mini-bar.mjs +8 -8
- package/fesm2020/mini-bar.mjs.map +1 -1
- package/fesm2020/mini-progress.mjs +7 -7
- package/fesm2020/number-info.mjs +7 -7
- package/fesm2020/pie.mjs +19 -13
- package/fesm2020/pie.mjs.map +1 -1
- package/fesm2020/radar.mjs +8 -8
- package/fesm2020/radar.mjs.map +1 -1
- package/fesm2020/single-bar.mjs +8 -8
- package/fesm2020/single-bar.mjs.map +1 -1
- package/fesm2020/tag-cloud.mjs +11 -10
- package/fesm2020/tag-cloud.mjs.map +1 -1
- package/fesm2020/timeline.mjs +8 -8
- package/fesm2020/timeline.mjs.map +1 -1
- package/fesm2020/trend.mjs +7 -7
- package/fesm2020/water-wave.mjs +7 -7
- package/package.json +3 -3
- package/pie/pie.component.d.ts +2 -1
package/fesm2020/tag-cloud.mjs
CHANGED
|
@@ -22,7 +22,8 @@ class G2TagCloudComponent extends G2BaseComponent {
|
|
|
22
22
|
}
|
|
23
23
|
// #endregion
|
|
24
24
|
initTagCloud() {
|
|
25
|
-
|
|
25
|
+
const winG2 = this.winG2;
|
|
26
|
+
winG2.registerShape('point', 'cloud', {
|
|
26
27
|
draw(cfg, container) {
|
|
27
28
|
const data = cfg.data;
|
|
28
29
|
const textShape = container.addShape({
|
|
@@ -41,7 +42,7 @@ class G2TagCloudComponent extends G2BaseComponent {
|
|
|
41
42
|
}
|
|
42
43
|
});
|
|
43
44
|
if (data.rotate) {
|
|
44
|
-
|
|
45
|
+
winG2.Util.rotate(textShape, (data.rotate * Math.PI) / 180);
|
|
45
46
|
}
|
|
46
47
|
return textShape;
|
|
47
48
|
}
|
|
@@ -56,7 +57,7 @@ class G2TagCloudComponent extends G2BaseComponent {
|
|
|
56
57
|
if (this.width === 0) {
|
|
57
58
|
this.width = this.el.nativeElement.clientWidth;
|
|
58
59
|
}
|
|
59
|
-
const chart = (this._chart = new
|
|
60
|
+
const chart = (this._chart = new this.winG2.Chart({
|
|
60
61
|
container: el.nativeElement,
|
|
61
62
|
autoFit: false,
|
|
62
63
|
padding,
|
|
@@ -133,15 +134,15 @@ class G2TagCloudComponent extends G2BaseComponent {
|
|
|
133
134
|
this.installResizeEvent();
|
|
134
135
|
}
|
|
135
136
|
}
|
|
136
|
-
G2TagCloudComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
137
|
-
G2TagCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
137
|
+
G2TagCloudComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
138
|
+
G2TagCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: G2TagCloudComponent, selector: "g2-tag-cloud", inputs: { width: "width", height: "height", padding: "padding", data: "data" }, outputs: { clickItem: "clickItem" }, exportAs: ["g2TagCloud"], usesInheritance: true, ngImport: i0, template: `<nz-skeleton *ngIf="!loaded"></nz-skeleton>`, isInline: true, components: [{ type: i1.NzSkeletonComponent, selector: "nz-skeleton", inputs: ["nzActive", "nzLoading", "nzRound", "nzTitle", "nzAvatar", "nzParagraph"], exportAs: ["nzSkeleton"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
138
139
|
__decorate([
|
|
139
140
|
InputNumber()
|
|
140
141
|
], G2TagCloudComponent.prototype, "width", void 0);
|
|
141
142
|
__decorate([
|
|
142
143
|
InputNumber()
|
|
143
144
|
], G2TagCloudComponent.prototype, "height", void 0);
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudComponent, decorators: [{
|
|
145
146
|
type: Component,
|
|
146
147
|
args: [{
|
|
147
148
|
selector: 'g2-tag-cloud',
|
|
@@ -166,10 +167,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
166
167
|
const COMPONENTS = [G2TagCloudComponent];
|
|
167
168
|
class G2TagCloudModule {
|
|
168
169
|
}
|
|
169
|
-
G2TagCloudModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
170
|
-
G2TagCloudModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.
|
|
171
|
-
G2TagCloudModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.
|
|
172
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
170
|
+
G2TagCloudModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
171
|
+
G2TagCloudModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudModule, declarations: [G2TagCloudComponent], imports: [CommonModule, NzSkeletonModule], exports: [G2TagCloudComponent] });
|
|
172
|
+
G2TagCloudModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudModule, imports: [[CommonModule, NzSkeletonModule]] });
|
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TagCloudModule, decorators: [{
|
|
173
174
|
type: NgModule,
|
|
174
175
|
args: [{
|
|
175
176
|
imports: [CommonModule, NzSkeletonModule],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-cloud.mjs","sources":["../../../../packages/chart/tag-cloud/tag-cloud.component.ts","../../../../packages/chart/tag-cloud/tag-cloud.module.ts","../../../../packages/chart/tag-cloud/tag-cloud.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\n\nimport type { Chart, Event } from '@antv/g2';\n\nimport { G2BaseComponent } from '@delon/chart/core';\nimport { InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport interface G2TagCloudData {\n value?: number;\n name?: string;\n [key: string]: NzSafeAny;\n}\n\nexport interface G2TagCloudClickItem {\n item: G2TagCloudData;\n ev: Event;\n}\n\n@Component({\n selector: 'g2-tag-cloud',\n exportAs: 'g2TagCloud',\n template: `<nz-skeleton *ngIf=\"!loaded\"></nz-skeleton>`,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class G2TagCloudComponent extends G2BaseComponent {\n static ngAcceptInputType_height: NumberInput;\n static ngAcceptInputType_width: NumberInput;\n\n // #region fields\n\n @Input() @InputNumber() width = 0;\n @Input() @InputNumber() height = 200;\n @Input() padding: number | number[] | 'auto' = 0;\n @Input() data: G2TagCloudData[] = [];\n @Output() readonly clickItem = new EventEmitter<G2TagCloudClickItem>();\n\n // #endregion\n\n private initTagCloud(): void {\n
|
|
1
|
+
{"version":3,"file":"tag-cloud.mjs","sources":["../../../../packages/chart/tag-cloud/tag-cloud.component.ts","../../../../packages/chart/tag-cloud/tag-cloud.module.ts","../../../../packages/chart/tag-cloud/tag-cloud.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\n\nimport type { Chart, Event } from '@antv/g2';\n\nimport { G2BaseComponent } from '@delon/chart/core';\nimport { InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport interface G2TagCloudData {\n value?: number;\n name?: string;\n [key: string]: NzSafeAny;\n}\n\nexport interface G2TagCloudClickItem {\n item: G2TagCloudData;\n ev: Event;\n}\n\n@Component({\n selector: 'g2-tag-cloud',\n exportAs: 'g2TagCloud',\n template: `<nz-skeleton *ngIf=\"!loaded\"></nz-skeleton>`,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class G2TagCloudComponent extends G2BaseComponent {\n static ngAcceptInputType_height: NumberInput;\n static ngAcceptInputType_width: NumberInput;\n\n // #region fields\n\n @Input() @InputNumber() width = 0;\n @Input() @InputNumber() height = 200;\n @Input() padding: number | number[] | 'auto' = 0;\n @Input() data: G2TagCloudData[] = [];\n @Output() readonly clickItem = new EventEmitter<G2TagCloudClickItem>();\n\n // #endregion\n\n private initTagCloud(): void {\n const winG2 = this.winG2;\n winG2.registerShape('point', 'cloud', {\n draw(cfg: NzSafeAny, container: NzSafeAny) {\n const data = cfg.data as NzSafeAny;\n const textShape = container.addShape({\n type: 'text',\n name: 'tag-cloud-text',\n attrs: {\n ...cfg.style,\n fontSize: data.size,\n text: data.text,\n textAlign: 'center',\n fontFamily: data.font,\n fill: cfg.color,\n textBaseline: 'Alphabetic',\n x: cfg.x,\n y: cfg.y\n } as NzSafeAny\n });\n if (data.rotate) {\n winG2.Util.rotate(textShape, (data.rotate * Math.PI) / 180);\n }\n return textShape;\n }\n });\n }\n\n install(): void {\n this.initTagCloud();\n\n const { el, padding, theme } = this;\n if (this.height === 0) {\n this.height = this.el.nativeElement.clientHeight;\n }\n if (this.width === 0) {\n this.width = this.el.nativeElement.clientWidth;\n }\n\n const chart: Chart = (this._chart = new this.winG2.Chart({\n container: el.nativeElement,\n autoFit: false,\n padding,\n height: this.height,\n width: this.width,\n theme\n }));\n chart.scale({\n x: { nice: false },\n y: { nice: false }\n });\n chart.legend(false);\n chart.axis(false);\n chart.tooltip({\n showTitle: false,\n showMarkers: false\n });\n (chart.coordinate() as NzSafeAny).reflect();\n chart\n .point()\n .position('x*y')\n .color('text')\n .shape('cloud')\n .state({\n active: {\n style: {\n fillOpacity: 0.4\n }\n }\n });\n chart.interaction('element-active');\n\n chart.on('tag-cloud-text:click', (ev: Event) => {\n this.ngZone.run(() => this.clickItem.emit({ item: ev.data?.data, ev }));\n });\n\n this.ready.next(chart);\n\n this.changeData();\n chart.render();\n }\n\n changeData(): void {\n const { _chart, data } = this;\n if (!_chart || !Array.isArray(data) || data.length <= 0) return;\n\n const dv = new (window as NzSafeAny).DataSet.View().source(data);\n const range = dv.range('value');\n const min = range[0];\n const max = range[1];\n\n dv.transform({\n type: 'tag-cloud',\n fields: ['name', 'value'],\n // imageMask,\n font: 'Verdana',\n size: [this.width, this.height], // 宽高设置最好根据 imageMask 做调整\n padding: 0,\n timeInterval: 5000, // max execute time\n rotate() {\n let random = ~~(Math.random() * 4) % 4;\n if (random === 2) {\n random = 0;\n }\n return random * 90; // 0, 90, 270\n },\n fontSize(d: NzSafeAny) {\n return ((d.value - min) / (max - min)) * (32 - 8) + 8;\n }\n } as NzSafeAny);\n\n _chart.changeData(dv.rows);\n }\n\n private installResizeEvent(): void {\n this.resize$ = fromEvent(window, 'resize')\n .pipe(\n filter(() => !!this._chart),\n debounceTime(200)\n )\n .subscribe(() => this.changeData());\n }\n\n onInit(): void {\n this.installResizeEvent();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { G2TagCloudComponent } from './tag-cloud.component';\n\nconst COMPONENTS = [G2TagCloudComponent];\n\n@NgModule({\n imports: [CommonModule, NzSkeletonModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class G2TagCloudModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/fesm2020/timeline.mjs
CHANGED
|
@@ -34,7 +34,7 @@ class G2TimelineComponent extends G2BaseComponent {
|
|
|
34
34
|
}
|
|
35
35
|
install() {
|
|
36
36
|
const { node, height, padding, slider, maxAxis, theme, maskSlider } = this;
|
|
37
|
-
const chart = (this._chart = new
|
|
37
|
+
const chart = (this._chart = new this.winG2.Chart({
|
|
38
38
|
container: node.nativeElement,
|
|
39
39
|
autoFit: true,
|
|
40
40
|
height,
|
|
@@ -143,8 +143,8 @@ class G2TimelineComponent extends G2BaseComponent {
|
|
|
143
143
|
_chart.changeData(filterData);
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
|
-
G2TimelineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
147
|
-
G2TimelineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
146
|
+
G2TimelineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
147
|
+
G2TimelineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: G2TimelineComponent, selector: "g2-timeline", inputs: { title: "title", maxAxis: "maxAxis", data: "data", titleMap: "titleMap", colorMap: "colorMap", mask: "mask", maskSlider: "maskSlider", position: "position", height: "height", padding: "padding", borderWidth: "borderWidth", slider: "slider" }, outputs: { clickItem: "clickItem" }, exportAs: ["g2Timeline"], usesInheritance: true, ngImport: i0, template: `
|
|
148
148
|
<ng-container *nzStringTemplateOutlet="title">
|
|
149
149
|
<h4>{{ title }}</h4>
|
|
150
150
|
</ng-container>
|
|
@@ -163,7 +163,7 @@ __decorate([
|
|
|
163
163
|
__decorate([
|
|
164
164
|
InputBoolean()
|
|
165
165
|
], G2TimelineComponent.prototype, "slider", void 0);
|
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineComponent, decorators: [{
|
|
167
167
|
type: Component,
|
|
168
168
|
args: [{
|
|
169
169
|
selector: 'g2-timeline',
|
|
@@ -210,10 +210,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
210
210
|
const COMPONENTS = [G2TimelineComponent];
|
|
211
211
|
class G2TimelineModule {
|
|
212
212
|
}
|
|
213
|
-
G2TimelineModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
214
|
-
G2TimelineModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.
|
|
215
|
-
G2TimelineModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.
|
|
216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
213
|
+
G2TimelineModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
214
|
+
G2TimelineModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineModule, declarations: [G2TimelineComponent], imports: [CommonModule, NzOutletModule, NzSkeletonModule], exports: [G2TimelineComponent] });
|
|
215
|
+
G2TimelineModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineModule, imports: [[CommonModule, NzOutletModule, NzSkeletonModule]] });
|
|
216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2TimelineModule, decorators: [{
|
|
217
217
|
type: NgModule,
|
|
218
218
|
args: [{
|
|
219
219
|
imports: [CommonModule, NzOutletModule, NzSkeletonModule],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.mjs","sources":["../../../../packages/chart/timeline/timeline.component.ts","../../../../packages/chart/timeline/timeline.module.ts","../../../../packages/chart/timeline/timeline.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\n\nimport type { Chart, Event, Types } from '@antv/g2';\nimport { format } from 'date-fns';\n\nimport { G2BaseComponent, G2Time } from '@delon/chart/core';\nimport { toDate } from '@delon/util/date-time';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport interface G2TimelineData {\n /**\n * 时间值\n */\n time?: G2Time;\n /** 指标1数据 */\n y1: number;\n /** 指标2数据 */\n y2: number;\n /** 指标3数据 */\n y3?: number;\n /** 指标4数据 */\n y4?: number;\n /** 指标5数据 */\n y5?: number;\n [key: string]: NzSafeAny;\n}\n\nexport interface G2TimelineMap {\n /** 指标1 */\n y1: string;\n /** 指标 */\n y2: string;\n /** 指标3 */\n y3?: string;\n /** 指标4 */\n y4?: string;\n /** 指标5 */\n y5?: string;\n\n [key: string]: string | undefined;\n}\n\nexport interface G2TimelineClickItem {\n item: G2TimelineData;\n ev: Event;\n}\n\n@Component({\n selector: 'g2-timeline',\n exportAs: 'g2Timeline',\n template: `\n <ng-container *nzStringTemplateOutlet=\"title\">\n <h4>{{ title }}</h4>\n </ng-container>\n <nz-skeleton *ngIf=\"!loaded\"></nz-skeleton>\n <div #container></div>\n `,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class G2TimelineComponent extends G2BaseComponent {\n static ngAcceptInputType_height: NumberInput;\n static ngAcceptInputType_maxAxis: NumberInput;\n static ngAcceptInputType_borderWidth: NumberInput;\n static ngAcceptInputType_slider: BooleanInput;\n\n // #region fields\n\n @Input() title?: string | TemplateRef<void> | null;\n @Input() @InputNumber() maxAxis = 2;\n @Input() data: G2TimelineData[] = [];\n @Input() titleMap?: G2TimelineMap | null;\n @Input() colorMap: G2TimelineMap = { y1: '#5B8FF9', y2: '#5AD8A6', y3: '#5D7092', y4: '#F6BD16', y5: '#E86452' };\n @Input() mask: string = 'HH:mm';\n @Input() maskSlider: string = 'HH:mm';\n @Input() position: 'top' | 'right' | 'bottom' | 'left' = 'top';\n @Input() @InputNumber() height = 450;\n @Input() padding: number[] = [40, 8, 64, 40];\n @Input() @InputNumber() borderWidth = 2;\n @Input() @InputBoolean() slider = true;\n @Output() readonly clickItem = new EventEmitter<G2TimelineClickItem>();\n\n // #endregion\n\n onlyChangeData = (changes: SimpleChanges): boolean => {\n const tm = changes.titleMap;\n return !(tm && !tm.firstChange && tm.currentValue !== tm.previousValue);\n };\n\n install(): void {\n const { node, height, padding, slider, maxAxis, theme, maskSlider } = this;\n const chart: Chart = (this._chart = new (window as NzSafeAny).G2.Chart({\n container: node.nativeElement,\n autoFit: true,\n height,\n padding,\n theme\n }));\n chart.axis('time', { title: null });\n chart.axis('y1', { title: null });\n for (let i = 2; i <= maxAxis; i++) {\n chart.axis(`y${i}`, false);\n }\n\n chart.line().position('time*y1');\n for (let i = 2; i <= maxAxis; i++) {\n chart.line().position(`time*y${i}`);\n }\n\n chart.tooltip({\n showCrosshairs: true,\n shared: true\n });\n\n const sliderPadding = { ...[], ...padding };\n sliderPadding[0] = 0;\n if (slider) {\n chart.option('slider', {\n height: 26,\n start: 0,\n end: 1,\n trendCfg: {\n isArea: false\n },\n minLimit: 2,\n formatter: (val: Date) => format(val, maskSlider)\n });\n }\n\n chart.on(`plot:click`, (ev: Event) => {\n const records = this._chart.getSnapRecords({ x: ev.x, y: ev.y });\n this.ngZone.run(() => this.clickItem.emit({ item: records[0]._origin, ev }));\n });\n\n chart.on(`legend-item:click`, (ev: Event) => {\n const item = ev?.target?.get('delegateObject').item;\n const id = item?.id;\n const line = chart.geometries.find(w => w.getAttribute('position').getFields()[1] === id);\n if (line) {\n line.changeVisible(!item.unchecked);\n }\n });\n\n this.ready.next(chart);\n\n this.changeData();\n\n chart.render();\n }\n\n changeData(): void {\n const { _chart, height, padding, mask, titleMap, position, colorMap, borderWidth, maxAxis } = this;\n let data = [...this.data];\n if (!_chart || data.length <= 0) return;\n\n const arrAxis = [...Array(maxAxis)].map((_, index) => index + 1);\n\n _chart.legend({\n position,\n custom: true,\n items: arrAxis.map(id => {\n const key = `y${id}`;\n return {\n id: key,\n name: titleMap![key],\n value: key,\n marker: { style: { fill: colorMap[key] } }\n } as Types.LegendItem;\n })\n });\n\n // border\n _chart.geometries.forEach((v, idx: number) => {\n v.color((colorMap as NzSafeAny)[`y${idx + 1}`]).size(borderWidth);\n });\n _chart.height = height;\n _chart.padding = padding;\n\n // 转换成日期类型\n data = data\n .map(item => {\n item.time = toDate(item.time!);\n item._time = +item.time;\n return item;\n })\n .sort((a, b) => a._time - b._time);\n\n const max = Math.max(...arrAxis.map(id => [...data].sort((a, b) => b[`y${id}`] - a[`y${id}`])[0][`y${id}`]));\n const scaleOptions: Record<string, Types.ScaleOption> = {};\n arrAxis.forEach(id => {\n const key = `y${id}`;\n scaleOptions[key] = {\n alias: titleMap![key],\n max,\n min: 0\n };\n });\n _chart.scale({\n time: {\n type: 'time',\n mask,\n range: [0, 1]\n },\n ...scaleOptions\n });\n\n const initialRange = {\n start: data[0]._time,\n end: data[data.length - 1]._time\n };\n const filterData = data.filter(val => val._time >= initialRange.start && val._time <= initialRange.end);\n _chart.changeData(filterData);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { G2TimelineComponent } from './timeline.component';\n\nconst COMPONENTS = [G2TimelineComponent];\n\n@NgModule({\n imports: [CommonModule, NzOutletModule, NzSkeletonModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class G2TimelineModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"timeline.mjs","sources":["../../../../packages/chart/timeline/timeline.component.ts","../../../../packages/chart/timeline/timeline.module.ts","../../../../packages/chart/timeline/timeline.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\n\nimport type { Chart, Event, Types } from '@antv/g2';\nimport { format } from 'date-fns';\n\nimport { G2BaseComponent, G2Time } from '@delon/chart/core';\nimport { toDate } from '@delon/util/date-time';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport interface G2TimelineData {\n /**\n * 时间值\n */\n time?: G2Time;\n /** 指标1数据 */\n y1: number;\n /** 指标2数据 */\n y2: number;\n /** 指标3数据 */\n y3?: number;\n /** 指标4数据 */\n y4?: number;\n /** 指标5数据 */\n y5?: number;\n [key: string]: NzSafeAny;\n}\n\nexport interface G2TimelineMap {\n /** 指标1 */\n y1: string;\n /** 指标 */\n y2: string;\n /** 指标3 */\n y3?: string;\n /** 指标4 */\n y4?: string;\n /** 指标5 */\n y5?: string;\n\n [key: string]: string | undefined;\n}\n\nexport interface G2TimelineClickItem {\n item: G2TimelineData;\n ev: Event;\n}\n\n@Component({\n selector: 'g2-timeline',\n exportAs: 'g2Timeline',\n template: `\n <ng-container *nzStringTemplateOutlet=\"title\">\n <h4>{{ title }}</h4>\n </ng-container>\n <nz-skeleton *ngIf=\"!loaded\"></nz-skeleton>\n <div #container></div>\n `,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class G2TimelineComponent extends G2BaseComponent {\n static ngAcceptInputType_height: NumberInput;\n static ngAcceptInputType_maxAxis: NumberInput;\n static ngAcceptInputType_borderWidth: NumberInput;\n static ngAcceptInputType_slider: BooleanInput;\n\n // #region fields\n\n @Input() title?: string | TemplateRef<void> | null;\n @Input() @InputNumber() maxAxis = 2;\n @Input() data: G2TimelineData[] = [];\n @Input() titleMap?: G2TimelineMap | null;\n @Input() colorMap: G2TimelineMap = { y1: '#5B8FF9', y2: '#5AD8A6', y3: '#5D7092', y4: '#F6BD16', y5: '#E86452' };\n @Input() mask: string = 'HH:mm';\n @Input() maskSlider: string = 'HH:mm';\n @Input() position: 'top' | 'right' | 'bottom' | 'left' = 'top';\n @Input() @InputNumber() height = 450;\n @Input() padding: number[] = [40, 8, 64, 40];\n @Input() @InputNumber() borderWidth = 2;\n @Input() @InputBoolean() slider = true;\n @Output() readonly clickItem = new EventEmitter<G2TimelineClickItem>();\n\n // #endregion\n\n onlyChangeData = (changes: SimpleChanges): boolean => {\n const tm = changes.titleMap;\n return !(tm && !tm.firstChange && tm.currentValue !== tm.previousValue);\n };\n\n install(): void {\n const { node, height, padding, slider, maxAxis, theme, maskSlider } = this;\n const chart: Chart = (this._chart = new this.winG2.Chart({\n container: node.nativeElement,\n autoFit: true,\n height,\n padding,\n theme\n }));\n chart.axis('time', { title: null });\n chart.axis('y1', { title: null });\n for (let i = 2; i <= maxAxis; i++) {\n chart.axis(`y${i}`, false);\n }\n\n chart.line().position('time*y1');\n for (let i = 2; i <= maxAxis; i++) {\n chart.line().position(`time*y${i}`);\n }\n\n chart.tooltip({\n showCrosshairs: true,\n shared: true\n });\n\n const sliderPadding = { ...[], ...padding };\n sliderPadding[0] = 0;\n if (slider) {\n chart.option('slider', {\n height: 26,\n start: 0,\n end: 1,\n trendCfg: {\n isArea: false\n },\n minLimit: 2,\n formatter: (val: Date) => format(val, maskSlider)\n });\n }\n\n chart.on(`plot:click`, (ev: Event) => {\n const records = this._chart.getSnapRecords({ x: ev.x, y: ev.y });\n this.ngZone.run(() => this.clickItem.emit({ item: records[0]._origin, ev }));\n });\n\n chart.on(`legend-item:click`, (ev: Event) => {\n const item = ev?.target?.get('delegateObject').item;\n const id = item?.id;\n const line = chart.geometries.find(w => w.getAttribute('position').getFields()[1] === id);\n if (line) {\n line.changeVisible(!item.unchecked);\n }\n });\n\n this.ready.next(chart);\n\n this.changeData();\n\n chart.render();\n }\n\n changeData(): void {\n const { _chart, height, padding, mask, titleMap, position, colorMap, borderWidth, maxAxis } = this;\n let data = [...this.data];\n if (!_chart || data.length <= 0) return;\n\n const arrAxis = [...Array(maxAxis)].map((_, index) => index + 1);\n\n _chart.legend({\n position,\n custom: true,\n items: arrAxis.map(id => {\n const key = `y${id}`;\n return {\n id: key,\n name: titleMap![key],\n value: key,\n marker: { style: { fill: colorMap[key] } }\n } as Types.LegendItem;\n })\n });\n\n // border\n _chart.geometries.forEach((v, idx: number) => {\n v.color((colorMap as NzSafeAny)[`y${idx + 1}`]).size(borderWidth);\n });\n _chart.height = height;\n _chart.padding = padding;\n\n // 转换成日期类型\n data = data\n .map(item => {\n item.time = toDate(item.time!);\n item._time = +item.time;\n return item;\n })\n .sort((a, b) => a._time - b._time);\n\n const max = Math.max(...arrAxis.map(id => [...data].sort((a, b) => b[`y${id}`] - a[`y${id}`])[0][`y${id}`]));\n const scaleOptions: Record<string, Types.ScaleOption> = {};\n arrAxis.forEach(id => {\n const key = `y${id}`;\n scaleOptions[key] = {\n alias: titleMap![key],\n max,\n min: 0\n };\n });\n _chart.scale({\n time: {\n type: 'time',\n mask,\n range: [0, 1]\n },\n ...scaleOptions\n });\n\n const initialRange = {\n start: data[0]._time,\n end: data[data.length - 1]._time\n };\n const filterData = data.filter(val => val._time >= initialRange.start && val._time <= initialRange.end);\n _chart.changeData(filterData);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { G2TimelineComponent } from './timeline.component';\n\nconst COMPONENTS = [G2TimelineComponent];\n\n@NgModule({\n imports: [CommonModule, NzOutletModule, NzSkeletonModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class G2TimelineModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/fesm2020/trend.mjs
CHANGED
|
@@ -15,8 +15,8 @@ class TrendComponent {
|
|
|
15
15
|
this.reverseColor = false;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
TrendComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
19
|
-
TrendComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
18
|
+
TrendComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
TrendComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: TrendComponent, selector: "trend", inputs: { flag: "flag", colorful: "colorful", reverseColor: "reverseColor" }, host: { properties: { "class.trend": "true", "class.trend__grey": "!colorful", "class.trend__reverse": "colorful && reverseColor", "attr.data-flag": "flag" } }, exportAs: ["trend"], ngImport: i0, template: `
|
|
20
20
|
<ng-content></ng-content>
|
|
21
21
|
<span *ngIf="flag" class="trend__{{ flag }}"><i nz-icon nzType="caret-{{ flag }}"></i></span>
|
|
22
22
|
`, isInline: true, directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
@@ -26,7 +26,7 @@ __decorate([
|
|
|
26
26
|
__decorate([
|
|
27
27
|
InputBoolean()
|
|
28
28
|
], TrendComponent.prototype, "reverseColor", void 0);
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendComponent, decorators: [{
|
|
30
30
|
type: Component,
|
|
31
31
|
args: [{
|
|
32
32
|
selector: 'trend',
|
|
@@ -56,10 +56,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
56
56
|
const COMPONENTS = [TrendComponent];
|
|
57
57
|
class TrendModule {
|
|
58
58
|
}
|
|
59
|
-
TrendModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
60
|
-
TrendModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.
|
|
61
|
-
TrendModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
59
|
+
TrendModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
60
|
+
TrendModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendModule, declarations: [TrendComponent], imports: [CommonModule, NzIconModule], exports: [TrendComponent] });
|
|
61
|
+
TrendModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendModule, imports: [[CommonModule, NzIconModule]] });
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TrendModule, decorators: [{
|
|
63
63
|
type: NgModule,
|
|
64
64
|
args: [{
|
|
65
65
|
imports: [CommonModule, NzIconModule],
|
package/fesm2020/water-wave.mjs
CHANGED
|
@@ -188,8 +188,8 @@ class G2WaterWaveComponent {
|
|
|
188
188
|
}
|
|
189
189
|
}
|
|
190
190
|
}
|
|
191
|
-
G2WaterWaveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
192
|
-
G2WaterWaveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
191
|
+
G2WaterWaveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1.Platform }], target: i0.ɵɵFactoryTarget.Component });
|
|
192
|
+
G2WaterWaveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: G2WaterWaveComponent, selector: "g2-water-wave", inputs: { animate: "animate", delay: "delay", title: "title", color: "color", height: "height", percent: "percent" }, host: { properties: { "class.g2-water-wave": "true" } }, viewQueries: [{ propertyName: "node", first: true, predicate: ["container"], descendants: true, static: true }], exportAs: ["g2WaterWave"], usesOnChanges: true, ngImport: i0, template: "<div [ngStyle]=\"{ 'height.px': height, 'width.px': height, overflow: 'hidden' }\">\n <canvas #container class=\"g2-water-wave__canvas\" width=\"{{ height * 2 }}\" height=\"{{ height * 2 }}\"></canvas>\n</div>\n<div class=\"g2-water-wave__desc\" [ngStyle]=\"{ 'width.px': height }\">\n <span *ngIf=\"title\" class=\"g2-water-wave__desc-title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n </span>\n <h4 class=\"g2-water-wave__desc-percent\">{{ percent }}%</h4>\n</div>\n", directives: [{ type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
193
193
|
__decorate([
|
|
194
194
|
InputBoolean()
|
|
195
195
|
], G2WaterWaveComponent.prototype, "animate", void 0);
|
|
@@ -202,7 +202,7 @@ __decorate([
|
|
|
202
202
|
__decorate([
|
|
203
203
|
InputNumber()
|
|
204
204
|
], G2WaterWaveComponent.prototype, "percent", void 0);
|
|
205
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveComponent, decorators: [{
|
|
206
206
|
type: Component,
|
|
207
207
|
args: [{ selector: 'g2-water-wave', exportAs: 'g2WaterWave', host: { '[class.g2-water-wave]': 'true' }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div [ngStyle]=\"{ 'height.px': height, 'width.px': height, overflow: 'hidden' }\">\n <canvas #container class=\"g2-water-wave__canvas\" width=\"{{ height * 2 }}\" height=\"{{ height * 2 }}\"></canvas>\n</div>\n<div class=\"g2-water-wave__desc\" [ngStyle]=\"{ 'width.px': height }\">\n <span *ngIf=\"title\" class=\"g2-water-wave__desc-title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n </span>\n <h4 class=\"g2-water-wave__desc-percent\">{{ percent }}%</h4>\n</div>\n" }]
|
|
208
208
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i1.Platform }]; }, propDecorators: { node: [{
|
|
@@ -225,10 +225,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
225
225
|
const COMPONENTS = [G2WaterWaveComponent];
|
|
226
226
|
class G2WaterWaveModule {
|
|
227
227
|
}
|
|
228
|
-
G2WaterWaveModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
229
|
-
G2WaterWaveModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.
|
|
230
|
-
G2WaterWaveModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.
|
|
231
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
228
|
+
G2WaterWaveModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
229
|
+
G2WaterWaveModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveModule, declarations: [G2WaterWaveComponent], imports: [CommonModule, NzOutletModule], exports: [G2WaterWaveComponent] });
|
|
230
|
+
G2WaterWaveModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveModule, imports: [[CommonModule, NzOutletModule]] });
|
|
231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: G2WaterWaveModule, decorators: [{
|
|
232
232
|
type: NgModule,
|
|
233
233
|
args: [{
|
|
234
234
|
imports: [CommonModule, NzOutletModule],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@delon/chart",
|
|
3
|
-
"version": "13.2.
|
|
3
|
+
"version": "13.2.1",
|
|
4
4
|
"author": "cipchk<cipchk@qq.com>",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"@antv/data-set": "^0.11.8",
|
|
29
29
|
"@antv/g2": "^4.1.35",
|
|
30
30
|
"echarts": "^5.2.2",
|
|
31
|
-
"@delon/util": "^13.2.
|
|
32
|
-
"@delon/theme": "^13.2.
|
|
31
|
+
"@delon/util": "^13.2.1",
|
|
32
|
+
"@delon/theme": "^13.2.1",
|
|
33
33
|
"tslib": "^2.3.0"
|
|
34
34
|
},
|
|
35
35
|
"module": "fesm2015/chart.mjs",
|
package/pie/pie.component.d.ts
CHANGED
|
@@ -54,8 +54,9 @@ export declare class G2PieComponent extends G2BaseComponent {
|
|
|
54
54
|
interaction: G2InteractionType;
|
|
55
55
|
ratio: G2PieRatio;
|
|
56
56
|
readonly clickItem: EventEmitter<G2PieClickItem>;
|
|
57
|
-
|
|
57
|
+
block: boolean;
|
|
58
58
|
private fixData;
|
|
59
|
+
private updateBlock;
|
|
59
60
|
install(): void;
|
|
60
61
|
changeData(): void;
|
|
61
62
|
private genLegend;
|