@esfaenza/es-charts 20.3.12 → 20.3.13
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.
|
@@ -3,6 +3,7 @@ import { EventEmitter, ContentChild, Output, Input, ChangeDetectionStrategy, Com
|
|
|
3
3
|
import * as i4 from '@angular/common';
|
|
4
4
|
import { isPlatformBrowser, CommonModule } from '@angular/common';
|
|
5
5
|
import * as am5 from '@amcharts/amcharts5';
|
|
6
|
+
import am5themes_Animated from '@amcharts/amcharts5/themes/Animated';
|
|
6
7
|
import * as am5xy from '@amcharts/amcharts5/xy';
|
|
7
8
|
import am5locales_it_IT from '@amcharts/amcharts5/locales/it_IT';
|
|
8
9
|
import * as am5percent from '@amcharts/amcharts5/percent';
|
|
@@ -317,10 +318,10 @@ class PageChartSelector {
|
|
|
317
318
|
this.currentindex--;
|
|
318
319
|
}, this.BrowseDelayMs);
|
|
319
320
|
}
|
|
320
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
321
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
321
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PageChartSelector, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
322
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PageChartSelector, isStandalone: false, selector: "chart-pager", inputs: { Items: "Items", Dtos: "Dtos", BrowseDelayMs: "BrowseDelayMs", StartIndex: "StartIndex" }, outputs: { onPageChange: "onPageChange" }, queries: [{ propertyName: "headerInner_tr", first: true, predicate: ["header_inner"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"(Items || Dtos) && (Items || Dtos).length > 0\" class=\"pcs-no-selection\">\r\n <div class=\"pcs-button pcs-backward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"currentpage != 1 && Previous(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"currentpage == 1 ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-left\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div class=\"pcs-infos\">\r\n <ng-container *ngIf=\"headerInner_tr\">\r\n <ng-container *ngTemplateOutlet=\"headerInner_tr; context : {$implicit: (Items || Dtos)[currentpage - 1]}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"pcs-button pcs-forward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"(Items || Dtos)?.length != currentpage && Next(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"(Items || Dtos)?.length == currentpage ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-right\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div style=\"clear: both;\"></div>\r\n</div>", styles: [".pcs-button{width:60px}.pcs-forward{float:right;text-align:end}.pcs-backward{float:left}.pcs-svg-header{width:57px;height:40px}.pcs-svg-button-container{outline:currentcolor none medium}.pcs-svg-arrow{pointer-events:none;fill:#555}.pcs-svg-arrow-right{transform:translate(44px,36px) rotate(180deg)}.pcs-svg-arrow-left{transform:translate(13px,4px)}.pcs-svg-button{fill:#d9d9d9;stroke:#fff;fill-opacity:1;stroke-opacity:1}.pcs-svg-button:hover{fill:#a3a3a3;cursor:pointer}.pcs-infos{width:calc(100% - 120px);height:44px;float:left}.pcs-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
322
323
|
}
|
|
323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
324
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PageChartSelector, decorators: [{
|
|
324
325
|
type: Component,
|
|
325
326
|
args: [{ selector: "chart-pager", changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div *ngIf=\"(Items || Dtos) && (Items || Dtos).length > 0\" class=\"pcs-no-selection\">\r\n <div class=\"pcs-button pcs-backward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"currentpage != 1 && Previous(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"currentpage == 1 ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-left\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div class=\"pcs-infos\">\r\n <ng-container *ngIf=\"headerInner_tr\">\r\n <ng-container *ngTemplateOutlet=\"headerInner_tr; context : {$implicit: (Items || Dtos)[currentpage - 1]}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"pcs-button pcs-forward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"(Items || Dtos)?.length != currentpage && Next(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"(Items || Dtos)?.length == currentpage ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-right\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div style=\"clear: both;\"></div>\r\n</div>", styles: [".pcs-button{width:60px}.pcs-forward{float:right;text-align:end}.pcs-backward{float:left}.pcs-svg-header{width:57px;height:40px}.pcs-svg-button-container{outline:currentcolor none medium}.pcs-svg-arrow{pointer-events:none;fill:#555}.pcs-svg-arrow-right{transform:translate(44px,36px) rotate(180deg)}.pcs-svg-arrow-left{transform:translate(13px,4px)}.pcs-svg-button{fill:#d9d9d9;stroke:#fff;fill-opacity:1;stroke-opacity:1}.pcs-svg-button:hover{fill:#a3a3a3;cursor:pointer}.pcs-infos{width:calc(100% - 120px);height:44px;float:left}.pcs-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}\n"] }]
|
|
326
327
|
}], propDecorators: { Items: [{
|
|
@@ -561,10 +562,10 @@ class ChartLoader {
|
|
|
561
562
|
if (this.logs)
|
|
562
563
|
console.log("@esfaenza/es-charts: " + text);
|
|
563
564
|
}
|
|
564
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
565
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
565
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartLoader, deps: [{ token: ESC_DEBUG_MODE }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
566
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartLoader }); }
|
|
566
567
|
}
|
|
567
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
568
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartLoader, decorators: [{
|
|
568
569
|
type: Injectable
|
|
569
570
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
570
571
|
type: Inject,
|
|
@@ -649,10 +650,10 @@ class ChartDispatcher {
|
|
|
649
650
|
if (this.logs)
|
|
650
651
|
console.log("@esfaenza/es-charts: " + text);
|
|
651
652
|
}
|
|
652
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
653
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
653
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartDispatcher, deps: [{ token: ESC_DEBUG_MODE }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
654
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartDispatcher }); }
|
|
654
655
|
}
|
|
655
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
656
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChartDispatcher, decorators: [{
|
|
656
657
|
type: Injectable
|
|
657
658
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
658
659
|
type: Inject,
|
|
@@ -944,10 +945,10 @@ class BaseChartComponent {
|
|
|
944
945
|
});
|
|
945
946
|
}
|
|
946
947
|
}
|
|
947
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
948
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
948
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: BaseChartComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
949
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: BaseChartComponent, isStandalone: true, inputs: { XTitle: "XTitle", YTitle: "YTitle", Settings: "Settings", Legend: "Legend", LegendPosition: "LegendPosition", Timeline: "Timeline", name: "name", Animations: "Animations", Theme: "Theme", Locale: "Locale", HideSeriesOnLabelClick: "HideSeriesOnLabelClick", MinGridDistance: "MinGridDistance", AdaptLabelSizeAndOrientation: "AdaptLabelSizeAndOrientation", LegendPadding: "LegendPadding", DataDtos: "DataDtos", DataDtoStartIndex: "DataDtoStartIndex", DataRetrieve: "DataRetrieve", BrowseDelayMs: "BrowseDelayMs" }, outputs: { onSelectionChanged: "onSelectionChanged", onSeriesClicked: "onSeriesClicked", onLoadStart: "onLoadStart", onLoadEnd: "onLoadEnd", chartLoaded: "chartLoaded" }, queries: [{ propertyName: "header_tr", first: true, predicate: ["header"], descendants: true }, { propertyName: "loading_template", first: true, predicate: ["loading"], descendants: true }], usesOnChanges: true, ngImport: i0 }); }
|
|
949
950
|
}
|
|
950
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
951
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: BaseChartComponent, decorators: [{
|
|
951
952
|
type: Directive
|
|
952
953
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: Object }, { type: i0.NgZone }, { type: ChartLoader }, { type: ChartDispatcher }, { type: undefined }, { type: undefined }, { type: undefined }, { type: undefined }], propDecorators: { XTitle: [{
|
|
953
954
|
type: Input
|
|
@@ -1003,6 +1004,65 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.28", ngImpo
|
|
|
1003
1004
|
type: Output
|
|
1004
1005
|
}] } });
|
|
1005
1006
|
|
|
1007
|
+
/**
|
|
1008
|
+
* Palette storica "Spirited Away" ereditata da amCharts4.
|
|
1009
|
+
*
|
|
1010
|
+
* In amCharts4 il tema di default della libreria ('spiritedaway') veniva applicato globalmente
|
|
1011
|
+
* (am4core.useTheme) e impostava questa esatta lista di colori sul ColorSet di ogni grafico.
|
|
1012
|
+
* Le serie/colonne prive di un colore esplicito pescavano da qui in ordine.
|
|
1013
|
+
*
|
|
1014
|
+
* Con la migrazione ad amCharts5 il sistema dei temi e stato disabilitato, percio i grafici
|
|
1015
|
+
* mostravano la palette di default di amCharts5. Questa costante ripristina i colori originali.
|
|
1016
|
+
*
|
|
1017
|
+
* Valori estratti dal tema Spirited di @amcharts/amcharts4@4.10.40
|
|
1018
|
+
* (.internal/themes/spiritedaway.js, "Color set from Spirited away movie").
|
|
1019
|
+
*/
|
|
1020
|
+
const SPIRITED_PALETTE = [
|
|
1021
|
+
0x65738e,
|
|
1022
|
+
0x766c91,
|
|
1023
|
+
0x78566f,
|
|
1024
|
+
0x523b58,
|
|
1025
|
+
0x813b3d,
|
|
1026
|
+
0xbc5e52,
|
|
1027
|
+
0xee8b78,
|
|
1028
|
+
0xf9c885,
|
|
1029
|
+
0xeba05c,
|
|
1030
|
+
0x9b5134
|
|
1031
|
+
];
|
|
1032
|
+
/**
|
|
1033
|
+
* Crea un ColorSet con la palette storica {@link SPIRITED_PALETTE} da applicare a un grafico
|
|
1034
|
+
* tramite `chart.set("colors", createSpiritedColorSet(root))`.
|
|
1035
|
+
*
|
|
1036
|
+
* `reuse: true` replica il comportamento del tema amCharts4: quando le serie superano i colori
|
|
1037
|
+
* disponibili, la palette viene riciclata invece di generare tinte arbitrarie.
|
|
1038
|
+
*
|
|
1039
|
+
* @param {am5.Root} root Root del grafico a cui il ColorSet appartiene
|
|
1040
|
+
* @returns {am5.ColorSet} ColorSet pronto da assegnare al setting "colors" del grafico
|
|
1041
|
+
*/
|
|
1042
|
+
function createSpiritedColorSet(root) {
|
|
1043
|
+
return am5.ColorSet.new(root, {
|
|
1044
|
+
colors: SPIRITED_PALETTE.map(c => am5.color(c)),
|
|
1045
|
+
reuse: true
|
|
1046
|
+
});
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
/**
|
|
1050
|
+
* Applica il tema "Animated" di amCharts5 al root del grafico.
|
|
1051
|
+
*
|
|
1052
|
+
* Replica il comportamento della versione amCharts4 della libreria, dove il tema animated veniva applicato
|
|
1053
|
+
* globalmente quando l'input/Setting `Animations` era attivo, fornendo transizioni fluide (zoom, hover,
|
|
1054
|
+
* mostra/nascondi serie, cursore).
|
|
1055
|
+
*
|
|
1056
|
+
* Va invocato subito dopo la creazione del root, prima di costruire il grafico e le serie, in modo che il
|
|
1057
|
+
* tema venga applicato a tutti gli elementi. La comparsa animata iniziale va invece innescata a parte con
|
|
1058
|
+
* le chiamate `appear()` su grafico e serie (in amCharts5 il tema non anima piu automaticamente il primo disegno).
|
|
1059
|
+
*
|
|
1060
|
+
* @param {am5.Root} root Root del grafico
|
|
1061
|
+
*/
|
|
1062
|
+
function applyAnimatedTheme(root) {
|
|
1063
|
+
root.setThemes([am5themes_Animated.new(root)]);
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1006
1066
|
/**
|
|
1007
1067
|
* Classe il cui unico scopo e gestire il setup e rendering di un LineChart
|
|
1008
1068
|
*/
|
|
@@ -1020,6 +1080,10 @@ class LineChartService {
|
|
|
1020
1080
|
this.singleDataSet = false;
|
|
1021
1081
|
/** @ignore */
|
|
1022
1082
|
this.mergedData = [];
|
|
1083
|
+
/** Flag "istante finale" corrente, memorizzato per riformattare le date nei refresh */
|
|
1084
|
+
this.currentFinalInstant = true;
|
|
1085
|
+
/** Colori assegnati a ciascuna serie, usati anche per i pallini nel tooltip unificato */
|
|
1086
|
+
this.seriesColors = [];
|
|
1023
1087
|
//******************** Funzione di throttling per non spammare richieste in caso di animazioni attivate
|
|
1024
1088
|
//TODO: spostarla in un metodo di utilita (esfaenza/extensions)
|
|
1025
1089
|
/** @ignore */
|
|
@@ -1050,7 +1114,12 @@ class LineChartService {
|
|
|
1050
1114
|
this.ChartRoot?.dispose();
|
|
1051
1115
|
this.ChartRoot = am5.Root.new(settings.Name);
|
|
1052
1116
|
this.applyLocale(settings);
|
|
1117
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
1118
|
+
if (settings.Animations)
|
|
1119
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
1053
1120
|
this.ChartInstance = this.ChartRoot.container.children.push(am5xy.XYChart.new(this.ChartRoot, {}));
|
|
1121
|
+
// Ripristina la palette storica ereditata da amCharts4 per le serie prive di colore esplicito
|
|
1122
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
1054
1123
|
//#endregion
|
|
1055
1124
|
// Carico l'Asse Y
|
|
1056
1125
|
let yRenderer = am5xy.AxisRendererY.new(this.ChartRoot, {});
|
|
@@ -1113,15 +1182,23 @@ class LineChartService {
|
|
|
1113
1182
|
centerX: am5.p50
|
|
1114
1183
|
}));
|
|
1115
1184
|
}
|
|
1185
|
+
this.currentInterval = interval;
|
|
1186
|
+
this.currentFinalInstant = finalInstant;
|
|
1116
1187
|
if (this.singleDataSet)
|
|
1117
1188
|
this.mergedData = this.generateSingleDataset(dataConverted);
|
|
1189
|
+
// Pre-calcolo i colori di tutte le serie prima di crearle: il tooltip unificato mostra un pallino
|
|
1190
|
+
// colorato per ogni serie, quindi ha bisogno dell'intera lista di colori gia al primo createSeries
|
|
1118
1191
|
let seriesColors = [];
|
|
1119
1192
|
let defaultIndex = 0;
|
|
1193
|
+
dataConverted.series.forEach(s => {
|
|
1194
|
+
let color = s.color ? am5.color(s.color) : this.ChartInstance.get("colors").getIndex(defaultIndex++);
|
|
1195
|
+
seriesColors.push(color);
|
|
1196
|
+
});
|
|
1197
|
+
this.seriesColors = seriesColors;
|
|
1120
1198
|
dataConverted.series.forEach((s, index) => {
|
|
1121
1199
|
let stacked = s.stacked != null && s.stacked != undefined ? s.stacked : (settings?.Stacked ?? false);
|
|
1122
1200
|
let fill = stacked || (s.fill != null && s.fill != undefined ? s.fill : (settings?.Fill ?? false));
|
|
1123
|
-
let color =
|
|
1124
|
-
seriesColors.push(color);
|
|
1201
|
+
let color = seriesColors[index];
|
|
1125
1202
|
let series = this.createSeries(s, index, dateAxis, yAxis, settings, gapsAllowed, fill, stacked, color, interval, finalInstant);
|
|
1126
1203
|
if (showTimeline)
|
|
1127
1204
|
this.addSeriesToScrollbar(series, s, index, dateAxis, yAxis, settings, gapsAllowed, color);
|
|
@@ -1186,13 +1263,22 @@ class LineChartService {
|
|
|
1186
1263
|
//#endregion
|
|
1187
1264
|
let cursor = am5xy.XYCursor.new(this.ChartRoot, {
|
|
1188
1265
|
xAxis: dateAxis,
|
|
1189
|
-
yAxis
|
|
1266
|
+
yAxis,
|
|
1267
|
+
// Ripristina lo zoom con click-and-drag su un range di date (comportamento di default di amCharts4,
|
|
1268
|
+
// perso nella migrazione ad amCharts5 dove il behavior di default del cursore e "none").
|
|
1269
|
+
// "zoomX" gestisce nativamente il drag in entrambe le direzioni (destra->sinistra e sinistra->destra)
|
|
1270
|
+
behavior: "zoomX"
|
|
1190
1271
|
});
|
|
1191
1272
|
this.ChartInstance.set("cursor", cursor);
|
|
1192
1273
|
if (this.singleDataSet)
|
|
1193
1274
|
this.ChartInstance.set("maxTooltipDistance", -1);
|
|
1194
1275
|
dateAxis.on("start", () => this.emitSelectionChanged(dateAxis, settings));
|
|
1195
1276
|
dateAxis.on("end", () => this.emitSelectionChanged(dateAxis, settings));
|
|
1277
|
+
// Comparsa animata iniziale di serie e grafico, come nella versione amCharts4
|
|
1278
|
+
if (settings.Animations) {
|
|
1279
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
1280
|
+
this.ChartInstance.appear(1000, 100);
|
|
1281
|
+
}
|
|
1196
1282
|
return this;
|
|
1197
1283
|
}
|
|
1198
1284
|
fixTimeUnit(tu) {
|
|
@@ -1254,10 +1340,42 @@ class LineChartService {
|
|
|
1254
1340
|
let singleVal = values[series];
|
|
1255
1341
|
item[series] = singleVal;
|
|
1256
1342
|
}
|
|
1343
|
+
// Data gia formattata col DateService applicativo, cosi il tooltip non dipende dal formatter di amCharts
|
|
1344
|
+
item.dl = this.formatTooltipDate(new Date(item.d), this.currentInterval, this.currentFinalInstant);
|
|
1257
1345
|
ret.push(item);
|
|
1258
1346
|
}
|
|
1259
1347
|
return ret;
|
|
1260
1348
|
}
|
|
1349
|
+
/**
|
|
1350
|
+
* Formatta una data per il tooltip usando il DateService applicativo, replicando il comportamento di amCharts4.
|
|
1351
|
+
*
|
|
1352
|
+
* Con "istante finale" attivo e intervalli a livello di ora/minuto/secondo la data viene riportata alla fine
|
|
1353
|
+
* del periodo; negli altri casi si usa la formattazione standard (senza orario per intervalli giornalieri o piu ampi).
|
|
1354
|
+
*
|
|
1355
|
+
* @param {Date} date Data da formattare
|
|
1356
|
+
* @param {any} interval Intervallo delle serie (puo essere null)
|
|
1357
|
+
* @param {boolean} finalInstant Indica se le date rappresentano l'istante finale del periodo
|
|
1358
|
+
* @returns {string} Data formattata (es. "25/08/2026 09:29", con o senza orario in base all'intervallo)
|
|
1359
|
+
*/
|
|
1360
|
+
formatTooltipDate(date, interval, finalInstant) {
|
|
1361
|
+
if (interval && finalInstant && ["hour", "minute", "second"].includes(interval.timeunit)) {
|
|
1362
|
+
let timepart = null;
|
|
1363
|
+
switch (interval.timeunit) {
|
|
1364
|
+
case "hour":
|
|
1365
|
+
timepart = 'day';
|
|
1366
|
+
break;
|
|
1367
|
+
case "minute":
|
|
1368
|
+
timepart = 'hour';
|
|
1369
|
+
break;
|
|
1370
|
+
case "second":
|
|
1371
|
+
timepart = 'minute';
|
|
1372
|
+
break;
|
|
1373
|
+
}
|
|
1374
|
+
if (timepart)
|
|
1375
|
+
return this.dateExts.adjustDateToFinalInstant(date, timepart, interval.timeunit == "second");
|
|
1376
|
+
}
|
|
1377
|
+
return this.dateExts.getFormatted(date, interval ? ["day", "week", "month", "year"].includes(interval.timeunit) : false, interval ? interval.timeunit == "second" : false);
|
|
1378
|
+
}
|
|
1261
1379
|
/** @ignore */
|
|
1262
1380
|
createSeries(source, index, dateAxis, yAxis, settings, gapsAllowed, fill, stacked, color, interval, finalInstant) {
|
|
1263
1381
|
let SeriesClass = settings?.Step ? am5xy.StepLineSeries : am5xy.LineSeries;
|
|
@@ -1282,14 +1400,28 @@ class LineChartService {
|
|
|
1282
1400
|
visible: true
|
|
1283
1401
|
});
|
|
1284
1402
|
series.set("minBulletDistance", 10);
|
|
1285
|
-
|
|
1403
|
+
let tooltip = am5.Tooltip.new(this.ChartRoot, {
|
|
1286
1404
|
pointerOrientation: "vertical",
|
|
1287
1405
|
labelText: this.getTooltipText(source, index, interval, finalInstant)
|
|
1288
|
-
}));
|
|
1289
|
-
series.get("tooltip")?.get("background")?.setAll({
|
|
1290
|
-
fillOpacity: this.singleDataSet ? 1 : 0.5,
|
|
1291
|
-
fill: this.singleDataSet ? am5.color(0xeeeeee) : undefined
|
|
1292
1406
|
});
|
|
1407
|
+
series.set("tooltip", tooltip);
|
|
1408
|
+
if (this.singleDataSet) {
|
|
1409
|
+
// Comportamento ereditato da amCharts4: tooltip unico grigio con testo scuro, indipendente dal
|
|
1410
|
+
// colore della serie (altrimenti amCharts5 lo colorerebbe con il colore della serie attiva)
|
|
1411
|
+
tooltip.set("getFillFromSprite", false);
|
|
1412
|
+
tooltip.get("background")?.setAll({
|
|
1413
|
+
fillOpacity: 1,
|
|
1414
|
+
fill: am5.color(0xeeeeee)
|
|
1415
|
+
});
|
|
1416
|
+
// Adapter e non set: amCharts5 reimposta il colore del testo del tooltip ad ogni aggiornamento
|
|
1417
|
+
// interno, quindi un semplice set verrebbe sovrascritto. L'adapter forza sempre il testo scuro.
|
|
1418
|
+
tooltip.label.adapters.add("fill", () => am5.color(0x000000));
|
|
1419
|
+
}
|
|
1420
|
+
else {
|
|
1421
|
+
tooltip.get("background")?.setAll({
|
|
1422
|
+
fillOpacity: 0.5
|
|
1423
|
+
});
|
|
1424
|
+
}
|
|
1293
1425
|
if (this.singleDataSet)
|
|
1294
1426
|
series.data.setAll(this.mergedData);
|
|
1295
1427
|
else
|
|
@@ -1302,12 +1434,11 @@ class LineChartService {
|
|
|
1302
1434
|
getTooltipText(source, index, interval, finalInstant) {
|
|
1303
1435
|
if (!this.singleDataSet)
|
|
1304
1436
|
return source.name ? "{name}: [bold]{valueY}[/]" : "[bold]{valueY}[/]";
|
|
1305
|
-
|
|
1306
|
-
debugger;
|
|
1307
|
-
let text = "[bold]{valueX.formatDate()}[/]\n";
|
|
1437
|
+
let text = "[bold]{dl}[/]\n";
|
|
1308
1438
|
this.currentSeriesData.series.forEach((serie, sindex) => {
|
|
1309
1439
|
let uom = serie.uom ? " [fontStyle: italic]" + serie.uom + "[/]" : "";
|
|
1310
|
-
|
|
1440
|
+
let bullet = this.seriesColors[sindex] ? "[" + this.seriesColors[sindex].toString() + "]●[/] " : "";
|
|
1441
|
+
text += bullet + (serie.name ? (serie.name + ": ") : "") + "[bold]{v" + sindex + "}[/]" + uom + "\n";
|
|
1311
1442
|
});
|
|
1312
1443
|
return text;
|
|
1313
1444
|
}
|
|
@@ -1694,6 +1825,11 @@ class PieChartService {
|
|
|
1694
1825
|
layout: this.ChartRoot.verticalLayout
|
|
1695
1826
|
}));
|
|
1696
1827
|
this.ChartInstance = ChartContainer.children.push(am5percent.PieChart.new(this.ChartRoot, {}));
|
|
1828
|
+
// Ripristina la palette storica ereditata da amCharts4 per le fette prive di colore esplicito
|
|
1829
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
1830
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
1831
|
+
if (settings.Animations)
|
|
1832
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
1697
1833
|
//#endregion
|
|
1698
1834
|
// Raggio Torta
|
|
1699
1835
|
// In am4 non c'era un modo automatico di calcolare il raggio sulle dimensioni del grafico, quindi si era fatto
|
|
@@ -1862,6 +1998,11 @@ class PieChartService {
|
|
|
1862
1998
|
});
|
|
1863
1999
|
this.ChartLegend.data.setAll(series.dataItems);
|
|
1864
2000
|
}
|
|
2001
|
+
// Comparsa animata iniziale di fette e grafico, come nella versione amCharts4
|
|
2002
|
+
if (settings.Animations) {
|
|
2003
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
2004
|
+
this.ChartInstance.appear(1000, 100);
|
|
2005
|
+
}
|
|
1865
2006
|
return this;
|
|
1866
2007
|
}
|
|
1867
2008
|
/** @ignore */
|
|
@@ -1901,6 +2042,11 @@ class VerticalChartService {
|
|
|
1901
2042
|
this.ChartRoot?.dispose();
|
|
1902
2043
|
this.ChartRoot = am5.Root.new(settings.Name);
|
|
1903
2044
|
this.ChartInstance = this.ChartRoot.container.children.push(am5xy.XYChart.new(this.ChartRoot, {}));
|
|
2045
|
+
// Ripristina la palette storica ereditata da amCharts4 per le colonne prive di colore esplicito
|
|
2046
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
2047
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
2048
|
+
if (settings.Animations)
|
|
2049
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
1904
2050
|
//#endregion
|
|
1905
2051
|
let chartData = dataConverted.values.map(value => ({
|
|
1906
2052
|
...value,
|
|
@@ -2052,6 +2198,11 @@ class VerticalChartService {
|
|
|
2052
2198
|
if (settings.Legend) {
|
|
2053
2199
|
this.ChartLegend.data.setAll(this.ChartInstance.series.values);
|
|
2054
2200
|
}
|
|
2201
|
+
// Comparsa animata iniziale di colonne e grafico, come nella versione amCharts4
|
|
2202
|
+
if (settings.Animations) {
|
|
2203
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
2204
|
+
this.ChartInstance.appear(1000, 100);
|
|
2205
|
+
}
|
|
2055
2206
|
return this;
|
|
2056
2207
|
}
|
|
2057
2208
|
/** @ignore */
|
|
@@ -2097,6 +2248,11 @@ class Vertical2DChartService {
|
|
|
2097
2248
|
this.ChartRoot?.dispose();
|
|
2098
2249
|
this.ChartRoot = am5.Root.new(settings.Name);
|
|
2099
2250
|
this.ChartInstance = this.ChartRoot.container.children.push(am5xy.XYChart.new(this.ChartRoot, {}));
|
|
2251
|
+
// Ripristina la palette storica ereditata da amCharts4 per le colonne prive di colore esplicito
|
|
2252
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
2253
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
2254
|
+
if (settings.Animations)
|
|
2255
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
2100
2256
|
//#endregion
|
|
2101
2257
|
//#region Carico la Legenda
|
|
2102
2258
|
if (settings.Legend) {
|
|
@@ -2230,6 +2386,11 @@ class Vertical2DChartService {
|
|
|
2230
2386
|
if (settings.Legend) {
|
|
2231
2387
|
this.ChartLegend.data.setAll(this.ChartInstance.series.values);
|
|
2232
2388
|
}
|
|
2389
|
+
// Comparsa animata iniziale di colonne e grafico, come nella versione amCharts4
|
|
2390
|
+
if (settings.Animations) {
|
|
2391
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
2392
|
+
this.ChartInstance.appear(1000, 100);
|
|
2393
|
+
}
|
|
2233
2394
|
return this;
|
|
2234
2395
|
}
|
|
2235
2396
|
/** @ignore */
|
|
@@ -2318,6 +2479,11 @@ class VerticalStackedChartService {
|
|
|
2318
2479
|
this.ChartRoot?.dispose();
|
|
2319
2480
|
this.ChartRoot = am5.Root.new(settings.Name);
|
|
2320
2481
|
this.ChartInstance = this.ChartRoot.container.children.push(am5xy.XYChart.new(this.ChartRoot, {}));
|
|
2482
|
+
// Ripristina la palette storica ereditata da amCharts4 per le colonne prive di colore esplicito
|
|
2483
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
2484
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
2485
|
+
if (settings.Animations)
|
|
2486
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
2321
2487
|
//#endregion
|
|
2322
2488
|
//#region Carico la Legenda
|
|
2323
2489
|
if (settings.Legend) {
|
|
@@ -2446,6 +2612,11 @@ class VerticalStackedChartService {
|
|
|
2446
2612
|
if (settings.Legend) {
|
|
2447
2613
|
this.ChartLegend.data.setAll(this.ChartInstance.series.values);
|
|
2448
2614
|
}
|
|
2615
|
+
// Comparsa animata iniziale di colonne e grafico, come nella versione amCharts4
|
|
2616
|
+
if (settings.Animations) {
|
|
2617
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
2618
|
+
this.ChartInstance.appear(1000, 100);
|
|
2619
|
+
}
|
|
2449
2620
|
return this;
|
|
2450
2621
|
}
|
|
2451
2622
|
/** @ignore */
|
|
@@ -2520,6 +2691,11 @@ class AreaChartService {
|
|
|
2520
2691
|
this.ChartRoot?.dispose();
|
|
2521
2692
|
this.ChartRoot = am5.Root.new(settings.Name);
|
|
2522
2693
|
this.ChartInstance = this.ChartRoot.container.children.push(am5xy.XYChart.new(this.ChartRoot, {}));
|
|
2694
|
+
// Ripristina la palette storica ereditata da amCharts4 per le serie prive di colore esplicito
|
|
2695
|
+
this.ChartInstance.set("colors", createSpiritedColorSet(this.ChartRoot));
|
|
2696
|
+
// Tema Animated (transizioni fluide) come nella versione amCharts4, se le animazioni sono attive
|
|
2697
|
+
if (settings.Animations)
|
|
2698
|
+
applyAnimatedTheme(this.ChartRoot);
|
|
2523
2699
|
//#endregion
|
|
2524
2700
|
//#region Carico la Legenda
|
|
2525
2701
|
if (settings.Legend) {
|
|
@@ -2643,6 +2819,11 @@ class AreaChartService {
|
|
|
2643
2819
|
// let cursor = ^, cursor.lineY.set("visible", false), per cursore verticale
|
|
2644
2820
|
dateAxis.on("start", () => { this.emitSelectionChanged(dateAxis, settings); });
|
|
2645
2821
|
dateAxis.on("end", () => { this.emitSelectionChanged(dateAxis, settings); });
|
|
2822
|
+
// Comparsa animata iniziale di serie e grafico, come nella versione amCharts4
|
|
2823
|
+
if (settings.Animations) {
|
|
2824
|
+
this.ChartInstance.series.each(s => s.appear(1000));
|
|
2825
|
+
this.ChartInstance.appear(1000, 100);
|
|
2826
|
+
}
|
|
2646
2827
|
return this;
|
|
2647
2828
|
}
|
|
2648
2829
|
fixTimeUnit(tu) {
|
|
@@ -2789,10 +2970,10 @@ class EsChartComponent extends BaseChartComponent {
|
|
|
2789
2970
|
return new VerticalStackedChartService().graphicate(this.Data, settings);
|
|
2790
2971
|
}
|
|
2791
2972
|
}
|
|
2792
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
2793
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
2973
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i3.DateService }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2974
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsChartComponent, isStandalone: false, selector: "es-chart", inputs: { Type: "Type", Data: "Data", DataArray: "DataArray" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2794
2975
|
}
|
|
2795
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
2976
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsChartComponent, decorators: [{
|
|
2796
2977
|
type: Component,
|
|
2797
2978
|
args: [{ selector: 'es-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
2798
2979
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i3.DateService }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -2855,10 +3036,10 @@ class EsAreaChartComponent extends BaseChartComponent {
|
|
|
2855
3036
|
graphicate(settingsCasted) {
|
|
2856
3037
|
return new AreaChartService().graphicate(this.Data, settingsCasted);
|
|
2857
3038
|
}
|
|
2858
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
2859
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3039
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsAreaChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3040
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsAreaChartComponent, isStandalone: false, selector: "es-area-chart", inputs: { Data: "Data", DataArray: "DataArray" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2860
3041
|
}
|
|
2861
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3042
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsAreaChartComponent, decorators: [{
|
|
2862
3043
|
type: Component,
|
|
2863
3044
|
args: [{ selector: 'es-area-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
2864
3045
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -2931,10 +3112,10 @@ class EsLineChartComponent extends BaseChartComponent {
|
|
|
2931
3112
|
graphicate(settingsCasted) {
|
|
2932
3113
|
return new LineChartService(this.dateService).graphicate(this.Data, settingsCasted);
|
|
2933
3114
|
}
|
|
2934
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
2935
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsLineChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i3.DateService }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsLineChartComponent, isStandalone: false, selector: "es-line-chart", inputs: { Data: "Data", DataArray: "DataArray", Step: "Step", DataGroupBucketSize: "DataGroupBucketSize", DataGroupingThreshold: "DataGroupingThreshold", StrokeSize: "StrokeSize", AllowGaps: "AllowGaps", MergeDatasets: "MergeDatasets", FinalInstants: "FinalInstants", Min: "Min", Max: "Max", Fill: "Fill", Stacked: "Stacked" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2936
3117
|
}
|
|
2937
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsLineChartComponent, decorators: [{
|
|
2938
3119
|
type: Component,
|
|
2939
3120
|
args: [{ selector: 'es-line-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
2940
3121
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i3.DateService }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -3024,10 +3205,10 @@ class EsPieChartComponent extends BaseChartComponent {
|
|
|
3024
3205
|
graphicate(settingsCasted) {
|
|
3025
3206
|
return new PieChartService().graphicate(this.Data, settingsCasted);
|
|
3026
3207
|
}
|
|
3027
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
3028
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3208
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsPieChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3209
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsPieChartComponent, isStandalone: false, selector: "es-pie-chart", inputs: { Data: "Data", DataArray: "DataArray", HideZeroes: "HideZeroes", Mode3D: "Mode3D", DonutRadiusPercentage: "DonutRadiusPercentage", LabelsWrap: "LabelsWrap", LabelsTruncate: "LabelsTruncate", LabelsWidth: "LabelsWidth", LabelsVisible: "LabelsVisible", Total: "Total" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3029
3210
|
}
|
|
3030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3211
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsPieChartComponent, decorators: [{
|
|
3031
3212
|
type: Component,
|
|
3032
3213
|
args: [{ selector: 'es-pie-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
3033
3214
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -3110,10 +3291,10 @@ class EsVertical2DChartComponent extends BaseChartComponent {
|
|
|
3110
3291
|
graphicate(settingsCasted) {
|
|
3111
3292
|
return new Vertical2DChartService().graphicate(this.Data, settingsCasted);
|
|
3112
3293
|
}
|
|
3113
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
3114
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3294
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVertical2DChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3295
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsVertical2DChartComponent, isStandalone: false, selector: "es-vertical-2d-chart", inputs: { Data: "Data", DataArray: "DataArray", ColumnWidthPercentage: "ColumnWidthPercentage", GroupPaddingPercentage: "GroupPaddingPercentage", LabelWidth: "LabelWidth", LabelVerticalOrientationCutoffWidth: "LabelVerticalOrientationCutoffWidth", LabelRightWhenCompressed: "LabelRightWhenCompressed", LabelTopWhenCompressed: "LabelTopWhenCompressed" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3115
3296
|
}
|
|
3116
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3297
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVertical2DChartComponent, decorators: [{
|
|
3117
3298
|
type: Component,
|
|
3118
3299
|
args: [{ selector: 'es-vertical-2d-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
3119
3300
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -3191,10 +3372,10 @@ class EsVerticalChartComponent extends BaseChartComponent {
|
|
|
3191
3372
|
graphicate(settingsCasted) {
|
|
3192
3373
|
return new VerticalChartService().graphicate(this.Data, settingsCasted);
|
|
3193
3374
|
}
|
|
3194
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
3195
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3375
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVerticalChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3376
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsVerticalChartComponent, isStandalone: false, selector: "es-vertical-chart", inputs: { Data: "Data", DataArray: "DataArray", ColumnWidthPercentage: "ColumnWidthPercentage", LabelWidth: "LabelWidth", LabelVerticalOrientationCutoffWidth: "LabelVerticalOrientationCutoffWidth", LabelRightWhenCompressed: "LabelRightWhenCompressed", LabelTopWhenCompressed: "LabelTopWhenCompressed" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3196
3377
|
}
|
|
3197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3378
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVerticalChartComponent, decorators: [{
|
|
3198
3379
|
type: Component,
|
|
3199
3380
|
args: [{ selector: 'es-vertical-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
3200
3381
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -3270,10 +3451,10 @@ class EsVerticalStackedChartComponent extends BaseChartComponent {
|
|
|
3270
3451
|
graphicate(settingsCasted) {
|
|
3271
3452
|
return new VerticalStackedChartService().graphicate(this.Data, settingsCasted);
|
|
3272
3453
|
}
|
|
3273
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
3274
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
3454
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVerticalStackedChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_DEBUG_MODE }, { token: ESC_ANIMATIONS }, { token: ESC_THEME }, { token: i3$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3455
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: EsVerticalStackedChartComponent, isStandalone: false, selector: "es-vertical-stacked-chart", inputs: { Data: "Data", DataArray: "DataArray", ColumnWidthPercentage: "ColumnWidthPercentage", LabelWidth: "LabelWidth", LabelVerticalOrientationCutoffWidth: "LabelVerticalOrientationCutoffWidth", LabelRightWhenCompressed: "LabelRightWhenCompressed", LabelTopWhenCompressed: "LabelTopWhenCompressed" }, usesInheritance: true, ngImport: i0, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3275
3456
|
}
|
|
3276
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3457
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsVerticalStackedChartComponent, decorators: [{
|
|
3277
3458
|
type: Component,
|
|
3278
3459
|
args: [{ selector: 'es-vertical-stacked-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>", styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"] }]
|
|
3279
3460
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: ChartLoader }, { type: ChartDispatcher }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
@@ -3348,8 +3529,8 @@ class EsChartsModule {
|
|
|
3348
3529
|
]
|
|
3349
3530
|
};
|
|
3350
3531
|
}
|
|
3351
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
3352
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
3532
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsChartsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
3533
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: EsChartsModule, declarations: [EsChartComponent,
|
|
3353
3534
|
EsLineChartComponent,
|
|
3354
3535
|
EsPieChartComponent,
|
|
3355
3536
|
EsVertical2DChartComponent,
|
|
@@ -3364,9 +3545,9 @@ class EsChartsModule {
|
|
|
3364
3545
|
EsVerticalStackedChartComponent,
|
|
3365
3546
|
PageChartSelector,
|
|
3366
3547
|
EsAreaChartComponent] }); }
|
|
3367
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
3548
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsChartsModule, imports: [CommonModule] }); }
|
|
3368
3549
|
}
|
|
3369
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
3550
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EsChartsModule, decorators: [{
|
|
3370
3551
|
type: NgModule,
|
|
3371
3552
|
args: [{
|
|
3372
3553
|
imports: [CommonModule],
|