@progress/kendo-angular-charts 15.5.0-develop.9 → 16.0.0-develop.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/charts.module.d.ts +2 -1
- package/common/has-observers.d.ts +9 -0
- package/esm2020/chart.component.mjs +1 -3
- package/esm2020/charts.module.mjs +4 -3
- package/esm2020/common/has-observers.mjs +10 -0
- package/esm2020/common/theme.service.mjs +6 -0
- package/esm2020/index.mjs +4 -0
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/sankey/api-types/index.mjs +5 -0
- package/esm2020/sankey/data-binding/create-sankey-data.mjs +45 -0
- package/esm2020/sankey/data-binding/flat-binding.directive.mjs +65 -0
- package/esm2020/sankey/data-binding/flat-binding.event.mjs +15 -0
- package/esm2020/sankey/events/index.mjs +8 -0
- package/esm2020/sankey/events/instance-event.service.mjs +22 -0
- package/esm2020/sankey/events/sankey-base-event.mjs +18 -0
- package/esm2020/sankey/events/sankey-link-event.mjs +17 -0
- package/esm2020/sankey/events/sankey-node-event.mjs +17 -0
- package/esm2020/sankey/labels.component.mjs +49 -0
- package/esm2020/sankey/legend.component.mjs +64 -0
- package/esm2020/sankey/links.component.mjs +37 -0
- package/esm2020/sankey/localization/custom-messages.component.mjs +42 -0
- package/esm2020/sankey/localization/localized-messages.directive.mjs +37 -0
- package/esm2020/sankey/localization/messages.mjs +23 -0
- package/esm2020/sankey/nodes.component.mjs +43 -0
- package/esm2020/sankey/title.component.mjs +59 -0
- package/esm2020/sankey/tooltip/link-tooltip-template-context.mjs +18 -0
- package/esm2020/sankey/tooltip/link-tooltip-template.directive.mjs +87 -0
- package/esm2020/sankey/tooltip/node-tooltip-template-context.mjs +18 -0
- package/esm2020/sankey/tooltip/node-tooltip-template.directive.mjs +64 -0
- package/esm2020/sankey/tooltip/square-symbol.directive.mjs +43 -0
- package/esm2020/sankey/tooltip/tooltip-popup.component.mjs +203 -0
- package/esm2020/sankey/tooltip/tooltip-template.service.mjs +16 -0
- package/esm2020/sankey/tooltip.component.mjs +52 -0
- package/esm2020/sankey.component.mjs +378 -0
- package/esm2020/sankey.directives.mjs +46 -0
- package/esm2020/sankey.module.mjs +63 -0
- package/fesm2015/progress-kendo-angular-charts.mjs +1353 -30
- package/fesm2020/progress-kendo-angular-charts.mjs +1347 -27
- package/index.d.ts +4 -0
- package/package.json +9 -8
- package/sankey/api-types/index.d.ts +21 -0
- package/sankey/data-binding/create-sankey-data.d.ts +9 -0
- package/sankey/data-binding/flat-binding.directive.d.ts +38 -0
- package/sankey/data-binding/flat-binding.event.d.ts +24 -0
- package/sankey/events/index.d.ts +8 -0
- package/sankey/events/instance-event.service.d.ts +14 -0
- package/sankey/events/sankey-base-event.d.ts +24 -0
- package/sankey/events/sankey-link-event.d.ts +20 -0
- package/sankey/events/sankey-node-event.d.ts +20 -0
- package/sankey/labels.component.d.ts +36 -0
- package/sankey/legend.component.d.ts +82 -0
- package/sankey/links.component.d.ts +22 -0
- package/sankey/localization/custom-messages.component.d.ts +18 -0
- package/sankey/localization/localized-messages.directive.d.ts +16 -0
- package/sankey/localization/messages.d.ts +17 -0
- package/sankey/nodes.component.d.ts +34 -0
- package/sankey/title.component.d.ts +70 -0
- package/sankey/tooltip/link-tooltip-template-context.d.ts +26 -0
- package/sankey/tooltip/link-tooltip-template.directive.d.ts +78 -0
- package/sankey/tooltip/node-tooltip-template-context.d.ts +26 -0
- package/sankey/tooltip/node-tooltip-template.directive.d.ts +55 -0
- package/sankey/tooltip/square-symbol.directive.d.ts +16 -0
- package/sankey/tooltip/tooltip-popup.component.d.ts +60 -0
- package/sankey/tooltip/tooltip-template.service.d.ts +15 -0
- package/sankey/tooltip.component.d.ts +49 -0
- package/sankey.component.d.ts +200 -0
- package/sankey.directives.d.ts +27 -0
- package/sankey.module.d.ts +51 -0
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { isDevMode, Directive, Optional, Injectable, SimpleChange, TemplateRef, Component, ChangeDetectionStrategy, Input, ContentChild, ElementRef, ViewChild, ViewChildren, EventEmitter, Output, ContentChildren, LOCALE_ID, Inject, InjectionToken, NgModule } from '@angular/core';
|
|
6
|
+
import { isDevMode, Directive, Optional, Injectable, SimpleChange, TemplateRef, Component, ChangeDetectionStrategy, Input, ContentChild, ElementRef, ViewChild, ViewChildren, EventEmitter, Output, ContentChildren, LOCALE_ID, Inject, InjectionToken, NgModule, HostBinding, forwardRef } from '@angular/core';
|
|
7
7
|
import * as i8 from '@progress/kendo-angular-common';
|
|
8
|
-
import { isDocumentAvailable, shouldShowValidationUI, ResizeSensorModule, WatermarkModule } from '@progress/kendo-angular-common';
|
|
8
|
+
import { isDocumentAvailable, shouldShowValidationUI, ResizeSensorModule, WatermarkModule, PreventableEvent as PreventableEvent$1, isChanged } from '@progress/kendo-angular-common';
|
|
9
9
|
import * as i4 from '@progress/kendo-angular-l10n';
|
|
10
|
-
import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
11
|
-
import { DateCategoryAxis, DateValueAxis, DomEventsBuilder as DomEventsBuilder$1, InstanceObserver, chartBaseTheme, Chart, StockChart, Sparkline } from '@progress/kendo-charts';
|
|
10
|
+
import { LocalizationService, L10N_PREFIX, ComponentMessages } from '@progress/kendo-angular-l10n';
|
|
11
|
+
import { DateCategoryAxis, DateValueAxis, DomEventsBuilder as DomEventsBuilder$1, InstanceObserver, chartBaseTheme, Chart, StockChart, Sparkline, Sankey } from '@progress/kendo-charts';
|
|
12
12
|
import { exportImage, exportSVG } from '@progress/kendo-drawing';
|
|
13
13
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
14
14
|
import { Subject, BehaviorSubject, combineLatest, Subscription } from 'rxjs';
|
|
@@ -18,9 +18,12 @@ import { PopupService, POPUP_CONTAINER, PopupModule } from '@progress/kendo-angu
|
|
|
18
18
|
import * as i4$1 from '@angular/common';
|
|
19
19
|
import { CommonModule } from '@angular/common';
|
|
20
20
|
import * as i3 from '@progress/kendo-angular-intl';
|
|
21
|
-
import { homeIcon } from '@progress/kendo-svg-icons';
|
|
21
|
+
import { homeIcon, arrowRightIcon } from '@progress/kendo-svg-icons';
|
|
22
22
|
import * as i1$1 from '@progress/kendo-angular-navigation';
|
|
23
23
|
import { BreadCrumbModule } from '@progress/kendo-angular-navigation';
|
|
24
|
+
import * as i5 from '@progress/kendo-angular-icons';
|
|
25
|
+
import { IconsModule } from '@progress/kendo-angular-icons';
|
|
26
|
+
import { getter } from '@progress/kendo-common';
|
|
24
27
|
|
|
25
28
|
const getTouch = (domEvent) => {
|
|
26
29
|
return {
|
|
@@ -1817,7 +1820,7 @@ class ZoomStartEvent extends PreventableEvent {
|
|
|
1817
1820
|
}
|
|
1818
1821
|
}
|
|
1819
1822
|
|
|
1820
|
-
const EVENT_MAP$
|
|
1823
|
+
const EVENT_MAP$2 = {
|
|
1821
1824
|
axisLabelClick: AxisLabelClickEvent,
|
|
1822
1825
|
drag: DragEvent,
|
|
1823
1826
|
dragEnd: DragEndEvent,
|
|
@@ -1846,10 +1849,10 @@ const EVENT_MAP$1 = {
|
|
|
1846
1849
|
/**
|
|
1847
1850
|
* @hidden
|
|
1848
1851
|
*/
|
|
1849
|
-
class InstanceEventService {
|
|
1852
|
+
class InstanceEventService$1 {
|
|
1850
1853
|
create(name, args, sender) {
|
|
1851
|
-
if (EVENT_MAP$
|
|
1852
|
-
return new EVENT_MAP$
|
|
1854
|
+
if (EVENT_MAP$2[name]) {
|
|
1855
|
+
return new EVENT_MAP$2[name](args, sender);
|
|
1853
1856
|
}
|
|
1854
1857
|
}
|
|
1855
1858
|
}
|
|
@@ -1873,8 +1876,8 @@ const packageMetadata = {
|
|
|
1873
1876
|
name: '@progress/kendo-angular-charts',
|
|
1874
1877
|
productName: 'Kendo UI for Angular',
|
|
1875
1878
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
1876
|
-
publishDate:
|
|
1877
|
-
version: '
|
|
1879
|
+
publishDate: 1714060786,
|
|
1880
|
+
version: '16.0.0-develop.1',
|
|
1878
1881
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
1879
1882
|
};
|
|
1880
1883
|
|
|
@@ -1982,6 +1985,13 @@ class DrilldownEvent extends PreventableEvent {
|
|
|
1982
1985
|
}
|
|
1983
1986
|
}
|
|
1984
1987
|
|
|
1988
|
+
/**
|
|
1989
|
+
* @hidden
|
|
1990
|
+
*/
|
|
1991
|
+
function hasObservers(emitter) {
|
|
1992
|
+
return emitter.observers.length > 0;
|
|
1993
|
+
}
|
|
1994
|
+
|
|
1985
1995
|
/**
|
|
1986
1996
|
* Fallback theme in case the Theme Service fails
|
|
1987
1997
|
* to read the variables from the main theme.
|
|
@@ -2302,6 +2312,10 @@ class ThemeService extends ConfigurationService {
|
|
|
2302
2312
|
this.mapColor('seriesDefaults.waterfall.line.color', 'chart-major-lines');
|
|
2303
2313
|
this.mapColor('title.color', 'normal-text-color');
|
|
2304
2314
|
this.mapColor('subtitle.color', 'normal-text-color');
|
|
2315
|
+
// Sankey diagram
|
|
2316
|
+
this.mapColor('labels.color', 'normal-text-color');
|
|
2317
|
+
this.mapColor('labels.stroke.color', 'background');
|
|
2318
|
+
this.mapColor('links.color', 'chart-major-lines');
|
|
2305
2319
|
const opacity = parseFloat(this.queryStyle('chart-area-opacity').opacity);
|
|
2306
2320
|
if (!isNaN(opacity)) {
|
|
2307
2321
|
this.setStyle('seriesDefaults.area.opacity', opacity);
|
|
@@ -2332,6 +2346,8 @@ class ThemeService extends ConfigurationService {
|
|
|
2332
2346
|
this.setStyle('title.font', titleFont);
|
|
2333
2347
|
this.setStyle('subtitle.font', paneTitleFont);
|
|
2334
2348
|
this.setStyle('paneDefaults.title.font', paneTitleFont);
|
|
2349
|
+
// Sankey diagram
|
|
2350
|
+
this.setStyle('labels.font', defaultFont);
|
|
2335
2351
|
}
|
|
2336
2352
|
setSeriesColors() {
|
|
2337
2353
|
const element = this.element;
|
|
@@ -2365,9 +2381,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2365
2381
|
type: Injectable
|
|
2366
2382
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
|
|
2367
2383
|
|
|
2368
|
-
function hasObservers(emitter) {
|
|
2369
|
-
return emitter.observers.length > 0;
|
|
2370
|
-
}
|
|
2371
2384
|
/**
|
|
2372
2385
|
* The root Chart component.
|
|
2373
2386
|
*
|
|
@@ -3056,11 +3069,11 @@ class ChartComponent {
|
|
|
3056
3069
|
return Boolean(this.localizationService.rtl);
|
|
3057
3070
|
}
|
|
3058
3071
|
}
|
|
3059
|
-
ChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartComponent, deps: [{ token: ConfigurationService }, { token: ThemeService }, { token: i0.ElementRef }, { token: i3.IntlService }, { token: i4.LocalizationService }, { token: i0.NgZone }, { token: InstanceEventService }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
3072
|
+
ChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartComponent, deps: [{ token: ConfigurationService }, { token: ThemeService }, { token: i0.ElementRef }, { token: i3.IntlService }, { token: i4.LocalizationService }, { token: i0.NgZone }, { token: InstanceEventService$1 }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
3060
3073
|
ChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ChartComponent, selector: "kendo-chart", inputs: { pannable: "pannable", renderAs: "renderAs", seriesColors: "seriesColors", subtitle: "subtitle", title: "title", transitions: "transitions", zoomable: "zoomable", axisDefaults: "axisDefaults", categoryAxis: "categoryAxis", chartArea: "chartArea", legend: "legend", panes: "panes", paneDefaults: "paneDefaults", plotArea: "plotArea", series: "series", seriesDefaults: "seriesDefaults", tooltip: "tooltip", valueAxis: "valueAxis", xAxis: "xAxis", yAxis: "yAxis", resizeRateLimit: "resizeRateLimit", popupSettings: "popupSettings", drilldownLevel: "drilldownLevel" }, outputs: { axisLabelClick: "axisLabelClick", drag: "drag", dragEnd: "dragEnd", dragStart: "dragStart", legendItemHover: "legendItemHover", legendItemLeave: "legendItemLeave", noteClick: "noteClick", noteHover: "noteHover", noteLeave: "noteLeave", paneRender: "paneRender", plotAreaClick: "plotAreaClick", plotAreaHover: "plotAreaHover", plotAreaLeave: "plotAreaLeave", render: "render", select: "select", selectEnd: "selectEnd", selectStart: "selectStart", seriesClick: "seriesClick", drilldown: "drilldown", seriesHover: "seriesHover", seriesOver: "seriesOver", seriesLeave: "seriesLeave", zoom: "zoom", zoomEnd: "zoomEnd", zoomStart: "zoomStart", legendItemClick: "legendItemClick", drilldownLevelChange: "drilldownLevelChange" }, providers: [
|
|
3061
3074
|
ConfigurationService,
|
|
3062
3075
|
TooltipTemplateService,
|
|
3063
|
-
InstanceEventService,
|
|
3076
|
+
InstanceEventService$1,
|
|
3064
3077
|
LocalizationService,
|
|
3065
3078
|
{
|
|
3066
3079
|
provide: L10N_PREFIX,
|
|
@@ -3087,7 +3100,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3087
3100
|
providers: [
|
|
3088
3101
|
ConfigurationService,
|
|
3089
3102
|
TooltipTemplateService,
|
|
3090
|
-
InstanceEventService,
|
|
3103
|
+
InstanceEventService$1,
|
|
3091
3104
|
LocalizationService,
|
|
3092
3105
|
{
|
|
3093
3106
|
provide: L10N_PREFIX,
|
|
@@ -3109,7 +3122,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3109
3122
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
3110
3123
|
`
|
|
3111
3124
|
}]
|
|
3112
|
-
}], ctorParameters: function () { return [{ type: ConfigurationService }, { type: ThemeService }, { type: i0.ElementRef }, { type: i3.IntlService }, { type: i4.LocalizationService }, { type: i0.NgZone }, { type: InstanceEventService }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { pannable: [{
|
|
3125
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }, { type: ThemeService }, { type: i0.ElementRef }, { type: i3.IntlService }, { type: i4.LocalizationService }, { type: i0.NgZone }, { type: InstanceEventService$1 }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { pannable: [{
|
|
3113
3126
|
type: Input
|
|
3114
3127
|
}], renderAs: [{
|
|
3115
3128
|
type: Input
|
|
@@ -6636,16 +6649,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
6636
6649
|
type: Injectable
|
|
6637
6650
|
}] });
|
|
6638
6651
|
|
|
6639
|
-
const EVENT_MAP = {
|
|
6652
|
+
const EVENT_MAP$1 = {
|
|
6640
6653
|
navigatorFilter: NavigatorFilterEvent
|
|
6641
6654
|
};
|
|
6642
6655
|
/**
|
|
6643
6656
|
* @hidden
|
|
6644
6657
|
*/
|
|
6645
|
-
class StockInstanceEventService extends InstanceEventService {
|
|
6658
|
+
class StockInstanceEventService extends InstanceEventService$1 {
|
|
6646
6659
|
create(name, args, sender) {
|
|
6647
|
-
if (EVENT_MAP[name]) {
|
|
6648
|
-
return new EVENT_MAP[name](args, sender);
|
|
6660
|
+
if (EVENT_MAP$1[name]) {
|
|
6661
|
+
return new EVENT_MAP$1[name](args, sender);
|
|
6649
6662
|
}
|
|
6650
6663
|
return super.create(name, args, sender);
|
|
6651
6664
|
}
|
|
@@ -7667,11 +7680,11 @@ class SparklineComponent extends ChartComponent {
|
|
|
7667
7680
|
this.instance.setOptions(Sparkline.normalizeOptions(this.options));
|
|
7668
7681
|
}
|
|
7669
7682
|
}
|
|
7670
|
-
SparklineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SparklineComponent, deps: [{ token: ConfigurationService }, { token: ThemeService }, { token: i0.ElementRef }, { token: i3.IntlService }, { token: i4.LocalizationService }, { token: i0.NgZone }, { token: InstanceEventService }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
7683
|
+
SparklineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SparklineComponent, deps: [{ token: ConfigurationService }, { token: ThemeService }, { token: i0.ElementRef }, { token: i3.IntlService }, { token: i4.LocalizationService }, { token: i0.NgZone }, { token: InstanceEventService$1 }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
7671
7684
|
SparklineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SparklineComponent, selector: "kendo-sparkline", inputs: { type: "type", data: "data", drilldownLevel: "drilldownLevel" }, outputs: { drilldown: "drilldown", drilldownLevelChange: "drilldownLevelChange" }, providers: [
|
|
7672
7685
|
ConfigurationService,
|
|
7673
7686
|
TooltipTemplateService,
|
|
7674
|
-
InstanceEventService,
|
|
7687
|
+
InstanceEventService$1,
|
|
7675
7688
|
LocalizationService,
|
|
7676
7689
|
{
|
|
7677
7690
|
provide: L10N_PREFIX,
|
|
@@ -7696,7 +7709,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7696
7709
|
providers: [
|
|
7697
7710
|
ConfigurationService,
|
|
7698
7711
|
TooltipTemplateService,
|
|
7699
|
-
InstanceEventService,
|
|
7712
|
+
InstanceEventService$1,
|
|
7700
7713
|
LocalizationService,
|
|
7701
7714
|
{
|
|
7702
7715
|
provide: L10N_PREFIX,
|
|
@@ -7716,7 +7729,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7716
7729
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
7717
7730
|
`
|
|
7718
7731
|
}]
|
|
7719
|
-
}], ctorParameters: function () { return [{ type: ConfigurationService }, { type: ThemeService }, { type: i0.ElementRef }, { type: i3.IntlService }, { type: i4.LocalizationService }, { type: i0.NgZone }, { type: InstanceEventService }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { type: [{
|
|
7732
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }, { type: ThemeService }, { type: i0.ElementRef }, { type: i3.IntlService }, { type: i4.LocalizationService }, { type: i0.NgZone }, { type: InstanceEventService$1 }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { type: [{
|
|
7720
7733
|
type: Input
|
|
7721
7734
|
}], data: [{
|
|
7722
7735
|
type: Input
|
|
@@ -7850,6 +7863,1316 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7850
7863
|
}]
|
|
7851
7864
|
}] });
|
|
7852
7865
|
|
|
7866
|
+
/**
|
|
7867
|
+
* @hidden
|
|
7868
|
+
*/
|
|
7869
|
+
class SankeyBaseEvent extends PreventableEvent$1 {
|
|
7870
|
+
/**
|
|
7871
|
+
* @hidden
|
|
7872
|
+
*/
|
|
7873
|
+
constructor(e, sender) {
|
|
7874
|
+
super();
|
|
7875
|
+
this.sender = sender;
|
|
7876
|
+
this.originalEvent = e.originalEvent;
|
|
7877
|
+
}
|
|
7878
|
+
}
|
|
7879
|
+
|
|
7880
|
+
/**
|
|
7881
|
+
* Arguments for the node-related events of the [`SankeyComponent`]({% slug api_charts_sankeycomponent %}).
|
|
7882
|
+
*/
|
|
7883
|
+
class SankeyNodeEvent extends SankeyBaseEvent {
|
|
7884
|
+
/**
|
|
7885
|
+
* @hidden
|
|
7886
|
+
*/
|
|
7887
|
+
constructor(e, sender) {
|
|
7888
|
+
super(e, sender);
|
|
7889
|
+
this.dataItem = e.dataItem;
|
|
7890
|
+
}
|
|
7891
|
+
}
|
|
7892
|
+
|
|
7893
|
+
/**
|
|
7894
|
+
* Arguments for the link-related events of the [`SankeyComponent`]({% slug api_charts_sankeycomponent %}).
|
|
7895
|
+
*/
|
|
7896
|
+
class SankeyLinkEvent extends SankeyBaseEvent {
|
|
7897
|
+
/**
|
|
7898
|
+
* @hidden
|
|
7899
|
+
*/
|
|
7900
|
+
constructor(e, sender) {
|
|
7901
|
+
super(e, sender);
|
|
7902
|
+
this.dataItem = e.dataItem;
|
|
7903
|
+
}
|
|
7904
|
+
}
|
|
7905
|
+
|
|
7906
|
+
const EVENT_MAP = {
|
|
7907
|
+
nodeEnter: SankeyNodeEvent,
|
|
7908
|
+
nodeLeave: SankeyNodeEvent,
|
|
7909
|
+
linkEnter: SankeyLinkEvent,
|
|
7910
|
+
linkLeave: SankeyLinkEvent,
|
|
7911
|
+
nodeClick: SankeyNodeEvent,
|
|
7912
|
+
linkClick: SankeyLinkEvent
|
|
7913
|
+
};
|
|
7914
|
+
/**
|
|
7915
|
+
* @hidden
|
|
7916
|
+
*/
|
|
7917
|
+
class InstanceEventService {
|
|
7918
|
+
create(name, args, sender) {
|
|
7919
|
+
return new EVENT_MAP[name](args, sender);
|
|
7920
|
+
}
|
|
7921
|
+
}
|
|
7922
|
+
|
|
7923
|
+
/**
|
|
7924
|
+
* The context that is passed to the Sankey diagram Link tooltip template.
|
|
7925
|
+
*/
|
|
7926
|
+
class SankeyLinkTooltipTemplateContext {
|
|
7927
|
+
/**
|
|
7928
|
+
* @hidden
|
|
7929
|
+
*/
|
|
7930
|
+
constructor(e) {
|
|
7931
|
+
const dataItem = e.dataItem;
|
|
7932
|
+
this.source = dataItem.source;
|
|
7933
|
+
this.target = dataItem.target;
|
|
7934
|
+
this.value = dataItem.value;
|
|
7935
|
+
}
|
|
7936
|
+
}
|
|
7937
|
+
|
|
7938
|
+
/**
|
|
7939
|
+
* A directive that selects a [template](link:site.data.urls.angular['templatesyntax'])
|
|
7940
|
+
* within the `<kendo-sankey-tooltip>` component for the
|
|
7941
|
+
* [links tooltip](slug:tooltip_sankey#toc-specifying-a-template).
|
|
7942
|
+
* The following context fields are frequently utilized:
|
|
7943
|
+
* - `let-source="source"`—The link source data item..
|
|
7944
|
+
* - `let-target="target"`—The link target data item.
|
|
7945
|
+
* - `let-value="value"`—The link value.
|
|
7946
|
+
* For the full list of available fields, refer to the [`SankeyLinkTooltipTemplateContext`](slug:api_charts_sankeylinktooltiptemplatecontext).
|
|
7947
|
+
*
|
|
7948
|
+
* @example
|
|
7949
|
+
* ```ts
|
|
7950
|
+
* import { Component } from '@angular/core';
|
|
7951
|
+
*
|
|
7952
|
+
* _@Component({
|
|
7953
|
+
* selector: 'my-app',
|
|
7954
|
+
* template: `
|
|
7955
|
+
* <kendo-chart>
|
|
7956
|
+
* <kendo-chart-tooltip>
|
|
7957
|
+
* <ng-template kendoChartSeriesTooltipTemplate let-value="value">
|
|
7958
|
+
* Value is {{value}}
|
|
7959
|
+
* </ng-template>
|
|
7960
|
+
* </kendo-chart-tooltip>
|
|
7961
|
+
* <kendo-chart-series>
|
|
7962
|
+
* <kendo-chart-series-item [data]="[1, 2, 3]">
|
|
7963
|
+
* </kendo-chart-series-item>
|
|
7964
|
+
* </kendo-chart-series>
|
|
7965
|
+
* </kendo-chart>
|
|
7966
|
+
* `
|
|
7967
|
+
* })
|
|
7968
|
+
* class AppComponent {
|
|
7969
|
+
* }
|
|
7970
|
+
*
|
|
7971
|
+
* import { Component } from '@angular/core';
|
|
7972
|
+
* import { SankeyData } from '@progress/kendo-angular-charts';
|
|
7973
|
+
*
|
|
7974
|
+
* _@Component({
|
|
7975
|
+
* selector: 'my-app',
|
|
7976
|
+
* template: `
|
|
7977
|
+
* <kendo-sankey [data]="data">
|
|
7978
|
+
* <kendo-sankey-tooltip [followPointer]="true">
|
|
7979
|
+
* <ng-template kendoSankeyLinkTooltipTemplate let-source="source" let-target="target" let-value="value">
|
|
7980
|
+
* {{ source.label?.text }} - {{ target.label?.text }}: {{ value }}
|
|
7981
|
+
* </ng-template>
|
|
7982
|
+
* </kendo-sankey-tooltip>
|
|
7983
|
+
* </kendo-sankey>
|
|
7984
|
+
* `,
|
|
7985
|
+
* })
|
|
7986
|
+
* export class AppComponent {
|
|
7987
|
+
* public data: SankeyData = {
|
|
7988
|
+
* nodes: [
|
|
7989
|
+
* { id: 1, label: { text: 'Linux' } },
|
|
7990
|
+
* { id: 0, label: { text: 'iOS'} },
|
|
7991
|
+
* { id: 2, label: { text: 'Mobile' } },
|
|
7992
|
+
* { id: 3, label: { text: 'Desktop' } },
|
|
7993
|
+
* ],
|
|
7994
|
+
* links: [
|
|
7995
|
+
* { sourceId: 0, targetId: 2, value: 1 },
|
|
7996
|
+
* { sourceId: 1, targetId: 2, value: 2 },
|
|
7997
|
+
* { sourceId: 1, targetId: 3, value: 3 },
|
|
7998
|
+
* ],
|
|
7999
|
+
* };
|
|
8000
|
+
* }
|
|
8001
|
+
*
|
|
8002
|
+
* ```
|
|
8003
|
+
*/
|
|
8004
|
+
class SankeyLinkTooltipTemplateDirective {
|
|
8005
|
+
constructor(templateRef) {
|
|
8006
|
+
this.templateRef = templateRef;
|
|
8007
|
+
}
|
|
8008
|
+
}
|
|
8009
|
+
SankeyLinkTooltipTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLinkTooltipTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
8010
|
+
SankeyLinkTooltipTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: SankeyLinkTooltipTemplateDirective, selector: "[kendoSankeyLinkTooltipTemplate]", ngImport: i0 });
|
|
8011
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLinkTooltipTemplateDirective, decorators: [{
|
|
8012
|
+
type: Directive,
|
|
8013
|
+
args: [{
|
|
8014
|
+
selector: '[kendoSankeyLinkTooltipTemplate]'
|
|
8015
|
+
}]
|
|
8016
|
+
}], ctorParameters: function () {
|
|
8017
|
+
return [{ type: i0.TemplateRef, decorators: [{
|
|
8018
|
+
type: Optional
|
|
8019
|
+
}] }];
|
|
8020
|
+
} });
|
|
8021
|
+
|
|
8022
|
+
/**
|
|
8023
|
+
* The context that is passed to the Sankey diagram Node tooltip template.
|
|
8024
|
+
*/
|
|
8025
|
+
class SankeyNodeTooltipTemplateContext {
|
|
8026
|
+
/**
|
|
8027
|
+
* @hidden
|
|
8028
|
+
*/
|
|
8029
|
+
constructor(e) {
|
|
8030
|
+
const dataItem = e.dataItem;
|
|
8031
|
+
this.label = dataItem.label;
|
|
8032
|
+
this.color = dataItem.color;
|
|
8033
|
+
this.value = e.nodeValue;
|
|
8034
|
+
}
|
|
8035
|
+
}
|
|
8036
|
+
|
|
8037
|
+
/**
|
|
8038
|
+
* A directive that selects a [template](link:site.data.urls.angular['templatesyntax'])
|
|
8039
|
+
* within the `<kendo-sankey-tooltip>` component for the
|
|
8040
|
+
* [series tooltip](slug:tooltip_sankey#toc-specifying-a-template).
|
|
8041
|
+
* The following context fields are frequently utilized:
|
|
8042
|
+
* - `let-color="color"`—The node color.
|
|
8043
|
+
* - `let-label="label"`—The node label data.
|
|
8044
|
+
* - `let-value="value"`—The node value.
|
|
8045
|
+
* For the full list of available fields, refer to the [`SankeyNodeTooltipTemplateContext`](slug:api_charts_sankeynodetooltiptemplatecontext).
|
|
8046
|
+
*
|
|
8047
|
+
* @example
|
|
8048
|
+
* ```ts
|
|
8049
|
+
* import { Component } from '@angular/core';
|
|
8050
|
+
* import { SankeyData } from '@progress/kendo-angular-charts';
|
|
8051
|
+
*
|
|
8052
|
+
* _@Component({
|
|
8053
|
+
* selector: 'my-app',
|
|
8054
|
+
* template: `
|
|
8055
|
+
* <kendo-sankey [data]="data">
|
|
8056
|
+
* <ng-template kendoSankeyNodeTooltipTemplate let-color="color" let-label="label" let-value="value">
|
|
8057
|
+
* {{ label.text }}: {{ value }}
|
|
8058
|
+
* </ng-template>
|
|
8059
|
+
* </kendo-sankey>
|
|
8060
|
+
* `,
|
|
8061
|
+
* })
|
|
8062
|
+
* export class AppComponent {
|
|
8063
|
+
* public data: SankeyData = {
|
|
8064
|
+
* nodes: [
|
|
8065
|
+
* { id: 1, label: { text: 'Linux' } },
|
|
8066
|
+
* { id: 0, label: { text: 'iOS'} },
|
|
8067
|
+
* { id: 2, label: { text: 'Mobile' } },
|
|
8068
|
+
* { id: 3, label: { text: 'Desktop' } },
|
|
8069
|
+
* ],
|
|
8070
|
+
* links: [
|
|
8071
|
+
* { sourceId: 0, targetId: 2, value: 1 },
|
|
8072
|
+
* { sourceId: 1, targetId: 2, value: 2 },
|
|
8073
|
+
* { sourceId: 1, targetId: 3, value: 3 },
|
|
8074
|
+
* ],
|
|
8075
|
+
* };
|
|
8076
|
+
* }
|
|
8077
|
+
*
|
|
8078
|
+
* ```
|
|
8079
|
+
*/
|
|
8080
|
+
class SankeyNodeTooltipTemplateDirective {
|
|
8081
|
+
constructor(templateRef) {
|
|
8082
|
+
this.templateRef = templateRef;
|
|
8083
|
+
}
|
|
8084
|
+
}
|
|
8085
|
+
SankeyNodeTooltipTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyNodeTooltipTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
8086
|
+
SankeyNodeTooltipTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: SankeyNodeTooltipTemplateDirective, selector: "[kendoSankeyNodeTooltipTemplate]", ngImport: i0 });
|
|
8087
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyNodeTooltipTemplateDirective, decorators: [{
|
|
8088
|
+
type: Directive,
|
|
8089
|
+
args: [{
|
|
8090
|
+
selector: '[kendoSankeyNodeTooltipTemplate]'
|
|
8091
|
+
}]
|
|
8092
|
+
}], ctorParameters: function () {
|
|
8093
|
+
return [{ type: i0.TemplateRef, decorators: [{
|
|
8094
|
+
type: Optional
|
|
8095
|
+
}] }];
|
|
8096
|
+
} });
|
|
8097
|
+
|
|
8098
|
+
/**
|
|
8099
|
+
* @hidden
|
|
8100
|
+
*/
|
|
8101
|
+
class SankeyTooltipTemplateService {
|
|
8102
|
+
}
|
|
8103
|
+
SankeyTooltipTemplateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipTemplateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8104
|
+
SankeyTooltipTemplateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipTemplateService });
|
|
8105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipTemplateService, decorators: [{
|
|
8106
|
+
type: Injectable
|
|
8107
|
+
}] });
|
|
8108
|
+
|
|
8109
|
+
/**
|
|
8110
|
+
* @hidden
|
|
8111
|
+
*/
|
|
8112
|
+
class SquareSymbol {
|
|
8113
|
+
constructor() {
|
|
8114
|
+
this.size = 15;
|
|
8115
|
+
this.display = 'inline-flex';
|
|
8116
|
+
this.marginLeft = 3;
|
|
8117
|
+
}
|
|
8118
|
+
}
|
|
8119
|
+
SquareSymbol.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SquareSymbol, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
8120
|
+
SquareSymbol.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: SquareSymbol, selector: "[squareSymbol]", inputs: { color: "color", size: "size" }, host: { properties: { "style.backgroundColor": "this.color", "style.width.px": "this.size", "style.height.px": "this.size", "style.display": "this.display", "style.marginLeft.px": "this.marginLeft" } }, ngImport: i0 });
|
|
8121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SquareSymbol, decorators: [{
|
|
8122
|
+
type: Directive,
|
|
8123
|
+
args: [{
|
|
8124
|
+
selector: '[squareSymbol]'
|
|
8125
|
+
}]
|
|
8126
|
+
}], propDecorators: { color: [{
|
|
8127
|
+
type: Input
|
|
8128
|
+
}, {
|
|
8129
|
+
type: HostBinding,
|
|
8130
|
+
args: ['style.backgroundColor']
|
|
8131
|
+
}], size: [{
|
|
8132
|
+
type: Input
|
|
8133
|
+
}, {
|
|
8134
|
+
type: HostBinding,
|
|
8135
|
+
args: ['style.width.px']
|
|
8136
|
+
}, {
|
|
8137
|
+
type: HostBinding,
|
|
8138
|
+
args: ['style.height.px']
|
|
8139
|
+
}], display: [{
|
|
8140
|
+
type: HostBinding,
|
|
8141
|
+
args: ['style.display']
|
|
8142
|
+
}], marginLeft: [{
|
|
8143
|
+
type: HostBinding,
|
|
8144
|
+
args: ['style.marginLeft.px']
|
|
8145
|
+
}] } });
|
|
8146
|
+
|
|
8147
|
+
const DEFAULT_OFFSET = 12;
|
|
8148
|
+
/**
|
|
8149
|
+
* @hidden
|
|
8150
|
+
*/
|
|
8151
|
+
class SankeyTooltipPopupComponent extends BaseTooltip {
|
|
8152
|
+
constructor(element, popupService, templateService, localizationService, intlService, ngZone) {
|
|
8153
|
+
super(popupService, localizationService);
|
|
8154
|
+
this.element = element;
|
|
8155
|
+
this.popupService = popupService;
|
|
8156
|
+
this.templateService = templateService;
|
|
8157
|
+
this.localizationService = localizationService;
|
|
8158
|
+
this.intlService = intlService;
|
|
8159
|
+
this.ngZone = ngZone;
|
|
8160
|
+
this.animate = false;
|
|
8161
|
+
this.wrapperClass = 'k-chart-tooltip-wrapper';
|
|
8162
|
+
this.arrowRightIcon = arrowRightIcon;
|
|
8163
|
+
// TODO: Move to themes
|
|
8164
|
+
this.textStyle = { margin: '0 3px' };
|
|
8165
|
+
this.tooltipStyle = { display: 'flex', alignItems: 'center' };
|
|
8166
|
+
}
|
|
8167
|
+
onInit() {
|
|
8168
|
+
this.popupRef.popupElement.className += ` ${this.wrapperClass}`;
|
|
8169
|
+
}
|
|
8170
|
+
show(e) {
|
|
8171
|
+
this.isNode = e.targetType === 'node';
|
|
8172
|
+
this.isLink = e.targetType === 'link';
|
|
8173
|
+
this.nodeTooltipTemplateRef = this.templateService.nodeTemplate || this.defaultNodeTooltipTemplate.templateRef;
|
|
8174
|
+
this.nodeTooltipContext = new SankeyNodeTooltipTemplateContext(e);
|
|
8175
|
+
this.linkTooltipTemplateRef = this.templateService.linkTemplate || this.defaultLinkTooltipTemplate.templateRef;
|
|
8176
|
+
this.linkTooltipContext = new SankeyLinkTooltipTemplateContext(e);
|
|
8177
|
+
super.show({
|
|
8178
|
+
style: {
|
|
8179
|
+
position: 'static' // Override k-tooltip positioning
|
|
8180
|
+
},
|
|
8181
|
+
anchor: {
|
|
8182
|
+
align: e.tooltipData.popupAlign,
|
|
8183
|
+
point: this.tooltipAnchor(e),
|
|
8184
|
+
},
|
|
8185
|
+
});
|
|
8186
|
+
}
|
|
8187
|
+
tooltipAnchor(e) {
|
|
8188
|
+
const element = this.element.nativeElement;
|
|
8189
|
+
const size = { width: element.offsetWidth, height: element.offsetHeight };
|
|
8190
|
+
const anchor = Object.assign({}, e.tooltipData.popupOffset);
|
|
8191
|
+
const popupAlign = e.tooltipData.popupAlign;
|
|
8192
|
+
const offset = this.offset || DEFAULT_OFFSET;
|
|
8193
|
+
anchor.left += (popupAlign.horizontal === 'left') ? offset : (-1 * offset);
|
|
8194
|
+
if (popupAlign.horizontal === 'right') {
|
|
8195
|
+
anchor.left -= size.width;
|
|
8196
|
+
}
|
|
8197
|
+
if (popupAlign.vertical === 'bottom') {
|
|
8198
|
+
anchor.top -= size.height + offset;
|
|
8199
|
+
}
|
|
8200
|
+
else {
|
|
8201
|
+
anchor.top += offset;
|
|
8202
|
+
}
|
|
8203
|
+
return anchor;
|
|
8204
|
+
}
|
|
8205
|
+
formatUnits(value) {
|
|
8206
|
+
return this.intlService.format(this.tooltipUnitFormat, value !== null && value !== void 0 ? value : 0);
|
|
8207
|
+
}
|
|
8208
|
+
}
|
|
8209
|
+
SankeyTooltipPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipPopupComponent, deps: [{ token: i0.ElementRef }, { token: i1.PopupService }, { token: SankeyTooltipTemplateService }, { token: i4.LocalizationService }, { token: i3.IntlService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
8210
|
+
SankeyTooltipPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyTooltipPopupComponent, selector: "kendo-sankey-tooltip-popup", inputs: { animate: "animate", popupSettings: "popupSettings", wrapperClass: "wrapperClass", tooltipUnitFormat: "tooltipUnitFormat", offset: "offset" }, providers: [
|
|
8211
|
+
PopupService,
|
|
8212
|
+
{
|
|
8213
|
+
provide: POPUP_CONTAINER,
|
|
8214
|
+
useFactory: bodyFactory,
|
|
8215
|
+
},
|
|
8216
|
+
], viewQueries: [{ propertyName: "defaultNodeTooltipTemplate", first: true, predicate: SankeyNodeTooltipTemplateDirective, descendants: true }, { propertyName: "defaultLinkTooltipTemplate", first: true, predicate: SankeyLinkTooltipTemplateDirective, descendants: true }, { propertyName: "templateRef", first: true, predicate: ["content"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
8217
|
+
<ng-template #content>
|
|
8218
|
+
<div class="k-tooltip k-sankey-tooltip k-chart-tooltip k-chart-shared-tooltip" [ngStyle]="style">
|
|
8219
|
+
<div class="k-tooltip-content">
|
|
8220
|
+
<ng-template
|
|
8221
|
+
[ngTemplateOutlet]="nodeTooltipTemplateRef"
|
|
8222
|
+
*ngIf="isNode"
|
|
8223
|
+
[ngTemplateOutletContext]="nodeTooltipContext"
|
|
8224
|
+
>
|
|
8225
|
+
</ng-template>
|
|
8226
|
+
<ng-template
|
|
8227
|
+
[ngTemplateOutlet]="linkTooltipTemplateRef"
|
|
8228
|
+
*ngIf="isLink"
|
|
8229
|
+
[ngTemplateOutletContext]="linkTooltipContext"
|
|
8230
|
+
>
|
|
8231
|
+
</ng-template>
|
|
8232
|
+
</div>
|
|
8233
|
+
</div>
|
|
8234
|
+
</ng-template>
|
|
8235
|
+
|
|
8236
|
+
<ng-template kendoSankeyNodeTooltipTemplate let-color="color" let-label="label" let-value="value">
|
|
8237
|
+
<div [ngStyle]="tooltipStyle">
|
|
8238
|
+
<div squareSymbol [color]="color"></div>
|
|
8239
|
+
<span [ngStyle]="textStyle">{{ label.text }}</span>
|
|
8240
|
+
<span [ngStyle]="textStyle">{{ formatUnits(value) }}</span>
|
|
8241
|
+
</div>
|
|
8242
|
+
</ng-template>
|
|
8243
|
+
|
|
8244
|
+
<ng-template kendoSankeyLinkTooltipTemplate let-source="source" let-target="target" let-value="value">
|
|
8245
|
+
<div [ngStyle]="tooltipStyle">
|
|
8246
|
+
<div squareSymbol [color]="source.color"></div>
|
|
8247
|
+
<span [ngStyle]="textStyle">{{ source.label?.text }}</span>
|
|
8248
|
+
<kendo-icon-wrapper name="arrow-right" [svgIcon]="arrowRightIcon"></kendo-icon-wrapper>
|
|
8249
|
+
<span [ngStyle]="textStyle">{{ target.label?.text }}</span>
|
|
8250
|
+
<span [ngStyle]="textStyle">{{ formatUnits(value) }}</span>
|
|
8251
|
+
</div>
|
|
8252
|
+
</ng-template>
|
|
8253
|
+
`, isInline: true, components: [{ type: i5.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: SankeyNodeTooltipTemplateDirective, selector: "[kendoSankeyNodeTooltipTemplate]" }, { type: SquareSymbol, selector: "[squareSymbol]", inputs: ["color", "size"] }, { type: SankeyLinkTooltipTemplateDirective, selector: "[kendoSankeyLinkTooltipTemplate]" }] });
|
|
8254
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipPopupComponent, decorators: [{
|
|
8255
|
+
type: Component,
|
|
8256
|
+
args: [{
|
|
8257
|
+
providers: [
|
|
8258
|
+
PopupService,
|
|
8259
|
+
{
|
|
8260
|
+
provide: POPUP_CONTAINER,
|
|
8261
|
+
useFactory: bodyFactory,
|
|
8262
|
+
},
|
|
8263
|
+
],
|
|
8264
|
+
selector: 'kendo-sankey-tooltip-popup',
|
|
8265
|
+
template: `
|
|
8266
|
+
<ng-template #content>
|
|
8267
|
+
<div class="k-tooltip k-sankey-tooltip k-chart-tooltip k-chart-shared-tooltip" [ngStyle]="style">
|
|
8268
|
+
<div class="k-tooltip-content">
|
|
8269
|
+
<ng-template
|
|
8270
|
+
[ngTemplateOutlet]="nodeTooltipTemplateRef"
|
|
8271
|
+
*ngIf="isNode"
|
|
8272
|
+
[ngTemplateOutletContext]="nodeTooltipContext"
|
|
8273
|
+
>
|
|
8274
|
+
</ng-template>
|
|
8275
|
+
<ng-template
|
|
8276
|
+
[ngTemplateOutlet]="linkTooltipTemplateRef"
|
|
8277
|
+
*ngIf="isLink"
|
|
8278
|
+
[ngTemplateOutletContext]="linkTooltipContext"
|
|
8279
|
+
>
|
|
8280
|
+
</ng-template>
|
|
8281
|
+
</div>
|
|
8282
|
+
</div>
|
|
8283
|
+
</ng-template>
|
|
8284
|
+
|
|
8285
|
+
<ng-template kendoSankeyNodeTooltipTemplate let-color="color" let-label="label" let-value="value">
|
|
8286
|
+
<div [ngStyle]="tooltipStyle">
|
|
8287
|
+
<div squareSymbol [color]="color"></div>
|
|
8288
|
+
<span [ngStyle]="textStyle">{{ label.text }}</span>
|
|
8289
|
+
<span [ngStyle]="textStyle">{{ formatUnits(value) }}</span>
|
|
8290
|
+
</div>
|
|
8291
|
+
</ng-template>
|
|
8292
|
+
|
|
8293
|
+
<ng-template kendoSankeyLinkTooltipTemplate let-source="source" let-target="target" let-value="value">
|
|
8294
|
+
<div [ngStyle]="tooltipStyle">
|
|
8295
|
+
<div squareSymbol [color]="source.color"></div>
|
|
8296
|
+
<span [ngStyle]="textStyle">{{ source.label?.text }}</span>
|
|
8297
|
+
<kendo-icon-wrapper name="arrow-right" [svgIcon]="arrowRightIcon"></kendo-icon-wrapper>
|
|
8298
|
+
<span [ngStyle]="textStyle">{{ target.label?.text }}</span>
|
|
8299
|
+
<span [ngStyle]="textStyle">{{ formatUnits(value) }}</span>
|
|
8300
|
+
</div>
|
|
8301
|
+
</ng-template>
|
|
8302
|
+
`,
|
|
8303
|
+
}]
|
|
8304
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.PopupService }, { type: SankeyTooltipTemplateService }, { type: i4.LocalizationService }, { type: i3.IntlService }, { type: i0.NgZone }]; }, propDecorators: { defaultNodeTooltipTemplate: [{
|
|
8305
|
+
type: ViewChild,
|
|
8306
|
+
args: [SankeyNodeTooltipTemplateDirective, { static: false }]
|
|
8307
|
+
}], defaultLinkTooltipTemplate: [{
|
|
8308
|
+
type: ViewChild,
|
|
8309
|
+
args: [SankeyLinkTooltipTemplateDirective, { static: false }]
|
|
8310
|
+
}], templateRef: [{
|
|
8311
|
+
type: ViewChild,
|
|
8312
|
+
args: ['content', { static: true }]
|
|
8313
|
+
}], animate: [{
|
|
8314
|
+
type: Input
|
|
8315
|
+
}], popupSettings: [{
|
|
8316
|
+
type: Input
|
|
8317
|
+
}], wrapperClass: [{
|
|
8318
|
+
type: Input
|
|
8319
|
+
}], tooltipUnitFormat: [{
|
|
8320
|
+
type: Input
|
|
8321
|
+
}], offset: [{
|
|
8322
|
+
type: Input
|
|
8323
|
+
}] } });
|
|
8324
|
+
|
|
8325
|
+
/**
|
|
8326
|
+
* @hidden
|
|
8327
|
+
*/
|
|
8328
|
+
class Messages extends ComponentMessages {
|
|
8329
|
+
}
|
|
8330
|
+
Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
8331
|
+
Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: Messages, selector: "[kendoSankeyMessages]", inputs: { tooltipUnitFormat: "tooltipUnitFormat" }, usesInheritance: true, ngImport: i0 });
|
|
8332
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: Messages, decorators: [{
|
|
8333
|
+
type: Directive,
|
|
8334
|
+
args: [{
|
|
8335
|
+
selector: '[kendoSankeyMessages]'
|
|
8336
|
+
}]
|
|
8337
|
+
}], propDecorators: { tooltipUnitFormat: [{
|
|
8338
|
+
type: Input
|
|
8339
|
+
}] } });
|
|
8340
|
+
|
|
8341
|
+
/**
|
|
8342
|
+
* @hidden
|
|
8343
|
+
*/
|
|
8344
|
+
class LocalizedMessagesDirective extends Messages {
|
|
8345
|
+
constructor(service) {
|
|
8346
|
+
super();
|
|
8347
|
+
this.service = service;
|
|
8348
|
+
}
|
|
8349
|
+
}
|
|
8350
|
+
LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
8351
|
+
LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: LocalizedMessagesDirective, selector: "[kendoSankeyLocalizedMessages]", providers: [
|
|
8352
|
+
{
|
|
8353
|
+
provide: Messages,
|
|
8354
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
|
8355
|
+
}
|
|
8356
|
+
], usesInheritance: true, ngImport: i0 });
|
|
8357
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
|
|
8358
|
+
type: Directive,
|
|
8359
|
+
args: [{
|
|
8360
|
+
providers: [
|
|
8361
|
+
{
|
|
8362
|
+
provide: Messages,
|
|
8363
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
|
8364
|
+
}
|
|
8365
|
+
],
|
|
8366
|
+
selector: '[kendoSankeyLocalizedMessages]'
|
|
8367
|
+
}]
|
|
8368
|
+
}], ctorParameters: function () { return [{ type: i4.LocalizationService }]; } });
|
|
8369
|
+
|
|
8370
|
+
/**
|
|
8371
|
+
* The Sankey diagram component.
|
|
8372
|
+
*
|
|
8373
|
+
* @example
|
|
8374
|
+
* ```ts
|
|
8375
|
+
* import { Component } from '@angular/core';
|
|
8376
|
+
*
|
|
8377
|
+
* _@Component({
|
|
8378
|
+
* selector: 'my-app',
|
|
8379
|
+
* template: `
|
|
8380
|
+
* <kendo-sankey [data]="data">
|
|
8381
|
+
* </kendo-sankey>
|
|
8382
|
+
* `,
|
|
8383
|
+
* })
|
|
8384
|
+
* export class AppComponent {
|
|
8385
|
+
* public data: SankeyData = {
|
|
8386
|
+
* nodes: [
|
|
8387
|
+
* { id: 1, label: { text: 'Linux' } },
|
|
8388
|
+
* { id: 0, label: { text: 'iOS'} },
|
|
8389
|
+
* { id: 2, label: { text: 'Mobile' } },
|
|
8390
|
+
* { id: 3, label: { text: 'Desktop' } },
|
|
8391
|
+
* ],
|
|
8392
|
+
* links: [
|
|
8393
|
+
* { sourceId: 0, targetId: 2, value: 1 },
|
|
8394
|
+
* { sourceId: 1, targetId: 2, value: 2 },
|
|
8395
|
+
* { sourceId: 1, targetId: 3, value: 3 },
|
|
8396
|
+
* ],
|
|
8397
|
+
* };
|
|
8398
|
+
* }
|
|
8399
|
+
* ```
|
|
8400
|
+
*/
|
|
8401
|
+
class SankeyComponent {
|
|
8402
|
+
constructor(element, configurationService, themeService, localizationService, instanceEventService, ngZone, changeDetector, renderer) {
|
|
8403
|
+
this.element = element;
|
|
8404
|
+
this.configurationService = configurationService;
|
|
8405
|
+
this.themeService = themeService;
|
|
8406
|
+
this.localizationService = localizationService;
|
|
8407
|
+
this.instanceEventService = instanceEventService;
|
|
8408
|
+
this.ngZone = ngZone;
|
|
8409
|
+
this.changeDetector = changeDetector;
|
|
8410
|
+
this.renderer = renderer;
|
|
8411
|
+
/**
|
|
8412
|
+
* Fires when the mouse pointer enters a node. Similar to the `mouseenter` event.
|
|
8413
|
+
*/
|
|
8414
|
+
this.nodeEnter = new EventEmitter();
|
|
8415
|
+
/**
|
|
8416
|
+
* Fires when the mouse pointer leaves a node. Similar to the `mouseleave` event.
|
|
8417
|
+
*/
|
|
8418
|
+
this.nodeLeave = new EventEmitter();
|
|
8419
|
+
/**
|
|
8420
|
+
* Fires when a node is clicked.
|
|
8421
|
+
*/
|
|
8422
|
+
this.nodeClick = new EventEmitter();
|
|
8423
|
+
/**
|
|
8424
|
+
* Fires when the mouse pointer enters a link. Similar to the `mouseenter` event,
|
|
8425
|
+
*/
|
|
8426
|
+
this.linkEnter = new EventEmitter();
|
|
8427
|
+
/**
|
|
8428
|
+
* Fires when the mouse pointer leaves a link. Similar to the `mouseleave` event.
|
|
8429
|
+
*/
|
|
8430
|
+
this.linkLeave = new EventEmitter();
|
|
8431
|
+
/**
|
|
8432
|
+
* Fires when a link is clicked.
|
|
8433
|
+
*/
|
|
8434
|
+
this.linkClick = new EventEmitter();
|
|
8435
|
+
/**
|
|
8436
|
+
* @hidden
|
|
8437
|
+
*/
|
|
8438
|
+
this.showLicenseWatermark = false;
|
|
8439
|
+
this.rtl = false;
|
|
8440
|
+
const isValid = validatePackage(packageMetadata);
|
|
8441
|
+
this.showLicenseWatermark = shouldShowValidationUI(isValid);
|
|
8442
|
+
this.themeService.loadTheme();
|
|
8443
|
+
this.refreshWait();
|
|
8444
|
+
}
|
|
8445
|
+
ngOnChanges(changes) {
|
|
8446
|
+
const store = this.configurationService.store;
|
|
8447
|
+
copyChanges(changes, store);
|
|
8448
|
+
store.popupSettings = null;
|
|
8449
|
+
this.configurationService.push(store);
|
|
8450
|
+
}
|
|
8451
|
+
/**
|
|
8452
|
+
* Updates the component fields with the specified values and refreshes the widget.
|
|
8453
|
+
*
|
|
8454
|
+
* Use this method when the configuration values cannot be set through the template.
|
|
8455
|
+
*
|
|
8456
|
+
* @example
|
|
8457
|
+
* ```ts-no-run
|
|
8458
|
+
* sankey.notifyChanges({ title: { text: 'New Title' } });
|
|
8459
|
+
* ```
|
|
8460
|
+
*
|
|
8461
|
+
* @param changes An object containing the updated input fields.
|
|
8462
|
+
*/
|
|
8463
|
+
notifyChanges(changes) {
|
|
8464
|
+
this.ngOnChanges(toSimpleChanges(changes));
|
|
8465
|
+
}
|
|
8466
|
+
ngOnDestroy() {
|
|
8467
|
+
this.destroyed = true;
|
|
8468
|
+
if (this.optionsChange) {
|
|
8469
|
+
this.optionsChange.unsubscribe();
|
|
8470
|
+
}
|
|
8471
|
+
if (this.instance) {
|
|
8472
|
+
this.instance.destroy();
|
|
8473
|
+
this.instance = null;
|
|
8474
|
+
}
|
|
8475
|
+
if (this.subscriptions) {
|
|
8476
|
+
this.subscriptions.unsubscribe();
|
|
8477
|
+
}
|
|
8478
|
+
clearTimeout(this.redrawTimeout);
|
|
8479
|
+
}
|
|
8480
|
+
/**
|
|
8481
|
+
* @hidden
|
|
8482
|
+
*/
|
|
8483
|
+
messageFor(key) {
|
|
8484
|
+
return this.localizationService.get(key);
|
|
8485
|
+
}
|
|
8486
|
+
createInstance(element) {
|
|
8487
|
+
this.instance = new Sankey(element, this.options, this.theme);
|
|
8488
|
+
['nodeEnter', 'nodeLeave', 'nodeClick', 'linkEnter', 'linkLeave', 'linkClick'].forEach((eventName) => this.instance.bind(eventName, (e) => this.trigger(eventName, e)));
|
|
8489
|
+
this.instance.bind('tooltipShow', (e) => this.onShowTooltip(e));
|
|
8490
|
+
this.instance.bind('tooltipHide', () => this.onHideTooltip());
|
|
8491
|
+
}
|
|
8492
|
+
/**
|
|
8493
|
+
* Exports the Sankey diagram as an image. The export operation is asynchronous and returns a promise.
|
|
8494
|
+
*
|
|
8495
|
+
* @param {ImageExportOptions} options - The parameters for the exported image.
|
|
8496
|
+
* @returns {Promise<string>} - A promise that will be resolved with a PNG image encoded as a Data URI.
|
|
8497
|
+
*/
|
|
8498
|
+
exportImage(options = {}) {
|
|
8499
|
+
return exportImage(this.exportVisual(options), options);
|
|
8500
|
+
}
|
|
8501
|
+
/**
|
|
8502
|
+
* Exports the Sankey diagram as an SVG document. The export operation is asynchronous and returns a promise.
|
|
8503
|
+
*
|
|
8504
|
+
* @param options - The parameters for the exported file.
|
|
8505
|
+
* @returns - A promise that will be resolved with an SVG document that is encoded as a Data URI.
|
|
8506
|
+
*/
|
|
8507
|
+
exportSVG(options = {}) {
|
|
8508
|
+
return exportSVG(this.exportVisual(options), options);
|
|
8509
|
+
}
|
|
8510
|
+
/**
|
|
8511
|
+
* Exports the visual of the Sankey component to a drawing group.
|
|
8512
|
+
*
|
|
8513
|
+
* @param options - The parameters for the export operation.
|
|
8514
|
+
* @returns - The root Group of the scene.
|
|
8515
|
+
*/
|
|
8516
|
+
exportVisual(options = {}) {
|
|
8517
|
+
return this.instance.exportVisual(options);
|
|
8518
|
+
}
|
|
8519
|
+
init() {
|
|
8520
|
+
if (!this.canRender) {
|
|
8521
|
+
return;
|
|
8522
|
+
}
|
|
8523
|
+
const element = this.instanceElement.nativeElement;
|
|
8524
|
+
this.createInstance(element);
|
|
8525
|
+
}
|
|
8526
|
+
/**
|
|
8527
|
+
* Reloads the Sankey appearance settings from the current [Kendo UI Theme]({% slug themesandstyles %}).
|
|
8528
|
+
*
|
|
8529
|
+
* Call this method after loading a different theme stylesheet.
|
|
8530
|
+
*/
|
|
8531
|
+
reloadTheme() {
|
|
8532
|
+
if (!this.instance) {
|
|
8533
|
+
return;
|
|
8534
|
+
}
|
|
8535
|
+
this.themeService.reset();
|
|
8536
|
+
this.instance.destroy();
|
|
8537
|
+
this.instance = null;
|
|
8538
|
+
}
|
|
8539
|
+
onShowTooltip(e) {
|
|
8540
|
+
this.run(() => {
|
|
8541
|
+
this.tooltipInstance.show(e);
|
|
8542
|
+
}, true, true);
|
|
8543
|
+
}
|
|
8544
|
+
onHideTooltip() {
|
|
8545
|
+
if (this.tooltipInstance.active) {
|
|
8546
|
+
this.tooltipInstance.hide();
|
|
8547
|
+
this.detectChanges();
|
|
8548
|
+
}
|
|
8549
|
+
}
|
|
8550
|
+
trigger(name, e) {
|
|
8551
|
+
const emitter = this.activeEmitter(name);
|
|
8552
|
+
if (emitter) {
|
|
8553
|
+
const args = this.instanceEventService.create(name, e, this);
|
|
8554
|
+
this.run(() => {
|
|
8555
|
+
emitter.emit(args);
|
|
8556
|
+
});
|
|
8557
|
+
return args.isDefaultPrevented && args.isDefaultPrevented();
|
|
8558
|
+
}
|
|
8559
|
+
}
|
|
8560
|
+
requiresHandlers(names) {
|
|
8561
|
+
for (let idx = 0; idx < names.length; idx++) {
|
|
8562
|
+
if (this.activeEmitter(names[idx])) {
|
|
8563
|
+
return true;
|
|
8564
|
+
}
|
|
8565
|
+
}
|
|
8566
|
+
return false;
|
|
8567
|
+
}
|
|
8568
|
+
refresh() {
|
|
8569
|
+
clearTimeout(this.redrawTimeout);
|
|
8570
|
+
if (!this.instance) {
|
|
8571
|
+
this.init();
|
|
8572
|
+
return;
|
|
8573
|
+
}
|
|
8574
|
+
this.updateOptions();
|
|
8575
|
+
}
|
|
8576
|
+
updateOptions() {
|
|
8577
|
+
this.instance.setOptions(this.options);
|
|
8578
|
+
}
|
|
8579
|
+
get canRender() {
|
|
8580
|
+
return isDocumentAvailable() && Boolean(this.instanceElement);
|
|
8581
|
+
}
|
|
8582
|
+
activeEmitter(name) {
|
|
8583
|
+
const emitter = this[name];
|
|
8584
|
+
if (emitter && emitter.emit && hasObservers(emitter)) {
|
|
8585
|
+
return emitter;
|
|
8586
|
+
}
|
|
8587
|
+
}
|
|
8588
|
+
refreshWait() {
|
|
8589
|
+
this.ngZone.runOutsideAngular(() => {
|
|
8590
|
+
this.optionsChange = combineLatest([this.configurationService.onChange$, this.themeService.onChange$])
|
|
8591
|
+
.pipe(tap((result) => {
|
|
8592
|
+
this.options = result[0];
|
|
8593
|
+
this.theme = this.loadTheme(result[1]);
|
|
8594
|
+
}), auditTime(THROTTLE_MS))
|
|
8595
|
+
.subscribe(() => {
|
|
8596
|
+
this.refresh();
|
|
8597
|
+
});
|
|
8598
|
+
});
|
|
8599
|
+
}
|
|
8600
|
+
loadTheme(chartTheme) {
|
|
8601
|
+
return Object.assign(Object.assign({}, chartTheme), { nodeColors: chartTheme.seriesColors });
|
|
8602
|
+
}
|
|
8603
|
+
run(callback, inZone = true, detectChanges) {
|
|
8604
|
+
if (inZone) {
|
|
8605
|
+
if (detectChanges) {
|
|
8606
|
+
this.changeDetector.markForCheck();
|
|
8607
|
+
}
|
|
8608
|
+
this.ngZone.run(callback);
|
|
8609
|
+
}
|
|
8610
|
+
else {
|
|
8611
|
+
callback();
|
|
8612
|
+
if (detectChanges) {
|
|
8613
|
+
this.detectChanges();
|
|
8614
|
+
}
|
|
8615
|
+
}
|
|
8616
|
+
}
|
|
8617
|
+
detectChanges() {
|
|
8618
|
+
if (!this.destroyed) {
|
|
8619
|
+
this.changeDetector.detectChanges();
|
|
8620
|
+
}
|
|
8621
|
+
}
|
|
8622
|
+
}
|
|
8623
|
+
SankeyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyComponent, deps: [{ token: i0.ElementRef }, { token: ConfigurationService }, { token: ThemeService }, { token: i4.LocalizationService }, { token: InstanceEventService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
8624
|
+
SankeyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyComponent, selector: "kendo-sankey", inputs: { data: "data", links: "links", nodes: "nodes", labels: "labels", title: "title", legend: "legend", tooltip: "tooltip", disableAutoLayout: "disableAutoLayout", popupSettings: "popupSettings" }, outputs: { nodeEnter: "nodeEnter", nodeLeave: "nodeLeave", nodeClick: "nodeClick", linkEnter: "linkEnter", linkLeave: "linkLeave", linkClick: "linkClick" }, providers: [
|
|
8625
|
+
ConfigurationService,
|
|
8626
|
+
LocalizationService,
|
|
8627
|
+
InstanceEventService,
|
|
8628
|
+
SankeyTooltipTemplateService,
|
|
8629
|
+
{
|
|
8630
|
+
provide: L10N_PREFIX,
|
|
8631
|
+
useValue: 'kendo.sankey',
|
|
8632
|
+
},
|
|
8633
|
+
], viewQueries: [{ propertyName: "tooltipInstance", first: true, predicate: SankeyTooltipPopupComponent, descendants: true, static: true }, { propertyName: "instanceElement", first: true, predicate: ["instance"], descendants: true, static: true }], exportAs: ["kendoSankey"], usesOnChanges: true, ngImport: i0, template: `
|
|
8634
|
+
<ng-container
|
|
8635
|
+
kendoSankeyLocalizedMessages
|
|
8636
|
+
i18n-tooltipUnitFormat="kendo.sankey.tooltipUnitFormat|The format string to use when displaying node and link values in the tooltip"
|
|
8637
|
+
tooltipUnitFormat="({0} units)"
|
|
8638
|
+
></ng-container>
|
|
8639
|
+
<div #instance></div>
|
|
8640
|
+
<kendo-sankey-tooltip-popup
|
|
8641
|
+
[popupSettings]="popupSettings"
|
|
8642
|
+
[tooltipUnitFormat]="messageFor('tooltipUnitFormat')"
|
|
8643
|
+
>
|
|
8644
|
+
</kendo-sankey-tooltip-popup>
|
|
8645
|
+
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
8646
|
+
`, isInline: true, components: [{ type: SankeyTooltipPopupComponent, selector: "kendo-sankey-tooltip-popup", inputs: ["animate", "popupSettings", "wrapperClass", "tooltipUnitFormat", "offset"] }, { type: i8.WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]" }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoSankeyLocalizedMessages]" }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8647
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyComponent, decorators: [{
|
|
8648
|
+
type: Component,
|
|
8649
|
+
args: [{
|
|
8650
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
8651
|
+
exportAs: 'kendoSankey',
|
|
8652
|
+
providers: [
|
|
8653
|
+
ConfigurationService,
|
|
8654
|
+
LocalizationService,
|
|
8655
|
+
InstanceEventService,
|
|
8656
|
+
SankeyTooltipTemplateService,
|
|
8657
|
+
{
|
|
8658
|
+
provide: L10N_PREFIX,
|
|
8659
|
+
useValue: 'kendo.sankey',
|
|
8660
|
+
},
|
|
8661
|
+
],
|
|
8662
|
+
selector: 'kendo-sankey',
|
|
8663
|
+
template: `
|
|
8664
|
+
<ng-container
|
|
8665
|
+
kendoSankeyLocalizedMessages
|
|
8666
|
+
i18n-tooltipUnitFormat="kendo.sankey.tooltipUnitFormat|The format string to use when displaying node and link values in the tooltip"
|
|
8667
|
+
tooltipUnitFormat="({0} units)"
|
|
8668
|
+
></ng-container>
|
|
8669
|
+
<div #instance></div>
|
|
8670
|
+
<kendo-sankey-tooltip-popup
|
|
8671
|
+
[popupSettings]="popupSettings"
|
|
8672
|
+
[tooltipUnitFormat]="messageFor('tooltipUnitFormat')"
|
|
8673
|
+
>
|
|
8674
|
+
</kendo-sankey-tooltip-popup>
|
|
8675
|
+
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
8676
|
+
`,
|
|
8677
|
+
}]
|
|
8678
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: ConfigurationService }, { type: ThemeService }, { type: i4.LocalizationService }, { type: InstanceEventService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { data: [{
|
|
8679
|
+
type: Input
|
|
8680
|
+
}], links: [{
|
|
8681
|
+
type: Input
|
|
8682
|
+
}], nodes: [{
|
|
8683
|
+
type: Input
|
|
8684
|
+
}], labels: [{
|
|
8685
|
+
type: Input
|
|
8686
|
+
}], title: [{
|
|
8687
|
+
type: Input
|
|
8688
|
+
}], legend: [{
|
|
8689
|
+
type: Input
|
|
8690
|
+
}], tooltip: [{
|
|
8691
|
+
type: Input
|
|
8692
|
+
}], disableAutoLayout: [{
|
|
8693
|
+
type: Input
|
|
8694
|
+
}], popupSettings: [{
|
|
8695
|
+
type: Input
|
|
8696
|
+
}], nodeEnter: [{
|
|
8697
|
+
type: Output
|
|
8698
|
+
}], nodeLeave: [{
|
|
8699
|
+
type: Output
|
|
8700
|
+
}], nodeClick: [{
|
|
8701
|
+
type: Output
|
|
8702
|
+
}], linkEnter: [{
|
|
8703
|
+
type: Output
|
|
8704
|
+
}], linkLeave: [{
|
|
8705
|
+
type: Output
|
|
8706
|
+
}], linkClick: [{
|
|
8707
|
+
type: Output
|
|
8708
|
+
}], tooltipInstance: [{
|
|
8709
|
+
type: ViewChild,
|
|
8710
|
+
args: [SankeyTooltipPopupComponent, { static: true }]
|
|
8711
|
+
}], instanceElement: [{
|
|
8712
|
+
type: ViewChild,
|
|
8713
|
+
args: ['instance', { static: true }]
|
|
8714
|
+
}] } });
|
|
8715
|
+
|
|
8716
|
+
/**
|
|
8717
|
+
* @hidden
|
|
8718
|
+
*/
|
|
8719
|
+
function createSankeyData(data, dimensions, measure) {
|
|
8720
|
+
const nodes = new Set();
|
|
8721
|
+
const links = new Map();
|
|
8722
|
+
const linksMap = new Map();
|
|
8723
|
+
data.forEach((row) => {
|
|
8724
|
+
dimensions.forEach((dimension) => {
|
|
8725
|
+
nodes.add(dimension(row));
|
|
8726
|
+
});
|
|
8727
|
+
for (let i = 0; i < dimensions.length - 1; i++) {
|
|
8728
|
+
const source = dimensions[i](row);
|
|
8729
|
+
const target = dimensions[i + 1](row);
|
|
8730
|
+
const key = `${source}_${target}`;
|
|
8731
|
+
const value = measure(row);
|
|
8732
|
+
if (links.has(key)) {
|
|
8733
|
+
links.set(key, links.get(key) + value);
|
|
8734
|
+
}
|
|
8735
|
+
else {
|
|
8736
|
+
links.set(key, value);
|
|
8737
|
+
linksMap.set(key, { source, target });
|
|
8738
|
+
}
|
|
8739
|
+
}
|
|
8740
|
+
});
|
|
8741
|
+
const nodesId = new Map();
|
|
8742
|
+
const nodesArray = Array.from(nodes).map((node, index) => {
|
|
8743
|
+
nodesId.set(node, index);
|
|
8744
|
+
return { id: index, label: { text: String(node) } };
|
|
8745
|
+
});
|
|
8746
|
+
const linksArray = Array.from(links).map(([key, value]) => {
|
|
8747
|
+
const { source, target } = linksMap.get(key);
|
|
8748
|
+
return {
|
|
8749
|
+
sourceId: nodesId.get(source),
|
|
8750
|
+
targetId: nodesId.get(target),
|
|
8751
|
+
value
|
|
8752
|
+
};
|
|
8753
|
+
});
|
|
8754
|
+
return { nodes: nodesArray, links: linksArray };
|
|
8755
|
+
}
|
|
8756
|
+
;
|
|
8757
|
+
|
|
8758
|
+
/**
|
|
8759
|
+
* Arguments for the `dataBound` event of the [`[kendoSankeyFlatBinding]`]({% slug api_charts_sankeyflatbindingdirective %}) directive.
|
|
8760
|
+
*/
|
|
8761
|
+
class SankeyFlatBindingDataBoundEvent {
|
|
8762
|
+
/**
|
|
8763
|
+
* @hidden
|
|
8764
|
+
*/
|
|
8765
|
+
constructor(data) {
|
|
8766
|
+
this.data = data;
|
|
8767
|
+
}
|
|
8768
|
+
}
|
|
8769
|
+
|
|
8770
|
+
/**
|
|
8771
|
+
* A directive which encapsulates the retrieval of the nodes and links when flat data is provided.
|
|
8772
|
+
*
|
|
8773
|
+
* See [Data Binding - Binding to Flat Data]({% slug data_binding_sankey %}#toc-binding-to-flat-data).
|
|
8774
|
+
*/
|
|
8775
|
+
class SankeyFlatBindingDirective {
|
|
8776
|
+
constructor(sankey) {
|
|
8777
|
+
this.sankey = sankey;
|
|
8778
|
+
/**
|
|
8779
|
+
* Represents the fields which identify the nodes.
|
|
8780
|
+
*/
|
|
8781
|
+
this.dimensionFields = [];
|
|
8782
|
+
/**
|
|
8783
|
+
* Fires when the flat data has been converted to `SankeyData`.
|
|
8784
|
+
*
|
|
8785
|
+
* To customize the created nodes and links, modify the data.
|
|
8786
|
+
*/
|
|
8787
|
+
this.dataBound = new EventEmitter();
|
|
8788
|
+
}
|
|
8789
|
+
ngOnChanges(changes) {
|
|
8790
|
+
var _a;
|
|
8791
|
+
if (!isChanged('data', changes, false)) {
|
|
8792
|
+
return;
|
|
8793
|
+
}
|
|
8794
|
+
if (((_a = this.dimensionFields) === null || _a === void 0 ? void 0 : _a.length) === 0) {
|
|
8795
|
+
throw new Error('kendoSankeyFlatBinding: dimensionFields is required');
|
|
8796
|
+
}
|
|
8797
|
+
if (!this.valueField) {
|
|
8798
|
+
throw new Error('kendoSankeyFlatBinding: valueField is required');
|
|
8799
|
+
}
|
|
8800
|
+
const dimensions = this.dimensionFields.map(field => getter(field));
|
|
8801
|
+
const measure = getter(this.valueField);
|
|
8802
|
+
const data = createSankeyData(this.data, dimensions, measure);
|
|
8803
|
+
this.dataBound.emit(new SankeyFlatBindingDataBoundEvent(data));
|
|
8804
|
+
this.sankey.notifyChanges({ data });
|
|
8805
|
+
}
|
|
8806
|
+
}
|
|
8807
|
+
SankeyFlatBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyFlatBindingDirective, deps: [{ token: SankeyComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
8808
|
+
SankeyFlatBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: SankeyFlatBindingDirective, selector: "[kendoSankeyFlatBinding]", inputs: { data: ["kendoSankeyFlatBinding", "data"], dimensionFields: "dimensionFields", valueField: "valueField" }, outputs: { dataBound: "dataBound" }, usesOnChanges: true, ngImport: i0 });
|
|
8809
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyFlatBindingDirective, decorators: [{
|
|
8810
|
+
type: Directive,
|
|
8811
|
+
args: [{
|
|
8812
|
+
selector: '[kendoSankeyFlatBinding]'
|
|
8813
|
+
}]
|
|
8814
|
+
}], ctorParameters: function () { return [{ type: SankeyComponent }]; }, propDecorators: { data: [{
|
|
8815
|
+
type: Input,
|
|
8816
|
+
args: ['kendoSankeyFlatBinding']
|
|
8817
|
+
}], dimensionFields: [{
|
|
8818
|
+
type: Input
|
|
8819
|
+
}], valueField: [{
|
|
8820
|
+
type: Input
|
|
8821
|
+
}], dataBound: [{
|
|
8822
|
+
type: Output
|
|
8823
|
+
}] } });
|
|
8824
|
+
|
|
8825
|
+
/**
|
|
8826
|
+
* The configuration options of the Sankey legend
|
|
8827
|
+
* ([see example]({% slug legend_sankey %})).
|
|
8828
|
+
*/
|
|
8829
|
+
class SankeyLabelsComponent extends SettingsComponent {
|
|
8830
|
+
constructor(configurationService) {
|
|
8831
|
+
super('labels', configurationService);
|
|
8832
|
+
this.configurationService = configurationService;
|
|
8833
|
+
}
|
|
8834
|
+
}
|
|
8835
|
+
SankeyLabelsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLabelsComponent, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8836
|
+
SankeyLabelsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyLabelsComponent, selector: "kendo-sankey-labels", inputs: { visible: "visible", font: "font", color: "color", align: "align", position: "position", padding: "padding", margin: "margin", border: "border", offset: "offset", stroke: "stroke" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8837
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLabelsComponent, decorators: [{
|
|
8838
|
+
type: Component,
|
|
8839
|
+
args: [{
|
|
8840
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
8841
|
+
selector: 'kendo-sankey-labels',
|
|
8842
|
+
template: '',
|
|
8843
|
+
}]
|
|
8844
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }]; }, propDecorators: { visible: [{
|
|
8845
|
+
type: Input
|
|
8846
|
+
}], font: [{
|
|
8847
|
+
type: Input
|
|
8848
|
+
}], color: [{
|
|
8849
|
+
type: Input
|
|
8850
|
+
}], align: [{
|
|
8851
|
+
type: Input
|
|
8852
|
+
}], position: [{
|
|
8853
|
+
type: Input
|
|
8854
|
+
}], padding: [{
|
|
8855
|
+
type: Input
|
|
8856
|
+
}], margin: [{
|
|
8857
|
+
type: Input
|
|
8858
|
+
}], border: [{
|
|
8859
|
+
type: Input
|
|
8860
|
+
}], offset: [{
|
|
8861
|
+
type: Input
|
|
8862
|
+
}], stroke: [{
|
|
8863
|
+
type: Input
|
|
8864
|
+
}] } });
|
|
8865
|
+
|
|
8866
|
+
/**
|
|
8867
|
+
* The configuration options of the Sankey legend
|
|
8868
|
+
* ([see example]({% slug legend_sankey %})).
|
|
8869
|
+
*/
|
|
8870
|
+
class SankeyLegendComponent extends SettingsComponent {
|
|
8871
|
+
constructor(configurationService) {
|
|
8872
|
+
super('legend', configurationService);
|
|
8873
|
+
this.configurationService = configurationService;
|
|
8874
|
+
this.markAsVisible();
|
|
8875
|
+
}
|
|
8876
|
+
}
|
|
8877
|
+
SankeyLegendComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLegendComponent, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8878
|
+
SankeyLegendComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyLegendComponent, selector: "kendo-sankey-legend", inputs: { align: "align", background: "background", border: "border", height: "height", labels: "labels", margin: "margin", offsetX: "offsetX", offsetY: "offsetY", orientation: "orientation", padding: "padding", position: "position", reverse: "reverse", visible: "visible", width: "width", markers: "markers", spacing: "spacing", title: "title" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8879
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLegendComponent, decorators: [{
|
|
8880
|
+
type: Component,
|
|
8881
|
+
args: [{
|
|
8882
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
8883
|
+
selector: 'kendo-sankey-legend',
|
|
8884
|
+
template: ''
|
|
8885
|
+
}]
|
|
8886
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }]; }, propDecorators: { align: [{
|
|
8887
|
+
type: Input
|
|
8888
|
+
}], background: [{
|
|
8889
|
+
type: Input
|
|
8890
|
+
}], border: [{
|
|
8891
|
+
type: Input
|
|
8892
|
+
}], height: [{
|
|
8893
|
+
type: Input
|
|
8894
|
+
}], labels: [{
|
|
8895
|
+
type: Input
|
|
8896
|
+
}], margin: [{
|
|
8897
|
+
type: Input
|
|
8898
|
+
}], offsetX: [{
|
|
8899
|
+
type: Input
|
|
8900
|
+
}], offsetY: [{
|
|
8901
|
+
type: Input
|
|
8902
|
+
}], orientation: [{
|
|
8903
|
+
type: Input
|
|
8904
|
+
}], padding: [{
|
|
8905
|
+
type: Input
|
|
8906
|
+
}], position: [{
|
|
8907
|
+
type: Input
|
|
8908
|
+
}], reverse: [{
|
|
8909
|
+
type: Input
|
|
8910
|
+
}], visible: [{
|
|
8911
|
+
type: Input
|
|
8912
|
+
}], width: [{
|
|
8913
|
+
type: Input
|
|
8914
|
+
}], markers: [{
|
|
8915
|
+
type: Input
|
|
8916
|
+
}], spacing: [{
|
|
8917
|
+
type: Input
|
|
8918
|
+
}], title: [{
|
|
8919
|
+
type: Input
|
|
8920
|
+
}] } });
|
|
8921
|
+
|
|
8922
|
+
/**
|
|
8923
|
+
* The configuration options of the Sankey legend
|
|
8924
|
+
* ([see example]({% slug legend_sankey %})).
|
|
8925
|
+
*/
|
|
8926
|
+
class SankeyLinksComponent extends SettingsComponent {
|
|
8927
|
+
constructor(configurationService) {
|
|
8928
|
+
super('links', configurationService);
|
|
8929
|
+
this.configurationService = configurationService;
|
|
8930
|
+
}
|
|
8931
|
+
}
|
|
8932
|
+
SankeyLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLinksComponent, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8933
|
+
SankeyLinksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyLinksComponent, selector: "kendo-sankey-links", inputs: { colorType: "colorType", color: "color", opacity: "opacity", highlight: "highlight" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8934
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyLinksComponent, decorators: [{
|
|
8935
|
+
type: Component,
|
|
8936
|
+
args: [{
|
|
8937
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
8938
|
+
selector: 'kendo-sankey-links',
|
|
8939
|
+
template: '',
|
|
8940
|
+
}]
|
|
8941
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }]; }, propDecorators: { colorType: [{
|
|
8942
|
+
type: Input
|
|
8943
|
+
}], color: [{
|
|
8944
|
+
type: Input
|
|
8945
|
+
}], opacity: [{
|
|
8946
|
+
type: Input
|
|
8947
|
+
}], highlight: [{
|
|
8948
|
+
type: Input
|
|
8949
|
+
}] } });
|
|
8950
|
+
|
|
8951
|
+
/**
|
|
8952
|
+
* Custom component messages override default component messages
|
|
8953
|
+
* ([see example]({% slug globalization_filter %}#toc-localization)).
|
|
8954
|
+
*/
|
|
8955
|
+
class SankeyCustomMessagesComponent extends Messages {
|
|
8956
|
+
constructor(service) {
|
|
8957
|
+
super();
|
|
8958
|
+
this.service = service;
|
|
8959
|
+
}
|
|
8960
|
+
get override() {
|
|
8961
|
+
return true;
|
|
8962
|
+
}
|
|
8963
|
+
}
|
|
8964
|
+
SankeyCustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyCustomMessagesComponent, deps: [{ token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8965
|
+
SankeyCustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyCustomMessagesComponent, selector: "kendo-sankey-messages", providers: [
|
|
8966
|
+
{
|
|
8967
|
+
provide: Messages,
|
|
8968
|
+
useExisting: forwardRef(() => SankeyCustomMessagesComponent)
|
|
8969
|
+
}
|
|
8970
|
+
], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
8971
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyCustomMessagesComponent, decorators: [{
|
|
8972
|
+
type: Component,
|
|
8973
|
+
args: [{
|
|
8974
|
+
providers: [
|
|
8975
|
+
{
|
|
8976
|
+
provide: Messages,
|
|
8977
|
+
useExisting: forwardRef(() => SankeyCustomMessagesComponent)
|
|
8978
|
+
}
|
|
8979
|
+
],
|
|
8980
|
+
selector: 'kendo-sankey-messages',
|
|
8981
|
+
template: ``
|
|
8982
|
+
}]
|
|
8983
|
+
}], ctorParameters: function () { return [{ type: i4.LocalizationService }]; } });
|
|
8984
|
+
|
|
8985
|
+
/**
|
|
8986
|
+
* The configuration options of the Sankey legend
|
|
8987
|
+
* ([see example]({% slug legend_sankey %})).
|
|
8988
|
+
*/
|
|
8989
|
+
class SankeyNodesComponent extends SettingsComponent {
|
|
8990
|
+
constructor(configurationService) {
|
|
8991
|
+
super('nodes', configurationService);
|
|
8992
|
+
this.configurationService = configurationService;
|
|
8993
|
+
}
|
|
8994
|
+
}
|
|
8995
|
+
SankeyNodesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyNodesComponent, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8996
|
+
SankeyNodesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyNodesComponent, selector: "kendo-sankey-nodes", inputs: { colorType: "colorType", color: "color", opacity: "opacity", offset: "offset", padding: "padding", width: "width", align: "align" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8997
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyNodesComponent, decorators: [{
|
|
8998
|
+
type: Component,
|
|
8999
|
+
args: [{
|
|
9000
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
9001
|
+
selector: 'kendo-sankey-nodes',
|
|
9002
|
+
template: '',
|
|
9003
|
+
}]
|
|
9004
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }]; }, propDecorators: { colorType: [{
|
|
9005
|
+
type: Input
|
|
9006
|
+
}], color: [{
|
|
9007
|
+
type: Input
|
|
9008
|
+
}], opacity: [{
|
|
9009
|
+
type: Input
|
|
9010
|
+
}], offset: [{
|
|
9011
|
+
type: Input
|
|
9012
|
+
}], padding: [{
|
|
9013
|
+
type: Input
|
|
9014
|
+
}], width: [{
|
|
9015
|
+
type: Input
|
|
9016
|
+
}], align: [{
|
|
9017
|
+
type: Input
|
|
9018
|
+
}] } });
|
|
9019
|
+
|
|
9020
|
+
/**
|
|
9021
|
+
* The configuration options of the Sankey title or text
|
|
9022
|
+
* ([see example]({% slug title_sankey %})).
|
|
9023
|
+
*
|
|
9024
|
+
* @example
|
|
9025
|
+
* ```html
|
|
9026
|
+
* <kendo-sankey [data]="data">
|
|
9027
|
+
* <kendo-sankey-title text="Title Text" [padding]="{bottom: 20}"></kendo-sankey-title>
|
|
9028
|
+
* ...
|
|
9029
|
+
* </kendo-sankey>
|
|
9030
|
+
* ```
|
|
9031
|
+
*/
|
|
9032
|
+
class SankeyTitleComponent extends SettingsComponent {
|
|
9033
|
+
constructor(configurationService) {
|
|
9034
|
+
super('title', configurationService);
|
|
9035
|
+
this.configurationService = configurationService;
|
|
9036
|
+
}
|
|
9037
|
+
}
|
|
9038
|
+
SankeyTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTitleComponent, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
9039
|
+
SankeyTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyTitleComponent, selector: "kendo-sankey-title", inputs: { align: "align", background: "background", border: "border", color: "color", font: "font", margin: "margin", padding: "padding", position: "position", text: "text", description: "description", visible: "visible" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9040
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTitleComponent, decorators: [{
|
|
9041
|
+
type: Component,
|
|
9042
|
+
args: [{
|
|
9043
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
9044
|
+
selector: 'kendo-sankey-title',
|
|
9045
|
+
template: ''
|
|
9046
|
+
}]
|
|
9047
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }]; }, propDecorators: { align: [{
|
|
9048
|
+
type: Input
|
|
9049
|
+
}], background: [{
|
|
9050
|
+
type: Input
|
|
9051
|
+
}], border: [{
|
|
9052
|
+
type: Input
|
|
9053
|
+
}], color: [{
|
|
9054
|
+
type: Input
|
|
9055
|
+
}], font: [{
|
|
9056
|
+
type: Input
|
|
9057
|
+
}], margin: [{
|
|
9058
|
+
type: Input
|
|
9059
|
+
}], padding: [{
|
|
9060
|
+
type: Input
|
|
9061
|
+
}], position: [{
|
|
9062
|
+
type: Input
|
|
9063
|
+
}], text: [{
|
|
9064
|
+
type: Input
|
|
9065
|
+
}], description: [{
|
|
9066
|
+
type: Input
|
|
9067
|
+
}], visible: [{
|
|
9068
|
+
type: Input
|
|
9069
|
+
}] } });
|
|
9070
|
+
|
|
9071
|
+
/**
|
|
9072
|
+
* The configuration options of the Sankey tooltip
|
|
9073
|
+
* ([see example]({% slug tooltip_sankey %})).
|
|
9074
|
+
*/
|
|
9075
|
+
class SankeyTooltipComponent extends SettingsComponent {
|
|
9076
|
+
constructor(configurationService, templateService) {
|
|
9077
|
+
super('tooltip', configurationService);
|
|
9078
|
+
this.configurationService = configurationService;
|
|
9079
|
+
this.templateService = templateService;
|
|
9080
|
+
this.markAsVisible();
|
|
9081
|
+
}
|
|
9082
|
+
ngAfterContentChecked() {
|
|
9083
|
+
var _a, _b;
|
|
9084
|
+
this.templateService.linkTemplate = (_a = this.linkTooltipTemplate) === null || _a === void 0 ? void 0 : _a.templateRef;
|
|
9085
|
+
this.templateService.nodeTemplate = (_b = this.nodeTooltipTemplate) === null || _b === void 0 ? void 0 : _b.templateRef;
|
|
9086
|
+
}
|
|
9087
|
+
}
|
|
9088
|
+
SankeyTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipComponent, deps: [{ token: ConfigurationService }, { token: SankeyTooltipTemplateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
9089
|
+
SankeyTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SankeyTooltipComponent, selector: "kendo-sankey-tooltip", inputs: { followPointer: "followPointer", delay: "delay", offset: "offset", visible: "visible" }, queries: [{ propertyName: "linkTooltipTemplate", first: true, predicate: SankeyLinkTooltipTemplateDirective, descendants: true }, { propertyName: "nodeTooltipTemplate", first: true, predicate: SankeyNodeTooltipTemplateDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
9090
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyTooltipComponent, decorators: [{
|
|
9091
|
+
type: Component,
|
|
9092
|
+
args: [{
|
|
9093
|
+
selector: 'kendo-sankey-tooltip',
|
|
9094
|
+
template: '',
|
|
9095
|
+
}]
|
|
9096
|
+
}], ctorParameters: function () { return [{ type: ConfigurationService }, { type: SankeyTooltipTemplateService }]; }, propDecorators: { followPointer: [{
|
|
9097
|
+
type: Input
|
|
9098
|
+
}], delay: [{
|
|
9099
|
+
type: Input
|
|
9100
|
+
}], offset: [{
|
|
9101
|
+
type: Input
|
|
9102
|
+
}], visible: [{
|
|
9103
|
+
type: Input
|
|
9104
|
+
}], linkTooltipTemplate: [{
|
|
9105
|
+
type: ContentChild,
|
|
9106
|
+
args: [SankeyLinkTooltipTemplateDirective, { static: false }]
|
|
9107
|
+
}], nodeTooltipTemplate: [{
|
|
9108
|
+
type: ContentChild,
|
|
9109
|
+
args: [SankeyNodeTooltipTemplateDirective, { static: false }]
|
|
9110
|
+
}] } });
|
|
9111
|
+
|
|
9112
|
+
/**
|
|
9113
|
+
* @hidden
|
|
9114
|
+
*/
|
|
9115
|
+
const SANKEY_EXPORTS = [
|
|
9116
|
+
SankeyComponent,
|
|
9117
|
+
SankeyTooltipPopupComponent,
|
|
9118
|
+
SankeyLinkTooltipTemplateDirective,
|
|
9119
|
+
SankeyNodeTooltipTemplateDirective,
|
|
9120
|
+
SankeyCustomMessagesComponent,
|
|
9121
|
+
LocalizedMessagesDirective,
|
|
9122
|
+
SankeyTitleComponent,
|
|
9123
|
+
SankeyLegendComponent,
|
|
9124
|
+
SankeyTooltipComponent,
|
|
9125
|
+
SankeyLinksComponent,
|
|
9126
|
+
SankeyNodesComponent,
|
|
9127
|
+
SankeyLabelsComponent,
|
|
9128
|
+
SankeyFlatBindingDirective
|
|
9129
|
+
];
|
|
9130
|
+
/**
|
|
9131
|
+
* @hidden
|
|
9132
|
+
*/
|
|
9133
|
+
const SANKEY_DIRECTIVES = [
|
|
9134
|
+
...SANKEY_EXPORTS,
|
|
9135
|
+
SquareSymbol
|
|
9136
|
+
];
|
|
9137
|
+
|
|
9138
|
+
/**
|
|
9139
|
+
* A [module](link:site.data.urls.angular['ngmoduleapi']) that includes the Sparkline component and directives.
|
|
9140
|
+
*
|
|
9141
|
+
* Imports the SparklineModule into your application
|
|
9142
|
+
* [root module](link:site.data.urls.angular['ngmodules']#angular-modularity) or any other sub-module
|
|
9143
|
+
* that will use the Sparkline component.
|
|
9144
|
+
*
|
|
9145
|
+
* @example
|
|
9146
|
+
* ```ts-no-run
|
|
9147
|
+
* import { NgModule } from '@angular/core';
|
|
9148
|
+
* import { BrowserModule } from '@angular/platform-browser';
|
|
9149
|
+
* import { SparklineModule } from '@progress/kendo-angular-charts';
|
|
9150
|
+
* import { AppComponent } from './app.component';
|
|
9151
|
+
*
|
|
9152
|
+
* _@NgModule({
|
|
9153
|
+
* bootstrap: [AppComponent],
|
|
9154
|
+
* declarations: [AppComponent],
|
|
9155
|
+
* imports: [BrowserModule, SparklineModule]
|
|
9156
|
+
* })
|
|
9157
|
+
* export class AppModule {
|
|
9158
|
+
* }
|
|
9159
|
+
* ```
|
|
9160
|
+
*/
|
|
9161
|
+
class SankeyModule {
|
|
9162
|
+
}
|
|
9163
|
+
SankeyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9164
|
+
SankeyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyModule, declarations: [SankeyComponent, SankeyTooltipPopupComponent, SankeyLinkTooltipTemplateDirective, SankeyNodeTooltipTemplateDirective, SankeyCustomMessagesComponent, LocalizedMessagesDirective, SankeyTitleComponent, SankeyLegendComponent, SankeyTooltipComponent, SankeyLinksComponent, SankeyNodesComponent, SankeyLabelsComponent, SankeyFlatBindingDirective, SquareSymbol], imports: [CommonModule, IconsModule, PopupModule, ResizeSensorModule, WatermarkModule], exports: [SankeyComponent, SankeyTooltipPopupComponent, SankeyLinkTooltipTemplateDirective, SankeyNodeTooltipTemplateDirective, SankeyCustomMessagesComponent, LocalizedMessagesDirective, SankeyTitleComponent, SankeyLegendComponent, SankeyTooltipComponent, SankeyLinksComponent, SankeyNodesComponent, SankeyLabelsComponent, SankeyFlatBindingDirective] });
|
|
9165
|
+
SankeyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyModule, providers: [ThemeService], imports: [[CommonModule, IconsModule, PopupModule, ResizeSensorModule, WatermarkModule]] });
|
|
9166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SankeyModule, decorators: [{
|
|
9167
|
+
type: NgModule,
|
|
9168
|
+
args: [{
|
|
9169
|
+
declarations: [SANKEY_DIRECTIVES],
|
|
9170
|
+
exports: [SANKEY_EXPORTS],
|
|
9171
|
+
imports: [CommonModule, IconsModule, PopupModule, ResizeSensorModule, WatermarkModule],
|
|
9172
|
+
providers: [ThemeService],
|
|
9173
|
+
}]
|
|
9174
|
+
}] });
|
|
9175
|
+
|
|
7853
9176
|
/**
|
|
7854
9177
|
* A [module](link:site.data.urls.angular['ngmoduleapi']) that includes all Chart components and directives.
|
|
7855
9178
|
*
|
|
@@ -7876,12 +9199,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7876
9199
|
class ChartsModule {
|
|
7877
9200
|
}
|
|
7878
9201
|
ChartsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7879
|
-
ChartsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, exports: [ChartModule, SparklineModule, StockChartModule] });
|
|
7880
|
-
ChartsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, imports: [ChartModule, SparklineModule, StockChartModule] });
|
|
9202
|
+
ChartsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, exports: [ChartModule, SparklineModule, StockChartModule, SankeyModule] });
|
|
9203
|
+
ChartsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, imports: [ChartModule, SparklineModule, StockChartModule, SankeyModule] });
|
|
7881
9204
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ChartsModule, decorators: [{
|
|
7882
9205
|
type: NgModule,
|
|
7883
9206
|
args: [{
|
|
7884
|
-
exports: [ChartModule, SparklineModule, StockChartModule]
|
|
9207
|
+
exports: [ChartModule, SparklineModule, StockChartModule, SankeyModule]
|
|
7885
9208
|
}]
|
|
7886
9209
|
}] });
|
|
7887
9210
|
|
|
@@ -7889,5 +9212,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7889
9212
|
* Generated bundle index. Do not edit.
|
|
7890
9213
|
*/
|
|
7891
9214
|
|
|
7892
|
-
export { AxisDefaultsComponent, AxisDefaultsCrosshairComponent, AxisDefaultsCrosshairTooltipComponent, AxisDefaultsLabelsComponent, AxisDefaultsTitleComponent, AxisLabelClickEvent, CHART_DIRECTIVES, CategoryAxisComponent, CategoryAxisCrosshairComponent, CategoryAxisCrosshairTooltipComponent, CategoryAxisItemComponent, CategoryAxisLabelsComponent, CategoryAxisNotesComponent, CategoryAxisNotesIconComponent, CategoryAxisNotesLabelComponent, CategoryAxisRangeLabelsComponent, CategoryAxisSelectComponent, CategoryAxisTitleComponent, ChartAreaComponent, ChartBreadcrumbComponent, ChartComponent, ChartModule, ChartsModule, CollectionService, ConfigurationService, CrosshairTooltipComponent, CrosshairTooltipsContainerComponent, DonutCenterTemplateDirective, DragEndEvent, DragEvent, DragStartEvent, DrilldownEvent, LegendComponent, LegendInactiveItemsComponent, LegendItemClickEvent, LegendItemComponent, LegendItemHoverEvent, LegendItemLeaveEvent, NavigatorCategoryAxisComponent, NavigatorCategoryAxisCrosshairComponent, NavigatorCategoryAxisCrosshairTooltipComponent, NavigatorCategoryAxisLabelsComponent, NavigatorCategoryAxisNotesComponent, NavigatorCategoryAxisNotesIconComponent, NavigatorCategoryAxisNotesLabelComponent, NavigatorCategoryAxisSelectComponent, NavigatorCategoryAxisTitleComponent, NavigatorComponent, NavigatorFilterEvent, NavigatorHintComponent, NavigatorPaneComponent, NavigatorPaneTitleComponent, NavigatorSelectComponent, NavigatorSeriesComponent, NavigatorSeriesErrorBarsComponent, NavigatorSeriesExtremesComponent, NavigatorSeriesHighlightComponent, NavigatorSeriesItemComponent, NavigatorSeriesLabelsComponent, NavigatorSeriesLabelsFromComponent, NavigatorSeriesLabelsToComponent, NavigatorSeriesMarkersComponent, NavigatorSeriesNotesComponent, NavigatorSeriesNotesIconComponent, NavigatorSeriesNotesLabelComponent, NavigatorSeriesOutliersComponent, NavigatorSeriesTooltipComponent, NoteClickEvent, NoteHoverEvent, PaneComponent, PaneDefaultsComponent, PaneDefaultsTitleComponent, PaneRenderEvent, PanesComponent, PanesTitleComponent, PlotAreaClickEvent, PlotAreaComponent, PlotAreaHoverEvent, RenderEvent, SPARKLINE_DIRECTIVES, STOCK_CHART_DIRECTIVES, SelectEndEvent, SelectEvent, SelectStartEvent, SeriesClickEvent, SeriesComponent, SeriesDefaultsComponent, SeriesDefaultsLabelsComponent, SeriesDefaultsLabelsFromComponent, SeriesDefaultsLabelsToComponent, SeriesDefaultsNotesComponent, SeriesDefaultsNotesIconComponent, SeriesDefaultsNotesLabelComponent, SeriesDefaultsTooltipComponent, SeriesDrilldownTemplateDirective, SeriesErrorBarsComponent, SeriesExtremesComponent, SeriesHighlightComponent, SeriesHoverEvent, SeriesItemComponent, SeriesLabelsComponent, SeriesLabelsFromComponent, SeriesLabelsToComponent, SeriesMarkersComponent, SeriesNotesComponent, SeriesNotesIconComponent, SeriesNotesLabelComponent, SeriesOutliersComponent, SeriesTooltipComponent, SeriesTooltipTemplateDirective, SeriesTrendlineComponent, SeriesTrendlineForecastComponent, SharedTooltipTemplateDirective, SparklineComponent, SparklineModule, StockChartComponent, StockChartModule, SubtitleComponent, TitleComponent, TooltipComponent, TooltipPopupComponent, TooltipTemplateService, ValueAxisComponent, ValueAxisCrosshairComponent, ValueAxisCrosshairTooltipComponent, ValueAxisItemComponent, ValueAxisLabelsComponent, ValueAxisNotesComponent, ValueAxisNotesIconComponent, ValueAxisNotesLabelComponent, ValueAxisTitleComponent, WeekStartDay, XAxisComponent, XAxisCrosshairComponent, XAxisCrosshairTooltipComponent, XAxisItemComponent, XAxisLabelsComponent, XAxisNotesComponent, XAxisNotesIconComponent, XAxisNotesLabelComponent, XAxisTitleComponent, YAxisComponent, YAxisCrosshairComponent, YAxisCrosshairTooltipComponent, YAxisItemComponent, YAxisLabelsComponent, YAxisNotesComponent, YAxisNotesIconComponent, YAxisNotesLabelComponent, YAxisTitleComponent, ZoomEndEvent, ZoomEvent, ZoomStartEvent, ZoomableComponent };
|
|
9215
|
+
export { AxisDefaultsComponent, AxisDefaultsCrosshairComponent, AxisDefaultsCrosshairTooltipComponent, AxisDefaultsLabelsComponent, AxisDefaultsTitleComponent, AxisLabelClickEvent, CHART_DIRECTIVES, CategoryAxisComponent, CategoryAxisCrosshairComponent, CategoryAxisCrosshairTooltipComponent, CategoryAxisItemComponent, CategoryAxisLabelsComponent, CategoryAxisNotesComponent, CategoryAxisNotesIconComponent, CategoryAxisNotesLabelComponent, CategoryAxisRangeLabelsComponent, CategoryAxisSelectComponent, CategoryAxisTitleComponent, ChartAreaComponent, ChartBreadcrumbComponent, ChartComponent, ChartModule, ChartsModule, CollectionService, ConfigurationService, CrosshairTooltipComponent, CrosshairTooltipsContainerComponent, DonutCenterTemplateDirective, DragEndEvent, DragEvent, DragStartEvent, DrilldownEvent, InstanceEventService, LegendComponent, LegendInactiveItemsComponent, LegendItemClickEvent, LegendItemComponent, LegendItemHoverEvent, LegendItemLeaveEvent, LocalizedMessagesDirective, NavigatorCategoryAxisComponent, NavigatorCategoryAxisCrosshairComponent, NavigatorCategoryAxisCrosshairTooltipComponent, NavigatorCategoryAxisLabelsComponent, NavigatorCategoryAxisNotesComponent, NavigatorCategoryAxisNotesIconComponent, NavigatorCategoryAxisNotesLabelComponent, NavigatorCategoryAxisSelectComponent, NavigatorCategoryAxisTitleComponent, NavigatorComponent, NavigatorFilterEvent, NavigatorHintComponent, NavigatorPaneComponent, NavigatorPaneTitleComponent, NavigatorSelectComponent, NavigatorSeriesComponent, NavigatorSeriesErrorBarsComponent, NavigatorSeriesExtremesComponent, NavigatorSeriesHighlightComponent, NavigatorSeriesItemComponent, NavigatorSeriesLabelsComponent, NavigatorSeriesLabelsFromComponent, NavigatorSeriesLabelsToComponent, NavigatorSeriesMarkersComponent, NavigatorSeriesNotesComponent, NavigatorSeriesNotesIconComponent, NavigatorSeriesNotesLabelComponent, NavigatorSeriesOutliersComponent, NavigatorSeriesTooltipComponent, NoteClickEvent, NoteHoverEvent, PaneComponent, PaneDefaultsComponent, PaneDefaultsTitleComponent, PaneRenderEvent, PanesComponent, PanesTitleComponent, PlotAreaClickEvent, PlotAreaComponent, PlotAreaHoverEvent, RenderEvent, SANKEY_DIRECTIVES, SANKEY_EXPORTS, SPARKLINE_DIRECTIVES, STOCK_CHART_DIRECTIVES, SankeyBaseEvent, SankeyComponent, SankeyCustomMessagesComponent, SankeyFlatBindingDataBoundEvent, SankeyFlatBindingDirective, SankeyLabelsComponent, SankeyLegendComponent, SankeyLinkEvent, SankeyLinkTooltipTemplateDirective, SankeyLinksComponent, SankeyModule, SankeyNodeEvent, SankeyNodeTooltipTemplateDirective, SankeyNodesComponent, SankeyTitleComponent, SankeyTooltipComponent, SankeyTooltipPopupComponent, SelectEndEvent, SelectEvent, SelectStartEvent, SeriesClickEvent, SeriesComponent, SeriesDefaultsComponent, SeriesDefaultsLabelsComponent, SeriesDefaultsLabelsFromComponent, SeriesDefaultsLabelsToComponent, SeriesDefaultsNotesComponent, SeriesDefaultsNotesIconComponent, SeriesDefaultsNotesLabelComponent, SeriesDefaultsTooltipComponent, SeriesDrilldownTemplateDirective, SeriesErrorBarsComponent, SeriesExtremesComponent, SeriesHighlightComponent, SeriesHoverEvent, SeriesItemComponent, SeriesLabelsComponent, SeriesLabelsFromComponent, SeriesLabelsToComponent, SeriesMarkersComponent, SeriesNotesComponent, SeriesNotesIconComponent, SeriesNotesLabelComponent, SeriesOutliersComponent, SeriesTooltipComponent, SeriesTooltipTemplateDirective, SeriesTrendlineComponent, SeriesTrendlineForecastComponent, SharedTooltipTemplateDirective, SparklineComponent, SparklineModule, StockChartComponent, StockChartModule, SubtitleComponent, TitleComponent, TooltipComponent, TooltipPopupComponent, TooltipTemplateService, ValueAxisComponent, ValueAxisCrosshairComponent, ValueAxisCrosshairTooltipComponent, ValueAxisItemComponent, ValueAxisLabelsComponent, ValueAxisNotesComponent, ValueAxisNotesIconComponent, ValueAxisNotesLabelComponent, ValueAxisTitleComponent, WeekStartDay, XAxisComponent, XAxisCrosshairComponent, XAxisCrosshairTooltipComponent, XAxisItemComponent, XAxisLabelsComponent, XAxisNotesComponent, XAxisNotesIconComponent, XAxisNotesLabelComponent, XAxisTitleComponent, YAxisComponent, YAxisCrosshairComponent, YAxisCrosshairTooltipComponent, YAxisItemComponent, YAxisLabelsComponent, YAxisNotesComponent, YAxisNotesIconComponent, YAxisNotesLabelComponent, YAxisTitleComponent, ZoomEndEvent, ZoomEvent, ZoomStartEvent, ZoomableComponent };
|
|
7893
9216
|
|