@esfaenza/es-charts 13.3.3 → 13.3.4

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.
@@ -107,12 +107,12 @@ class Vertical2DChartData {
107
107
  /**
108
108
  * Costruttore
109
109
  *
110
- * @param {{ name: string; values: KeyValue[]; }[]} groups Gruppi di valori raggruppati per nome
111
- * @param {{ color: string }[]} colorInfos Lista dei colori da utilizzare. Vanno a sovrascrivere quelli di default di amcharts
110
+ * @param {{ name: string; values: KeyValue[];, uom: string }[]} groups Gruppi di valori raggruppati per nome
111
+ * @param {{ color: string }[]} colorinfos Lista dei colori da utilizzare. Vanno a sovrascrivere quelli di default di amcharts
112
112
  */
113
- constructor(groups = [], colorInfos) {
113
+ constructor(groups = [], colorinfos) {
114
114
  this.groups = groups;
115
- this.colorInfos = colorInfos;
115
+ this.colorinfos = colorinfos;
116
116
  }
117
117
  }
118
118
 
@@ -123,7 +123,7 @@ class VerticalChartData {
123
123
  /**
124
124
  * Costruttore
125
125
  *
126
- * @param {KeyValue[]} values Lista di Chiave-Valore che rappresentano ognuno una colonna
126
+ * @param {KeyValueColor[]} values Lista di Chiave-Valore-Colore che rappresentano ognuno una colonna
127
127
  */
128
128
  constructor(values = []) {
129
129
  this.values = values;
@@ -137,7 +137,7 @@ class VerticalStackedChartData {
137
137
  /**
138
138
  * Costruttore
139
139
  *
140
- * @param {{ name: string; values: KeyValue[]; }[]} groups Gruppi di valori raggruppati per nome
140
+ * @param {{ name: string; values: KeyValue[], uom: string }[]} groups Gruppi di valori raggruppati per nome
141
141
  */
142
142
  constructor(groups = []) {
143
143
  this.groups = groups;
@@ -261,10 +261,11 @@ class KeyValue {
261
261
  */
262
262
  class KeyValueColor {
263
263
  /** @ignore */
264
- constructor(k, v, c) {
264
+ constructor(k, v, c, t) {
265
265
  this.k = k;
266
266
  this.v = v;
267
267
  this.c = c;
268
+ this.t = t;
268
269
  }
269
270
  }
270
271
 
@@ -281,14 +282,18 @@ class LineSerie {
281
282
  * @param {string} color Colore della serie, verrà usato sia per la linea base che eventualmente per il riempimento (in caso si utilizzi l'Input **Fill** nel grafico)
282
283
  * @param {string} uom Unità di misura da presentare nell'asse delle Y
283
284
  * @param {boolean} fill Override della proprietà **Fill** del grafico, specifico per ogni serie
285
+ * @param {boolean} stacked Override della proprietà **Stacked** del grafico, specifico per ogni serie
286
+ * @param {boolean} hidden Indica se la serie deve partire nascosta di default
284
287
  */
285
- constructor(name, values, interval, color, uom, fill) {
288
+ constructor(name, values, interval, color, uom, fill, stacked, hidden) {
286
289
  this.name = name;
287
290
  this.values = values;
288
291
  this.interval = interval;
289
292
  this.color = color;
290
293
  this.uom = uom;
291
294
  this.fill = fill;
295
+ this.stacked = stacked;
296
+ this.hidden = hidden;
292
297
  }
293
298
  }
294
299
 
@@ -1107,6 +1112,8 @@ class LineChartService {
1107
1112
  /** @ignore */
1108
1113
  this.OpacityOnSelected = 0.3;
1109
1114
  /** @ignore */
1115
+ this.OpacityOnFill = 0.75;
1116
+ /** @ignore */
1110
1117
  this.singleDataSet = false;
1111
1118
  //******************** Funzione di throttling per non spammare richieste in caso di animazioni attivate
1112
1119
  //TODO: spostarla in un metodo di utilità (esfaenza/extensions)
@@ -1222,15 +1229,8 @@ class LineChartService {
1222
1229
  let seriesToPush = [];
1223
1230
  let seriesColors = [];
1224
1231
  let defaultIndex = 0;
1225
- //-- Generazione di un unico dataset invece che N, per poter gestire un unico tooltip
1226
- if (this.singleDataSet) {
1227
- this.ChartInstance.data = this.generateSingleDataset(dataConverted);
1228
- ;
1229
- dateAxis.cursorTooltipEnabled = false;
1230
- }
1231
- //-- Fine generazione
1232
- dataConverted.series.forEach((s, index) => {
1233
- var _a, _b, _c;
1232
+ // Ordinamento dei dati se serve
1233
+ dataConverted.series.forEach((s) => {
1234
1234
  if (s.values[0] && !(s.values[0].d instanceof Date)) {
1235
1235
  for (let v = 0; v < s.values.length; v++)
1236
1236
  s.values[v].d = new Date(s.values[v].d);
@@ -1247,21 +1247,32 @@ class LineChartService {
1247
1247
  }
1248
1248
  if (!correctOrder)
1249
1249
  s.values.sort((d1, d2) => d1.d.getTime() - d2.d.getTime());
1250
- let fill = s.fill != null && s.fill != undefined ? s.fill : ((_a = settings === null || settings === void 0 ? void 0 : settings.Fill) !== null && _a !== void 0 ? _a : false);
1250
+ });
1251
+ // Generazione di un unico dataset invece che N, per poter gestire un unico tooltip
1252
+ if (this.singleDataSet) {
1253
+ this.ChartInstance.data = this.generateSingleDataset(dataConverted);
1254
+ ;
1255
+ dateAxis.cursorTooltipEnabled = false;
1256
+ }
1257
+ dataConverted.series.forEach((s, index) => {
1258
+ var _a, _b, _c, _d;
1259
+ let stacked = s.stacked != null && s.stacked != undefined ? s.stacked : ((_a = settings === null || settings === void 0 ? void 0 : settings.Stacked) !== null && _a !== void 0 ? _a : false);
1260
+ let fill = stacked || (s.fill != null && s.fill != undefined ? s.fill : ((_b = settings === null || settings === void 0 ? void 0 : settings.Fill) !== null && _b !== void 0 ? _b : false));
1251
1261
  let series = (settings === null || settings === void 0 ? void 0 : settings.Step) ? new am4charts.StepLineSeries() : new am4charts.LineSeries();
1252
1262
  series.dataFields.valueY = "v" + (this.singleDataSet ? index : "");
1253
1263
  series.dataFields.dateX = "d";
1254
- series.dataFields.measureUnit = s.uom;
1264
+ series.measureUnit = s.uom;
1255
1265
  series.name = s.name;
1256
- series.strokeWidth = (_b = settings === null || settings === void 0 ? void 0 : settings.StrokeSize) !== null && _b !== void 0 ? _b : 1;
1266
+ series.strokeWidth = (_c = settings === null || settings === void 0 ? void 0 : settings.StrokeSize) !== null && _c !== void 0 ? _c : 1;
1257
1267
  series.connect = !gapsAllowed;
1258
1268
  series.minBulletDistance = 10;
1259
1269
  series.tooltipText = this.singleDataSet ? "" : s.name ? "{name}: [bold]{valueY}[/]" : "[bold]{valueY}[/]";
1260
1270
  series.tooltip.pointerOrientation = "vertical";
1261
1271
  series.tooltip.background.fillOpacity = 0.5;
1262
1272
  series.tooltip.label.padding(12, 12, 12, 12);
1263
- series.fillOpacity = fill ? 1 : 0.0001;
1264
- series.stacked = fill;
1273
+ series.fillOpacity = fill ? this.OpacityOnFill : 0.0001;
1274
+ series.stacked = stacked;
1275
+ series.hidden = s.hidden;
1265
1276
  //Dataset singolo, i dati sono registrati a livello di chart, creo il tooltip che permette di vederli tutti insieme
1266
1277
  //altrimenti assegno i dati della serie direttamente alla serie
1267
1278
  if (this.singleDataSet) {
@@ -1272,7 +1283,7 @@ class LineChartService {
1272
1283
  series.tooltip.hiddenState.transitionDuration = 0;
1273
1284
  //Utilizzo il mio dateService per la formattazione della data in modo che non debba mai gestire n formati fra n librerie... bellissimo
1274
1285
  series.dateFormatter.format = (source) => {
1275
- if (interval && finalInstant) {
1286
+ if (interval && finalInstant && ["hour", "minute", "second"].includes(interval.timeunit)) {
1276
1287
  let timepart = null;
1277
1288
  switch (interval.timeunit) {
1278
1289
  case "hour":
@@ -1289,12 +1300,12 @@ class LineChartService {
1289
1300
  return this.dateExts.adjustDateToFinalInstant(source, timepart, interval ? interval.timeunit == "second" : false);
1290
1301
  }
1291
1302
  else
1292
- return this.dateExts.getFormatted(source, false, interval ? interval.timeunit == "second" : false);
1303
+ return this.dateExts.getFormatted(source, interval ? ["day", "week", "month", "year"].includes(interval.timeunit) : false, interval ? interval.timeunit == "second" : false);
1293
1304
  };
1294
1305
  series.adapter.add("tooltipText", () => {
1295
1306
  var text = "[bold]{dateX.formatDate()}[/]\n";
1296
1307
  this.ChartInstance.series.each((item) => {
1297
- let uom = " [font-style: italic]" + series.dataFields.measureUnit || "" + "[/]";
1308
+ let uom = " [font-style: italic]" + series.measureUnit || "" + "[/]";
1298
1309
  text += "[" + item.stroke.hex + "]●[/] " + (item.name ? (item.name + ": ") : "") + "[bold]{" + item.dataFields.valueY + "}[/]" + uom + "\n";
1299
1310
  });
1300
1311
  return text;
@@ -1304,7 +1315,7 @@ class LineChartService {
1304
1315
  series.data = s.values;
1305
1316
  let segment = series.segments.template;
1306
1317
  let hoverState = segment.states.create("hover");
1307
- hoverState.properties.strokeWidth = ((_c = settings === null || settings === void 0 ? void 0 : settings.StrokeSize) !== null && _c !== void 0 ? _c : 1) + 1;
1318
+ hoverState.properties.strokeWidth = ((_d = settings === null || settings === void 0 ? void 0 : settings.StrokeSize) !== null && _d !== void 0 ? _d : 1) + 1;
1308
1319
  let dimmed = segment.states.create("dimmed");
1309
1320
  dimmed.properties.stroke = am4core.color("#dadada");
1310
1321
  //Se la serie ha un colore, uso quello, altrimenti pesco dai colori di default andando in ordine
@@ -1416,8 +1427,8 @@ class LineChartService {
1416
1427
  }
1417
1428
  /** @ignore */
1418
1429
  processOver(hoveredSeries) {
1419
- hoveredSeries.toFront();
1420
- let fill = hoveredSeries.stacked;
1430
+ hoveredSeries.zIndex = 999;
1431
+ let fill = hoveredSeries.fillOpacity == this.OpacityOnFill;
1421
1432
  hoveredSeries.segments.each((segment) => {
1422
1433
  segment.setState("hover");
1423
1434
  if (!fill)
@@ -1427,7 +1438,7 @@ class LineChartService {
1427
1438
  hoveredSeries.legendDataItem.marker.children.getIndex(1).fillOpacity = this.OpacityOnSelected;
1428
1439
  this.ChartInstance.series.each((series) => {
1429
1440
  if (series != hoveredSeries) {
1430
- let fill = series.stacked;
1441
+ let fill = series.fillOpacity == this.OpacityOnFill;
1431
1442
  series.segments.each((segment) => {
1432
1443
  segment.setState("dimmed");
1433
1444
  if (!fill)
@@ -1438,8 +1449,9 @@ class LineChartService {
1438
1449
  }
1439
1450
  /** @ignore */
1440
1451
  processOut() {
1441
- this.ChartInstance.series.each((series) => {
1442
- let fill = series.stacked;
1452
+ this.ChartInstance.series.each((series, i) => {
1453
+ series.zIndex = i;
1454
+ let fill = series.fillOpacity == this.OpacityOnFill;
1443
1455
  series.segments.each((segment) => {
1444
1456
  segment.setState("default");
1445
1457
  if (!fill)
@@ -1605,6 +1617,7 @@ class VerticalChartService {
1605
1617
  let ChartInstanceCasted = this.ChartInstance;
1606
1618
  let dataConverted = this.Adapter ? this.Adapter.adaptDataForVerticalChart(data) : data;
1607
1619
  ChartInstanceCasted.data = dataConverted.values;
1620
+ let noStrokes = dataConverted.values.some(t => !!t.c);
1608
1621
  if (settings.Legend) {
1609
1622
  ChartInstanceCasted.legend = new am4charts.Legend();
1610
1623
  ChartInstanceCasted.legend.position = (_a = settings === null || settings === void 0 ? void 0 : settings.LegendPosition) !== null && _a !== void 0 ? _a : 'right';
@@ -1661,12 +1674,19 @@ class VerticalChartService {
1661
1674
  series.dataFields.valueY = "v";
1662
1675
  series.dataFields.categoryX = "k";
1663
1676
  series.name = "";
1664
- series.columns.template.tooltipText = "{categoryX}: [bold]{valueY}[/]";
1665
- series.columns.template.fillOpacity = .8;
1666
- series.columns.template.width = am4core.percent((_h = settings.ColumnWidthPercentage) !== null && _h !== void 0 ? _h : this.DefaultColumnWidthPercentage);
1667
1677
  let columnTemplate = series.columns.template;
1668
- columnTemplate.strokeWidth = 2;
1669
- columnTemplate.strokeOpacity = 1;
1678
+ columnTemplate.tooltipText = "{categoryX}: [bold]{valueY}[/] {t}";
1679
+ columnTemplate.fillOpacity = .8;
1680
+ columnTemplate.width = am4core.percent((_h = settings.ColumnWidthPercentage) !== null && _h !== void 0 ? _h : this.DefaultColumnWidthPercentage);
1681
+ if (noStrokes) {
1682
+ columnTemplate.strokeOpacity = 0;
1683
+ columnTemplate.strokeWidth = 0;
1684
+ columnTemplate.adapter.add("fill", (_, target) => am4core.color(target.dataItem.dataContext.c));
1685
+ }
1686
+ else {
1687
+ columnTemplate.strokeWidth = 2;
1688
+ columnTemplate.strokeOpacity = 1;
1689
+ }
1670
1690
  return this;
1671
1691
  }
1672
1692
  /** @ignore */
@@ -1777,8 +1797,8 @@ class Vertical2DChartService {
1777
1797
  dataConverted.push(obj);
1778
1798
  }
1779
1799
  ChartInstanceCasted.data = dataConverted;
1780
- if (dataPreConverted.colorInfos)
1781
- ChartInstanceCasted.colors.list = dataPreConverted.colorInfos.map(c => am4core.color(c.color));
1800
+ if (dataPreConverted.colorinfos)
1801
+ ChartInstanceCasted.colors.list = dataPreConverted.colorinfos.map(c => am4core.color(c.color));
1782
1802
  //Prendo la prima categoria e mi baso sulle proprietà per dfeinire le serie
1783
1803
  for (let prop in dataConverted[0])
1784
1804
  if (prop !== "key")
@@ -2296,7 +2316,7 @@ class EsLineChartComponent extends BaseChartComponent {
2296
2316
  * Ottiene le proprietà specifiche per questa tipologia di grafico per cui serve rigraficare
2297
2317
  */
2298
2318
  getSpecificPropertiesToCheck() {
2299
- return ["Data", "DataArray", "Step", "DataGroupBucketSize", "DataGroupingThreshold", "StrokeSize", "AllowGaps", "MergeDatasets", "FinalInstants", "Fill", "Min", "Max"];
2319
+ return ["Data", "DataArray", "Step", "DataGroupBucketSize", "DataGroupingThreshold", "StrokeSize", "Stacked", "AllowGaps", "MergeDatasets", "FinalInstants", "Fill", "Min", "Max"];
2300
2320
  }
2301
2321
  /**
2302
2322
  * Ottiene i Settings (Ereditati dalla classe base, quindi del tipo generico **BaseSettings**) castati al tipo specifico per questo grafico
@@ -2323,6 +2343,7 @@ class EsLineChartComponent extends BaseChartComponent {
2323
2343
  settingsCasted.Min = settingsCasted.Min != null ? settingsCasted.Min : this.Min;
2324
2344
  settingsCasted.Max = settingsCasted.Max != null ? settingsCasted.Max : this.Max;
2325
2345
  settingsCasted.Fill = settingsCasted.Fill != null ? settingsCasted.Fill : this.Fill;
2346
+ settingsCasted.Stacked = settingsCasted.Stacked != null ? settingsCasted.Stacked : this.Stacked;
2326
2347
  }
2327
2348
  /**
2328
2349
  * Effettua il rendering di questo grafico in base ai Settings
@@ -2335,7 +2356,7 @@ class EsLineChartComponent extends BaseChartComponent {
2335
2356
  }
2336
2357
  }
2337
2358
  EsLineChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EsLineChartComponent, deps: [{ token: i0.ElementRef }, { token: ChartLoader }, { token: ChartDispatcher }, { token: BaseAdapter }, { token: i3.DateService }, { token: i0.NgZone }, { token: PLATFORM_ID }, { token: ESC_LOGS }, { token: ESC_ANIMATIONS }, { token: ESC_LOCALE }, { token: ESC_THEME }], target: i0.ɵɵFactoryTarget.Component });
2338
- EsLineChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: EsLineChartComponent, 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" }, 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"], components: [{ type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2359
+ EsLineChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: EsLineChartComponent, 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"], components: [{ type: PageChartSelector, selector: "chart-pager", inputs: ["Items", "Dtos", "BrowseDelayMs", "StartIndex"], outputs: ["onPageChange"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2339
2360
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EsLineChartComponent, decorators: [{
2340
2361
  type: Component,
2341
2362
  args: [{ selector: 'es-line-chart', changeDetection: ChangeDetectionStrategy.OnPush, 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"] }]
@@ -2380,6 +2401,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
2380
2401
  type: Input
2381
2402
  }], Fill: [{
2382
2403
  type: Input
2404
+ }], Stacked: [{
2405
+ type: Input
2383
2406
  }] } });
2384
2407
 
2385
2408
  /**