igniteui-angular-extras 20.0.2 → 21.2.0-beta.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.
@@ -1,41 +1,43 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Input, Output, Directive, Pipe, ViewContainerRef, HostBinding, ViewChild, CUSTOM_ELEMENTS_SCHEMA, ViewEncapsulation, Component, Optional } from '@angular/core';
2
+ import { EventEmitter, Input, Output, Directive, inject, Pipe, ElementRef, ViewContainerRef, HostBinding, ViewChild, CUSTOM_ELEMENTS_SCHEMA, ViewEncapsulation, Component } from '@angular/core';
3
3
  import { IgxCategoryXAxisComponent, IgxNumericYAxisComponent, IgxScatterLineSeriesComponent, IgxNumericXAxisComponent, IgxBubbleSeriesComponent, IgxScatterSeriesComponent, IgxBarSeriesComponent, IgxCategoryYAxisComponent, IgxStackedBarSeriesComponent, IgxStacked100BarSeriesComponent, IgxStackedFragmentSeriesComponent, IgxSizeScaleComponent, IgxColumnSeriesComponent, IgxAreaSeriesComponent, IgxLineSeriesComponent, IgxStackedColumnSeriesComponent, IgxStackedAreaSeriesComponent, IgxStackedLineSeriesComponent, IgxStacked100ColumnSeriesComponent, IgxStacked100AreaSeriesComponent, IgxStacked100LineSeriesComponent, IgxPieChartComponent, IgxDataChartComponent, IgxItemLegendComponent, IgxLegendComponent, IgxBarSeriesModule, IgxCategoryChartModule, IgxCategoryXAxisModule, IgxDataChartCategoryModule, IgxDataChartCoreModule, IgxDataChartInteractivityModule, IgxDataChartScatterModule, IgxDataChartStackedModule, IgxItemLegendModule, IgxLegendModule, IgxNumericXAxisModule, IgxNumericYAxisModule } from 'igniteui-angular-charts';
4
- import { Subject } from 'rxjs';
5
- import { takeUntil, debounceTime, merge, filter } from 'rxjs/operators';
6
- import * as i1 from 'igniteui-angular';
7
- import { IgxIconComponent, IgxIconButtonDirective, AutoPositionStrategy, CloseScrollStrategy, VerticalAlignment, HorizontalAlignment, IgxToggleDirective, IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective, AbsoluteScrollStrategy } from 'igniteui-angular';
8
- import * as i1$2 from '@angular/common';
9
- import { CommonModule, NgFor, NgIf } from '@angular/common';
10
- import { ResizeObserver } from '@juggle/resize-observer';
11
- import * as i1$1 from '@angular/platform-browser';
4
+ import { IgxGridComponent } from 'igniteui-angular/grids/grid';
5
+ import { Subject, merge } from 'rxjs';
6
+ import { takeUntil, debounceTime, filter } from 'rxjs/operators';
7
+ import { AutoPositionStrategy, CloseScrollStrategy, VerticalAlignment, HorizontalAlignment, IgxOverlayService, AbsoluteScrollStrategy } from 'igniteui-angular/core';
8
+ import * as i1 from '@angular/common';
9
+ import { CommonModule } from '@angular/common';
10
+ import { IgxIconButtonDirective, IgxRippleDirective, IgxDividerDirective, IgxToggleDirective } from 'igniteui-angular/directives';
11
+ import { IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective } from 'igniteui-angular/tabs';
12
+ import { IgxIconComponent } from 'igniteui-angular/icon';
13
+ import { DomSanitizer } from '@angular/platform-browser';
12
14
 
13
15
  var CHART_TYPE;
14
16
  (function (CHART_TYPE) {
15
- CHART_TYPE["PIE"] = "Pie";
16
- CHART_TYPE["COLUMN_GROUPED"] = "ColumnGrouped";
17
- CHART_TYPE["AREA_GROUPED"] = "AreaGrouped";
18
- CHART_TYPE["LINE_GROUPED"] = "LineGrouped";
19
- CHART_TYPE["BAR_GROUPED"] = "BarGrouped";
20
- CHART_TYPE["COLUMN_STACKED"] = "ColumnStacked";
21
- CHART_TYPE["AREA_STACKED"] = "AreaStacked";
22
- CHART_TYPE["LINE_STACKED"] = "LineStacked";
23
- CHART_TYPE["BAR_STACKED"] = "BarStacked";
24
- CHART_TYPE["COLUMN_100_STACKED"] = "Column100Stacked";
25
- CHART_TYPE["AREA_100_STACKED"] = "Area100Stacked";
26
- CHART_TYPE["LINE_100_STACKED"] = "Line100Stacked";
27
- CHART_TYPE["BAR_100_STACKED"] = "Bar100Stacked";
28
- CHART_TYPE["SCATTER_POINT"] = "ScatterPoint";
29
- CHART_TYPE["SCATTER_BUBBLE"] = "ScatterBubble";
30
- CHART_TYPE["SCATTER_LINE"] = "ScatterLine";
17
+ CHART_TYPE["Pie"] = "Pie";
18
+ CHART_TYPE["ColumnGrouped"] = "ColumnGrouped";
19
+ CHART_TYPE["AreaGrouped"] = "AreaGrouped";
20
+ CHART_TYPE["LineGrouped"] = "LineGrouped";
21
+ CHART_TYPE["BarGrouped"] = "BarGrouped";
22
+ CHART_TYPE["ColumnStacked"] = "ColumnStacked";
23
+ CHART_TYPE["AreaStacked"] = "AreaStacked";
24
+ CHART_TYPE["LineStacked"] = "LineStacked";
25
+ CHART_TYPE["BarStacked"] = "BarStacked";
26
+ CHART_TYPE["Column100Stacked"] = "Column100Stacked";
27
+ CHART_TYPE["Area100Stacked"] = "Area100Stacked";
28
+ CHART_TYPE["Line100Stacked"] = "Line100Stacked";
29
+ CHART_TYPE["Bar100Stacked"] = "Bar100Stacked";
30
+ CHART_TYPE["ScatterPoint"] = "ScatterPoint";
31
+ CHART_TYPE["ScatterBubble"] = "ScatterBubble";
32
+ CHART_TYPE["ScatterLine"] = "ScatterLine";
31
33
  })(CHART_TYPE || (CHART_TYPE = {}));
32
34
  var OPTIONS_TYPE;
33
35
  (function (OPTIONS_TYPE) {
34
- OPTIONS_TYPE["CHART"] = "chartOptions";
35
- OPTIONS_TYPE["SERIES"] = "seriesModel";
36
- OPTIONS_TYPE["X_AXIS"] = "xAxisOptions";
37
- OPTIONS_TYPE["Y_AXIS"] = "yAxisOptions";
38
- OPTIONS_TYPE["STACKED_SERIES"] = "stackedFragmentOptions";
36
+ OPTIONS_TYPE["Chart"] = "chartOptions";
37
+ OPTIONS_TYPE["Series"] = "seriesModel";
38
+ OPTIONS_TYPE["XAxis"] = "xAxisOptions";
39
+ OPTIONS_TYPE["YAxis"] = "yAxisOptions";
40
+ OPTIONS_TYPE["StackedSeries"] = "stackedFragmentOptions";
39
41
  })(OPTIONS_TYPE || (OPTIONS_TYPE = {}));
40
42
 
41
43
  // tslint:disable: max-line-length
@@ -166,7 +168,7 @@ class IgxChartIntegrationDirective {
166
168
  chartsForCreation: []
167
169
  };
168
170
  if (selectedData.length === 0 || this._valueMemberPaths.length === 0) {
169
- this.onChartTypesDetermined.emit(args);
171
+ this.chartTypesDetermined.emit(args);
170
172
  return;
171
173
  }
172
174
  if (selectedData.length === 1) {
@@ -182,22 +184,22 @@ class IgxChartIntegrationDirective {
182
184
  // Config pie chart
183
185
  const cannotCreatePieChart = selectedData.some(record => record[this._valueMemberPaths[0]] <= 0);
184
186
  if (cannotCreatePieChart) {
185
- charts.delete(CHART_TYPE.PIE);
187
+ charts.delete(CHART_TYPE.Pie);
186
188
  }
187
189
  // Config scatter chart member paths
188
190
  const canCreateScatterChart = this._valueMemberPaths.length >= 2;
189
191
  const canCreateBubbleChart = this._valueMemberPaths.length >= 3;
190
192
  if (!canCreateScatterChart) {
191
- charts.delete(CHART_TYPE.SCATTER_BUBBLE);
192
- charts.delete(CHART_TYPE.SCATTER_LINE);
193
- charts.delete(CHART_TYPE.SCATTER_POINT);
193
+ charts.delete(CHART_TYPE.ScatterBubble);
194
+ charts.delete(CHART_TYPE.ScatterLine);
195
+ charts.delete(CHART_TYPE.ScatterPoint);
194
196
  }
195
197
  if (!canCreateBubbleChart) {
196
- charts.delete(CHART_TYPE.SCATTER_BUBBLE);
198
+ charts.delete(CHART_TYPE.ScatterBubble);
197
199
  }
198
200
  args.chartsAvailability = this.chartTypesAvailability;
199
201
  args.chartsForCreation = [...charts];
200
- this.onChartTypesDetermined.emit(args);
202
+ this.chartTypesDetermined.emit(args);
201
203
  }
202
204
  set scatterChartYAxisValueMemberPath(path) {
203
205
  this._scatterChartYAxisValueMemberPath = path;
@@ -239,10 +241,9 @@ class IgxChartIntegrationDirective {
239
241
  dataSource: this.chartData
240
242
  };
241
243
  }
242
- constructor(factoryResolver) {
243
- this.factoryResolver = factoryResolver;
244
- this.onChartTypesDetermined = new EventEmitter();
245
- this.onChartCreationDone = new EventEmitter();
244
+ constructor() {
245
+ this.chartTypesDetermined = new EventEmitter();
246
+ this.chartCreationDone = new EventEmitter();
246
247
  this.useLegend = true;
247
248
  this.defaultLabelMemberPath = undefined;
248
249
  this.chartTypesAvailability = new Map();
@@ -267,22 +268,22 @@ class IgxChartIntegrationDirective {
267
268
  this.bubbleChartSeriesOptionsModel = {
268
269
  radiusScale: this._sizeScale
269
270
  };
270
- this.dataCharts.set(CHART_TYPE.COLUMN_GROUPED, IgxColumnSeriesComponent);
271
- this.dataCharts.set(CHART_TYPE.AREA_GROUPED, IgxAreaSeriesComponent);
272
- this.dataCharts.set(CHART_TYPE.LINE_GROUPED, IgxLineSeriesComponent);
273
- this.dataCharts.set(CHART_TYPE.BAR_GROUPED, IgxBarSeriesComponent);
274
- this.dataCharts.set(CHART_TYPE.COLUMN_STACKED, IgxStackedColumnSeriesComponent);
275
- this.dataCharts.set(CHART_TYPE.AREA_STACKED, IgxStackedAreaSeriesComponent);
276
- this.dataCharts.set(CHART_TYPE.LINE_STACKED, IgxStackedLineSeriesComponent);
277
- this.dataCharts.set(CHART_TYPE.BAR_STACKED, IgxStackedBarSeriesComponent);
278
- this.dataCharts.set(CHART_TYPE.COLUMN_100_STACKED, IgxStacked100ColumnSeriesComponent);
279
- this.dataCharts.set(CHART_TYPE.AREA_100_STACKED, IgxStacked100AreaSeriesComponent);
280
- this.dataCharts.set(CHART_TYPE.LINE_100_STACKED, IgxStacked100LineSeriesComponent);
281
- this.dataCharts.set(CHART_TYPE.BAR_100_STACKED, IgxStacked100BarSeriesComponent);
282
- this.dataCharts.set(CHART_TYPE.SCATTER_POINT, IgxScatterSeriesComponent);
283
- this.dataCharts.set(CHART_TYPE.SCATTER_BUBBLE, IgxBubbleSeriesComponent);
284
- this.dataCharts.set(CHART_TYPE.SCATTER_LINE, IgxScatterLineSeriesComponent);
285
- this.dataCharts.set(CHART_TYPE.PIE, IgxPieChartComponent);
271
+ this.dataCharts.set(CHART_TYPE.ColumnGrouped, IgxColumnSeriesComponent);
272
+ this.dataCharts.set(CHART_TYPE.AreaGrouped, IgxAreaSeriesComponent);
273
+ this.dataCharts.set(CHART_TYPE.LineGrouped, IgxLineSeriesComponent);
274
+ this.dataCharts.set(CHART_TYPE.BarGrouped, IgxBarSeriesComponent);
275
+ this.dataCharts.set(CHART_TYPE.ColumnStacked, IgxStackedColumnSeriesComponent);
276
+ this.dataCharts.set(CHART_TYPE.AreaStacked, IgxStackedAreaSeriesComponent);
277
+ this.dataCharts.set(CHART_TYPE.LineStacked, IgxStackedLineSeriesComponent);
278
+ this.dataCharts.set(CHART_TYPE.BarStacked, IgxStackedBarSeriesComponent);
279
+ this.dataCharts.set(CHART_TYPE.Column100Stacked, IgxStacked100ColumnSeriesComponent);
280
+ this.dataCharts.set(CHART_TYPE.Area100Stacked, IgxStacked100AreaSeriesComponent);
281
+ this.dataCharts.set(CHART_TYPE.Line100Stacked, IgxStacked100LineSeriesComponent);
282
+ this.dataCharts.set(CHART_TYPE.Bar100Stacked, IgxStacked100BarSeriesComponent);
283
+ this.dataCharts.set(CHART_TYPE.ScatterPoint, IgxScatterSeriesComponent);
284
+ this.dataCharts.set(CHART_TYPE.ScatterBubble, IgxBubbleSeriesComponent);
285
+ this.dataCharts.set(CHART_TYPE.ScatterLine, IgxScatterLineSeriesComponent);
286
+ this.dataCharts.set(CHART_TYPE.Pie, IgxPieChartComponent);
286
287
  const iterable = this.dataCharts.keys();
287
288
  for (let head = iterable.next().value; head !== undefined; head = iterable.next().value) {
288
289
  this._dataChartTypes.add(head);
@@ -325,22 +326,18 @@ class IgxChartIntegrationDirective {
325
326
  const initializer = this.getInitializer(type, chartType);
326
327
  let chart;
327
328
  if (viewContainerRef) {
328
- let componentFactory;
329
329
  let componentRef;
330
330
  this._sizeScale.maximumValue = 60;
331
331
  this._sizeScale.minimumValue = 10;
332
- if (type === CHART_TYPE.PIE) {
333
- componentFactory = this.factoryResolver.resolveComponentFactory(IgxPieChartComponent);
334
- componentRef = viewContainerRef.createComponent(componentFactory);
332
+ if (type === CHART_TYPE.Pie) {
333
+ componentRef = viewContainerRef.createComponent(IgxPieChartComponent);
335
334
  }
336
335
  else {
337
- componentFactory = this.factoryResolver.resolveComponentFactory(IgxDataChartComponent);
338
- componentRef = viewContainerRef.createComponent(componentFactory);
336
+ componentRef = viewContainerRef.createComponent(IgxDataChartComponent);
339
337
  }
340
338
  if (this.useLegend) {
341
- const legendType = type === CHART_TYPE.PIE ? IgxItemLegendComponent : IgxLegendComponent;
342
- const legendFactory = this.factoryResolver.resolveComponentFactory(legendType);
343
- const legendComponentRef = viewContainerRef.createComponent(legendFactory);
339
+ const legendType = type === CHART_TYPE.Pie ? IgxItemLegendComponent : IgxLegendComponent;
340
+ const legendComponentRef = viewContainerRef.createComponent(legendType);
344
341
  options.chartOptions['legend'] = legendComponentRef.instance;
345
342
  }
346
343
  chart = initializer.initChart(componentRef.instance, options);
@@ -348,7 +345,7 @@ class IgxChartIntegrationDirective {
348
345
  else if (createdChart) {
349
346
  chart = initializer.initChart(createdChart, options);
350
347
  }
351
- this.onChartCreationDone.emit(chart);
348
+ this.chartCreationDone.emit(chart);
352
349
  return chart;
353
350
  }
354
351
  getInitializer(chartType, componentClassRef) {
@@ -364,22 +361,25 @@ class IgxChartIntegrationDirective {
364
361
  }
365
362
  getChartOptions(type) {
366
363
  const chartComponentOptions = {};
367
- return type === CHART_TYPE.PIE ? this.addPieChartDataOptions(chartComponentOptions) :
364
+ return type === CHART_TYPE.Pie ? this.addPieChartDataOptions(chartComponentOptions) :
368
365
  this.addDataChartDataOptions(type, chartComponentOptions, type.includes('Stacked'));
369
366
  }
370
367
  addPieChartDataOptions(chartComponentOptions) {
371
- // tslint:disable-next-line: max-line-length
372
- chartComponentOptions.chartOptions = Object.assign(this.pieChartOptions, this.customChartComponentOptions.get(CHART_TYPE.PIE).chartOptions);
368
+ const customPieOptions = this.customChartComponentOptions.get(CHART_TYPE.Pie) || {};
369
+ const customPieChartOptions = customPieOptions.chartOptions || {};
370
+ chartComponentOptions.chartOptions = { ...this.pieChartOptions, ...customPieChartOptions };
373
371
  return chartComponentOptions;
374
372
  }
375
373
  addDataChartDataOptions(type, chartComponentOptions, stacked) {
376
- chartComponentOptions.chartOptions = Object.assign(this.dataChartOptions, this.customChartComponentOptions.get(type));
374
+ const customComponentOptions = this.customChartComponentOptions.get(type) || {};
375
+ const customChartOptions = customComponentOptions.chartOptions || {};
376
+ const customSeriesModel = customComponentOptions.seriesModel || {};
377
+ chartComponentOptions.chartOptions = { ...this.dataChartOptions, ...customChartOptions };
377
378
  if (type.indexOf('Scatter') !== -1) {
378
379
  this.addScatterChartDataOptions(type, chartComponentOptions);
379
380
  }
380
381
  else {
381
- // tslint:disable-next-line: max-line-length
382
- chartComponentOptions.seriesModel = Object.assign(this.dataChartSeriesOptionsModel, this.customChartComponentOptions.get(type).seriesModel);
382
+ chartComponentOptions.seriesModel = { ...this.dataChartSeriesOptionsModel, ...customSeriesModel };
383
383
  this.setAxisLabelOption(type, chartComponentOptions);
384
384
  const options = [];
385
385
  this._valueMemberPaths.forEach(valueMemberPath => {
@@ -394,16 +394,21 @@ class IgxChartIntegrationDirective {
394
394
  options.push({ ...dataOptions, ...chartComponentOptions.seriesModel });
395
395
  }
396
396
  });
397
- stacked ? chartComponentOptions.stackedFragmentOptions = options :
397
+ if (stacked) {
398
+ chartComponentOptions.stackedFragmentOptions = options;
399
+ }
400
+ else {
398
401
  chartComponentOptions.seriesOptions = options;
402
+ }
399
403
  }
400
404
  return chartComponentOptions;
401
405
  }
402
406
  addScatterChartDataOptions(scatterChart, chartComponentOptions) {
403
- // tslint:disable-next-line: max-line-length
404
- chartComponentOptions.seriesModel = Object.assign(this.scatterChartSeriesOptionsModel, this.customChartComponentOptions.get(scatterChart).seriesModel);
407
+ const scatterCustomOptions = this.customChartComponentOptions.get(scatterChart) || {};
408
+ const scatterCustomSeriesModel = scatterCustomOptions.seriesModel || {};
409
+ chartComponentOptions.seriesModel = { ...this.scatterChartSeriesOptionsModel, ...scatterCustomSeriesModel };
405
410
  chartComponentOptions.seriesModel['yMemberPath'] = this.scatterChartYAxisValueMemberPath;
406
- if (scatterChart === CHART_TYPE.SCATTER_BUBBLE) {
411
+ if (scatterChart === CHART_TYPE.ScatterBubble) {
407
412
  chartComponentOptions.seriesModel = Object.assign(chartComponentOptions.seriesModel, this.bubbleChartSeriesOptionsModel);
408
413
  chartComponentOptions.seriesModel['radiusMemberPath'] = this.bubbleChartRadiusMemberPath;
409
414
  }
@@ -421,11 +426,11 @@ class IgxChartIntegrationDirective {
421
426
  chartComponentOptions.xAxisOptions = Object.assign({
422
427
  labelExtent: NaN,
423
428
  labelTextColor: null,
424
- });
429
+ }, scatterCustomOptions.xAxisOptions);
425
430
  chartComponentOptions.yAxisOptions = Object.assign({
426
431
  labelTextColor: null,
427
432
  labelExtent: NaN,
428
- });
433
+ }, scatterCustomOptions.yAxisOptions);
429
434
  chartComponentOptions.seriesOptions = seriesOptions;
430
435
  }
431
436
  addIndexMemberPath(dataRecord, index) {
@@ -433,27 +438,28 @@ class IgxChartIntegrationDirective {
433
438
  return dataRecord;
434
439
  }
435
440
  setAxisLabelOption(type, options) {
441
+ const customOptions = this.customChartComponentOptions.get(type) || {};
436
442
  if (type.indexOf('Bar') !== -1) {
437
443
  options.yAxisOptions = Object.assign({
438
444
  label: this._labelMemberPath,
439
445
  labelTextColor: null,
440
446
  labelExtent: NaN,
441
- }, this.customChartComponentOptions.get(type).yAxisOptions);
447
+ }, customOptions.yAxisOptions);
442
448
  options.xAxisOptions = Object.assign({
443
449
  labelTextColor: null,
444
450
  labelExtent: NaN,
445
- });
451
+ }, customOptions.xAxisOptions);
446
452
  }
447
453
  else {
448
454
  options.xAxisOptions = Object.assign({
449
455
  label: this._labelMemberPath,
450
456
  labelTextColor: null,
451
457
  labelExtent: NaN,
452
- }, this.customChartComponentOptions.get(type).xAxisOptions);
458
+ }, customOptions.xAxisOptions);
453
459
  options.yAxisOptions = Object.assign({
454
460
  labelTextColor: null,
455
461
  labelExtent: NaN,
456
- });
462
+ }, customOptions.yAxisOptions);
457
463
  }
458
464
  }
459
465
  setChartComponentOptions(chart, optionsType, options) {
@@ -464,19 +470,19 @@ class IgxChartIntegrationDirective {
464
470
  this.customChartComponentOptions.get(chart)[optionsType][property] = options[property];
465
471
  });
466
472
  }
467
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxChartIntegrationDirective, deps: [{ token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); }
468
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: IgxChartIntegrationDirective, isStandalone: true, selector: "[igxChartIntegration]", inputs: { chartData: "chartData", useLegend: "useLegend", defaultLabelMemberPath: "defaultLabelMemberPath", scatterChartYAxisValueMemberPath: "scatterChartYAxisValueMemberPath", bubbleChartRadiusMemberPath: "bubbleChartRadiusMemberPath" }, outputs: { onChartTypesDetermined: "onChartTypesDetermined", onChartCreationDone: "onChartCreationDone" }, ngImport: i0 }); }
473
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxChartIntegrationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
474
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: IgxChartIntegrationDirective, isStandalone: true, selector: "[igxChartIntegration]", inputs: { chartData: "chartData", useLegend: "useLegend", defaultLabelMemberPath: "defaultLabelMemberPath", scatterChartYAxisValueMemberPath: "scatterChartYAxisValueMemberPath", bubbleChartRadiusMemberPath: "bubbleChartRadiusMemberPath" }, outputs: { chartTypesDetermined: "chartTypesDetermined", chartCreationDone: "chartCreationDone" }, ngImport: i0 }); }
469
475
  }
470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxChartIntegrationDirective, decorators: [{
476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxChartIntegrationDirective, decorators: [{
471
477
  type: Directive,
472
478
  args: [{
473
479
  selector: '[igxChartIntegration]',
474
480
  }]
475
- }], ctorParameters: () => [{ type: i0.ComponentFactoryResolver }], propDecorators: { chartData: [{
481
+ }], ctorParameters: () => [], propDecorators: { chartData: [{
476
482
  type: Input
477
- }], onChartTypesDetermined: [{
483
+ }], chartTypesDetermined: [{
478
484
  type: Output
479
- }], onChartCreationDone: [{
485
+ }], chartCreationDone: [{
480
486
  type: Output
481
487
  }], useLegend: [{
482
488
  type: Input
@@ -490,13 +496,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
490
496
 
491
497
  var ConditionalFormattingType;
492
498
  (function (ConditionalFormattingType) {
493
- ConditionalFormattingType["dataBars"] = "Data Bars";
494
- ConditionalFormattingType["colorScale"] = "Color Scale";
495
- ConditionalFormattingType["top10"] = "Top 10";
496
- ConditionalFormattingType["textContains"] = "Text Contains";
497
- ConditionalFormattingType["single"] = "Duplicate Values";
498
- ConditionalFormattingType["unique"] = "Unique Values";
499
- ConditionalFormattingType["empty"] = "Empty";
499
+ ConditionalFormattingType["DataBars"] = "Data Bars";
500
+ ConditionalFormattingType["ColorScale"] = "Color Scale";
501
+ ConditionalFormattingType["Top10"] = "Top 10";
502
+ ConditionalFormattingType["TextContains"] = "Text Contains";
503
+ ConditionalFormattingType["Single"] = "Duplicate Values";
504
+ ConditionalFormattingType["Unique"] = "Unique Values";
505
+ ConditionalFormattingType["Empty"] = "Empty";
500
506
  })(ConditionalFormattingType || (ConditionalFormattingType = {}));
501
507
  class IgxConditionalFormattingDirective {
502
508
  set formatColors(val) {
@@ -516,11 +522,10 @@ class IgxConditionalFormattingDirective {
516
522
  get numericData() {
517
523
  return this.selectedData.filter(val => typeof val === 'number');
518
524
  }
519
- constructor(grid) {
520
- this.grid = grid;
521
- this.onFormattersReady = new EventEmitter();
525
+ constructor() {
526
+ this.formattersReady = new EventEmitter();
522
527
  this.colorScale = {
523
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
528
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
524
529
  if (!(typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname))) {
525
530
  return;
526
531
  }
@@ -529,7 +534,7 @@ class IgxConditionalFormattingDirective {
529
534
  }
530
535
  };
531
536
  this.dataBars = {
532
- backgroundImage: (rowData, colname, cellValue, rowIndex) => {
537
+ backgroundImage: (_rowData, colname, cellValue, rowIndex) => {
533
538
  if (!(typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname))) {
534
539
  return;
535
540
  }
@@ -538,14 +543,14 @@ class IgxConditionalFormattingDirective {
538
543
  if (cellValue < 0) {
539
544
  const negativeStartingPoint = 100 - treshold;
540
545
  gradientPercents = this.getNegativePercentage(cellValue);
541
- return `linear-gradient(to left, transparent 0% ${negativeStartingPoint}%,
542
- ${this.formatColors.error} ${negativeStartingPoint}% ${negativeStartingPoint + gradientPercents}%,
546
+ return `linear-gradient(to left, transparent 0% ${negativeStartingPoint}%,
547
+ ${this.formatColors.error} ${negativeStartingPoint}% ${negativeStartingPoint + gradientPercents}%,
543
548
  transparent ${gradientPercents}% 100%)`;
544
549
  }
545
550
  else {
546
551
  gradientPercents = this.getPositivePercentage(cellValue);
547
- return `linear-gradient(to right, transparent 0% ${treshold}%,
548
- ${this.formatColors.success} ${treshold}% ${treshold + gradientPercents}%,
552
+ return `linear-gradient(to right, transparent 0% ${treshold}%,
553
+ ${this.formatColors.success} ${treshold}% ${treshold + gradientPercents}%,
549
554
  transparent ${treshold + gradientPercents}% 100%)`;
550
555
  }
551
556
  },
@@ -554,13 +559,13 @@ class IgxConditionalFormattingDirective {
554
559
  backgroundPositionY: 'center'
555
560
  };
556
561
  this.top10Percent = {
557
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
562
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
558
563
  if (typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname)
559
564
  && cellValue > this.top10PercentTreshold) {
560
565
  return this.formatColors.info;
561
566
  }
562
567
  },
563
- color: (rowData, colname, cellValue, rowIndex) => {
568
+ color: (_rowData, colname, cellValue, rowIndex) => {
564
569
  if (typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname)
565
570
  && cellValue > this.top10PercentTreshold) {
566
571
  return this.formatColors.text;
@@ -568,13 +573,13 @@ class IgxConditionalFormattingDirective {
568
573
  }
569
574
  };
570
575
  this.greaterThan = {
571
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
576
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
572
577
  if (typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname)
573
578
  && cellValue > this.avgValue) {
574
579
  return this.formatColors.info;
575
580
  }
576
581
  },
577
- color: (rowData, colname, cellValue, rowIndex) => {
582
+ color: (_rowData, colname, cellValue, rowIndex) => {
578
583
  if (typeof cellValue === 'number' && this.isWithInFormattedRange(rowIndex, colname)
579
584
  && cellValue > this.avgValue) {
580
585
  return this.formatColors.text;
@@ -582,26 +587,26 @@ class IgxConditionalFormattingDirective {
582
587
  }
583
588
  };
584
589
  this.empty = {
585
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
590
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
586
591
  if (this.isWithInFormattedRange(rowIndex, colname) && cellValue === undefined) {
587
592
  return this.formatColors.info;
588
593
  }
589
594
  },
590
- color: (rowData, colname, cellValue, rowIndex) => {
595
+ color: (_rowData, colname, cellValue, rowIndex) => {
591
596
  if (this.isWithInFormattedRange(rowIndex, colname) && cellValue === undefined) {
592
597
  return this.formatColors.text;
593
598
  }
594
599
  }
595
600
  };
596
601
  this.duplicates = {
597
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
602
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
598
603
  if (!this.isWithInFormattedRange(rowIndex, colname)) {
599
604
  return;
600
605
  }
601
606
  const arr = typeof cellValue === 'number' ? this.numericData : this.textData;
602
607
  return arr.indexOf(cellValue) !== arr.lastIndexOf(cellValue) ? this.formatColors.info : '';
603
608
  },
604
- color: (rowData, colname, cellValue, rowIndex) => {
609
+ color: (_rowData, colname, cellValue, rowIndex) => {
605
610
  if (!this.isWithInFormattedRange(rowIndex, colname)) {
606
611
  return;
607
612
  }
@@ -610,13 +615,13 @@ class IgxConditionalFormattingDirective {
610
615
  }
611
616
  };
612
617
  this.textContains = {
613
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
618
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
614
619
  if (typeof cellValue === 'string' && this.isWithInFormattedRange(rowIndex, colname) &&
615
620
  cellValue.toLowerCase().indexOf(this._valueForComparison.toLowerCase()) !== -1) {
616
621
  return this.formatColors.info;
617
622
  }
618
623
  },
619
- color: (rowData, colname, cellValue, rowIndex) => {
624
+ color: (_rowData, colname, cellValue, rowIndex) => {
620
625
  if (typeof cellValue === 'string' && this.isWithInFormattedRange(rowIndex, colname) &&
621
626
  cellValue.toLowerCase().indexOf(this._valueForComparison.toLowerCase()) !== -1) {
622
627
  return this.formatColors.text;
@@ -624,14 +629,14 @@ class IgxConditionalFormattingDirective {
624
629
  }
625
630
  };
626
631
  this.uniques = {
627
- backgroundColor: (rowData, colname, cellValue, rowIndex) => {
632
+ backgroundColor: (_rowData, colname, cellValue, rowIndex) => {
628
633
  if (!this.isWithInFormattedRange(rowIndex, colname)) {
629
634
  return;
630
635
  }
631
636
  const arr = typeof cellValue === 'number' ? this.numericData : this.textData;
632
637
  return arr.indexOf(cellValue) === arr.lastIndexOf(cellValue) ? this.formatColors.info : '';
633
638
  },
634
- color: (rowData, colname, cellValue, rowIndex) => {
639
+ color: (_rowData, colname, cellValue, rowIndex) => {
635
640
  if (!this.isWithInFormattedRange(rowIndex, colname)) {
636
641
  return;
637
642
  }
@@ -653,6 +658,7 @@ class IgxConditionalFormattingDirective {
653
658
  this._formattersData = new Map();
654
659
  this.destroy$ = new Subject();
655
660
  this.formatedRange = new Map();
661
+ this.grid = inject(IgxGridComponent);
656
662
  this._formattersData.set('Data Bars', this.dataBars);
657
663
  this._formattersData.set('Color Scale', this.colorScale);
658
664
  this._formattersData.set('Top 10', this.top10Percent);
@@ -691,19 +697,23 @@ class IgxConditionalFormattingDirective {
691
697
  }
692
698
  this.clearFormatting();
693
699
  this.formatter = formatterName;
700
+ let hasUpdatedColumn = false;
694
701
  this.grid.visibleColumns.forEach(c => {
695
702
  if (c.visibleIndex >= this._startColumn && c.visibleIndex <= this._endColumn) {
696
703
  c.cellStyles = this._formattersData.get(this.formatter);
697
- this.grid.notifyChanges();
704
+ hasUpdatedColumn = true;
698
705
  }
699
706
  });
707
+ if (hasUpdatedColumn) {
708
+ this.grid.notifyChanges();
709
+ }
700
710
  }
701
711
  clearFormatting() {
702
712
  this.formatter = undefined;
703
713
  this.grid.visibleColumns.forEach(c => {
704
714
  c.cellStyles = undefined;
705
- this.grid.cdr.detectChanges();
706
715
  });
716
+ this.grid.cdr.detectChanges();
707
717
  }
708
718
  determineFormatters(fromColumn) {
709
719
  const data = fromColumn ? this.grid.getSelectedColumnsData() : this.grid.getSelectedData();
@@ -719,7 +729,7 @@ class IgxConditionalFormattingDirective {
719
729
  else {
720
730
  formatters.splice(0, 0, ...['Data Bars', 'Color Scale', 'Text Contains']);
721
731
  }
722
- this.onFormattersReady.emit(formatters);
732
+ this.formattersReady.emit(formatters);
723
733
  }
724
734
  recalcCachedValues(clearAll = false) {
725
735
  if (clearAll) {
@@ -754,9 +764,15 @@ class IgxConditionalFormattingDirective {
754
764
  }
755
765
  return this.formatedRange.has(rowIndex) && this.formatedRange.get(rowIndex).has(visibleIndex);
756
766
  }
757
- get middleTresholdValue() { return 0.66 * Math.ceil(this._maxValue); }
758
- get lowTresholdValue() { return 0.33 * Math.ceil(this._maxValue); }
759
- get top10PercentTreshold() { return 0.9 * Math.ceil(this._maxValue); }
767
+ get middleTresholdValue() {
768
+ return 0.66 * Math.ceil(this._maxValue);
769
+ }
770
+ get lowTresholdValue() {
771
+ return 0.33 * Math.ceil(this._maxValue);
772
+ }
773
+ get top10PercentTreshold() {
774
+ return 0.9 * Math.ceil(this._maxValue);
775
+ }
760
776
  get avgValue() {
761
777
  return Math.ceil((this.numericData.reduce((a, b) => a + b, 0)) / this.numericData.length);
762
778
  }
@@ -798,437 +814,441 @@ class IgxConditionalFormattingDirective {
798
814
  });
799
815
  this.recalcCachedValues(true);
800
816
  }
801
- addToCache(rowIndex, colIndex, selection = true) {
802
- this.formatedRange.has(rowIndex) ? this.formatedRange.get(rowIndex).add(colIndex) :
817
+ addToCache(rowIndex, colIndex) {
818
+ if (this.formatedRange.has(rowIndex)) {
819
+ this.formatedRange.get(rowIndex).add(colIndex);
820
+ }
821
+ else {
803
822
  this.formatedRange.set(rowIndex, new Set()).get(rowIndex).add(colIndex);
823
+ }
804
824
  }
805
825
  toArray(data) {
806
826
  let result = [];
807
827
  data.forEach(rec => result = result.concat(Object.values(rec)));
808
828
  return result;
809
829
  }
810
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxConditionalFormattingDirective, deps: [{ token: i1.IgxGridComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
811
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: IgxConditionalFormattingDirective, isStandalone: true, selector: "[igxConditionalFormatting]", inputs: { formatter: "formatter", formatColors: "formatColors" }, outputs: { onFormattersReady: "onFormattersReady" }, ngImport: i0 }); }
830
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxConditionalFormattingDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
831
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: IgxConditionalFormattingDirective, isStandalone: true, selector: "[igxConditionalFormatting]", inputs: { formatter: "formatter", formatColors: "formatColors" }, outputs: { formattersReady: "formattersReady" }, ngImport: i0 }); }
812
832
  }
813
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxConditionalFormattingDirective, decorators: [{
833
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxConditionalFormattingDirective, decorators: [{
814
834
  type: Directive,
815
835
  args: [{
816
836
  selector: '[igxConditionalFormatting]',
817
837
  }]
818
- }], ctorParameters: () => [{ type: i1.IgxGridComponent }], propDecorators: { formatter: [{
838
+ }], ctorParameters: () => [], propDecorators: { formatter: [{
819
839
  type: Input
820
840
  }], formatColors: [{
821
841
  type: Input
822
- }], onFormattersReady: [{
842
+ }], formattersReady: [{
823
843
  type: Output
824
844
  }] } });
825
845
 
826
846
  // tslint:disable: max-line-length
827
- const Area100Stacked = `
828
- <svg id="Layer_1" data-name="Layer 1"
829
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
830
- <defs>
831
- <style>.cls-Area100Stacked-1{fill:#ab4191;}.cls-Area100Stacked-2{fill:#f05951;}.cls-Area100Stacked-2,.cls-Area100Stacked-3,.cls-Area100Stacked-4{fill-rule:evenodd;}.cls-Area100Stacked-3{fill:#fa8d3d;}.cls-Area100Stacked-4{fill:#0f6860;}</style>
832
- </defs>
833
- <rect class="cls-Area100Stacked-1" width="96" height="95.7"/>
834
- <polygon class="cls-Area100Stacked-2" points="0 11.1 3.78 11.99 11.33 25.27 20.15 13.04 30.53 15.31 43.12 26.54 50.13 28.07 65.78 24.5 72.08 16.84 82.15 17.61 88.45 11.99 91.91 9.57 96 6.13 96 95.7 0 95.7 0 11.1"/>
835
- <path class="cls-Area100Stacked-3" d="M0,54V95.7H96V18.37l-3.79,6.51-3.79,18-3.16,6.51-5.68,3.06-2.84,3.45s-3.42,6-3.48,6.12-7.58,4.6-7.58,4.6L60,67l-2.21.77-7.9-4.6-3.78,1.15-7.58-3.44L34.42,62.4l-3.79-1.15-4.1,3.44-3.48-.76L15.16,53.21,7.26,54,3.47,49Z"/>
836
- <polygon class="cls-Area100Stacked-4" points="0 78.75 4.72 77.11 7.87 78.2 15.42 76.56 19.52 80.39 26.44 83.67 36.2 83.67 45.33 85.31 50.05 78.75 58.23 84.22 68.3 85.86 87.82 90.23 96 83.12 96 95.7 0 95.7 0 78.75"/>
837
- </svg>
847
+ const Area100Stacked = `
848
+ <svg id="Layer_1" data-name="Layer 1"
849
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
850
+ <defs>
851
+ <style>.cls-Area100Stacked-1{fill:#ab4191;}.cls-Area100Stacked-2{fill:#f05951;}.cls-Area100Stacked-2,.cls-Area100Stacked-3,.cls-Area100Stacked-4{fill-rule:evenodd;}.cls-Area100Stacked-3{fill:#fa8d3d;}.cls-Area100Stacked-4{fill:#0f6860;}</style>
852
+ </defs>
853
+ <rect class="cls-Area100Stacked-1" width="96" height="95.7"/>
854
+ <polygon class="cls-Area100Stacked-2" points="0 11.1 3.78 11.99 11.33 25.27 20.15 13.04 30.53 15.31 43.12 26.54 50.13 28.07 65.78 24.5 72.08 16.84 82.15 17.61 88.45 11.99 91.91 9.57 96 6.13 96 95.7 0 95.7 0 11.1"/>
855
+ <path class="cls-Area100Stacked-3" d="M0,54V95.7H96V18.37l-3.79,6.51-3.79,18-3.16,6.51-5.68,3.06-2.84,3.45s-3.42,6-3.48,6.12-7.58,4.6-7.58,4.6L60,67l-2.21.77-7.9-4.6-3.78,1.15-7.58-3.44L34.42,62.4l-3.79-1.15-4.1,3.44-3.48-.76L15.16,53.21,7.26,54,3.47,49Z"/>
856
+ <polygon class="cls-Area100Stacked-4" points="0 78.75 4.72 77.11 7.87 78.2 15.42 76.56 19.52 80.39 26.44 83.67 36.2 83.67 45.33 85.31 50.05 78.75 58.23 84.22 68.3 85.86 87.82 90.23 96 83.12 96 95.7 0 95.7 0 78.75"/>
857
+ </svg>
838
858
  `;
839
- const AreaGrouped = `
840
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
841
- <defs>
842
- <style>.cls-AreaGrouped-1{fill:#ab4191;}.cls-AreaGrouped-1,.cls-AreaGrouped-2,.cls-AreaGrouped-3,.cls-AreaGrouped-4{fill-rule:evenodd;}.cls-AreaGrouped-2{fill:#f05951;}.cls-AreaGrouped-3{fill:#fa8d3d;}.cls-AreaGrouped-4{fill:#0f6860;}</style>
843
- </defs>
844
- <g id="ChartNames">
845
- <polygon class="cls-AreaGrouped-1" points="96 69.18 96 13.76 80.22 37.03 64.11 42.35 48.34 63.44 32.56 72.38 16.45 70.78 0 86.13 0 96 96 96 96 69.18"/>
846
- <polygon class="cls-AreaGrouped-2" points="96 84.43 96 38.72 80.22 48.72 64.11 72.86 48.34 72.62 32.56 81.54 16.78 79.11 0 90.25 0 96 96 96 96 84.43"/>
847
- <path class="cls-AreaGrouped-3" d="M96,91V62.08L80.22,66.71l-16.11,15-15.77.9L32.56,88s-16.12-.84-16.11-.76S0,92.65,0,92.65V96H96Z"/>
848
- <polygon class="cls-AreaGrouped-4" points="96 93.77 96 77.49 80.22 81.31 64.11 91.54 48.34 93.13 32.56 94.09 0 95.37 0 96 96 96 96 93.77"/>
849
- </g>
850
- </svg>
859
+ const AreaGrouped = `
860
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
861
+ <defs>
862
+ <style>.cls-AreaGrouped-1{fill:#ab4191;}.cls-AreaGrouped-1,.cls-AreaGrouped-2,.cls-AreaGrouped-3,.cls-AreaGrouped-4{fill-rule:evenodd;}.cls-AreaGrouped-2{fill:#f05951;}.cls-AreaGrouped-3{fill:#fa8d3d;}.cls-AreaGrouped-4{fill:#0f6860;}</style>
863
+ </defs>
864
+ <g id="ChartNames">
865
+ <polygon class="cls-AreaGrouped-1" points="96 69.18 96 13.76 80.22 37.03 64.11 42.35 48.34 63.44 32.56 72.38 16.45 70.78 0 86.13 0 96 96 96 96 69.18"/>
866
+ <polygon class="cls-AreaGrouped-2" points="96 84.43 96 38.72 80.22 48.72 64.11 72.86 48.34 72.62 32.56 81.54 16.78 79.11 0 90.25 0 96 96 96 96 84.43"/>
867
+ <path class="cls-AreaGrouped-3" d="M96,91V62.08L80.22,66.71l-16.11,15-15.77.9L32.56,88s-16.12-.84-16.11-.76S0,92.65,0,92.65V96H96Z"/>
868
+ <polygon class="cls-AreaGrouped-4" points="96 93.77 96 77.49 80.22 81.31 64.11 91.54 48.34 93.13 32.56 94.09 0 95.37 0 96 96 96 96 93.77"/>
869
+ </g>
870
+ </svg>
851
871
  `;
852
- const AreaStacked = `
853
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
854
- <defs>
855
- <style>.cls-AreaStacked-1{fill:#ab4191;}.cls-AreaStacked-1,.cls-AreaStacked-2,.cls-AreaStacked-3,.cls-AreaStacked-4{fill-rule:evenodd;}.cls-AreaStacked-2{fill:#f05951;}.cls-AreaStacked-3{fill:#fa8d3d;}.cls-AreaStacked-4{fill:#0f6860;}</style>
856
- </defs>
857
- <g id="ChartNames">
858
- <path class="cls-AreaStacked-1" d="M0,17.24,3.73,4.7l7.56,19.2,4.09-.78,7.87,11.75,3.46,1.57,3.78-3.13,4.41,2,3.46-2.75,4.72,2.35L45.91,38s4-.26,4.09-.39,7.45,4.57,7.56,4.7a35.11,35.11,0,0,0,3.77-1.57h4.41L72,43.49,82.11,28.21,88.4,10.32,91.86,0,96,12.15V96H0Z"/>
859
- <path class="cls-AreaStacked-2" d="M0,53.29V96H96V16.85l-3.79,6.66L88.38,41.93l-3.16,6.66-5.68,3.13-2.85,3.53s-3.42,6.14-3.47,6.27-7.58,4.7-7.58,4.7L60,66.61l-2.21.79-7.9-4.71-3.79,1.18-7.58-3.53-4.1,1.57-3.79-1.18-4.11,3.53L23,63.48l-7.89-11-7.9.78L3.43,48.2Z"/>
860
- <polygon class="cls-AreaStacked-3" points="0.14 78.65 4.85 76.97 7.99 78.09 15.54 76.41 19.62 80.33 26.53 83.69 36.27 83.69 45.38 85.37 50.09 78.65 58.26 84.25 68.31 85.93 87.79 90.4 95.96 83.12 95.96 96 0.14 96 0.14 78.65"/>
861
- <polygon class="cls-AreaStacked-4" points="0.14 96 95.96 96 95.96 74.45 92.19 79.15 80.56 83.07 69.25 91.3 58.57 91.69 54.17 92.08 49.78 90.12 45.38 91.3 38.47 91.3 28.73 91.69 23.7 91.3 18.99 92.86 13.96 92.08 0.14 93.65 0.14 96"/>
862
- </g>
863
- </svg>
872
+ const AreaStacked = `
873
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
874
+ <defs>
875
+ <style>.cls-AreaStacked-1{fill:#ab4191;}.cls-AreaStacked-1,.cls-AreaStacked-2,.cls-AreaStacked-3,.cls-AreaStacked-4{fill-rule:evenodd;}.cls-AreaStacked-2{fill:#f05951;}.cls-AreaStacked-3{fill:#fa8d3d;}.cls-AreaStacked-4{fill:#0f6860;}</style>
876
+ </defs>
877
+ <g id="ChartNames">
878
+ <path class="cls-AreaStacked-1" d="M0,17.24,3.73,4.7l7.56,19.2,4.09-.78,7.87,11.75,3.46,1.57,3.78-3.13,4.41,2,3.46-2.75,4.72,2.35L45.91,38s4-.26,4.09-.39,7.45,4.57,7.56,4.7a35.11,35.11,0,0,0,3.77-1.57h4.41L72,43.49,82.11,28.21,88.4,10.32,91.86,0,96,12.15V96H0Z"/>
879
+ <path class="cls-AreaStacked-2" d="M0,53.29V96H96V16.85l-3.79,6.66L88.38,41.93l-3.16,6.66-5.68,3.13-2.85,3.53s-3.42,6.14-3.47,6.27-7.58,4.7-7.58,4.7L60,66.61l-2.21.79-7.9-4.71-3.79,1.18-7.58-3.53-4.1,1.57-3.79-1.18-4.11,3.53L23,63.48l-7.89-11-7.9.78L3.43,48.2Z"/>
880
+ <polygon class="cls-AreaStacked-3" points="0.14 78.65 4.85 76.97 7.99 78.09 15.54 76.41 19.62 80.33 26.53 83.69 36.27 83.69 45.38 85.37 50.09 78.65 58.26 84.25 68.31 85.93 87.79 90.4 95.96 83.12 95.96 96 0.14 96 0.14 78.65"/>
881
+ <polygon class="cls-AreaStacked-4" points="0.14 96 95.96 96 95.96 74.45 92.19 79.15 80.56 83.07 69.25 91.3 58.57 91.69 54.17 92.08 49.78 90.12 45.38 91.3 38.47 91.3 28.73 91.69 23.7 91.3 18.99 92.86 13.96 92.08 0.14 93.65 0.14 96"/>
882
+ </g>
883
+ </svg>
864
884
  `;
865
- const Bar100Stacked = `
866
- <svg id="Layer_1" data-name="Layer 1"
867
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
868
- <defs>
869
- <style>.cls-Bar100Stacked-1{fill:#ab4191;}.cls-Bar100Stacked-1,.cls-Bar100Stacked-2,.cls-Bar100Stacked-3,.cls-Bar100Stacked-4{fill-rule:evenodd;}.cls-Bar100Stacked-2{fill:#f05951;}.cls-Bar100Stacked-3{fill:#fa8d3d;}.cls-Bar100Stacked-4,.cls-Bar100Stacked-5{fill:#0f6860;}</style>
870
- </defs>
871
- <path class="cls-Bar100Stacked-1" d="M96,7.84H45.71v11.1H96Zm0,13.38H47.67V32.33H96Zm0,13.39H42.45V46H96Zm0,13.72H48.33v11.1H96Zm0,13.38H43.43V72.82H96ZM96,75.1H42.12V86.2H96Z"/>
872
- <path class="cls-Bar100Stacked-2" d="M75.76,21.22H29.71V32.33H75.76ZM66,61.71H27.1V72.82H66Zm4.24-27.1h-48V46h48ZM56.82,48.33H30v11.1H56.82ZM73.47,75.1H25.8V86.2H73.47ZM60.73,7.84h-33v11.1h33Z"/>
873
- <path class="cls-Bar100Stacked-3" d="M47.67,21.22H8.16V32.33H47.67ZM39.51,61.71H5.88V72.82H39.51Zm3.59-27.1H1.63V46H43.1ZM31.35,48.33H8.16v11.1H31.35ZM45.71,75.1H4.57V86.2H45.71ZM34.61,7.84H6.2v11.1H34.61Z"/>
874
- <path class="cls-Bar100Stacked-4" d="M14,34.61H0V46H14Zm4.25,13.72H0v11.1H18.29ZM15,75.1H0V86.2H15ZM22.2,21.22H0V32.33H22.2ZM11.43,61.71H0V72.82H11.43Z"/>
875
- <rect class="cls-Bar100Stacked-5" y="7.84" width="10.78" height="11.1"/>
876
- </svg>
885
+ const Bar100Stacked = `
886
+ <svg id="Layer_1" data-name="Layer 1"
887
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
888
+ <defs>
889
+ <style>.cls-Bar100Stacked-1{fill:#ab4191;}.cls-Bar100Stacked-1,.cls-Bar100Stacked-2,.cls-Bar100Stacked-3,.cls-Bar100Stacked-4{fill-rule:evenodd;}.cls-Bar100Stacked-2{fill:#f05951;}.cls-Bar100Stacked-3{fill:#fa8d3d;}.cls-Bar100Stacked-4,.cls-Bar100Stacked-5{fill:#0f6860;}</style>
890
+ </defs>
891
+ <path class="cls-Bar100Stacked-1" d="M96,7.84H45.71v11.1H96Zm0,13.38H47.67V32.33H96Zm0,13.39H42.45V46H96Zm0,13.72H48.33v11.1H96Zm0,13.38H43.43V72.82H96ZM96,75.1H42.12V86.2H96Z"/>
892
+ <path class="cls-Bar100Stacked-2" d="M75.76,21.22H29.71V32.33H75.76ZM66,61.71H27.1V72.82H66Zm4.24-27.1h-48V46h48ZM56.82,48.33H30v11.1H56.82ZM73.47,75.1H25.8V86.2H73.47ZM60.73,7.84h-33v11.1h33Z"/>
893
+ <path class="cls-Bar100Stacked-3" d="M47.67,21.22H8.16V32.33H47.67ZM39.51,61.71H5.88V72.82H39.51Zm3.59-27.1H1.63V46H43.1ZM31.35,48.33H8.16v11.1H31.35ZM45.71,75.1H4.57V86.2H45.71ZM34.61,7.84H6.2v11.1H34.61Z"/>
894
+ <path class="cls-Bar100Stacked-4" d="M14,34.61H0V46H14Zm4.25,13.72H0v11.1H18.29ZM15,75.1H0V86.2H15ZM22.2,21.22H0V32.33H22.2ZM11.43,61.71H0V72.82H11.43Z"/>
895
+ <rect class="cls-Bar100Stacked-5" y="7.84" width="10.78" height="11.1"/>
896
+ </svg>
877
897
  `;
878
- const BarGrouped = `
879
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
880
- <defs>
881
- <style>.cls-BarGrouped-1{fill:#f05951;}.cls-BarGrouped-2{fill:#ab4191;}.cls-BarGrouped-3{fill:#0f6860;}.cls-BarGrouped-4{fill:#fa8d3d;}</style>
882
- </defs>
883
- <g id="ChartNames">
884
- <rect class="cls-BarGrouped-1" y="77.13" width="21.19" height="6.29"/>
885
- <rect class="cls-BarGrouped-1" y="49.66" width="48.99" height="6.29"/>
886
- <rect class="cls-BarGrouped-1" y="22.18" width="72.5" height="6.29"/>
887
- <rect class="cls-BarGrouped-2" y="70.84" width="81.43" height="6.29"/>
888
- <rect class="cls-BarGrouped-3" y="89.71" width="60.25" height="6.29"/>
889
- <rect class="cls-BarGrouped-2" y="43.37" width="96" height="6.29"/>
890
- <rect class="cls-BarGrouped-3" y="62.23" width="33.43" height="6.29"/>
891
- <rect class="cls-BarGrouped-2" y="15.89" width="55.61" height="6.29"/>
892
- <rect class="cls-BarGrouped-3" y="34.76" width="45.35" height="6.29"/>
893
- <rect class="cls-BarGrouped-4" y="83.42" width="89.38" height="6.29"/>
894
- <rect class="cls-BarGrouped-4" y="55.94" width="70.84" height="6.29"/>
895
- <rect class="cls-BarGrouped-4" y="28.47" width="33.43" height="6.29"/>
896
- </g>
897
- </svg>
898
+ const BarGrouped = `
899
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
900
+ <defs>
901
+ <style>.cls-BarGrouped-1{fill:#f05951;}.cls-BarGrouped-2{fill:#ab4191;}.cls-BarGrouped-3{fill:#0f6860;}.cls-BarGrouped-4{fill:#fa8d3d;}</style>
902
+ </defs>
903
+ <g id="ChartNames">
904
+ <rect class="cls-BarGrouped-1" y="77.13" width="21.19" height="6.29"/>
905
+ <rect class="cls-BarGrouped-1" y="49.66" width="48.99" height="6.29"/>
906
+ <rect class="cls-BarGrouped-1" y="22.18" width="72.5" height="6.29"/>
907
+ <rect class="cls-BarGrouped-2" y="70.84" width="81.43" height="6.29"/>
908
+ <rect class="cls-BarGrouped-3" y="89.71" width="60.25" height="6.29"/>
909
+ <rect class="cls-BarGrouped-2" y="43.37" width="96" height="6.29"/>
910
+ <rect class="cls-BarGrouped-3" y="62.23" width="33.43" height="6.29"/>
911
+ <rect class="cls-BarGrouped-2" y="15.89" width="55.61" height="6.29"/>
912
+ <rect class="cls-BarGrouped-3" y="34.76" width="45.35" height="6.29"/>
913
+ <rect class="cls-BarGrouped-4" y="83.42" width="89.38" height="6.29"/>
914
+ <rect class="cls-BarGrouped-4" y="55.94" width="70.84" height="6.29"/>
915
+ <rect class="cls-BarGrouped-4" y="28.47" width="33.43" height="6.29"/>
916
+ </g>
917
+ </svg>
898
918
  `;
899
- const BarStacked = `
900
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
901
- <defs>
902
- <style>.cls-BarStacked-1{fill:#ab4191;}.cls-BarStacked-1,.cls-BarStacked-2,.cls-BarStacked-3,.cls-BarStacked-4{fill-rule:evenodd;}.cls-BarStacked-2{fill:#f05951;}.cls-BarStacked-3{fill:#fa8d3d;}.cls-BarStacked-4{fill:#0f6860;}</style>
903
- </defs>
904
- <g id="ChartNames">
905
- <path class="cls-BarStacked-1" d="M53.9,8.85H14.58V19.66H53.9ZM86.33,22.28H21.46V33.09H86.33ZM71.26,35.71H14.91V46.85H71.26ZM53.57,49.47H11.63V60.29H53.57ZM95.84,62.91H21.46V73.72H95.84Zm-36,13.43H14.91V87.15H59.8Z"/>
906
- <path class="cls-BarStacked-2" d="M41.12,8.85H14.58V19.66H41.12ZM61.76,22.28H21.46V33.09h40.3ZM46.69,35.71H14.91V46.85H46.69ZM41.77,49.47H11.63V60.29H41.77ZM62.09,62.91H21.46V73.72H62.09ZM42.76,76.34H14.91V87.15H42.76Z"/>
907
- <path class="cls-BarStacked-3" d="M31.62,8.85h-17V19.66h17ZM45.38,22.28H21.46V33.09H45.38Zm-9.5,13.43h-21V46.85h21Zm-2.3,13.76H11.63V60.29H33.58Zm8.85,13.44h-21V73.72h21ZM31,76.34h-16V87.15H31Z"/>
908
- <path class="cls-BarStacked-4" d="M14.91,8.85H.16V19.66H14.91ZM27.36,22.28H.16V33.09h27.2ZM19.17,35.71H.16V46.85h19ZM15.56,49.47H.16V60.29h15.4ZM27.69,62.91H.16V73.72H27.69ZM16.22,76.34H.16V87.15H16.22Z"/>
909
- </g>
910
- </svg>
919
+ const BarStacked = `
920
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
921
+ <defs>
922
+ <style>.cls-BarStacked-1{fill:#ab4191;}.cls-BarStacked-1,.cls-BarStacked-2,.cls-BarStacked-3,.cls-BarStacked-4{fill-rule:evenodd;}.cls-BarStacked-2{fill:#f05951;}.cls-BarStacked-3{fill:#fa8d3d;}.cls-BarStacked-4{fill:#0f6860;}</style>
923
+ </defs>
924
+ <g id="ChartNames">
925
+ <path class="cls-BarStacked-1" d="M53.9,8.85H14.58V19.66H53.9ZM86.33,22.28H21.46V33.09H86.33ZM71.26,35.71H14.91V46.85H71.26ZM53.57,49.47H11.63V60.29H53.57ZM95.84,62.91H21.46V73.72H95.84Zm-36,13.43H14.91V87.15H59.8Z"/>
926
+ <path class="cls-BarStacked-2" d="M41.12,8.85H14.58V19.66H41.12ZM61.76,22.28H21.46V33.09h40.3ZM46.69,35.71H14.91V46.85H46.69ZM41.77,49.47H11.63V60.29H41.77ZM62.09,62.91H21.46V73.72H62.09ZM42.76,76.34H14.91V87.15H42.76Z"/>
927
+ <path class="cls-BarStacked-3" d="M31.62,8.85h-17V19.66h17ZM45.38,22.28H21.46V33.09H45.38Zm-9.5,13.43h-21V46.85h21Zm-2.3,13.76H11.63V60.29H33.58Zm8.85,13.44h-21V73.72h21ZM31,76.34h-16V87.15H31Z"/>
928
+ <path class="cls-BarStacked-4" d="M14.91,8.85H.16V19.66H14.91ZM27.36,22.28H.16V33.09h27.2ZM19.17,35.71H.16V46.85h19ZM15.56,49.47H.16V60.29h15.4ZM27.69,62.91H.16V73.72H27.69ZM16.22,76.34H.16V87.15H16.22Z"/>
929
+ </g>
930
+ </svg>
911
931
  `;
912
- const Column100Stacked = `
913
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
914
- <defs>
915
- <style>.cls-Column100Stacked-1{fill:#ab4191;}.cls-Column100Stacked-1,.cls-Column100Stacked-2,.cls-Column100Stacked-3,.cls-Column100Stacked-4{fill-rule:evenodd;}.cls-Column100Stacked-2{fill:#f05951;}.cls-Column100Stacked-3{fill:#fa8d3d;}.cls-Column100Stacked-4{fill:#0f6860;}</style>
916
- </defs>
917
- <g id="ChartNames">
918
- <path class="cls-Column100Stacked-1" d="M0,0V50.28H13.81V0ZM16.44,0V48.44H30.25V0ZM32.88,0V53.51h13.8V0ZM49.32,0V47.78h13.8V0ZM65.75,0V52.68H79.56V0ZM82.19,0V54H96V0Z"/>
919
- <path class="cls-Column100Stacked-2" d="M16.44,20.35V66.43H30.25V20.35ZM65.75,30V68.74H79.56V30ZM32.88,25.73v48h13.8v-48ZM49.32,39.17V66.05h13.8V39.17ZM82.19,22.66V70.27H96V22.66ZM0,35.33v33H13.81v-33Z"/>
920
- <path class="cls-Column100Stacked-3" d="M16.44,48.38V87.94H30.25V48.38Zm49.31,8.07V90.24H79.56V56.45ZM32.88,53V94.46h13.8V53ZM49.32,64.51V87.94h13.8V64.51ZM82.19,50.3V91.39H96V50.3ZM0,61.44V89.86H13.81V61.44Z"/>
921
- <path class="cls-Column100Stacked-4" d="M32.88,82.11V96h13.8V82.11Zm16.44-4.45V96h13.8V77.66Zm32.87,3.41V96H96V81.07ZM16.44,73.73V96H30.25V73.73ZM65.75,84.47V96H79.56V84.47ZM0,85.08V96H13.81V85.08Z"/>
922
- </g>
923
- </svg>
932
+ const Column100Stacked = `
933
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
934
+ <defs>
935
+ <style>.cls-Column100Stacked-1{fill:#ab4191;}.cls-Column100Stacked-1,.cls-Column100Stacked-2,.cls-Column100Stacked-3,.cls-Column100Stacked-4{fill-rule:evenodd;}.cls-Column100Stacked-2{fill:#f05951;}.cls-Column100Stacked-3{fill:#fa8d3d;}.cls-Column100Stacked-4{fill:#0f6860;}</style>
936
+ </defs>
937
+ <g id="ChartNames">
938
+ <path class="cls-Column100Stacked-1" d="M0,0V50.28H13.81V0ZM16.44,0V48.44H30.25V0ZM32.88,0V53.51h13.8V0ZM49.32,0V47.78h13.8V0ZM65.75,0V52.68H79.56V0ZM82.19,0V54H96V0Z"/>
939
+ <path class="cls-Column100Stacked-2" d="M16.44,20.35V66.43H30.25V20.35ZM65.75,30V68.74H79.56V30ZM32.88,25.73v48h13.8v-48ZM49.32,39.17V66.05h13.8V39.17ZM82.19,22.66V70.27H96V22.66ZM0,35.33v33H13.81v-33Z"/>
940
+ <path class="cls-Column100Stacked-3" d="M16.44,48.38V87.94H30.25V48.38Zm49.31,8.07V90.24H79.56V56.45ZM32.88,53V94.46h13.8V53ZM49.32,64.51V87.94h13.8V64.51ZM82.19,50.3V91.39H96V50.3ZM0,61.44V89.86H13.81V61.44Z"/>
941
+ <path class="cls-Column100Stacked-4" d="M32.88,82.11V96h13.8V82.11Zm16.44-4.45V96h13.8V77.66Zm32.87,3.41V96H96V81.07ZM16.44,73.73V96H30.25V73.73ZM65.75,84.47V96H79.56V84.47ZM0,85.08V96H13.81V85.08Z"/>
942
+ </g>
943
+ </svg>
924
944
  `;
925
- const ColumnGrouped = `
926
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
927
- <defs>
928
- <style>.cls-ColumnGrouped-1{fill:#fa8d3d;}.cls-ColumnGrouped-2{fill:#f05951;}.cls-ColumnGrouped-3{fill:#0f6860;}.cls-ColumnGrouped-4{fill:#ab4191;}</style>
929
- </defs>
930
- <g id="ChartNames">
931
- <rect class="cls-ColumnGrouped-1" x="14.87" y="30.42" width="7.44" height="65.58"/>
932
- <rect class="cls-ColumnGrouped-1" x="48" y="8.11" width="7.44" height="87.89"/>
933
- <rect class="cls-ColumnGrouped-1" x="81.13" y="38.2" width="7.44" height="57.8"/>
934
- <rect class="cls-ColumnGrouped-2" x="7.44" y="43.61" width="7.44" height="52.39"/>
935
- <rect class="cls-ColumnGrouped-3" x="22.31" y="52.06" width="7.44" height="43.94"/>
936
- <rect class="cls-ColumnGrouped-2" x="40.56" y="34.48" width="7.44" height="61.52"/>
937
- <rect class="cls-ColumnGrouped-3" x="55.44" y="19.27" width="7.44" height="76.73"/>
938
- <rect class="cls-ColumnGrouped-2" x="73.69" y="12.17" width="7.44" height="83.83"/>
939
- <rect class="cls-ColumnGrouped-4" y="20.28" width="7.44" height="75.72"/>
940
- <rect class="cls-ColumnGrouped-4" x="33.13" y="71.32" width="7.44" height="24.68"/>
941
- <rect class="cls-ColumnGrouped-4" x="66.25" y="51.04" width="7.44" height="44.96"/>
942
- <rect class="cls-ColumnGrouped-3" x="88.56" y="63.21" width="7.44" height="32.79"/>
943
- </g>
944
- </svg>
945
+ const ColumnGrouped = `
946
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
947
+ <defs>
948
+ <style>.cls-ColumnGrouped-1{fill:#fa8d3d;}.cls-ColumnGrouped-2{fill:#f05951;}.cls-ColumnGrouped-3{fill:#0f6860;}.cls-ColumnGrouped-4{fill:#ab4191;}</style>
949
+ </defs>
950
+ <g id="ChartNames">
951
+ <rect class="cls-ColumnGrouped-1" x="14.87" y="30.42" width="7.44" height="65.58"/>
952
+ <rect class="cls-ColumnGrouped-1" x="48" y="8.11" width="7.44" height="87.89"/>
953
+ <rect class="cls-ColumnGrouped-1" x="81.13" y="38.2" width="7.44" height="57.8"/>
954
+ <rect class="cls-ColumnGrouped-2" x="7.44" y="43.61" width="7.44" height="52.39"/>
955
+ <rect class="cls-ColumnGrouped-3" x="22.31" y="52.06" width="7.44" height="43.94"/>
956
+ <rect class="cls-ColumnGrouped-2" x="40.56" y="34.48" width="7.44" height="61.52"/>
957
+ <rect class="cls-ColumnGrouped-3" x="55.44" y="19.27" width="7.44" height="76.73"/>
958
+ <rect class="cls-ColumnGrouped-2" x="73.69" y="12.17" width="7.44" height="83.83"/>
959
+ <rect class="cls-ColumnGrouped-4" y="20.28" width="7.44" height="75.72"/>
960
+ <rect class="cls-ColumnGrouped-4" x="33.13" y="71.32" width="7.44" height="24.68"/>
961
+ <rect class="cls-ColumnGrouped-4" x="66.25" y="51.04" width="7.44" height="44.96"/>
962
+ <rect class="cls-ColumnGrouped-3" x="88.56" y="63.21" width="7.44" height="32.79"/>
963
+ </g>
964
+ </svg>
945
965
  `;
946
- const ColumnStacked = `
947
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
948
- <defs>
949
- <style>.cls-ColumnStacked-1{fill:#ab4191;}.cls-ColumnStacked-1,.cls-ColumnStacked-2,.cls-ColumnStacked-3,.cls-ColumnStacked-4{fill-rule:evenodd;}.cls-ColumnStacked-2{fill:#f05951;}.cls-ColumnStacked-3{fill:#fa8d3d;}.cls-ColumnStacked-4{fill:#0f6860;}</style>
950
- </defs>
951
- <g id="ChartNames">
952
- <path class="cls-ColumnStacked-1" d="M0,44.4V78.55H13.81V44.4ZM16.44,9.87V78.55H30.25V9.87ZM32.88,25.8V78.55h13.8V25.8Zm16.44,19V82.34h13.8V44.77ZM65.75,0V78.55H79.56V0ZM82.19,37.94V86.13H96V37.94Z"/>
953
- <path class="cls-ColumnStacked-2" d="M16.44,36.05v42.5H30.25V36.05Zm49.31-.38V78.55H79.56V35.67ZM32.88,52V78.55h13.8V52ZM49.32,57.3v25h13.8v-25Zm32.87-1.14v30H96v-30ZM0,57.68V78.55H13.81V57.68Z"/>
954
- <path class="cls-ColumnStacked-3" d="M32.88,63.37V78.55h13.8V63.37Zm16.44,2.27v16.7h13.8V65.64Zm32.87,3V86.13H96V68.68ZM16.44,53.5v25H30.25v-25Zm49.31,3v22H79.56v-22ZM0,67.54v14H13.81v-14Z"/>
955
- <path class="cls-ColumnStacked-4" d="M16.44,71.72V96H30.25V71.72Zm49.31,1.51V96H79.56V73.23ZM32.88,77V96h13.8V77Zm16.44,3.79V96h13.8V80.82Zm32.87,3V96H96V83.86ZM0,81.2V96H13.81V81.2Z"/>
956
- </g>
957
- </svg>
966
+ const ColumnStacked = `
967
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
968
+ <defs>
969
+ <style>.cls-ColumnStacked-1{fill:#ab4191;}.cls-ColumnStacked-1,.cls-ColumnStacked-2,.cls-ColumnStacked-3,.cls-ColumnStacked-4{fill-rule:evenodd;}.cls-ColumnStacked-2{fill:#f05951;}.cls-ColumnStacked-3{fill:#fa8d3d;}.cls-ColumnStacked-4{fill:#0f6860;}</style>
970
+ </defs>
971
+ <g id="ChartNames">
972
+ <path class="cls-ColumnStacked-1" d="M0,44.4V78.55H13.81V44.4ZM16.44,9.87V78.55H30.25V9.87ZM32.88,25.8V78.55h13.8V25.8Zm16.44,19V82.34h13.8V44.77ZM65.75,0V78.55H79.56V0ZM82.19,37.94V86.13H96V37.94Z"/>
973
+ <path class="cls-ColumnStacked-2" d="M16.44,36.05v42.5H30.25V36.05Zm49.31-.38V78.55H79.56V35.67ZM32.88,52V78.55h13.8V52ZM49.32,57.3v25h13.8v-25Zm32.87-1.14v30H96v-30ZM0,57.68V78.55H13.81V57.68Z"/>
974
+ <path class="cls-ColumnStacked-3" d="M32.88,63.37V78.55h13.8V63.37Zm16.44,2.27v16.7h13.8V65.64Zm32.87,3V86.13H96V68.68ZM16.44,53.5v25H30.25v-25Zm49.31,3v22H79.56v-22ZM0,67.54v14H13.81v-14Z"/>
975
+ <path class="cls-ColumnStacked-4" d="M16.44,71.72V96H30.25V71.72Zm49.31,1.51V96H79.56V73.23ZM32.88,77V96h13.8V77Zm16.44,3.79V96h13.8V80.82Zm32.87,3V96H96V83.86ZM0,81.2V96H13.81V81.2Z"/>
976
+ </g>
977
+ </svg>
958
978
  `;
959
- const Line100Stacked = `
960
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
961
- <defs>
962
- <style>.cls-Line100Stacked-1,.cls-Line100Stacked-2,.cls-Line100Stacked-3,.cls-Line100Stacked-4{fill:none;stroke-miterlimit:10;stroke-width:2px;fill-rule:evenodd;}.cls-Line100Stacked-1{stroke:#ab4191;}.cls-Line100Stacked-2{stroke:#f05951;}.cls-Line100Stacked-3{stroke:#fa8d3d;}.cls-Line100Stacked-4{stroke:#0f6860;}</style>
963
- </defs>
964
- <g id="ChartNames">
965
- <polyline class="cls-Line100Stacked-1" points="0 29.37 17.34 19.88 38.74 29.52 58.65 32.18 80.42 28.87 96 24.56"/>
966
- <polyline class="cls-Line100Stacked-2" points="0 42.5 17.34 37.81 38.37 41.12 59.02 42.11 80.42 37.81 96 41.85"/>
967
- <polyline class="cls-Line100Stacked-3" points="0 66.68 17.34 59.32 38.37 72.9 59.76 55.35 96 65.16"/>
968
- <polyline class="cls-Line100Stacked-4" points="0 85.81 17.34 78.52 59.39 88.12 80.78 76.87 96 82.48"/>
969
- </g>
970
- </svg>
979
+ const Line100Stacked = `
980
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
981
+ <defs>
982
+ <style>.cls-Line100Stacked-1,.cls-Line100Stacked-2,.cls-Line100Stacked-3,.cls-Line100Stacked-4{fill:none;stroke-miterlimit:10;stroke-width:2px;fill-rule:evenodd;}.cls-Line100Stacked-1{stroke:#ab4191;}.cls-Line100Stacked-2{stroke:#f05951;}.cls-Line100Stacked-3{stroke:#fa8d3d;}.cls-Line100Stacked-4{stroke:#0f6860;}</style>
983
+ </defs>
984
+ <g id="ChartNames">
985
+ <polyline class="cls-Line100Stacked-1" points="0 29.37 17.34 19.88 38.74 29.52 58.65 32.18 80.42 28.87 96 24.56"/>
986
+ <polyline class="cls-Line100Stacked-2" points="0 42.5 17.34 37.81 38.37 41.12 59.02 42.11 80.42 37.81 96 41.85"/>
987
+ <polyline class="cls-Line100Stacked-3" points="0 66.68 17.34 59.32 38.37 72.9 59.76 55.35 96 65.16"/>
988
+ <polyline class="cls-Line100Stacked-4" points="0 85.81 17.34 78.52 59.39 88.12 80.78 76.87 96 82.48"/>
989
+ </g>
990
+ </svg>
971
991
  `;
972
- const LineGrouped = `
973
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
974
- <defs>
975
- <style>.cls-LineGrouped-1,.cls-LineGrouped-2,.cls-LineGrouped-3,.cls-LineGrouped-4{fill:none;stroke-miterlimit:10;stroke-width:2px;}.cls-LineGrouped-1{stroke:#ab4191;}.cls-LineGrouped-2{stroke:#f05951;}.cls-LineGrouped-3{stroke:#fa8d3d;}.cls-LineGrouped-4{stroke:#0f6860;}</style>
976
- </defs>
977
- <g id="ChartNames">
978
- <polyline class="cls-LineGrouped-1" points="0 31.14 4.12 20.49 11.66 36.91 16.09 36.66 24.41 46.48 27.96 47.14 32.04 44.59 36.46 46.81 40.19 44.59 45.04 45.82 47.99 49.2 51.98 48.87 59.96 52.84 63.95 51.52 68.28 51.52 74.78 53.74 85.36 41.04 96 17.86 96 18.27"/>
979
- <polyline class="cls-LineGrouped-2" points="0 61.42 3.9 56.96 7.98 61.25 15.61 60.59 24.28 69.75 27.57 71.15 31.99 67.52 35.81 69.17 40.06 67.19 48.04 70.08 51.76 69.17 59.07 73.36 68.06 72.06 75.87 68.01 79.25 63.06 82.37 59.93 88.01 57.37 91.99 52.01 96 36.5 96 35.45"/>
980
- <polyline class="cls-LineGrouped-3" points="0 79.47 5.11 77.91 8.5 78.81 16.13 77.41 20.72 80.71 27.4 84.17 37.8 83.52 46.91 85.58 52.02 79.31 60.35 84.59 90.95 89.87 96 85.5"/>
981
- <polyline class="cls-LineGrouped-4" points="0 92.26 14.7 90.69 19.9 92.1 24.93 90.03 30.13 91.1 47.13 90.78 51.72 89.12 56.75 90.69 71.06 90.11 83.63 83.1 96 79.33"/>
982
- </g>
983
- </svg>
992
+ const LineGrouped = `
993
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
994
+ <defs>
995
+ <style>.cls-LineGrouped-1,.cls-LineGrouped-2,.cls-LineGrouped-3,.cls-LineGrouped-4{fill:none;stroke-miterlimit:10;stroke-width:2px;}.cls-LineGrouped-1{stroke:#ab4191;}.cls-LineGrouped-2{stroke:#f05951;}.cls-LineGrouped-3{stroke:#fa8d3d;}.cls-LineGrouped-4{stroke:#0f6860;}</style>
996
+ </defs>
997
+ <g id="ChartNames">
998
+ <polyline class="cls-LineGrouped-1" points="0 31.14 4.12 20.49 11.66 36.91 16.09 36.66 24.41 46.48 27.96 47.14 32.04 44.59 36.46 46.81 40.19 44.59 45.04 45.82 47.99 49.2 51.98 48.87 59.96 52.84 63.95 51.52 68.28 51.52 74.78 53.74 85.36 41.04 96 17.86 96 18.27"/>
999
+ <polyline class="cls-LineGrouped-2" points="0 61.42 3.9 56.96 7.98 61.25 15.61 60.59 24.28 69.75 27.57 71.15 31.99 67.52 35.81 69.17 40.06 67.19 48.04 70.08 51.76 69.17 59.07 73.36 68.06 72.06 75.87 68.01 79.25 63.06 82.37 59.93 88.01 57.37 91.99 52.01 96 36.5 96 35.45"/>
1000
+ <polyline class="cls-LineGrouped-3" points="0 79.47 5.11 77.91 8.5 78.81 16.13 77.41 20.72 80.71 27.4 84.17 37.8 83.52 46.91 85.58 52.02 79.31 60.35 84.59 90.95 89.87 96 85.5"/>
1001
+ <polyline class="cls-LineGrouped-4" points="0 92.26 14.7 90.69 19.9 92.1 24.93 90.03 30.13 91.1 47.13 90.78 51.72 89.12 56.75 90.69 71.06 90.11 83.63 83.1 96 79.33"/>
1002
+ </g>
1003
+ </svg>
984
1004
  `;
985
- const LineStacked = `
986
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
987
- <defs>
988
- <style>.cls-LineStacked-1,.cls-LineStacked-2,.cls-LineStacked-3,.cls-LineStacked-4{fill:none;stroke-miterlimit:10;stroke-width:2px;fill-rule:evenodd;}.cls-LineStacked-1{stroke:#ab4191;}.cls-LineStacked-2{stroke:#f05951;}.cls-LineStacked-3{stroke:#fa8d3d;}.cls-LineStacked-4{stroke:#0f6860;}</style>
989
- </defs>
990
- <g id="ChartNames">
991
- <polyline class="cls-LineStacked-1" points="0 80.39 14.23 67.93 31.11 68.6 47.9 59.83 65.4 39.39 81.92 33.46 96 14.25"/>
992
- <polyline class="cls-LineStacked-2" points="0 85.07 14.32 75.65 31.47 78.74 48.25 68.72 64.86 68.97 82.1 43.77 96 36.04"/>
993
- <polyline class="cls-LineStacked-3" points="0 90.45 14.14 83.91 30.93 84.66 48.17 79.07 64.86 78.07 82.28 62.38 96 59.21"/>
994
- <polyline class="cls-LineStacked-4" points="0 96 31.16 90.78 64.95 88.38 82.19 77.78 96 74.53"/>
995
- </g>
996
- </svg>
1005
+ const LineStacked = `
1006
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1007
+ <defs>
1008
+ <style>.cls-LineStacked-1,.cls-LineStacked-2,.cls-LineStacked-3,.cls-LineStacked-4{fill:none;stroke-miterlimit:10;stroke-width:2px;fill-rule:evenodd;}.cls-LineStacked-1{stroke:#ab4191;}.cls-LineStacked-2{stroke:#f05951;}.cls-LineStacked-3{stroke:#fa8d3d;}.cls-LineStacked-4{stroke:#0f6860;}</style>
1009
+ </defs>
1010
+ <g id="ChartNames">
1011
+ <polyline class="cls-LineStacked-1" points="0 80.39 14.23 67.93 31.11 68.6 47.9 59.83 65.4 39.39 81.92 33.46 96 14.25"/>
1012
+ <polyline class="cls-LineStacked-2" points="0 85.07 14.32 75.65 31.47 78.74 48.25 68.72 64.86 68.97 82.1 43.77 96 36.04"/>
1013
+ <polyline class="cls-LineStacked-3" points="0 90.45 14.14 83.91 30.93 84.66 48.17 79.07 64.86 78.07 82.28 62.38 96 59.21"/>
1014
+ <polyline class="cls-LineStacked-4" points="0 96 31.16 90.78 64.95 88.38 82.19 77.78 96 74.53"/>
1015
+ </g>
1016
+ </svg>
997
1017
  `;
998
- const Pie = `
999
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1000
- <defs>
1001
- <style>.cls-Pie-1{fill:#f05951;}.cls-Pie-1,.cls-Pie-2,.cls-Pie-3,.cls-Pie-4{fill-rule:evenodd;}.cls-Pie-2{fill:#fa8d3d;}.cls-Pie-3{fill:#0f6860;}.cls-Pie-4{fill:#ab4191;}</style>
1002
- </defs>
1003
- <g id="ChartNames">
1004
- <path class="cls-Pie-1" d="M44.19,48V3.79A43.27,43.27,0,0,0,3,32.3,43.45,43.45,0,0,0,15,81Z"/>
1005
- <path class="cls-Pie-2" d="M44.19,48,15,81a42.63,42.63,0,0,0,37.7,10.28,42.72,42.72,0,0,0,31-23.78Z"/>
1006
- <path class="cls-Pie-3" d="M51.77,48,91.29,67.53a42.87,42.87,0,0,0,.53-38Z"/>
1007
- <path class="cls-Pie-4" d="M44.19,48,84.24,29.52a43.13,43.13,0,0,0-40-25.73Z"/>
1008
- </g>
1009
- </svg>
1018
+ const Pie = `
1019
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1020
+ <defs>
1021
+ <style>.cls-Pie-1{fill:#f05951;}.cls-Pie-1,.cls-Pie-2,.cls-Pie-3,.cls-Pie-4{fill-rule:evenodd;}.cls-Pie-2{fill:#fa8d3d;}.cls-Pie-3{fill:#0f6860;}.cls-Pie-4{fill:#ab4191;}</style>
1022
+ </defs>
1023
+ <g id="ChartNames">
1024
+ <path class="cls-Pie-1" d="M44.19,48V3.79A43.27,43.27,0,0,0,3,32.3,43.45,43.45,0,0,0,15,81Z"/>
1025
+ <path class="cls-Pie-2" d="M44.19,48,15,81a42.63,42.63,0,0,0,37.7,10.28,42.72,42.72,0,0,0,31-23.78Z"/>
1026
+ <path class="cls-Pie-3" d="M51.77,48,91.29,67.53a42.87,42.87,0,0,0,.53-38Z"/>
1027
+ <path class="cls-Pie-4" d="M44.19,48,84.24,29.52a43.13,43.13,0,0,0-40-25.73Z"/>
1028
+ </g>
1029
+ </svg>
1010
1030
  `;
1011
- const ScatterBubble = `
1012
- <svg id="Layer_1" data-name="Layer 1"
1013
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1014
- <defs>
1015
- <style>.cls-ScatterBubble-1{fill:#f05951;}.cls-ScatterBubble-1,.cls-ScatterBubble-2{stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.5px;}.cls-ScatterBubble-2{fill:#ab4191;}</style>
1016
- </defs>
1017
- <circle class="cls-ScatterBubble-1" cx="6.06" cy="85.05" r="2.33"/>
1018
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="83.89" r="2.33"/>
1019
- <circle class="cls-ScatterBubble-1" cx="13.07" cy="78.83" r="2.33"/>
1020
- <circle class="cls-ScatterBubble-1" cx="39.52" cy="59.38" r="2.33"/>
1021
- <circle class="cls-ScatterBubble-1" cx="35.63" cy="53.94" r="2.33"/>
1022
- <circle class="cls-ScatterBubble-1" cx="7.62" cy="70.27" r="2.33"/>
1023
- <circle class="cls-ScatterBubble-1" cx="20.85" cy="71.44" r="2.33"/>
1024
- <circle class="cls-ScatterBubble-2" cx="8.79" cy="84.28" r="3.11"/>
1025
- <circle class="cls-ScatterBubble-1" cx="18.9" cy="67.16" r="3.11"/>
1026
- <circle class="cls-ScatterBubble-1" cx="36.4" cy="59.77" r="3.11"/>
1027
- <circle class="cls-ScatterBubble-1" cx="63.24" cy="21.26" r="3.11"/>
1028
- <circle class="cls-ScatterBubble-1" cx="25.12" cy="70.27" r="3.11"/>
1029
- <circle class="cls-ScatterBubble-2" cx="9.18" cy="71.83" r="3.11"/>
1030
- <circle class="cls-ScatterBubble-2" cx="13.07" cy="47.32" r="3.11"/>
1031
- <circle class="cls-ScatterBubble-1" cx="8.01" cy="60.94" r="4.28"/>
1032
- <circle class="cls-ScatterBubble-2" cx="22.4" cy="74.94" r="4.28"/>
1033
- <circle class="cls-ScatterBubble-1" cx="29.79" cy="54.33" r="4.28"/>
1034
- <circle class="cls-ScatterBubble-1" cx="73.75" cy="30.99" r="4.28"/>
1035
- <circle class="cls-ScatterBubble-1" cx="62.47" cy="34.88" r="4.28"/>
1036
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="48.88" r="4.28"/>
1037
- <circle class="cls-ScatterBubble-1" cx="44.18" cy="28.26" r="4.28"/>
1038
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="61.33" r="4.28"/>
1039
- <circle class="cls-ScatterBubble-2" cx="29.79" cy="49.66" r="5.06"/>
1040
- <circle class="cls-ScatterBubble-1" cx="47.68" cy="53.94" r="5.83"/>
1041
- <circle class="cls-ScatterBubble-1" cx="62.08" cy="26.32" r="5.06"/>
1042
- <circle class="cls-ScatterBubble-2" cx="86.58" cy="39.93" r="5.06"/>
1043
- <circle class="cls-ScatterBubble-2" cx="70.63" cy="33.32" r="5.06"/>
1044
- <circle class="cls-ScatterBubble-2" cx="64.8" cy="33.32" r="6.22"/>
1045
- <circle class="cls-ScatterBubble-1" cx="25.9" cy="32.15" r="6.22"/>
1046
- <circle class="cls-ScatterBubble-2" cx="39.52" cy="74.16" r="6.61"/>
1047
- <circle class="cls-ScatterBubble-2" cx="56.23" cy="81.54" r="6.22"/>
1048
- <circle class="cls-ScatterBubble-1" cx="51.19" cy="74.16" r="8.17"/>
1049
- <circle class="cls-ScatterBubble-2" cx="42.24" cy="38.77" r="8.17"/>
1050
- <circle class="cls-ScatterBubble-1" cx="50.8" cy="60.94" r="8.17"/>
1051
- <circle class="cls-ScatterBubble-1" cx="41.85" cy="34.88" r="9.34"/>
1052
- <circle class="cls-ScatterBubble-1" cx="52.35" cy="31.76" r="11.28"/>
1053
- <circle class="cls-ScatterBubble-2" cx="58.97" cy="53.55" r="12.84"/>
1054
- <circle class="cls-ScatterBubble-1" cx="37.57" cy="81.55" r="9.72"/>
1055
- <circle class="cls-ScatterBubble-1" cx="58.58" cy="50.44" r="6.22"/>
1056
- <circle class="cls-ScatterBubble-1" cx="51.57" cy="53.55" r="7"/>
1057
- <circle class="cls-ScatterBubble-1" cx="53.52" cy="34.49" r="7"/>
1058
- <circle class="cls-ScatterBubble-1" cx="57.41" cy="11.93" r="7"/>
1059
- <circle class="cls-ScatterBubble-1" cx="86.19" cy="57.83" r="5.45"/>
1060
- <circle class="cls-ScatterBubble-1" cx="20.85" cy="66.38" r="5.45"/>
1061
- <circle class="cls-ScatterBubble-2" cx="38.35" cy="58.6" r="5.06"/>
1062
- <circle class="cls-ScatterBubble-2" cx="15.79" cy="64.05" r="5.06"/>
1063
- <circle class="cls-ScatterBubble-1" cx="28.24" cy="74.55" r="5.06"/>
1064
- <circle class="cls-ScatterBubble-2" cx="57.02" cy="22.04" r="4.28"/>
1065
- </svg>
1031
+ const ScatterBubble = `
1032
+ <svg id="Layer_1" data-name="Layer 1"
1033
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1034
+ <defs>
1035
+ <style>.cls-ScatterBubble-1{fill:#f05951;}.cls-ScatterBubble-1,.cls-ScatterBubble-2{stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.5px;}.cls-ScatterBubble-2{fill:#ab4191;}</style>
1036
+ </defs>
1037
+ <circle class="cls-ScatterBubble-1" cx="6.06" cy="85.05" r="2.33"/>
1038
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="83.89" r="2.33"/>
1039
+ <circle class="cls-ScatterBubble-1" cx="13.07" cy="78.83" r="2.33"/>
1040
+ <circle class="cls-ScatterBubble-1" cx="39.52" cy="59.38" r="2.33"/>
1041
+ <circle class="cls-ScatterBubble-1" cx="35.63" cy="53.94" r="2.33"/>
1042
+ <circle class="cls-ScatterBubble-1" cx="7.62" cy="70.27" r="2.33"/>
1043
+ <circle class="cls-ScatterBubble-1" cx="20.85" cy="71.44" r="2.33"/>
1044
+ <circle class="cls-ScatterBubble-2" cx="8.79" cy="84.28" r="3.11"/>
1045
+ <circle class="cls-ScatterBubble-1" cx="18.9" cy="67.16" r="3.11"/>
1046
+ <circle class="cls-ScatterBubble-1" cx="36.4" cy="59.77" r="3.11"/>
1047
+ <circle class="cls-ScatterBubble-1" cx="63.24" cy="21.26" r="3.11"/>
1048
+ <circle class="cls-ScatterBubble-1" cx="25.12" cy="70.27" r="3.11"/>
1049
+ <circle class="cls-ScatterBubble-2" cx="9.18" cy="71.83" r="3.11"/>
1050
+ <circle class="cls-ScatterBubble-2" cx="13.07" cy="47.32" r="3.11"/>
1051
+ <circle class="cls-ScatterBubble-1" cx="8.01" cy="60.94" r="4.28"/>
1052
+ <circle class="cls-ScatterBubble-2" cx="22.4" cy="74.94" r="4.28"/>
1053
+ <circle class="cls-ScatterBubble-1" cx="29.79" cy="54.33" r="4.28"/>
1054
+ <circle class="cls-ScatterBubble-1" cx="73.75" cy="30.99" r="4.28"/>
1055
+ <circle class="cls-ScatterBubble-1" cx="62.47" cy="34.88" r="4.28"/>
1056
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="48.88" r="4.28"/>
1057
+ <circle class="cls-ScatterBubble-1" cx="44.18" cy="28.26" r="4.28"/>
1058
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="61.33" r="4.28"/>
1059
+ <circle class="cls-ScatterBubble-2" cx="29.79" cy="49.66" r="5.06"/>
1060
+ <circle class="cls-ScatterBubble-1" cx="47.68" cy="53.94" r="5.83"/>
1061
+ <circle class="cls-ScatterBubble-1" cx="62.08" cy="26.32" r="5.06"/>
1062
+ <circle class="cls-ScatterBubble-2" cx="86.58" cy="39.93" r="5.06"/>
1063
+ <circle class="cls-ScatterBubble-2" cx="70.63" cy="33.32" r="5.06"/>
1064
+ <circle class="cls-ScatterBubble-2" cx="64.8" cy="33.32" r="6.22"/>
1065
+ <circle class="cls-ScatterBubble-1" cx="25.9" cy="32.15" r="6.22"/>
1066
+ <circle class="cls-ScatterBubble-2" cx="39.52" cy="74.16" r="6.61"/>
1067
+ <circle class="cls-ScatterBubble-2" cx="56.23" cy="81.54" r="6.22"/>
1068
+ <circle class="cls-ScatterBubble-1" cx="51.19" cy="74.16" r="8.17"/>
1069
+ <circle class="cls-ScatterBubble-2" cx="42.24" cy="38.77" r="8.17"/>
1070
+ <circle class="cls-ScatterBubble-1" cx="50.8" cy="60.94" r="8.17"/>
1071
+ <circle class="cls-ScatterBubble-1" cx="41.85" cy="34.88" r="9.34"/>
1072
+ <circle class="cls-ScatterBubble-1" cx="52.35" cy="31.76" r="11.28"/>
1073
+ <circle class="cls-ScatterBubble-2" cx="58.97" cy="53.55" r="12.84"/>
1074
+ <circle class="cls-ScatterBubble-1" cx="37.57" cy="81.55" r="9.72"/>
1075
+ <circle class="cls-ScatterBubble-1" cx="58.58" cy="50.44" r="6.22"/>
1076
+ <circle class="cls-ScatterBubble-1" cx="51.57" cy="53.55" r="7"/>
1077
+ <circle class="cls-ScatterBubble-1" cx="53.52" cy="34.49" r="7"/>
1078
+ <circle class="cls-ScatterBubble-1" cx="57.41" cy="11.93" r="7"/>
1079
+ <circle class="cls-ScatterBubble-1" cx="86.19" cy="57.83" r="5.45"/>
1080
+ <circle class="cls-ScatterBubble-1" cx="20.85" cy="66.38" r="5.45"/>
1081
+ <circle class="cls-ScatterBubble-2" cx="38.35" cy="58.6" r="5.06"/>
1082
+ <circle class="cls-ScatterBubble-2" cx="15.79" cy="64.05" r="5.06"/>
1083
+ <circle class="cls-ScatterBubble-1" cx="28.24" cy="74.55" r="5.06"/>
1084
+ <circle class="cls-ScatterBubble-2" cx="57.02" cy="22.04" r="4.28"/>
1085
+ </svg>
1066
1086
  `;
1067
- const ScatterLine = `
1068
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1069
- <defs>
1070
- <style>.cls-ScatterLine-1,.cls-ScatterLine-2,.cls-ScatterLine-3,.cls-ScatterLine-4{fill:none;stroke-miterlimit:10;stroke-width:2px;}.cls-ScatterLine-1{stroke:#0f6860;}.cls-ScatterLine-1,.cls-ScatterLine-2,.cls-ScatterLine-3,.cls-ScatterLine-4,.cls-ScatterLine-5,.cls-ScatterLine-7,.cls-ScatterLine-8,.cls-ScatterLine-9{fill-rule:evenodd;}.cls-ScatterLine-2{stroke:#fa8d3d;}.cls-ScatterLine-3{stroke:#f05951;}.cls-ScatterLine-4{stroke:#ab4191;}.cls-ScatterLine-5{fill:#ab4191;}.cls-ScatterLine-6{fill:#fff;}.cls-ScatterLine-7{fill:#f05951;}.cls-ScatterLine-8{fill:#0f6860;}.cls-ScatterLine-9{fill:#fa8d3d;}</style>
1071
- </defs>
1072
- <g id="ChartNames">
1073
- <polyline class="cls-ScatterLine-1" points="26.86 87.32 37.71 81.09 60.66 85.34 75.57 71.13 82.69 60.02 88.09 48.86"/>
1074
- <polyline class="cls-ScatterLine-2" points="10.6 85.36 16.86 76.38 32.22 58.89 55.26 41.45 60.02 31.09 69.79 23.41 88.32 6.3"/>
1075
- <polyline class="cls-ScatterLine-3" points="60.19 7.22 47.42 10.06 35.31 14.73 18.95 32.1 17.53 50.04 10.44 58.56"/>
1076
- <polyline class="cls-ScatterLine-4" points="23.58 4.76 10.97 12.44 8.47 29.72"/>
1077
- <path class="cls-ScatterLine-5" d="M8.69,12.61a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,8.69,12.61Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9.69,12.61Z"/>
1078
- <circle class="cls-ScatterLine-6" cx="11.19" cy="12.61" r="1.5"/>
1079
- <path class="cls-ScatterLine-5" d="M21,4.59a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,21,4.59Zm1,0A1.51,1.51,0,1,1,23.55,6.1,1.5,1.5,0,0,1,22,4.59Z"/>
1080
- <circle class="cls-ScatterLine-6" cx="23.55" cy="4.59" r="1.5"/>
1081
- <path class="cls-ScatterLine-5" d="M6,29.64a2.5,2.5,0,1,0,2.5-2.51A2.5,2.5,0,0,0,6,29.64Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,7,29.64Z"/>
1082
- <circle class="cls-ScatterLine-6" cx="8.52" cy="29.64" r="1.5"/>
1083
- <path class="cls-ScatterLine-7" d="M57.43,7.26a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,57.43,7.26Zm1,0a1.51,1.51,0,1,1,1.51,1.51A1.51,1.51,0,0,1,58.43,7.26Z"/>
1084
- <circle class="cls-ScatterLine-6" cx="59.94" cy="7.26" r="1.5"/>
1085
- <path class="cls-ScatterLine-7" d="M44.74,10.24a2.51,2.51,0,1,0,2.51-2.51A2.51,2.51,0,0,0,44.74,10.24Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,45.75,10.24Z"/>
1086
- <circle class="cls-ScatterLine-6" cx="47.25" cy="10.24" r="1.5"/>
1087
- <path class="cls-ScatterLine-7" d="M33.06,14.94a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,33.06,14.94Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,34.06,14.94Z"/>
1088
- <circle class="cls-ScatterLine-6" cx="35.56" cy="14.94" r="1.5"/>
1089
- <path class="cls-ScatterLine-7" d="M16.36,32.08a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,16.36,32.08Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.5,1.5,0,0,1,17.36,32.08Z"/>
1090
- <circle class="cls-ScatterLine-6" cx="18.87" cy="32.08" r="1.5"/>
1091
- <path class="cls-ScatterLine-7" d="M14.69,50.34a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,14.69,50.34Zm1,0a1.51,1.51,0,1,1,3,0,1.51,1.51,0,0,1-3,0Z"/>
1092
- <circle class="cls-ScatterLine-6" cx="17.2" cy="50.34" r="1.5"/>
1093
- <path class="cls-ScatterLine-7" d="M8,58.24a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,8,58.24Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9,58.24Z"/>
1094
- <circle class="cls-ScatterLine-6" cx="10.48" cy="58.24" r="1.5"/>
1095
- <path class="cls-ScatterLine-8" d="M80.54,60a2.5,2.5,0,1,0,2.5-2.5A2.51,2.51,0,0,0,80.54,60Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,81.54,60Z"/>
1096
- <circle class="cls-ScatterLine-6" cx="83.04" cy="60.02" r="1.5"/>
1097
- <path class="cls-ScatterLine-8" d="M85.58,49a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,85.58,49Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,86.58,49Z"/>
1098
- <circle class="cls-ScatterLine-6" cx="88.09" cy="49" r="1.5"/>
1099
- <path class="cls-ScatterLine-8" d="M73.27,71.18a2.51,2.51,0,1,0,2.5-2.5A2.51,2.51,0,0,0,73.27,71.18Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,74.27,71.18Z"/>
1100
- <circle class="cls-ScatterLine-6" cx="75.77" cy="71.18" r="1.5"/>
1101
- <path class="cls-ScatterLine-8" d="M58.16,85.65a2.5,2.5,0,1,0,2.5-2.51A2.5,2.5,0,0,0,58.16,85.65Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.51,1.51,0,0,1,59.16,85.65Z"/>
1102
- <circle class="cls-ScatterLine-6" cx="60.66" cy="85.65" r="1.5"/>
1103
- <path class="cls-ScatterLine-8" d="M35.2,81.53A2.51,2.51,0,1,0,37.71,79,2.52,2.52,0,0,0,35.2,81.53Zm1,0A1.51,1.51,0,1,1,37.71,83,1.51,1.51,0,0,1,36.2,81.53Z"/>
1104
- <circle class="cls-ScatterLine-6" cx="37.71" cy="81.53" r="1.5"/>
1105
- <path class="cls-ScatterLine-8" d="M24.35,87.32a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,24.35,87.32Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,25.35,87.32Z"/>
1106
- <circle class="cls-ScatterLine-6" cx="26.86" cy="87.32" r="1.5"/>
1107
- <path class="cls-ScatterLine-9" d="M8,85.73a2.51,2.51,0,1,0,2.51-2.5A2.52,2.52,0,0,0,8,85.73Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9,85.73Z"/>
1108
- <circle class="cls-ScatterLine-6" cx="10.48" cy="85.73" r="1.5"/>
1109
- <path class="cls-ScatterLine-9" d="M13.36,77.38a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,13.36,77.38Zm1,0a1.51,1.51,0,1,1,1.5,1.51A1.5,1.5,0,0,1,14.36,77.38Z"/>
1110
- <circle class="cls-ScatterLine-6" cx="15.86" cy="77.38" r="1.5"/>
1111
- <path class="cls-ScatterLine-9" d="M19,70.71a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,19,70.71Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,20,70.71Z"/>
1112
- <circle class="cls-ScatterLine-6" cx="21.54" cy="70.71" r="1.5"/>
1113
- <path class="cls-ScatterLine-9" d="M29.44,58.91a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,29.44,58.91Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.51,1.51,0,0,1,30.44,58.91Z"/>
1114
- <circle class="cls-ScatterLine-6" cx="31.94" cy="58.91" r="1.5"/>
1115
- <path class="cls-ScatterLine-9" d="M41.41,49.67a2.5,2.5,0,1,0,2.5-2.5A2.5,2.5,0,0,0,41.41,49.67Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,42.41,49.67Z"/>
1116
- <circle class="cls-ScatterLine-6" cx="43.91" cy="49.67" r="1.5"/>
1117
- <path class="cls-ScatterLine-9" d="M52.76,41.66a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,52.76,41.66Zm1,0a1.51,1.51,0,1,1,1.5,1.5A1.5,1.5,0,0,1,53.76,41.66Z"/>
1118
- <circle class="cls-ScatterLine-6" cx="55.26" cy="41.66" r="1.5"/>
1119
- <path class="cls-ScatterLine-9" d="M57.77,31.3a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,57.77,31.3Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,58.77,31.3Z"/>
1120
- <circle class="cls-ScatterLine-6" cx="60.27" cy="31.3" r="1.5"/>
1121
- <path class="cls-ScatterLine-9" d="M67.45,23.62a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,67.45,23.62Zm1,0A1.51,1.51,0,1,1,70,25.13,1.5,1.5,0,0,1,68.45,23.62Z"/>
1122
- <circle class="cls-ScatterLine-6" cx="69.95" cy="23.62" r="1.5"/>
1123
- <path class="cls-ScatterLine-9" d="M85.82,6.59a2.5,2.5,0,1,0,2.5-2.5A2.5,2.5,0,0,0,85.82,6.59Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,86.82,6.59Z"/>
1124
- <circle class="cls-ScatterLine-6" cx="88.32" cy="6.59" r="1.5"/>
1125
- </g>
1126
- </svg>
1087
+ const ScatterLine = `
1088
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1089
+ <defs>
1090
+ <style>.cls-ScatterLine-1,.cls-ScatterLine-2,.cls-ScatterLine-3,.cls-ScatterLine-4{fill:none;stroke-miterlimit:10;stroke-width:2px;}.cls-ScatterLine-1{stroke:#0f6860;}.cls-ScatterLine-1,.cls-ScatterLine-2,.cls-ScatterLine-3,.cls-ScatterLine-4,.cls-ScatterLine-5,.cls-ScatterLine-7,.cls-ScatterLine-8,.cls-ScatterLine-9{fill-rule:evenodd;}.cls-ScatterLine-2{stroke:#fa8d3d;}.cls-ScatterLine-3{stroke:#f05951;}.cls-ScatterLine-4{stroke:#ab4191;}.cls-ScatterLine-5{fill:#ab4191;}.cls-ScatterLine-6{fill:#fff;}.cls-ScatterLine-7{fill:#f05951;}.cls-ScatterLine-8{fill:#0f6860;}.cls-ScatterLine-9{fill:#fa8d3d;}</style>
1091
+ </defs>
1092
+ <g id="ChartNames">
1093
+ <polyline class="cls-ScatterLine-1" points="26.86 87.32 37.71 81.09 60.66 85.34 75.57 71.13 82.69 60.02 88.09 48.86"/>
1094
+ <polyline class="cls-ScatterLine-2" points="10.6 85.36 16.86 76.38 32.22 58.89 55.26 41.45 60.02 31.09 69.79 23.41 88.32 6.3"/>
1095
+ <polyline class="cls-ScatterLine-3" points="60.19 7.22 47.42 10.06 35.31 14.73 18.95 32.1 17.53 50.04 10.44 58.56"/>
1096
+ <polyline class="cls-ScatterLine-4" points="23.58 4.76 10.97 12.44 8.47 29.72"/>
1097
+ <path class="cls-ScatterLine-5" d="M8.69,12.61a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,8.69,12.61Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9.69,12.61Z"/>
1098
+ <circle class="cls-ScatterLine-6" cx="11.19" cy="12.61" r="1.5"/>
1099
+ <path class="cls-ScatterLine-5" d="M21,4.59a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,21,4.59Zm1,0A1.51,1.51,0,1,1,23.55,6.1,1.5,1.5,0,0,1,22,4.59Z"/>
1100
+ <circle class="cls-ScatterLine-6" cx="23.55" cy="4.59" r="1.5"/>
1101
+ <path class="cls-ScatterLine-5" d="M6,29.64a2.5,2.5,0,1,0,2.5-2.51A2.5,2.5,0,0,0,6,29.64Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,7,29.64Z"/>
1102
+ <circle class="cls-ScatterLine-6" cx="8.52" cy="29.64" r="1.5"/>
1103
+ <path class="cls-ScatterLine-7" d="M57.43,7.26a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,57.43,7.26Zm1,0a1.51,1.51,0,1,1,1.51,1.51A1.51,1.51,0,0,1,58.43,7.26Z"/>
1104
+ <circle class="cls-ScatterLine-6" cx="59.94" cy="7.26" r="1.5"/>
1105
+ <path class="cls-ScatterLine-7" d="M44.74,10.24a2.51,2.51,0,1,0,2.51-2.51A2.51,2.51,0,0,0,44.74,10.24Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,45.75,10.24Z"/>
1106
+ <circle class="cls-ScatterLine-6" cx="47.25" cy="10.24" r="1.5"/>
1107
+ <path class="cls-ScatterLine-7" d="M33.06,14.94a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,33.06,14.94Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,34.06,14.94Z"/>
1108
+ <circle class="cls-ScatterLine-6" cx="35.56" cy="14.94" r="1.5"/>
1109
+ <path class="cls-ScatterLine-7" d="M16.36,32.08a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,16.36,32.08Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.5,1.5,0,0,1,17.36,32.08Z"/>
1110
+ <circle class="cls-ScatterLine-6" cx="18.87" cy="32.08" r="1.5"/>
1111
+ <path class="cls-ScatterLine-7" d="M14.69,50.34a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,14.69,50.34Zm1,0a1.51,1.51,0,1,1,3,0,1.51,1.51,0,0,1-3,0Z"/>
1112
+ <circle class="cls-ScatterLine-6" cx="17.2" cy="50.34" r="1.5"/>
1113
+ <path class="cls-ScatterLine-7" d="M8,58.24a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,8,58.24Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9,58.24Z"/>
1114
+ <circle class="cls-ScatterLine-6" cx="10.48" cy="58.24" r="1.5"/>
1115
+ <path class="cls-ScatterLine-8" d="M80.54,60a2.5,2.5,0,1,0,2.5-2.5A2.51,2.51,0,0,0,80.54,60Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,81.54,60Z"/>
1116
+ <circle class="cls-ScatterLine-6" cx="83.04" cy="60.02" r="1.5"/>
1117
+ <path class="cls-ScatterLine-8" d="M85.58,49a2.51,2.51,0,1,0,2.51-2.5A2.51,2.51,0,0,0,85.58,49Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,86.58,49Z"/>
1118
+ <circle class="cls-ScatterLine-6" cx="88.09" cy="49" r="1.5"/>
1119
+ <path class="cls-ScatterLine-8" d="M73.27,71.18a2.51,2.51,0,1,0,2.5-2.5A2.51,2.51,0,0,0,73.27,71.18Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,74.27,71.18Z"/>
1120
+ <circle class="cls-ScatterLine-6" cx="75.77" cy="71.18" r="1.5"/>
1121
+ <path class="cls-ScatterLine-8" d="M58.16,85.65a2.5,2.5,0,1,0,2.5-2.51A2.5,2.5,0,0,0,58.16,85.65Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.51,1.51,0,0,1,59.16,85.65Z"/>
1122
+ <circle class="cls-ScatterLine-6" cx="60.66" cy="85.65" r="1.5"/>
1123
+ <path class="cls-ScatterLine-8" d="M35.2,81.53A2.51,2.51,0,1,0,37.71,79,2.52,2.52,0,0,0,35.2,81.53Zm1,0A1.51,1.51,0,1,1,37.71,83,1.51,1.51,0,0,1,36.2,81.53Z"/>
1124
+ <circle class="cls-ScatterLine-6" cx="37.71" cy="81.53" r="1.5"/>
1125
+ <path class="cls-ScatterLine-8" d="M24.35,87.32a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,24.35,87.32Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,25.35,87.32Z"/>
1126
+ <circle class="cls-ScatterLine-6" cx="26.86" cy="87.32" r="1.5"/>
1127
+ <path class="cls-ScatterLine-9" d="M8,85.73a2.51,2.51,0,1,0,2.51-2.5A2.52,2.52,0,0,0,8,85.73Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,9,85.73Z"/>
1128
+ <circle class="cls-ScatterLine-6" cx="10.48" cy="85.73" r="1.5"/>
1129
+ <path class="cls-ScatterLine-9" d="M13.36,77.38a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,13.36,77.38Zm1,0a1.51,1.51,0,1,1,1.5,1.51A1.5,1.5,0,0,1,14.36,77.38Z"/>
1130
+ <circle class="cls-ScatterLine-6" cx="15.86" cy="77.38" r="1.5"/>
1131
+ <path class="cls-ScatterLine-9" d="M19,70.71a2.51,2.51,0,1,0,2.51-2.51A2.5,2.5,0,0,0,19,70.71Zm1,0a1.51,1.51,0,1,1,1.51,1.5A1.51,1.51,0,0,1,20,70.71Z"/>
1132
+ <circle class="cls-ScatterLine-6" cx="21.54" cy="70.71" r="1.5"/>
1133
+ <path class="cls-ScatterLine-9" d="M29.44,58.91a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,29.44,58.91Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.51,1.51,0,0,1,30.44,58.91Z"/>
1134
+ <circle class="cls-ScatterLine-6" cx="31.94" cy="58.91" r="1.5"/>
1135
+ <path class="cls-ScatterLine-9" d="M41.41,49.67a2.5,2.5,0,1,0,2.5-2.5A2.5,2.5,0,0,0,41.41,49.67Zm1,0a1.5,1.5,0,1,1,1.5,1.5A1.5,1.5,0,0,1,42.41,49.67Z"/>
1136
+ <circle class="cls-ScatterLine-6" cx="43.91" cy="49.67" r="1.5"/>
1137
+ <path class="cls-ScatterLine-9" d="M52.76,41.66a2.51,2.51,0,1,0,2.5-2.51A2.5,2.5,0,0,0,52.76,41.66Zm1,0a1.51,1.51,0,1,1,1.5,1.5A1.5,1.5,0,0,1,53.76,41.66Z"/>
1138
+ <circle class="cls-ScatterLine-6" cx="55.26" cy="41.66" r="1.5"/>
1139
+ <path class="cls-ScatterLine-9" d="M57.77,31.3a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,57.77,31.3Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,58.77,31.3Z"/>
1140
+ <circle class="cls-ScatterLine-6" cx="60.27" cy="31.3" r="1.5"/>
1141
+ <path class="cls-ScatterLine-9" d="M67.45,23.62a2.51,2.51,0,1,0,2.5-2.5A2.5,2.5,0,0,0,67.45,23.62Zm1,0A1.51,1.51,0,1,1,70,25.13,1.5,1.5,0,0,1,68.45,23.62Z"/>
1142
+ <circle class="cls-ScatterLine-6" cx="69.95" cy="23.62" r="1.5"/>
1143
+ <path class="cls-ScatterLine-9" d="M85.82,6.59a2.5,2.5,0,1,0,2.5-2.5A2.5,2.5,0,0,0,85.82,6.59Zm1,0a1.5,1.5,0,1,1,1.5,1.51A1.5,1.5,0,0,1,86.82,6.59Z"/>
1144
+ <circle class="cls-ScatterLine-6" cx="88.32" cy="6.59" r="1.5"/>
1145
+ </g>
1146
+ </svg>
1127
1147
  `;
1128
- const ScatterPoint = `
1129
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1130
- <defs>
1131
- <style>.cls-ScatterPoint-1{fill:#ab4191;}.cls-ScatterPoint-1,.cls-ScatterPoint-3,.cls-ScatterPoint-4{fill-rule:evenodd;}.cls-ScatterPoint-2{fill:#fff;}.cls-ScatterPoint-3{fill:#f05951;}.cls-ScatterPoint-4{fill:#fa8d3d;}</style>
1132
- </defs>
1133
- <g id="ChartNames">
1134
- <path class="cls-ScatterPoint-1" d="M6.42,7.64A2.37,2.37,0,1,0,8.79,5.28,2.37,2.37,0,0,0,6.42,7.64Zm1,0A1.42,1.42,0,1,1,8.79,9.06,1.41,1.41,0,0,1,7.37,7.64Z"/>
1135
- <circle class="cls-ScatterPoint-2" cx="8.79" cy="7.64" r="1.42"/>
1136
- <path class="cls-ScatterPoint-1" d="M12.09,10a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,12.09,10ZM13,10a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,13,10Z"/>
1137
- <circle class="cls-ScatterPoint-2" cx="14.46" cy="10.01" r="1.42"/>
1138
- <path class="cls-ScatterPoint-1" d="M22,8.59a2.37,2.37,0,1,0,2.37-2.36A2.37,2.37,0,0,0,22,8.59Zm.95,0A1.42,1.42,0,1,1,24.38,10,1.41,1.41,0,0,1,23,8.59Z"/>
1139
- <circle class="cls-ScatterPoint-2" cx="24.38" cy="8.59" r="1.42"/>
1140
- <path class="cls-ScatterPoint-1" d="M14.46,14.73a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,14.73Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,15.4,14.73Z"/>
1141
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="14.73" r="1.42"/>
1142
- <path class="cls-ScatterPoint-1" d="M11.62,31.27A2.37,2.37,0,1,0,14,28.9,2.36,2.36,0,0,0,11.62,31.27Zm1,0A1.42,1.42,0,1,1,14,32.68,1.41,1.41,0,0,1,12.57,31.27Z"/>
1143
- <circle class="cls-ScatterPoint-2" cx="13.98" cy="31.27" r="1.42"/>
1144
- <path class="cls-ScatterPoint-1" d="M3.12,28.9a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,3.12,28.9Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,4.06,28.9Z"/>
1145
- <circle class="cls-ScatterPoint-2" cx="5.48" cy="28.9" r="1.42"/>
1146
- <path class="cls-ScatterPoint-1" d="M2.64,34.57A2.37,2.37,0,1,0,5,32.21,2.37,2.37,0,0,0,2.64,34.57Zm.95,0A1.42,1.42,0,1,1,5,36,1.41,1.41,0,0,1,3.59,34.57Z"/>
1147
- <circle class="cls-ScatterPoint-2" cx="5.01" cy="34.57" r="1.42"/>
1148
- <path class="cls-ScatterPoint-1" d="M.75,37.88a2.37,2.37,0,1,0,2.37-2.36A2.36,2.36,0,0,0,.75,37.88Zm1,0A1.42,1.42,0,1,1,3.12,39.3,1.42,1.42,0,0,1,1.7,37.88Z"/>
1149
- <circle class="cls-ScatterPoint-2" cx="3.12" cy="37.88" r="1.42"/>
1150
- <path class="cls-ScatterPoint-1" d="M1.23,44.5a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,1.23,44.5Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,2.17,44.5Z"/>
1151
- <circle class="cls-ScatterPoint-2" cx="3.59" cy="44.5" r="1.42"/>
1152
- <path class="cls-ScatterPoint-1" d="M2.64,66.23A2.37,2.37,0,1,0,5,63.87,2.37,2.37,0,0,0,2.64,66.23Zm.95,0A1.42,1.42,0,1,1,5,67.65,1.41,1.41,0,0,1,3.59,66.23Z"/>
1153
- <circle class="cls-ScatterPoint-2" cx="5.01" cy="66.23" r="1.42"/>
1154
- <path class="cls-ScatterPoint-1" d="M26.27,75.21a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,26.27,75.21Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,27.21,75.21Z"/>
1155
- <circle class="cls-ScatterPoint-2" cx="28.63" cy="75.21" r="1.42"/>
1156
- <path class="cls-ScatterPoint-1" d="M9.73,52.06a2.37,2.37,0,1,0,2.36-2.37A2.36,2.36,0,0,0,9.73,52.06Zm.95,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,10.68,52.06Z"/>
1157
- <circle class="cls-ScatterPoint-2" cx="12.09" cy="52.06" r="1.42"/>
1158
- <path class="cls-ScatterPoint-1" d="M14.46,48.75a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,48.75Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,15.4,48.75Z"/>
1159
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="48.75" r="1.42"/>
1160
- <path class="cls-ScatterPoint-1" d="M14.46,41.66a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,41.66Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,15.4,41.66Z"/>
1161
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="41.66" r="1.42"/>
1162
- <path class="cls-ScatterPoint-1" d="M22.49,44.5a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,22.49,44.5Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,23.43,44.5Z"/>
1163
- <circle class="cls-ScatterPoint-2" cx="24.85" cy="44.5" r="1.42"/>
1164
- <path class="cls-ScatterPoint-1" d="M30.52,44a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,30.52,44Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,31.46,44Z"/>
1165
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="44.02" r="1.42"/>
1166
- <path class="cls-ScatterPoint-3" d="M19.18,87.88a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,19.18,87.88Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,20.12,87.88Z"/>
1167
- <circle class="cls-ScatterPoint-2" cx="21.54" cy="87.88" r="1.42"/>
1168
- <path class="cls-ScatterPoint-3" d="M30.52,67.65a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,67.65Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,67.65Z"/>
1169
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="67.65" r="1.42"/>
1170
- <path class="cls-ScatterPoint-3" d="M41.86,51.58a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,51.58Zm.94,0A1.42,1.42,0,1,1,44.22,53,1.42,1.42,0,0,1,42.8,51.58Z"/>
1171
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="51.58" r="1.42"/>
1172
- <path class="cls-ScatterPoint-3" d="M41.86,53.94a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,41.86,53.94Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,53.94Z"/>
1173
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="53.94" r="1.42"/>
1174
- <path class="cls-ScatterPoint-3" d="M41.86,63.39A2.36,2.36,0,1,0,44.22,61,2.37,2.37,0,0,0,41.86,63.39Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,63.39Z"/>
1175
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="63.39" r="1.42"/>
1176
- <path class="cls-ScatterPoint-3" d="M41.86,71.43a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,41.86,71.43Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,42.8,71.43Z"/>
1177
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="71.43" r="1.42"/>
1178
- <path class="cls-ScatterPoint-3" d="M53.2,83.24a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,83.24Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,54.14,83.24Z"/>
1179
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="83.24" r="1.42"/>
1180
- <path class="cls-ScatterPoint-3" d="M64.06,75.21a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,64.06,75.21Zm1,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,65,75.21Z"/>
1181
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="75.21" r="1.42"/>
1182
- <path class="cls-ScatterPoint-3" d="M64.06,63.39A2.37,2.37,0,1,0,66.43,61,2.37,2.37,0,0,0,64.06,63.39Zm1,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,65,63.39Z"/>
1183
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="63.39" r="1.42"/>
1184
- <path class="cls-ScatterPoint-3" d="M75.4,71.43a2.37,2.37,0,1,0,2.36-2.37A2.36,2.36,0,0,0,75.4,71.43Zm.95,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,76.35,71.43Z"/>
1185
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="71.43" r="1.42"/>
1186
- <path class="cls-ScatterPoint-3" d="M75.4,55.83a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,75.4,55.83Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,55.83Z"/>
1187
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="55.83" r="1.42"/>
1188
- <path class="cls-ScatterPoint-3" d="M75.4,24.81a2.37,2.37,0,1,0,2.36-2.36A2.36,2.36,0,0,0,75.4,24.81Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,24.81Z"/>
1189
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="24.81" r="1.42"/>
1190
- <path class="cls-ScatterPoint-3" d="M75.4,22a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,75.4,22Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,22Z"/>
1191
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="21.97" r="1.42"/>
1192
- <path class="cls-ScatterPoint-3" d="M86.74,84.1a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,86.74,84.1Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,87.69,84.1Z"/>
1193
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="84.1" r="1.42"/>
1194
- <path class="cls-ScatterPoint-3" d="M86.74,71a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,86.74,71Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,87.69,71Z"/>
1195
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="70.95" r="1.42"/>
1196
- <path class="cls-ScatterPoint-3" d="M41.86,88.36A2.36,2.36,0,1,0,44.22,86,2.36,2.36,0,0,0,41.86,88.36Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,42.8,88.36Z"/>
1197
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="88.36" r="1.42"/>
1198
- <path class="cls-ScatterPoint-3" d="M30.52,71.43a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,71.43Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,71.43Z"/>
1199
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="71.43" r="1.42"/>
1200
- <path class="cls-ScatterPoint-4" d="M19.65,64.34A2.37,2.37,0,1,0,22,62,2.36,2.36,0,0,0,19.65,64.34Zm1,0A1.42,1.42,0,1,1,22,65.76,1.41,1.41,0,0,1,20.6,64.34Z"/>
1201
- <circle class="cls-ScatterPoint-2" cx="22.01" cy="64.34" r="1.42"/>
1202
- <path class="cls-ScatterPoint-4" d="M30.52,50.64a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,50.64Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,31.46,50.64Z"/>
1203
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="50.64" r="1.42"/>
1204
- <path class="cls-ScatterPoint-4" d="M30.52,62.92a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,62.92Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,31.46,62.92Z"/>
1205
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="62.92" r="1.42"/>
1206
- <path class="cls-ScatterPoint-4" d="M30.52,79a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,79Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,79Z"/>
1207
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="78.99" r="1.42"/>
1208
- <path class="cls-ScatterPoint-4" d="M41.86,68.12a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,68.12Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,68.12Z"/>
1209
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="68.12" r="1.42"/>
1210
- <path class="cls-ScatterPoint-4" d="M53.2,56.78a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,56.78Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,54.14,56.78Z"/>
1211
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="56.78" r="1.42"/>
1212
- <path class="cls-ScatterPoint-4" d="M53.2,76.15a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,76.15Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,54.14,76.15Z"/>
1213
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="76.15" r="1.42"/>
1214
- <path class="cls-ScatterPoint-4" d="M41.86,85.52a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,85.52Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,42.8,85.52Z"/>
1215
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="85.52" r="1.42"/>
1216
- <path class="cls-ScatterPoint-4" d="M64.06,83.24a2.37,2.37,0,1,0,2.37-2.36A2.37,2.37,0,0,0,64.06,83.24Zm1,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,65,83.24Z"/>
1217
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="83.24" r="1.42"/>
1218
- <path class="cls-ScatterPoint-4" d="M75.4,75.68a2.37,2.37,0,1,0,2.36-2.36A2.36,2.36,0,0,0,75.4,75.68Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,75.68Z"/>
1219
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="75.68" r="1.42"/>
1220
- <path class="cls-ScatterPoint-4" d="M77.76,75.21a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,77.76,75.21Zm.95,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,78.71,75.21Z"/>
1221
- <circle class="cls-ScatterPoint-2" cx="80.13" cy="75.21" r="1.42"/>
1222
- <path class="cls-ScatterPoint-4" d="M86.27,54.89a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,86.27,54.89Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,87.21,54.89Z"/>
1223
- <circle class="cls-ScatterPoint-2" cx="88.63" cy="54.89" r="1.42"/>
1224
- <path class="cls-ScatterPoint-4" d="M90.52,71a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,90.52,71Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,91.47,71Z"/>
1225
- <circle class="cls-ScatterPoint-2" cx="92.88" cy="70.95" r="1.42"/>
1226
- <path class="cls-ScatterPoint-4" d="M86.74,88.36A2.37,2.37,0,1,0,89.1,86,2.36,2.36,0,0,0,86.74,88.36Zm1,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,87.69,88.36Z"/>
1227
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="88.36" r="1.42"/>
1228
- <path class="cls-ScatterPoint-4" d="M30.52,83.71a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,83.71Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,31.46,83.71Z"/>
1229
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="83.71" r="1.42"/>
1230
- </g>
1231
- </svg>
1148
+ const ScatterPoint = `
1149
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1150
+ <defs>
1151
+ <style>.cls-ScatterPoint-1{fill:#ab4191;}.cls-ScatterPoint-1,.cls-ScatterPoint-3,.cls-ScatterPoint-4{fill-rule:evenodd;}.cls-ScatterPoint-2{fill:#fff;}.cls-ScatterPoint-3{fill:#f05951;}.cls-ScatterPoint-4{fill:#fa8d3d;}</style>
1152
+ </defs>
1153
+ <g id="ChartNames">
1154
+ <path class="cls-ScatterPoint-1" d="M6.42,7.64A2.37,2.37,0,1,0,8.79,5.28,2.37,2.37,0,0,0,6.42,7.64Zm1,0A1.42,1.42,0,1,1,8.79,9.06,1.41,1.41,0,0,1,7.37,7.64Z"/>
1155
+ <circle class="cls-ScatterPoint-2" cx="8.79" cy="7.64" r="1.42"/>
1156
+ <path class="cls-ScatterPoint-1" d="M12.09,10a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,12.09,10ZM13,10a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,13,10Z"/>
1157
+ <circle class="cls-ScatterPoint-2" cx="14.46" cy="10.01" r="1.42"/>
1158
+ <path class="cls-ScatterPoint-1" d="M22,8.59a2.37,2.37,0,1,0,2.37-2.36A2.37,2.37,0,0,0,22,8.59Zm.95,0A1.42,1.42,0,1,1,24.38,10,1.41,1.41,0,0,1,23,8.59Z"/>
1159
+ <circle class="cls-ScatterPoint-2" cx="24.38" cy="8.59" r="1.42"/>
1160
+ <path class="cls-ScatterPoint-1" d="M14.46,14.73a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,14.73Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,15.4,14.73Z"/>
1161
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="14.73" r="1.42"/>
1162
+ <path class="cls-ScatterPoint-1" d="M11.62,31.27A2.37,2.37,0,1,0,14,28.9,2.36,2.36,0,0,0,11.62,31.27Zm1,0A1.42,1.42,0,1,1,14,32.68,1.41,1.41,0,0,1,12.57,31.27Z"/>
1163
+ <circle class="cls-ScatterPoint-2" cx="13.98" cy="31.27" r="1.42"/>
1164
+ <path class="cls-ScatterPoint-1" d="M3.12,28.9a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,3.12,28.9Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,4.06,28.9Z"/>
1165
+ <circle class="cls-ScatterPoint-2" cx="5.48" cy="28.9" r="1.42"/>
1166
+ <path class="cls-ScatterPoint-1" d="M2.64,34.57A2.37,2.37,0,1,0,5,32.21,2.37,2.37,0,0,0,2.64,34.57Zm.95,0A1.42,1.42,0,1,1,5,36,1.41,1.41,0,0,1,3.59,34.57Z"/>
1167
+ <circle class="cls-ScatterPoint-2" cx="5.01" cy="34.57" r="1.42"/>
1168
+ <path class="cls-ScatterPoint-1" d="M.75,37.88a2.37,2.37,0,1,0,2.37-2.36A2.36,2.36,0,0,0,.75,37.88Zm1,0A1.42,1.42,0,1,1,3.12,39.3,1.42,1.42,0,0,1,1.7,37.88Z"/>
1169
+ <circle class="cls-ScatterPoint-2" cx="3.12" cy="37.88" r="1.42"/>
1170
+ <path class="cls-ScatterPoint-1" d="M1.23,44.5a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,1.23,44.5Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,2.17,44.5Z"/>
1171
+ <circle class="cls-ScatterPoint-2" cx="3.59" cy="44.5" r="1.42"/>
1172
+ <path class="cls-ScatterPoint-1" d="M2.64,66.23A2.37,2.37,0,1,0,5,63.87,2.37,2.37,0,0,0,2.64,66.23Zm.95,0A1.42,1.42,0,1,1,5,67.65,1.41,1.41,0,0,1,3.59,66.23Z"/>
1173
+ <circle class="cls-ScatterPoint-2" cx="5.01" cy="66.23" r="1.42"/>
1174
+ <path class="cls-ScatterPoint-1" d="M26.27,75.21a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,26.27,75.21Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,27.21,75.21Z"/>
1175
+ <circle class="cls-ScatterPoint-2" cx="28.63" cy="75.21" r="1.42"/>
1176
+ <path class="cls-ScatterPoint-1" d="M9.73,52.06a2.37,2.37,0,1,0,2.36-2.37A2.36,2.36,0,0,0,9.73,52.06Zm.95,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,10.68,52.06Z"/>
1177
+ <circle class="cls-ScatterPoint-2" cx="12.09" cy="52.06" r="1.42"/>
1178
+ <path class="cls-ScatterPoint-1" d="M14.46,48.75a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,48.75Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,15.4,48.75Z"/>
1179
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="48.75" r="1.42"/>
1180
+ <path class="cls-ScatterPoint-1" d="M14.46,41.66a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,14.46,41.66Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,15.4,41.66Z"/>
1181
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="41.66" r="1.42"/>
1182
+ <path class="cls-ScatterPoint-1" d="M22.49,44.5a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,22.49,44.5Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,23.43,44.5Z"/>
1183
+ <circle class="cls-ScatterPoint-2" cx="24.85" cy="44.5" r="1.42"/>
1184
+ <path class="cls-ScatterPoint-1" d="M30.52,44a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,30.52,44Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,31.46,44Z"/>
1185
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="44.02" r="1.42"/>
1186
+ <path class="cls-ScatterPoint-3" d="M19.18,87.88a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,19.18,87.88Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,20.12,87.88Z"/>
1187
+ <circle class="cls-ScatterPoint-2" cx="21.54" cy="87.88" r="1.42"/>
1188
+ <path class="cls-ScatterPoint-3" d="M30.52,67.65a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,67.65Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,67.65Z"/>
1189
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="67.65" r="1.42"/>
1190
+ <path class="cls-ScatterPoint-3" d="M41.86,51.58a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,51.58Zm.94,0A1.42,1.42,0,1,1,44.22,53,1.42,1.42,0,0,1,42.8,51.58Z"/>
1191
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="51.58" r="1.42"/>
1192
+ <path class="cls-ScatterPoint-3" d="M41.86,53.94a2.36,2.36,0,1,0,2.36-2.36A2.37,2.37,0,0,0,41.86,53.94Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,53.94Z"/>
1193
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="53.94" r="1.42"/>
1194
+ <path class="cls-ScatterPoint-3" d="M41.86,63.39A2.36,2.36,0,1,0,44.22,61,2.37,2.37,0,0,0,41.86,63.39Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,63.39Z"/>
1195
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="63.39" r="1.42"/>
1196
+ <path class="cls-ScatterPoint-3" d="M41.86,71.43a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,41.86,71.43Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,42.8,71.43Z"/>
1197
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="71.43" r="1.42"/>
1198
+ <path class="cls-ScatterPoint-3" d="M53.2,83.24a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,83.24Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,54.14,83.24Z"/>
1199
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="83.24" r="1.42"/>
1200
+ <path class="cls-ScatterPoint-3" d="M64.06,75.21a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,64.06,75.21Zm1,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,65,75.21Z"/>
1201
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="75.21" r="1.42"/>
1202
+ <path class="cls-ScatterPoint-3" d="M64.06,63.39A2.37,2.37,0,1,0,66.43,61,2.37,2.37,0,0,0,64.06,63.39Zm1,0a1.42,1.42,0,1,1,1.42,1.42A1.41,1.41,0,0,1,65,63.39Z"/>
1203
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="63.39" r="1.42"/>
1204
+ <path class="cls-ScatterPoint-3" d="M75.4,71.43a2.37,2.37,0,1,0,2.36-2.37A2.36,2.36,0,0,0,75.4,71.43Zm.95,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,76.35,71.43Z"/>
1205
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="71.43" r="1.42"/>
1206
+ <path class="cls-ScatterPoint-3" d="M75.4,55.83a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,75.4,55.83Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,55.83Z"/>
1207
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="55.83" r="1.42"/>
1208
+ <path class="cls-ScatterPoint-3" d="M75.4,24.81a2.37,2.37,0,1,0,2.36-2.36A2.36,2.36,0,0,0,75.4,24.81Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,24.81Z"/>
1209
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="24.81" r="1.42"/>
1210
+ <path class="cls-ScatterPoint-3" d="M75.4,22a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,75.4,22Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,22Z"/>
1211
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="21.97" r="1.42"/>
1212
+ <path class="cls-ScatterPoint-3" d="M86.74,84.1a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,86.74,84.1Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,87.69,84.1Z"/>
1213
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="84.1" r="1.42"/>
1214
+ <path class="cls-ScatterPoint-3" d="M86.74,71a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,86.74,71Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,87.69,71Z"/>
1215
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="70.95" r="1.42"/>
1216
+ <path class="cls-ScatterPoint-3" d="M41.86,88.36A2.36,2.36,0,1,0,44.22,86,2.36,2.36,0,0,0,41.86,88.36Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,42.8,88.36Z"/>
1217
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="88.36" r="1.42"/>
1218
+ <path class="cls-ScatterPoint-3" d="M30.52,71.43a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,71.43Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,71.43Z"/>
1219
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="71.43" r="1.42"/>
1220
+ <path class="cls-ScatterPoint-4" d="M19.65,64.34A2.37,2.37,0,1,0,22,62,2.36,2.36,0,0,0,19.65,64.34Zm1,0A1.42,1.42,0,1,1,22,65.76,1.41,1.41,0,0,1,20.6,64.34Z"/>
1221
+ <circle class="cls-ScatterPoint-2" cx="22.01" cy="64.34" r="1.42"/>
1222
+ <path class="cls-ScatterPoint-4" d="M30.52,50.64a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,50.64Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,31.46,50.64Z"/>
1223
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="50.64" r="1.42"/>
1224
+ <path class="cls-ScatterPoint-4" d="M30.52,62.92a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,62.92Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,31.46,62.92Z"/>
1225
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="62.92" r="1.42"/>
1226
+ <path class="cls-ScatterPoint-4" d="M30.52,79a2.36,2.36,0,1,0,2.36-2.37A2.36,2.36,0,0,0,30.52,79Zm.94,0a1.42,1.42,0,1,1,1.42,1.41A1.42,1.42,0,0,1,31.46,79Z"/>
1227
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="78.99" r="1.42"/>
1228
+ <path class="cls-ScatterPoint-4" d="M41.86,68.12a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,68.12Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.42,1.42,0,0,1,42.8,68.12Z"/>
1229
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="68.12" r="1.42"/>
1230
+ <path class="cls-ScatterPoint-4" d="M53.2,56.78a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,56.78Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,54.14,56.78Z"/>
1231
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="56.78" r="1.42"/>
1232
+ <path class="cls-ScatterPoint-4" d="M53.2,76.15a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,53.2,76.15Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,54.14,76.15Z"/>
1233
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="76.15" r="1.42"/>
1234
+ <path class="cls-ScatterPoint-4" d="M41.86,85.52a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,41.86,85.52Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,42.8,85.52Z"/>
1235
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="85.52" r="1.42"/>
1236
+ <path class="cls-ScatterPoint-4" d="M64.06,83.24a2.37,2.37,0,1,0,2.37-2.36A2.37,2.37,0,0,0,64.06,83.24Zm1,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,65,83.24Z"/>
1237
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="83.24" r="1.42"/>
1238
+ <path class="cls-ScatterPoint-4" d="M75.4,75.68a2.37,2.37,0,1,0,2.36-2.36A2.36,2.36,0,0,0,75.4,75.68Zm.95,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,76.35,75.68Z"/>
1239
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="75.68" r="1.42"/>
1240
+ <path class="cls-ScatterPoint-4" d="M77.76,75.21a2.37,2.37,0,1,0,2.37-2.37A2.37,2.37,0,0,0,77.76,75.21Zm.95,0a1.42,1.42,0,1,1,1.42,1.41A1.41,1.41,0,0,1,78.71,75.21Z"/>
1241
+ <circle class="cls-ScatterPoint-2" cx="80.13" cy="75.21" r="1.42"/>
1242
+ <path class="cls-ScatterPoint-4" d="M86.27,54.89a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,86.27,54.89Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,87.21,54.89Z"/>
1243
+ <circle class="cls-ScatterPoint-2" cx="88.63" cy="54.89" r="1.42"/>
1244
+ <path class="cls-ScatterPoint-4" d="M90.52,71a2.37,2.37,0,1,0,2.36-2.36A2.37,2.37,0,0,0,90.52,71Zm1,0a1.42,1.42,0,1,1,1.41,1.42A1.41,1.41,0,0,1,91.47,71Z"/>
1245
+ <circle class="cls-ScatterPoint-2" cx="92.88" cy="70.95" r="1.42"/>
1246
+ <path class="cls-ScatterPoint-4" d="M86.74,88.36A2.37,2.37,0,1,0,89.1,86,2.36,2.36,0,0,0,86.74,88.36Zm1,0a1.42,1.42,0,1,1,1.41,1.41A1.41,1.41,0,0,1,87.69,88.36Z"/>
1247
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="88.36" r="1.42"/>
1248
+ <path class="cls-ScatterPoint-4" d="M30.52,83.71a2.36,2.36,0,1,0,2.36-2.36A2.36,2.36,0,0,0,30.52,83.71Zm.94,0a1.42,1.42,0,1,1,1.42,1.42A1.43,1.43,0,0,1,31.46,83.71Z"/>
1249
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="83.71" r="1.42"/>
1250
+ </g>
1251
+ </svg>
1232
1252
  `;
1233
1253
 
1234
1254
  var charts = /*#__PURE__*/Object.freeze({
@@ -1252,21 +1272,21 @@ var charts = /*#__PURE__*/Object.freeze({
1252
1272
  });
1253
1273
 
1254
1274
  class SvgPipe {
1255
- constructor(sanitizer) {
1256
- this.sanitizer = sanitizer;
1275
+ constructor() {
1276
+ this.sanitizer = inject(DomSanitizer);
1257
1277
  }
1258
1278
  transform(markup) {
1259
1279
  return this.sanitizer.bypassSecurityTrustHtml(markup);
1260
1280
  }
1261
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: SvgPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1262
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: SvgPipe, isStandalone: true, name: "svg" }); }
1281
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SvgPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1282
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: SvgPipe, isStandalone: true, name: "svg" }); }
1263
1283
  }
1264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: SvgPipe, decorators: [{
1284
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SvgPipe, decorators: [{
1265
1285
  type: Pipe,
1266
1286
  args: [{
1267
1287
  name: 'svg',
1268
1288
  }]
1269
- }], ctorParameters: () => [{ type: i1$1.DomSanitizer }] });
1289
+ }] });
1270
1290
 
1271
1291
  class IgxChartMenuComponent {
1272
1292
  get width() {
@@ -1281,20 +1301,28 @@ class IgxChartMenuComponent {
1281
1301
  set height(value) {
1282
1302
  this._height = value;
1283
1303
  }
1284
- constructor(element) {
1285
- this.element = element;
1286
- this.onClose = new EventEmitter();
1304
+ constructor() {
1305
+ this.closed = new EventEmitter();
1287
1306
  this.chartDialogResizeNotify = new Subject();
1288
1307
  this.allCharts = [];
1289
1308
  this.fullScreen = false;
1290
1309
  this.isConfigAreaExpanded = false;
1291
1310
  this.mainChartTypes = ['Column', 'Area', 'Bar', 'Line', 'Scatter', 'Pie'];
1311
+ this.element = inject((ElementRef));
1292
1312
  this.images = charts;
1293
1313
  }
1294
1314
  ngAfterViewInit() {
1295
1315
  this.contentObserver = new ResizeObserver((args) => this.chartDialogResizeNotify.next(args));
1296
1316
  this.contentObserver.observe(this.element.nativeElement);
1297
- this.createChart(this.currentChartType);
1317
+ if (this.currentChartType && this.chartDirective) {
1318
+ this.createChart(this.currentChartType);
1319
+ }
1320
+ }
1321
+ ngOnDestroy() {
1322
+ if (this.contentObserver) {
1323
+ this.contentObserver.disconnect();
1324
+ }
1325
+ this.chartDialogResizeNotify.complete();
1298
1326
  }
1299
1327
  toggleFullScreen() {
1300
1328
  this.fullScreen = !this.fullScreen;
@@ -1303,24 +1331,24 @@ class IgxChartMenuComponent {
1303
1331
  return this.allCharts.some(c => c.includes(chartType));
1304
1332
  }
1305
1333
  createChart(chartType) {
1334
+ if (!chartType || !this.chartDirective || !this.chartArea) {
1335
+ return;
1336
+ }
1306
1337
  this.currentChartType = chartType;
1307
1338
  this.title = chartType.split(/(?=[A-Z])/).toString().replace(',', ' ');
1308
- try {
1309
- this.chartArea.clear();
1310
- }
1311
- catch (e) { }
1339
+ this.chartArea.clear();
1312
1340
  this.chartDirective.chartFactory(chartType, this.chartArea);
1313
1341
  }
1314
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxChartMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1315
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: IgxChartMenuComponent, isStandalone: true, selector: "igx-chart-menu", outputs: { onClose: "onClose" }, host: { properties: { "style.width.px": "this.width", "style.height.px": "this.height" } }, viewQueries: [{ propertyName: "chartArea", first: true, predicate: ["chartArea"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"header\">\r\n <span class=\"header-text\">\r\n {{ title }} Chart\r\n </span>\r\n <span class=\"action-buttons-wrapper\">\r\n <button igxIconButton=\"flat\" (click)=\"toggleFullScreen()\">\r\n <igx-icon class=\"material\">fullscreen{{fullScreen ? '_exit' : ''}}</igx-icon>\r\n </button>\r\n <button igxIconButton=\"flat\" (click)=\"onClose.emit()\">\r\n <igx-icon class=\"material\">close</igx-icon>\r\n </button>\r\n </span>\r\n</div>\r\n<div class=\"selection-area ig-scrollbar\">\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"chart-area\" [ngClass]=\"{'expanded': isConfigAreaExpanded}\">\r\n <ng-template #chartArea ></ng-template>\r\n </div>\r\n <div>\r\n <button igxIconButton=\"flat\" igxRipple (click)=\"isConfigAreaExpanded = !isConfigAreaExpanded\">\r\n <igx-icon family=\"material\">chevron_{{ isConfigAreaExpanded ? 'left': 'right'}}</igx-icon>\r\n </button>\r\n </div>\r\n <div #configArea [ngClass]=\"{'chart-config-area': true, 'opened': !isConfigAreaExpanded, 'closed': isConfigAreaExpanded }\">\r\n <div class=\"config-area-header\">\r\n <span>Chart Types</span>\r\n </div>\r\n <igx-divider class=\"divider\"></igx-divider>\r\n <div class=\"wrapper\" *ngFor=\"let chartType of mainChartTypes\">\r\n <ng-container *ngIf=\"hasAvailableChart(chartType)\">\r\n <div>{{chartType | titlecase}} Chart</div>\r\n <div class=\"types-section\">\r\n <ng-container *ngFor=\"let chart of allCharts\">\r\n <span *ngIf=\"chart.startsWith(chartType)\" class=\"types-section-btn\" title=\"{{chart}}\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (click)=\"createChart(chart)\">\r\n <div [innerHTML]=\"images[chart] | svg\">\r\n </div>\r\n </span>\r\n </ng-container>\r\n </div>\r\n <igx-divider></igx-divider>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".ig-chart-legend-items-list{height:20%;display:inline-flex;flex-wrap:wrap;margin-bottom:1rem}igx-chart-menu{display:flex;flex-flow:column;overflow:hidden;background-color:#fff;transition:width .2s ease-in-out,height .3s ease-in-out}.header{height:10%;background-color:#e0e0e0;display:flex;font-size:1.8rem}.header .action-buttons-wrapper{margin-left:auto;margin-right:10px;align-self:center}.header .header-text{margin-right:auto;align-self:center;margin-left:3rem}.selection-area,.selection-area .ig-scrollbar{--sb-size: var(--ig-scrollbar-sb-size, 1rem);--sb-thumb-min-height: var(--ig-scrollbar-sb-thumb-min-height, 2rem);--sb-thumb-bg-color: var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}.selection-area{width:100%;height:90%;display:inline-flex;flex-flow:row}.selection-area .chart-area{margin-top:1rem;overflow-y:hidden;overflow-x:hidden;width:100%}.selection-area .chart-config-area{transition:all;transition-duration:.3s;transition-timing-function:ease-in-out}.selection-area .chart-config-area.opened{width:25%;overflow-y:auto;overflow-x:hidden}.selection-area .chart-config-area.closed{width:0;transform:translate(100%)}.selection-area .chart-config-area .config-area-header{margin-bottom:3px;font-size:1rem;font-weight:700;text-align:center}.selection-area .chart-config-area .types-section-btn{width:40%;margin-right:5px;cursor:pointer}.selection-area .chart-config-area .types-section-btn.selected{opacity:.5}.selection-area .wrapper{padding:3px}.selection-area .wrapper .types-section{display:flex;flex-wrap:wrap}.selection-area .wrapper .igx-divider{margin:5px!important;background:#000!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "pipe", type: i1$2.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SvgPipe, name: "svg" }], encapsulation: i0.ViewEncapsulation.None }); }
1342
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxChartMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1343
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: IgxChartMenuComponent, isStandalone: true, selector: "igx-chart-menu", outputs: { closed: "closed" }, host: { properties: { "style.width.px": "this.width", "style.height.px": "this.height" } }, viewQueries: [{ propertyName: "chartArea", first: true, predicate: ["chartArea"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"header\">\n <span class=\"header-text\">\n {{ title }} Chart\n </span>\n <span class=\"action-buttons-wrapper\">\n <button igxIconButton=\"flat\" (click)=\"toggleFullScreen()\">\n <igx-icon class=\"material\">fullscreen{{fullScreen ? '_exit' : ''}}</igx-icon>\n </button>\n <button igxIconButton=\"flat\" (click)=\"closed.emit()\">\n <igx-icon class=\"material\">close</igx-icon>\n </button>\n </span>\n</div>\n<div class=\"selection-area ig-scrollbar\">\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"chart-area\" [ngClass]=\"{'expanded': isConfigAreaExpanded}\">\n <ng-template #chartArea ></ng-template>\n </div>\n <div>\n <button igxIconButton=\"flat\" igxRipple (click)=\"isConfigAreaExpanded = !isConfigAreaExpanded\">\n <igx-icon family=\"material\">chevron_{{ isConfigAreaExpanded ? 'left': 'right'}}</igx-icon>\n </button>\n </div>\n <div #configArea [ngClass]=\"{'chart-config-area': true, 'opened': !isConfigAreaExpanded, 'closed': isConfigAreaExpanded }\">\n <div class=\"config-area-header\">\n <span>Chart Types</span>\n </div>\n <igx-divider class=\"divider\"></igx-divider>\n @for (chartType of mainChartTypes; track chartType) {\n <div class=\"wrapper\">\n @if (hasAvailableChart(chartType)) {\n <div>{{chartType | titlecase}} Chart</div>\n <div class=\"types-section\">\n @for (chart of allCharts; track chart) {\n @if (chart.startsWith(chartType)) {\n <span class=\"types-section-btn\" title=\"{{chart}}\"\n [ngClass]=\"{'selected': chart === currentChartType}\" (click)=\"createChart(chart)\">\n <div [innerHTML]=\"images[chart] | svg\">\n </div>\n </span>\n }\n }\n </div>\n <igx-divider></igx-divider>\n }\n </div>\n }\n </div>\n</div>\n", styles: [".ig-chart-legend-items-list{height:20%;display:inline-flex;flex-wrap:wrap;margin-bottom:1rem}igx-chart-menu{display:flex;flex-flow:column;overflow:hidden;background-color:#fff;transition:width .2s ease-in-out,height .3s ease-in-out}.header{height:10%;background-color:#e0e0e0;display:flex;font-size:1.8rem}.header .action-buttons-wrapper{margin-left:auto;margin-right:10px;align-self:center}.header .header-text{margin-right:auto;align-self:center;margin-left:3rem}.selection-area,.selection-area .ig-scrollbar{--sb-size: var(--igx-scrollbar-sb-size, var(--ig-scrollbar-sb-size, 1rem));--sb-thumb-min-height: var(--igx-scrollbar-sb-thumb-min-height, var(--ig-scrollbar-sb-thumb-min-height, 2rem));--sb-thumb-bg-color: var(--igx-scrollbar-sb-thumb-bg-color, var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400)));--sb-thumb-bg-color-hover: var(--igx-scrollbar-sb-thumb-bg-color-hover, var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400)));--sb-thumb-border-color: var(--igx-scrollbar-sb-thumb-border-color, var(--ig-scrollbar-sb-thumb-border-color, transparent));--sb-thumb-border-size: var(--igx-scrollbar-sb-thumb-border-size, var(--ig-scrollbar-sb-thumb-border-size, 0));--sb-thumb-border-radius: var(--igx-scrollbar-sb-thumb-border-radius, var(--ig-scrollbar-sb-thumb-border-radius, 0));--sb-track-bg-color: var(--igx-scrollbar-sb-track-bg-color, var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100)));--sb-track-bg-color-hover: var(--igx-scrollbar-sb-track-bg-color-hover, var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100)));--sb-track-border-color: var(--igx-scrollbar-sb-track-border-color, var(--ig-scrollbar-sb-track-border-color, transparent));--sb-track-border-size: var(--igx-scrollbar-sb-track-border-size, var(--ig-scrollbar-sb-track-border-size, 0));--sb-corner-bg: var(--igx-scrollbar-sb-corner-bg, var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100)));--sb-corner-border-color: var(--igx-scrollbar-sb-corner-border-color, var(--ig-scrollbar-sb-corner-border-color, transparent));--sb-corner-border-size: var(--igx-scrollbar-sb-corner-border-size, var(--ig-scrollbar-sb-corner-border-size, 0));--ig-theme: material;--ig-theme-variant: light}@-moz-document url-prefix(){}.selection-area{width:100%;height:90%;display:inline-flex;flex-flow:row}.selection-area .chart-area{margin-top:1rem;overflow-y:hidden;overflow-x:hidden;width:100%}.selection-area .chart-config-area.opened{width:25%;overflow-y:auto;overflow-x:hidden}.selection-area .chart-config-area.closed{width:0;transform:translate(100%)}.selection-area .chart-config-area{transition:all;transition-duration:.3s;transition-timing-function:ease-in-out}.selection-area .chart-config-area .config-area-header{margin-bottom:3px;font-size:1rem;font-weight:700;text-align:center}.selection-area .chart-config-area .types-section-btn{width:40%;margin-right:5px;cursor:pointer}.selection-area .chart-config-area .types-section-btn.selected{opacity:.5}.selection-area .wrapper{padding:3px}.selection-area .wrapper .types-section{display:flex;flex-wrap:wrap}.selection-area .wrapper .igx-divider{margin:5px!important;background:#000!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "directive", type: IgxRippleDirective, selector: "[igxRipple]", inputs: ["igxRippleTarget", "igxRipple", "igxRippleDuration", "igxRippleCentered", "igxRippleDisabled"] }, { kind: "directive", type: IgxDividerDirective, selector: "igx-divider", inputs: ["id", "role", "type", "middle", "vertical", "inset"] }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SvgPipe, name: "svg" }], encapsulation: i0.ViewEncapsulation.None }); }
1316
1344
  }
1317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxChartMenuComponent, decorators: [{
1345
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxChartMenuComponent, decorators: [{
1318
1346
  type: Component,
1319
- args: [{ selector: 'igx-chart-menu', encapsulation: ViewEncapsulation.None, imports: [CommonModule, IgxIconComponent, IgxIconButtonDirective, SvgPipe], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<div class=\"header\">\r\n <span class=\"header-text\">\r\n {{ title }} Chart\r\n </span>\r\n <span class=\"action-buttons-wrapper\">\r\n <button igxIconButton=\"flat\" (click)=\"toggleFullScreen()\">\r\n <igx-icon class=\"material\">fullscreen{{fullScreen ? '_exit' : ''}}</igx-icon>\r\n </button>\r\n <button igxIconButton=\"flat\" (click)=\"onClose.emit()\">\r\n <igx-icon class=\"material\">close</igx-icon>\r\n </button>\r\n </span>\r\n</div>\r\n<div class=\"selection-area ig-scrollbar\">\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"chart-area\" [ngClass]=\"{'expanded': isConfigAreaExpanded}\">\r\n <ng-template #chartArea ></ng-template>\r\n </div>\r\n <div>\r\n <button igxIconButton=\"flat\" igxRipple (click)=\"isConfigAreaExpanded = !isConfigAreaExpanded\">\r\n <igx-icon family=\"material\">chevron_{{ isConfigAreaExpanded ? 'left': 'right'}}</igx-icon>\r\n </button>\r\n </div>\r\n <div #configArea [ngClass]=\"{'chart-config-area': true, 'opened': !isConfigAreaExpanded, 'closed': isConfigAreaExpanded }\">\r\n <div class=\"config-area-header\">\r\n <span>Chart Types</span>\r\n </div>\r\n <igx-divider class=\"divider\"></igx-divider>\r\n <div class=\"wrapper\" *ngFor=\"let chartType of mainChartTypes\">\r\n <ng-container *ngIf=\"hasAvailableChart(chartType)\">\r\n <div>{{chartType | titlecase}} Chart</div>\r\n <div class=\"types-section\">\r\n <ng-container *ngFor=\"let chart of allCharts\">\r\n <span *ngIf=\"chart.startsWith(chartType)\" class=\"types-section-btn\" title=\"{{chart}}\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (click)=\"createChart(chart)\">\r\n <div [innerHTML]=\"images[chart] | svg\">\r\n </div>\r\n </span>\r\n </ng-container>\r\n </div>\r\n <igx-divider></igx-divider>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".ig-chart-legend-items-list{height:20%;display:inline-flex;flex-wrap:wrap;margin-bottom:1rem}igx-chart-menu{display:flex;flex-flow:column;overflow:hidden;background-color:#fff;transition:width .2s ease-in-out,height .3s ease-in-out}.header{height:10%;background-color:#e0e0e0;display:flex;font-size:1.8rem}.header .action-buttons-wrapper{margin-left:auto;margin-right:10px;align-self:center}.header .header-text{margin-right:auto;align-self:center;margin-left:3rem}.selection-area,.selection-area .ig-scrollbar{--sb-size: var(--ig-scrollbar-sb-size, 1rem);--sb-thumb-min-height: var(--ig-scrollbar-sb-thumb-min-height, 2rem);--sb-thumb-bg-color: var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}.selection-area{width:100%;height:90%;display:inline-flex;flex-flow:row}.selection-area .chart-area{margin-top:1rem;overflow-y:hidden;overflow-x:hidden;width:100%}.selection-area .chart-config-area{transition:all;transition-duration:.3s;transition-timing-function:ease-in-out}.selection-area .chart-config-area.opened{width:25%;overflow-y:auto;overflow-x:hidden}.selection-area .chart-config-area.closed{width:0;transform:translate(100%)}.selection-area .chart-config-area .config-area-header{margin-bottom:3px;font-size:1rem;font-weight:700;text-align:center}.selection-area .chart-config-area .types-section-btn{width:40%;margin-right:5px;cursor:pointer}.selection-area .chart-config-area .types-section-btn.selected{opacity:.5}.selection-area .wrapper{padding:3px}.selection-area .wrapper .types-section{display:flex;flex-wrap:wrap}.selection-area .wrapper .igx-divider{margin:5px!important;background:#000!important}\n"] }]
1320
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { chartArea: [{
1347
+ args: [{ selector: 'igx-chart-menu', encapsulation: ViewEncapsulation.None, imports: [CommonModule, IgxIconComponent, IgxIconButtonDirective, IgxRippleDirective, IgxDividerDirective, SvgPipe], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<div class=\"header\">\n <span class=\"header-text\">\n {{ title }} Chart\n </span>\n <span class=\"action-buttons-wrapper\">\n <button igxIconButton=\"flat\" (click)=\"toggleFullScreen()\">\n <igx-icon class=\"material\">fullscreen{{fullScreen ? '_exit' : ''}}</igx-icon>\n </button>\n <button igxIconButton=\"flat\" (click)=\"closed.emit()\">\n <igx-icon class=\"material\">close</igx-icon>\n </button>\n </span>\n</div>\n<div class=\"selection-area ig-scrollbar\">\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"chart-area\" [ngClass]=\"{'expanded': isConfigAreaExpanded}\">\n <ng-template #chartArea ></ng-template>\n </div>\n <div>\n <button igxIconButton=\"flat\" igxRipple (click)=\"isConfigAreaExpanded = !isConfigAreaExpanded\">\n <igx-icon family=\"material\">chevron_{{ isConfigAreaExpanded ? 'left': 'right'}}</igx-icon>\n </button>\n </div>\n <div #configArea [ngClass]=\"{'chart-config-area': true, 'opened': !isConfigAreaExpanded, 'closed': isConfigAreaExpanded }\">\n <div class=\"config-area-header\">\n <span>Chart Types</span>\n </div>\n <igx-divider class=\"divider\"></igx-divider>\n @for (chartType of mainChartTypes; track chartType) {\n <div class=\"wrapper\">\n @if (hasAvailableChart(chartType)) {\n <div>{{chartType | titlecase}} Chart</div>\n <div class=\"types-section\">\n @for (chart of allCharts; track chart) {\n @if (chart.startsWith(chartType)) {\n <span class=\"types-section-btn\" title=\"{{chart}}\"\n [ngClass]=\"{'selected': chart === currentChartType}\" (click)=\"createChart(chart)\">\n <div [innerHTML]=\"images[chart] | svg\">\n </div>\n </span>\n }\n }\n </div>\n <igx-divider></igx-divider>\n }\n </div>\n }\n </div>\n</div>\n", styles: [".ig-chart-legend-items-list{height:20%;display:inline-flex;flex-wrap:wrap;margin-bottom:1rem}igx-chart-menu{display:flex;flex-flow:column;overflow:hidden;background-color:#fff;transition:width .2s ease-in-out,height .3s ease-in-out}.header{height:10%;background-color:#e0e0e0;display:flex;font-size:1.8rem}.header .action-buttons-wrapper{margin-left:auto;margin-right:10px;align-self:center}.header .header-text{margin-right:auto;align-self:center;margin-left:3rem}.selection-area,.selection-area .ig-scrollbar{--sb-size: var(--igx-scrollbar-sb-size, var(--ig-scrollbar-sb-size, 1rem));--sb-thumb-min-height: var(--igx-scrollbar-sb-thumb-min-height, var(--ig-scrollbar-sb-thumb-min-height, 2rem));--sb-thumb-bg-color: var(--igx-scrollbar-sb-thumb-bg-color, var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400)));--sb-thumb-bg-color-hover: var(--igx-scrollbar-sb-thumb-bg-color-hover, var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400)));--sb-thumb-border-color: var(--igx-scrollbar-sb-thumb-border-color, var(--ig-scrollbar-sb-thumb-border-color, transparent));--sb-thumb-border-size: var(--igx-scrollbar-sb-thumb-border-size, var(--ig-scrollbar-sb-thumb-border-size, 0));--sb-thumb-border-radius: var(--igx-scrollbar-sb-thumb-border-radius, var(--ig-scrollbar-sb-thumb-border-radius, 0));--sb-track-bg-color: var(--igx-scrollbar-sb-track-bg-color, var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100)));--sb-track-bg-color-hover: var(--igx-scrollbar-sb-track-bg-color-hover, var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100)));--sb-track-border-color: var(--igx-scrollbar-sb-track-border-color, var(--ig-scrollbar-sb-track-border-color, transparent));--sb-track-border-size: var(--igx-scrollbar-sb-track-border-size, var(--ig-scrollbar-sb-track-border-size, 0));--sb-corner-bg: var(--igx-scrollbar-sb-corner-bg, var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100)));--sb-corner-border-color: var(--igx-scrollbar-sb-corner-border-color, var(--ig-scrollbar-sb-corner-border-color, transparent));--sb-corner-border-size: var(--igx-scrollbar-sb-corner-border-size, var(--ig-scrollbar-sb-corner-border-size, 0));--ig-theme: material;--ig-theme-variant: light}@-moz-document url-prefix(){}.selection-area{width:100%;height:90%;display:inline-flex;flex-flow:row}.selection-area .chart-area{margin-top:1rem;overflow-y:hidden;overflow-x:hidden;width:100%}.selection-area .chart-config-area.opened{width:25%;overflow-y:auto;overflow-x:hidden}.selection-area .chart-config-area.closed{width:0;transform:translate(100%)}.selection-area .chart-config-area{transition:all;transition-duration:.3s;transition-timing-function:ease-in-out}.selection-area .chart-config-area .config-area-header{margin-bottom:3px;font-size:1rem;font-weight:700;text-align:center}.selection-area .chart-config-area .types-section-btn{width:40%;margin-right:5px;cursor:pointer}.selection-area .chart-config-area .types-section-btn.selected{opacity:.5}.selection-area .wrapper{padding:3px}.selection-area .wrapper .types-section{display:flex;flex-wrap:wrap}.selection-area .wrapper .igx-divider{margin:5px!important;background:#000!important}\n"] }]
1348
+ }], ctorParameters: () => [], propDecorators: { chartArea: [{
1321
1349
  type: ViewChild,
1322
1350
  args: ['chartArea', { read: ViewContainerRef }]
1323
- }], onClose: [{
1351
+ }], closed: [{
1324
1352
  type: Output
1325
1353
  }], width: [{
1326
1354
  type: HostBinding,
@@ -1331,98 +1359,98 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
1331
1359
  }] } });
1332
1360
 
1333
1361
  // tslint:disable: max-line-length
1334
- const Clear = `
1335
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1336
- <defs>
1337
- <style>.cls-Clear-1{fill-rule:evenodd;}.cls-Clear-2{fill:none;}</style>
1338
- </defs>
1339
- <g id="Layer_2" data-name="Layer 2">
1340
- <g id="Layer_1-2" data-name="Layer 1">
1341
- <g id="Conditional-formating">
1342
- <g id="Artboard">
1343
- <g id="refresh-24px">
1344
- <path id="Path" class="cls-Clear-1" d="M17.65,6.35A8,8,0,1,0,19.73,14H17.65A6,6,0,1,1,12,6a5.91,5.91,0,0,1,4.22,1.78L13,11h7V4Z"/>
1345
- <polygon class="cls-Clear-2" points="0 0 24 0 24 24 0 24 0 0"/>
1346
- </g>
1347
- </g>
1348
- </g>
1349
- </g>
1350
- </g>
1351
- </svg>
1362
+ const Clear = `
1363
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1364
+ <defs>
1365
+ <style>.cls-Clear-1{fill-rule:evenodd;}.cls-Clear-2{fill:none;}</style>
1366
+ </defs>
1367
+ <g id="Layer_2" data-name="Layer 2">
1368
+ <g id="Layer_1-2" data-name="Layer 1">
1369
+ <g id="Conditional-formating">
1370
+ <g id="Artboard">
1371
+ <g id="refresh-24px">
1372
+ <path id="Path" class="cls-Clear-1" d="M17.65,6.35A8,8,0,1,0,19.73,14H17.65A6,6,0,1,1,12,6a5.91,5.91,0,0,1,4.22,1.78L13,11h7V4Z"/>
1373
+ <polygon class="cls-Clear-2" points="0 0 24 0 24 24 0 24 0 0"/>
1374
+ </g>
1375
+ </g>
1376
+ </g>
1377
+ </g>
1378
+ </g>
1379
+ </svg>
1352
1380
  `;
1353
- const ColorScale = `
1354
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1355
- <path d="M13 13.65h5a5.63 5.63 0 00-.09-1H13zM13 10.65h4.19a6.29 6.29 0 00-.74-1H13zM13 19.58a5.87 5.87 0 002.34-.93H13zM13 6.18v1.48h1.48l-1-1-.48-.48zM13 15.65v1h4.2a5.68 5.68 0 00.46-1zM11 6.18L7.76 9.43A6 6 0 0011 19.58z" fill="none"/>
1356
- <path d="M16.45 9.65H13v1h4.19a6.29 6.29 0 00-.74-1zM13.48 6.66L13 6.18v1.48h1.48l-1-1zM6 13.66a6 6 0 005 5.92V6.18L7.76 9.42A6 6 0 006 13.66zM13 19.58a5.87 5.87 0 002.34-.93H13zM13 16.65h4.2a5.68 5.68 0 00.46-1H13zM13 12.65v1h5a5.63 5.63 0 00-.09-1z" fill="none"/>
1357
- <path d="M19.93 12.66a7.84 7.84 0 00-.51-2 8.48 8.48 0 00-.5-1A7.8 7.8 0 0017.66 8l-.35-.36-.31-.26-.73-.73-2-2-.85-.84L12 2.34 6.34 8A8 8 0 0011 21.58h.21a7 7 0 00.79 0 7.14 7.14 0 00.8 0h.2a7.94 7.94 0 006.93-8.92zM11 19.58A6 6 0 017.76 9.42L11 6.18zm2-12.93v-.47l.48.47 1 1H13zm0 3h3.45a6.29 6.29 0 01.74 1H13zm0 9.93v-.93h2.34a5.87 5.87 0 01-2.34.93zm4.2-2.93H13v-1h4.66a5.68 5.68 0 01-.46 1zm-4.2-3v-1h4.91a5.63 5.63 0 01.09 1z"/>
1358
- <path d="M0 0h24v24H0z" fill="none"/>
1359
- </svg>
1360
-
1381
+ const ColorScale = `
1382
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1383
+ <path d="M13 13.65h5a5.63 5.63 0 00-.09-1H13zM13 10.65h4.19a6.29 6.29 0 00-.74-1H13zM13 19.58a5.87 5.87 0 002.34-.93H13zM13 6.18v1.48h1.48l-1-1-.48-.48zM13 15.65v1h4.2a5.68 5.68 0 00.46-1zM11 6.18L7.76 9.43A6 6 0 0011 19.58z" fill="none"/>
1384
+ <path d="M16.45 9.65H13v1h4.19a6.29 6.29 0 00-.74-1zM13.48 6.66L13 6.18v1.48h1.48l-1-1zM6 13.66a6 6 0 005 5.92V6.18L7.76 9.42A6 6 0 006 13.66zM13 19.58a5.87 5.87 0 002.34-.93H13zM13 16.65h4.2a5.68 5.68 0 00.46-1H13zM13 12.65v1h5a5.63 5.63 0 00-.09-1z" fill="none"/>
1385
+ <path d="M19.93 12.66a7.84 7.84 0 00-.51-2 8.48 8.48 0 00-.5-1A7.8 7.8 0 0017.66 8l-.35-.36-.31-.26-.73-.73-2-2-.85-.84L12 2.34 6.34 8A8 8 0 0011 21.58h.21a7 7 0 00.79 0 7.14 7.14 0 00.8 0h.2a7.94 7.94 0 006.93-8.92zM11 19.58A6 6 0 017.76 9.42L11 6.18zm2-12.93v-.47l.48.47 1 1H13zm0 3h3.45a6.29 6.29 0 01.74 1H13zm0 9.93v-.93h2.34a5.87 5.87 0 01-2.34.93zm4.2-2.93H13v-1h4.66a5.68 5.68 0 01-.46 1zm-4.2-3v-1h4.91a5.63 5.63 0 01.09 1z"/>
1386
+ <path d="M0 0h24v24H0z" fill="none"/>
1387
+ </svg>
1388
+
1361
1389
  `;
1362
- const DataBars = `
1363
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1364
- <path d="M3 7h12v2H3zM3 15h12v2H3zM3 19h18v2H3zM3 11h18v2H3zM3 3h18v2H3z"/>
1365
- <path d="M0 0h24v24H0z" fill="none"/>
1366
- </svg>
1367
-
1390
+ const DataBars = `
1391
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1392
+ <path d="M3 7h12v2H3zM3 15h12v2H3zM3 19h18v2H3zM3 11h18v2H3zM3 3h18v2H3z"/>
1393
+ <path d="M0 0h24v24H0z" fill="none"/>
1394
+ </svg>
1395
+
1368
1396
  `;
1369
- const DuplicateValues = `
1370
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1371
- <path d="M4.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H6a1.58 1.58 0 00-1.06.31zM16.94 14.69a1 1 0 00-.38.79.82.82 0 00.25.63 1.11 1.11 0 00.74.23 2 2 0 001.06-.29 1.5 1.5 0 00.63-.68v-1H18a1.54 1.54 0 00-1.06.32z" fill="none"/>
1372
- <path d="M4.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H6a1.58 1.58 0 00-1.06.31zM16.94 14.69a1 1 0 00-.38.79.82.82 0 00.25.63 1.11 1.11 0 00.74.23 2 2 0 001.06-.29 1.5 1.5 0 00.63-.68v-1H18a1.54 1.54 0 00-1.06.32z" fill="none"/>
1373
- <path d="M20.76 15.87v-3.06a2.17 2.17 0 00-.76-1.76 3 3 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.7 1.7 0 00-.73 1.45h1.49a.83.83 0 01.31-.66 1.29 1.29 0 01.84-.25 1.26 1.26 0 01.91.3 1.09 1.09 0 01.32.85v.6H18a3.81 3.81 0 00-2.22.56 1.78 1.78 0 00-.78 1.59 2 2 0 00.58 1.49 2.31 2.31 0 001.65.55 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.33 4.33 0 00.08.5c0 .16.08.33.13.51H21a4.29 4.29 0 01-.18-.77 5.46 5.46 0 01-.06-.78zm-1.52-.5a1.5 1.5 0 01-.63.68 2 2 0 01-1.06.29 1.11 1.11 0 01-.74-.23.82.82 0 01-.25-.63 1 1 0 01.38-.79 1.54 1.54 0 011.06-.34h1.24zM8.76 11.75V8.69A2.16 2.16 0 008 6.93a2.93 2.93 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.69 1.69 0 00-.73 1.44h1.5a.83.83 0 01.31-.65A1.3 1.3 0 016 7.52a1.23 1.23 0 01.91.31 1.07 1.07 0 01.32.84v.61H6a3.74 3.74 0 00-2.22.56A1.78 1.78 0 003 11.39a2 2 0 00.58 1.52 2.27 2.27 0 001.65.56 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.17 4.17 0 00.08.49 4.77 4.77 0 00.13.51H9a4 4 0 01-.18-.76 5.55 5.55 0 01-.06-.82zm-1.52-.5a1.48 1.48 0 01-.63.67 1.9 1.9 0 01-1.06.3 1.06 1.06 0 01-.74-.22.79.79 0 01-.25-.63 1 1 0 01.38-.79A1.58 1.58 0 016 10.23h1.24zM7 19h2v2H7zM7 15h2v2H7zM3 15h2v2H3zM15 7h2v2h-2zM15 3h2v2h-2zM3 19h2v2H3zM19 19h2v2h-2zM19 7h2v2h-2zM15 19h2v2h-2zM19 3h2v2h-2zM11 11h2v2h-2zM11 19h2v2h-2zM11 15h2v2h-2zM11 7h2v2h-2zM11 3h2v2h-2zM7 3h2v2H7zM3 3h2v2H3z"/>
1374
- <path d="M0 0h24v24H0z" fill="none"/>
1375
- </svg>
1376
-
1397
+ const DuplicateValues = `
1398
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1399
+ <path d="M4.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H6a1.58 1.58 0 00-1.06.31zM16.94 14.69a1 1 0 00-.38.79.82.82 0 00.25.63 1.11 1.11 0 00.74.23 2 2 0 001.06-.29 1.5 1.5 0 00.63-.68v-1H18a1.54 1.54 0 00-1.06.32z" fill="none"/>
1400
+ <path d="M4.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H6a1.58 1.58 0 00-1.06.31zM16.94 14.69a1 1 0 00-.38.79.82.82 0 00.25.63 1.11 1.11 0 00.74.23 2 2 0 001.06-.29 1.5 1.5 0 00.63-.68v-1H18a1.54 1.54 0 00-1.06.32z" fill="none"/>
1401
+ <path d="M20.76 15.87v-3.06a2.17 2.17 0 00-.76-1.76 3 3 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.7 1.7 0 00-.73 1.45h1.49a.83.83 0 01.31-.66 1.29 1.29 0 01.84-.25 1.26 1.26 0 01.91.3 1.09 1.09 0 01.32.85v.6H18a3.81 3.81 0 00-2.22.56 1.78 1.78 0 00-.78 1.59 2 2 0 00.58 1.49 2.31 2.31 0 001.65.55 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.33 4.33 0 00.08.5c0 .16.08.33.13.51H21a4.29 4.29 0 01-.18-.77 5.46 5.46 0 01-.06-.78zm-1.52-.5a1.5 1.5 0 01-.63.68 2 2 0 01-1.06.29 1.11 1.11 0 01-.74-.23.82.82 0 01-.25-.63 1 1 0 01.38-.79 1.54 1.54 0 011.06-.34h1.24zM8.76 11.75V8.69A2.16 2.16 0 008 6.93a2.93 2.93 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.69 1.69 0 00-.73 1.44h1.5a.83.83 0 01.31-.65A1.3 1.3 0 016 7.52a1.23 1.23 0 01.91.31 1.07 1.07 0 01.32.84v.61H6a3.74 3.74 0 00-2.22.56A1.78 1.78 0 003 11.39a2 2 0 00.58 1.52 2.27 2.27 0 001.65.56 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.17 4.17 0 00.08.49 4.77 4.77 0 00.13.51H9a4 4 0 01-.18-.76 5.55 5.55 0 01-.06-.82zm-1.52-.5a1.48 1.48 0 01-.63.67 1.9 1.9 0 01-1.06.3 1.06 1.06 0 01-.74-.22.79.79 0 01-.25-.63 1 1 0 01.38-.79A1.58 1.58 0 016 10.23h1.24zM7 19h2v2H7zM7 15h2v2H7zM3 15h2v2H3zM15 7h2v2h-2zM15 3h2v2h-2zM3 19h2v2H3zM19 19h2v2h-2zM19 7h2v2h-2zM15 19h2v2h-2zM19 3h2v2h-2zM11 11h2v2h-2zM11 19h2v2h-2zM11 15h2v2h-2zM11 7h2v2h-2zM11 3h2v2h-2zM7 3h2v2H7zM3 3h2v2H3z"/>
1402
+ <path d="M0 0h24v24H0z" fill="none"/>
1403
+ </svg>
1404
+
1377
1405
  `;
1378
- const Empty = `
1379
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1380
- <path d="M0 0h24v24H0z" fill="none"/>
1381
- <path d="M5 17h2v2H5zM13 17h2v2h-2zM5 13h2v2H5zM17 17h2v2h-2zM13 5h2v2h-2zM9 17h2v2H9zM17 9h2v2h-2zM17 13h2v2h-2zM17 5h2v2h-2zM5 9h2v2H5zM5 5h2v2H5zM9 5h2v2H9z"/>
1382
- <path d="M0 0h24v24H0z" fill="none"/>
1383
- </svg>
1384
-
1406
+ const Empty = `
1407
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1408
+ <path d="M0 0h24v24H0z" fill="none"/>
1409
+ <path d="M5 17h2v2H5zM13 17h2v2h-2zM5 13h2v2H5zM17 17h2v2h-2zM13 5h2v2h-2zM9 17h2v2H9zM17 9h2v2h-2zM17 13h2v2h-2zM17 5h2v2h-2zM5 9h2v2H5zM5 5h2v2H5zM9 5h2v2H9z"/>
1410
+ <path d="M0 0h24v24H0z" fill="none"/>
1411
+ </svg>
1412
+
1385
1413
  `;
1386
- const Equal = `
1387
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1388
- <path d="M5 13.5h14v2H5zM5 8.5h14v2H5z"/>
1389
- </svg>
1390
-
1414
+ const Equal = `
1415
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1416
+ <path d="M5 13.5h14v2H5zM5 8.5h14v2H5z"/>
1417
+ </svg>
1418
+
1391
1419
  `;
1392
- const GreaterThan = `
1393
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1394
- <path d="M6 7.11L15.09 12 6 16.89V19l12-6.46v-1.08L6 5v2.11z"/>
1395
- </svg>
1396
-
1420
+ const GreaterThan = `
1421
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1422
+ <path d="M6 7.11L15.09 12 6 16.89V19l12-6.46v-1.08L6 5v2.11z"/>
1423
+ </svg>
1424
+
1397
1425
  `;
1398
- const TextContains = `
1399
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1400
- <path d="M10.79 12.77a1.16 1.16 0 00-.44.9.92.92 0 00.3.72 1.18 1.18 0 00.84.27 2.27 2.27 0 001.21-.34 1.61 1.61 0 00.71-.77v-1.17H12a1.76 1.76 0 00-1.21.39z" fill="none"/>
1401
- <path d="M5 19h14V5H5zm8-9.36a1.45 1.45 0 00-1-.35 1.5 1.5 0 00-1 .29.93.93 0 00-.35.75H9a1.93 1.93 0 01.83-1.65 3.54 3.54 0 012.3-.72 3.34 3.34 0 012.22.7 2.44 2.44 0 01.84 2v3.5a5.57 5.57 0 00.07.93 4.51 4.51 0 00.21.88h-1.83c-.06-.2-.12-.39-.16-.58a3.72 3.72 0 01-.08-.57 3.05 3.05 0 01-1 .93 2.39 2.39 0 01-1.32.37 2.63 2.63 0 01-1.89-.63 2.29 2.29 0 01-.66-1.74 2.07 2.07 0 01.9-1.78A4.39 4.39 0 0112 11.3h1.38v-.69a1.3 1.3 0 00-.38-.97z" fill="none"/>
1402
- <path d="M3 3v18h18V3zm16 16H5V5h14z"/>
1403
- <path d="M12 11.3a4.39 4.39 0 00-2.54.63 2.07 2.07 0 00-.9 1.78 2.29 2.29 0 00.66 1.74 2.63 2.63 0 001.89.63 2.39 2.39 0 001.32-.37 3.05 3.05 0 001-.93 3.72 3.72 0 00.08.57c0 .19.1.38.16.58h1.79a4.51 4.51 0 01-.21-.88 5.57 5.57 0 01-.07-.93v-3.5a2.44 2.44 0 00-.84-2 3.34 3.34 0 00-2.22-.7 3.54 3.54 0 00-2.3.72A1.93 1.93 0 009 10.29h1.71a.93.93 0 01.29-.71 1.5 1.5 0 011-.29 1.45 1.45 0 011 .35 1.3 1.3 0 01.37 1v.69zm1.4 1.08v1.17a1.61 1.61 0 01-.71.77 2.27 2.27 0 01-1.21.34 1.18 1.18 0 01-.84-.27.92.92 0 01-.3-.72 1.16 1.16 0 01.44-.9 1.76 1.76 0 011.22-.39z"/>
1404
- <path d="M0 0h24v24H0z" fill="none"/>
1405
- </svg>
1406
-
1426
+ const TextContains = `
1427
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1428
+ <path d="M10.79 12.77a1.16 1.16 0 00-.44.9.92.92 0 00.3.72 1.18 1.18 0 00.84.27 2.27 2.27 0 001.21-.34 1.61 1.61 0 00.71-.77v-1.17H12a1.76 1.76 0 00-1.21.39z" fill="none"/>
1429
+ <path d="M5 19h14V5H5zm8-9.36a1.45 1.45 0 00-1-.35 1.5 1.5 0 00-1 .29.93.93 0 00-.35.75H9a1.93 1.93 0 01.83-1.65 3.54 3.54 0 012.3-.72 3.34 3.34 0 012.22.7 2.44 2.44 0 01.84 2v3.5a5.57 5.57 0 00.07.93 4.51 4.51 0 00.21.88h-1.83c-.06-.2-.12-.39-.16-.58a3.72 3.72 0 01-.08-.57 3.05 3.05 0 01-1 .93 2.39 2.39 0 01-1.32.37 2.63 2.63 0 01-1.89-.63 2.29 2.29 0 01-.66-1.74 2.07 2.07 0 01.9-1.78A4.39 4.39 0 0112 11.3h1.38v-.69a1.3 1.3 0 00-.38-.97z" fill="none"/>
1430
+ <path d="M3 3v18h18V3zm16 16H5V5h14z"/>
1431
+ <path d="M12 11.3a4.39 4.39 0 00-2.54.63 2.07 2.07 0 00-.9 1.78 2.29 2.29 0 00.66 1.74 2.63 2.63 0 001.89.63 2.39 2.39 0 001.32-.37 3.05 3.05 0 001-.93 3.72 3.72 0 00.08.57c0 .19.1.38.16.58h1.79a4.51 4.51 0 01-.21-.88 5.57 5.57 0 01-.07-.93v-3.5a2.44 2.44 0 00-.84-2 3.34 3.34 0 00-2.22-.7 3.54 3.54 0 00-2.3.72A1.93 1.93 0 009 10.29h1.71a.93.93 0 01.29-.71 1.5 1.5 0 011-.29 1.45 1.45 0 011 .35 1.3 1.3 0 01.37 1v.69zm1.4 1.08v1.17a1.61 1.61 0 01-.71.77 2.27 2.27 0 01-1.21.34 1.18 1.18 0 01-.84-.27.92.92 0 01-.3-.72 1.16 1.16 0 01.44-.9 1.76 1.76 0 011.22-.39z"/>
1432
+ <path d="M0 0h24v24H0z" fill="none"/>
1433
+ </svg>
1434
+
1407
1435
  `;
1408
- const Top10 = `
1409
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1410
- <path d="M17.34 7.14a.5.5 0 00-.13.33v.33a.48.48 0 00.13.33.41.41 0 00.31.14.37.37 0 00.42-.37v-.41a.49.49 0 00-.07-.34.45.45 0 00-.62 0zM10.84 8a.54.54 0 00.51-.3 2.05 2.05 0 00.17-.92V5.3a2 2 0 00-.17-.94.6.6 0 00-1 0 2.13 2.13 0 00-.17.88V6.7a2.14 2.14 0 00.17 1 .55.55 0 00.49.3zM14.88 5c.28 0 .42-.18.42-.53v-.26a.53.53 0 00-.11-.34.4.4 0 00-.32-.14.42.42 0 00-.31.13.52.52 0 00-.12.36v.29a.49.49 0 00.12.34.39.39 0 00.32.15z" fill="none"/>
1411
- <path d="M9 18h2v3h2v-3h2l-3-3-3 3zM4 11h16v2H4zM6.38 8.92h1.36V3.08h-.12l-2.57.89V5l1.33-.39v4.31zM10.84 9a1.85 1.85 0 001.5-.64 2.82 2.82 0 00.53-1.82V5.47a2.76 2.76 0 00-.54-1.82 1.83 1.83 0 00-1.5-.65 1.83 1.83 0 00-1.5.65 2.78 2.78 0 00-.53 1.82v1.07a2.79 2.79 0 00.53 1.81 1.86 1.86 0 001.51.65zm-.69-3.79a2.13 2.13 0 01.17-.88.6.6 0 011 0 2 2 0 01.17.94v1.47a2.05 2.05 0 01-.17.92.59.59 0 01-1 0 2.14 2.14 0 01-.17-1zM14.88 5.71a1.31 1.31 0 00.94-.33 1.11 1.11 0 00.35-.86v-.29a1.19 1.19 0 00-.35-.9 1.32 1.32 0 00-1-.33 1.34 1.34 0 00-.95.33 1.17 1.17 0 00-.35.88v.28a1.16 1.16 0 00.36.9 1.4 1.4 0 001 .32zm-.44-1.49a.52.52 0 01.12-.36.42.42 0 01.31-.13.4.4 0 01.32.14.53.53 0 01.11.34v.24c0 .35-.14.53-.42.53a.39.39 0 01-.32-.13.49.49 0 01-.12-.34zM15.13 8.48l2.85-4.56-.62-.32-2.85 4.57.62.31zM16.7 6.62a1.1 1.1 0 00-.35.87v.29a1.12 1.12 0 00.35.89 1.36 1.36 0 00.95.33 1.32 1.32 0 001-.33A1.15 1.15 0 0019 7.8v-.28a1.17 1.17 0 00-.36-.91 1.54 1.54 0 00-1.89 0zm1.38.87v.41a.37.37 0 01-.42.37.41.41 0 01-.31-.14.48.48 0 01-.13-.33v-.33a.5.5 0 01.13-.33.45.45 0 01.62 0 .49.49 0 01.11.35z"/>
1412
- <path d="M0 0h24v24H0z" fill="none"/>
1413
- </svg>
1414
-
1436
+ const Top10 = `
1437
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1438
+ <path d="M17.34 7.14a.5.5 0 00-.13.33v.33a.48.48 0 00.13.33.41.41 0 00.31.14.37.37 0 00.42-.37v-.41a.49.49 0 00-.07-.34.45.45 0 00-.62 0zM10.84 8a.54.54 0 00.51-.3 2.05 2.05 0 00.17-.92V5.3a2 2 0 00-.17-.94.6.6 0 00-1 0 2.13 2.13 0 00-.17.88V6.7a2.14 2.14 0 00.17 1 .55.55 0 00.49.3zM14.88 5c.28 0 .42-.18.42-.53v-.26a.53.53 0 00-.11-.34.4.4 0 00-.32-.14.42.42 0 00-.31.13.52.52 0 00-.12.36v.29a.49.49 0 00.12.34.39.39 0 00.32.15z" fill="none"/>
1439
+ <path d="M9 18h2v3h2v-3h2l-3-3-3 3zM4 11h16v2H4zM6.38 8.92h1.36V3.08h-.12l-2.57.89V5l1.33-.39v4.31zM10.84 9a1.85 1.85 0 001.5-.64 2.82 2.82 0 00.53-1.82V5.47a2.76 2.76 0 00-.54-1.82 1.83 1.83 0 00-1.5-.65 1.83 1.83 0 00-1.5.65 2.78 2.78 0 00-.53 1.82v1.07a2.79 2.79 0 00.53 1.81 1.86 1.86 0 001.51.65zm-.69-3.79a2.13 2.13 0 01.17-.88.6.6 0 011 0 2 2 0 01.17.94v1.47a2.05 2.05 0 01-.17.92.59.59 0 01-1 0 2.14 2.14 0 01-.17-1zM14.88 5.71a1.31 1.31 0 00.94-.33 1.11 1.11 0 00.35-.86v-.29a1.19 1.19 0 00-.35-.9 1.32 1.32 0 00-1-.33 1.34 1.34 0 00-.95.33 1.17 1.17 0 00-.35.88v.28a1.16 1.16 0 00.36.9 1.4 1.4 0 001 .32zm-.44-1.49a.52.52 0 01.12-.36.42.42 0 01.31-.13.4.4 0 01.32.14.53.53 0 01.11.34v.24c0 .35-.14.53-.42.53a.39.39 0 01-.32-.13.49.49 0 01-.12-.34zM15.13 8.48l2.85-4.56-.62-.32-2.85 4.57.62.31zM16.7 6.62a1.1 1.1 0 00-.35.87v.29a1.12 1.12 0 00.35.89 1.36 1.36 0 00.95.33 1.32 1.32 0 001-.33A1.15 1.15 0 0019 7.8v-.28a1.17 1.17 0 00-.36-.91 1.54 1.54 0 00-1.89 0zm1.38.87v.41a.37.37 0 01-.42.37.41.41 0 01-.31-.14.48.48 0 01-.13-.33v-.33a.5.5 0 01.13-.33.45.45 0 01.62 0 .49.49 0 01.11.35z"/>
1440
+ <path d="M0 0h24v24H0z" fill="none"/>
1441
+ </svg>
1442
+
1415
1443
  `;
1416
- const UniqueValues = `
1417
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1418
- <path d="M0 0h24v24H0z" fill="none"/>
1419
- <path d="M8.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H10a1.58 1.58 0 00-1.06.31z" fill="none"/>
1420
- <path d="M8.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H10a1.58 1.58 0 00-1.06.31z" fill="none"/>
1421
- <path d="M12.76 11.75V8.69A2.16 2.16 0 0012 6.93a2.93 2.93 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.69 1.69 0 00-.73 1.44h1.5a.83.83 0 01.31-.65 1.3 1.3 0 01.86-.22 1.23 1.23 0 01.91.31 1.07 1.07 0 01.32.84v.61H10a3.74 3.74 0 00-2.22.56A1.78 1.78 0 007 11.39a2 2 0 00.58 1.52 2.27 2.27 0 001.65.56 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.17 4.17 0 00.08.49 4.77 4.77 0 00.13.51H13a4 4 0 01-.18-.76 5.55 5.55 0 01-.06-.82zm-1.52-.5a1.48 1.48 0 01-.63.67 1.9 1.9 0 01-1.06.3 1.06 1.06 0 01-.74-.22.79.79 0 01-.25-.63 1 1 0 01.38-.79 1.58 1.58 0 011.06-.35h1.24zM7 19h2v2H7zM7 15h2v2H7zM3 15h2v2H3zM15 7h2v2h-2zM15 3h2v2h-2zM3 19h2v2H3zM19 19h2v2h-2zM19 7h2v2h-2zM15 19h2v2h-2zM19 3h2v2h-2zM15 11h2v2h-2zM19 11h2v2h-2zM15 15h2v2h-2zM19 15h2v2h-2zM11 19h2v2h-2zM11 15h2v2h-2zM11 3h2v2h-2zM7 3h2v2H7zM3 3h2v2H3zM3 7h2v2H3zM3 11h2v2H3z"/>
1422
- <path d="M0 0h24v24H0z" fill="none"/>
1423
- <path d="M0 0h24v24H0z" fill="none"/>
1424
- </svg>
1425
-
1444
+ const UniqueValues = `
1445
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1446
+ <path d="M0 0h24v24H0z" fill="none"/>
1447
+ <path d="M8.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H10a1.58 1.58 0 00-1.06.31z" fill="none"/>
1448
+ <path d="M8.94 10.56a1 1 0 00-.38.79.79.79 0 00.25.63 1.06 1.06 0 00.74.24 1.9 1.9 0 001.06-.3 1.48 1.48 0 00.63-.67v-1H10a1.58 1.58 0 00-1.06.31z" fill="none"/>
1449
+ <path d="M12.76 11.75V8.69A2.16 2.16 0 0012 6.93a2.93 2.93 0 00-1.94-.61 3.06 3.06 0 00-2 .63 1.69 1.69 0 00-.73 1.44h1.5a.83.83 0 01.31-.65 1.3 1.3 0 01.86-.22 1.23 1.23 0 01.91.31 1.07 1.07 0 01.32.84v.61H10a3.74 3.74 0 00-2.22.56A1.78 1.78 0 007 11.39a2 2 0 00.58 1.52 2.27 2.27 0 001.65.56 2.12 2.12 0 001.16-.33 2.79 2.79 0 00.83-.81 4.17 4.17 0 00.08.49 4.77 4.77 0 00.13.51H13a4 4 0 01-.18-.76 5.55 5.55 0 01-.06-.82zm-1.52-.5a1.48 1.48 0 01-.63.67 1.9 1.9 0 01-1.06.3 1.06 1.06 0 01-.74-.22.79.79 0 01-.25-.63 1 1 0 01.38-.79 1.58 1.58 0 011.06-.35h1.24zM7 19h2v2H7zM7 15h2v2H7zM3 15h2v2H3zM15 7h2v2h-2zM15 3h2v2h-2zM3 19h2v2H3zM19 19h2v2h-2zM19 7h2v2h-2zM15 19h2v2h-2zM19 3h2v2h-2zM15 11h2v2h-2zM19 11h2v2h-2zM15 15h2v2h-2zM19 15h2v2h-2zM11 19h2v2h-2zM11 15h2v2h-2zM11 3h2v2h-2zM7 3h2v2H7zM3 3h2v2H3zM3 7h2v2H3zM3 11h2v2H3z"/>
1450
+ <path d="M0 0h24v24H0z" fill="none"/>
1451
+ <path d="M0 0h24v24H0z" fill="none"/>
1452
+ </svg>
1453
+
1426
1454
  `;
1427
1455
 
1428
1456
  var conditions = /*#__PURE__*/Object.freeze({
@@ -1440,8 +1468,7 @@ var conditions = /*#__PURE__*/Object.freeze({
1440
1468
  });
1441
1469
 
1442
1470
  class IgxContextMenuComponent {
1443
- constructor(overlayService) {
1444
- this.overlayService = overlayService;
1471
+ constructor() {
1445
1472
  this.chartTypes = [];
1446
1473
  this.textFormatters = [];
1447
1474
  this.displayCreationTab = true;
@@ -1475,6 +1502,7 @@ class IgxContextMenuComponent {
1475
1502
  closeAnimation: null,
1476
1503
  }),
1477
1504
  };
1505
+ this.overlayService = inject(IgxOverlayService);
1478
1506
  this.chartImages = charts;
1479
1507
  this.conditionImages = conditions;
1480
1508
  }
@@ -1483,14 +1511,14 @@ class IgxContextMenuComponent {
1483
1511
  this.textFormatters = this.contextDirective.formatters;
1484
1512
  this.displayCreationTab = this.contextDirective.displayCreationTab;
1485
1513
  if (this.contextDirective.chartsDirective) {
1486
- this.contextDirective.chartsDirective.onChartTypesDetermined.pipe(takeUntil(this.destroy$))
1514
+ this.contextDirective.chartsDirective.chartTypesDetermined.pipe(takeUntil(this.destroy$))
1487
1515
  .subscribe((args) => (this.chartTypes = args.chartsForCreation));
1488
1516
  }
1489
1517
  if (this.contextDirective.textFormatter) {
1490
- this.contextDirective.textFormatter.onFormattersReady.pipe(takeUntil(this.destroy$))
1518
+ this.contextDirective.textFormatter.formattersReady.pipe(takeUntil(this.destroy$))
1491
1519
  .subscribe((names) => (this.textFormatters = names));
1492
1520
  }
1493
- this.contextDirective.onButtonClose.pipe(takeUntil(this.destroy$))
1521
+ this.contextDirective.buttonClose.pipe(takeUntil(this.destroy$))
1494
1522
  .subscribe(() => {
1495
1523
  if (this.tabsMenu && !this.tabsMenu.collapsed) {
1496
1524
  this.tabsMenu.close();
@@ -1528,7 +1556,7 @@ class IgxContextMenuComponent {
1528
1556
  }
1529
1557
  }
1530
1558
  });
1531
- instance.onClose?.subscribe(() => this.closeDialog());
1559
+ instance.closed?.subscribe(() => this.closeDialog());
1532
1560
  }
1533
1561
  });
1534
1562
  this.overlayService.closing.pipe(takeUntil(this.destroy$))
@@ -1545,9 +1573,14 @@ class IgxContextMenuComponent {
1545
1573
  this.destroy$.complete();
1546
1574
  }
1547
1575
  toggleTabMenu() {
1548
- this.currentChartType = this.currentChartType || CHART_TYPE.COLUMN_GROUPED;
1576
+ this.currentChartType = this.currentChartType || CHART_TYPE.ColumnGrouped;
1549
1577
  this._tabsMenuOverlaySettings.target = this.button.nativeElement;
1550
- this.tabsMenu.collapsed ? this.tabsMenu.open(this._tabsMenuOverlaySettings) : this.tabsMenu.close();
1578
+ if (this.tabsMenu.collapsed) {
1579
+ this.tabsMenu.open(this._tabsMenuOverlaySettings);
1580
+ }
1581
+ else {
1582
+ this.tabsMenu.close();
1583
+ }
1551
1584
  }
1552
1585
  formatCells(condition) {
1553
1586
  this.currentFormatter = condition;
@@ -1569,7 +1602,7 @@ class IgxContextMenuComponent {
1569
1602
  }
1570
1603
  openDialog(type) {
1571
1604
  this.currentChartType =
1572
- type || this.currentChartType || CHART_TYPE.COLUMN_GROUPED;
1605
+ type || this.currentChartType || CHART_TYPE.ColumnGrouped;
1573
1606
  this._dialogId = this._dialogId || this.overlayService.attach(IgxChartMenuComponent, this._chartDialogOS);
1574
1607
  this.tabsMenu.close();
1575
1608
  this.overlayService.show(this._dialogId);
@@ -1582,15 +1615,13 @@ class IgxContextMenuComponent {
1582
1615
  this._dialogId = undefined;
1583
1616
  }
1584
1617
  }
1585
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxContextMenuComponent, deps: [{ token: i1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Component }); }
1586
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: IgxContextMenuComponent, isStandalone: true, selector: "igx-context-menu", viewQueries: [{ propertyName: "button", first: true, predicate: ["analyticsBtn"], descendants: true }, { propertyName: "tabsMenu", first: true, predicate: ["tabsMenu"], descendants: true, read: IgxToggleDirective }, { propertyName: "chartPreview", first: true, predicate: ["chartPreview"], descendants: true, read: ViewContainerRef }, { propertyName: "chartPreviewDialog", first: true, predicate: ["chartPreviewDialog"], descendants: true, read: IgxToggleDirective }, { propertyName: "tabs", first: true, predicate: IgxTabsComponent, descendants: true }], ngImport: i0, template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\r\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\r\n </button>\r\n</span>\r\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\r\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\r\n <igx-tab-item [disabled]=\"!textFormatters.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Conditional Formatting</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let condition of textFormatters\" class=\"action btn condition\"\r\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\r\n (click)=\"formatCells(condition)\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\r\n </div>\r\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\r\n </span>\r\n </span>\r\n <span class=\"clear action\"\r\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\r\n (click)=\"clearFormat()\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\r\n </div>\r\n <span class=\"btn name\">Clear All</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n <igx-tab-item *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}.disableButton{opacity:.4;pointer-events:none}.clear,.more-action{display:flex;flex-flow:column;justify-content:center;border-left:1px solid #bdbdbd}.clear .btn,.clear .more-btn,.more-action .btn,.more-action .more-btn{width:68px;margin:0 0 7px;padding:0}.clear .more-btn,.more-action .more-btn{width:36px;height:36px;align-self:center;border-radius:20px}.clear .name,.more-action .name{font-size:.9rem;font-weight:400;text-align:center}.icon{pointer-events:none}.btn{display:inline-flex;flex-flow:column;align-items:center}.btn.condition{padding-right:16px}.btn.chart{padding-right:24px}.btn img,.btn span{pointer-events:none}.chart-preview{width:350px;height:300px;background-color:#fff;overflow:hidden}.chart-preview .chart-preview-title{margin:1rem;justify-content:center}.chart-preview .chart-preview-area{height:270px}::ng-deep .toggle-content,::ng-deep .toggle-content .ig-scrollbar{--sb-size: var(--ig-scrollbar-sb-size, 1rem);--sb-thumb-min-height: var(--ig-scrollbar-sb-thumb-min-height, 2rem);--sb-thumb-bg-color: var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "component", type: IgxTabsComponent, selector: "igx-tabs", inputs: ["tabAlignment", "activation"] }, { kind: "component", type: IgxTabItemComponent, selector: "igx-tab-item" }, { kind: "component", type: IgxTabHeaderComponent, selector: "igx-tab-header" }, { kind: "component", type: IgxTabContentComponent, selector: "igx-tab-content" }, { kind: "directive", type: IgxTabHeaderLabelDirective, selector: "igx-tab-header-label,[igxTabHeaderLabel]" }, { kind: "ngmodule", type: IgxBarSeriesModule }, { kind: "ngmodule", type: IgxCategoryChartModule }, { kind: "ngmodule", type: IgxCategoryXAxisModule }, { kind: "ngmodule", type: IgxDataChartCategoryModule }, { kind: "ngmodule", type: IgxDataChartCoreModule }, { kind: "ngmodule", type: IgxDataChartInteractivityModule }, { kind: "ngmodule", type: IgxDataChartScatterModule }, { kind: "ngmodule", type: IgxDataChartStackedModule }, { kind: "ngmodule", type: IgxItemLegendModule }, { kind: "ngmodule", type: IgxLegendModule }, { kind: "ngmodule", type: IgxNumericXAxisModule }, { kind: "ngmodule", type: IgxNumericYAxisModule }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "pipe", type: i1$2.SlicePipe, name: "slice" }, { kind: "pipe", type: SvgPipe, name: "svg" }] }); }
1618
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxContextMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1619
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: IgxContextMenuComponent, isStandalone: true, selector: "igx-context-menu", viewQueries: [{ propertyName: "button", first: true, predicate: ["analyticsBtn"], descendants: true }, { propertyName: "tabsMenu", first: true, predicate: ["tabsMenu"], descendants: true, read: IgxToggleDirective }, { propertyName: "chartPreview", first: true, predicate: ["chartPreview"], descendants: true, read: ViewContainerRef }, { propertyName: "chartPreviewDialog", first: true, predicate: ["chartPreviewDialog"], descendants: true, read: IgxToggleDirective }, { propertyName: "tabs", first: true, predicate: IgxTabsComponent, descendants: true }], ngImport: i0, template: "<span #analyticsBtn class=\"analytics-btn\">\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\n </button>\n</span>\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\n <igx-tab-item [disabled]=\"!textFormatters.length\">\n <igx-tab-header>\n <span igxTabHeaderLabel>Conditional Formatting</span>\n </igx-tab-header>\n <igx-tab-content>\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"tabs\">\n <span class=\"tab-option\">\n @for (condition of textFormatters; track condition) {\n <span class=\"action btn condition\"\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\n (click)=\"formatCells(condition)\">\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\n </div>\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\n </span>\n }\n </span>\n <span class=\"clear action\"\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\n (click)=\"clearFormat()\">\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\n </div>\n <span class=\"btn name\">Clear All</span>\n </span>\n </div>\n </igx-tab-content>\n </igx-tab-item>\n @if (displayCreationTab) {\n <igx-tab-item [disabled]=\"!chartTypes.length\">\n <igx-tab-header>\n <span igxTabHeaderLabel>Create Chart</span>\n </igx-tab-header>\n <igx-tab-content>\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"tabs\">\n <span class=\"tab-option\">\n @for (chart of chartTypes | slice:0:4; track chart) {\n <span class=\"action btn chart\"\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\n </span>\n <span class=\"name\">{{chart}}</span>\n </span>\n }\n </span>\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\n (click)=\"openDialog()\">\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\n [style.--foreground]=\"'black'\">\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\n </button>\n <span class=\"name btn\">More...</span>\n </span>\n </div>\n </igx-tab-content>\n </igx-tab-item>\n }\n </igx-tabs>\n</div>\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\n <div class=\"chart-preview-title\">\n <h5>Preview Chart</h5>\n </div>\n <div class=\"chart-preview-area\">\n <ng-template #chartPreview></ng-template>\n </div>\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}.disableButton{opacity:.4;pointer-events:none}.clear,.more-action{display:flex;flex-flow:column;justify-content:center;border-left:1px solid #bdbdbd}.clear .btn,.clear .more-btn,.more-action .btn,.more-action .more-btn{width:68px;margin:0 0 7px;padding:0}.clear .more-btn,.more-action .more-btn{width:36px;height:36px;align-self:center;border-radius:20px}.clear .name,.more-action .name{font-size:.9rem;font-weight:400;text-align:center}.icon{pointer-events:none}.btn.condition{padding-right:16px}.btn.chart{padding-right:24px}.btn{display:inline-flex;flex-flow:column;align-items:center}.btn img,.btn span{pointer-events:none}.chart-preview{width:350px;height:300px;background-color:#fff;overflow:hidden}.chart-preview .chart-preview-title{margin:1rem;justify-content:center}.chart-preview .chart-preview-area{height:270px}::ng-deep .toggle-content,::ng-deep .toggle-content .ig-scrollbar{--sb-size: var(--igx-scrollbar-sb-size, var(--ig-scrollbar-sb-size, 1rem));--sb-thumb-min-height: var(--igx-scrollbar-sb-thumb-min-height, var(--ig-scrollbar-sb-thumb-min-height, 2rem));--sb-thumb-bg-color: var(--igx-scrollbar-sb-thumb-bg-color, var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400)));--sb-thumb-bg-color-hover: var(--igx-scrollbar-sb-thumb-bg-color-hover, var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400)));--sb-thumb-border-color: var(--igx-scrollbar-sb-thumb-border-color, var(--ig-scrollbar-sb-thumb-border-color, transparent));--sb-thumb-border-size: var(--igx-scrollbar-sb-thumb-border-size, var(--ig-scrollbar-sb-thumb-border-size, 0));--sb-thumb-border-radius: var(--igx-scrollbar-sb-thumb-border-radius, var(--ig-scrollbar-sb-thumb-border-radius, 0));--sb-track-bg-color: var(--igx-scrollbar-sb-track-bg-color, var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100)));--sb-track-bg-color-hover: var(--igx-scrollbar-sb-track-bg-color-hover, var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100)));--sb-track-border-color: var(--igx-scrollbar-sb-track-border-color, var(--ig-scrollbar-sb-track-border-color, transparent));--sb-track-border-size: var(--igx-scrollbar-sb-track-border-size, var(--ig-scrollbar-sb-track-border-size, 0));--sb-corner-bg: var(--igx-scrollbar-sb-corner-bg, var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100)));--sb-corner-border-color: var(--igx-scrollbar-sb-corner-border-color, var(--ig-scrollbar-sb-corner-border-color, transparent));--sb-corner-border-size: var(--igx-scrollbar-sb-corner-border-size, var(--ig-scrollbar-sb-corner-border-size, 0));--ig-theme: material;--ig-theme-variant: light}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["ariaHidden", "family", "name", "active"] }, { kind: "component", type: IgxTabsComponent, selector: "igx-tabs", inputs: ["tabAlignment", "activation"] }, { kind: "component", type: IgxTabItemComponent, selector: "igx-tab-item" }, { kind: "component", type: IgxTabHeaderComponent, selector: "igx-tab-header" }, { kind: "component", type: IgxTabContentComponent, selector: "igx-tab-content" }, { kind: "directive", type: IgxTabHeaderLabelDirective, selector: "[igxTabHeaderLabel],igx-tab-header-label" }, { kind: "ngmodule", type: IgxBarSeriesModule }, { kind: "ngmodule", type: IgxCategoryChartModule }, { kind: "ngmodule", type: IgxCategoryXAxisModule }, { kind: "ngmodule", type: IgxDataChartCategoryModule }, { kind: "ngmodule", type: IgxDataChartCoreModule }, { kind: "ngmodule", type: IgxDataChartInteractivityModule }, { kind: "ngmodule", type: IgxDataChartScatterModule }, { kind: "ngmodule", type: IgxDataChartStackedModule }, { kind: "ngmodule", type: IgxItemLegendModule }, { kind: "ngmodule", type: IgxLegendModule }, { kind: "ngmodule", type: IgxNumericXAxisModule }, { kind: "ngmodule", type: IgxNumericYAxisModule }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: SvgPipe, name: "svg" }] }); }
1587
1620
  }
1588
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxContextMenuComponent, decorators: [{
1621
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxContextMenuComponent, decorators: [{
1589
1622
  type: Component,
1590
1623
  args: [{ selector: 'igx-context-menu', imports: [
1591
1624
  CommonModule,
1592
- NgFor,
1593
- NgIf,
1594
1625
  SvgPipe,
1595
1626
  IgxToggleDirective,
1596
1627
  IgxIconComponent,
@@ -1611,9 +1642,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
1611
1642
  IgxLegendModule,
1612
1643
  IgxNumericXAxisModule,
1613
1644
  IgxNumericYAxisModule,
1614
- IgxIconButtonDirective,
1615
- ], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\r\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\r\n </button>\r\n</span>\r\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\r\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\r\n <igx-tab-item [disabled]=\"!textFormatters.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Conditional Formatting</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let condition of textFormatters\" class=\"action btn condition\"\r\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\r\n (click)=\"formatCells(condition)\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\r\n </div>\r\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\r\n </span>\r\n </span>\r\n <span class=\"clear action\"\r\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\r\n (click)=\"clearFormat()\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\r\n </div>\r\n <span class=\"btn name\">Clear All</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n <igx-tab-item *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}.disableButton{opacity:.4;pointer-events:none}.clear,.more-action{display:flex;flex-flow:column;justify-content:center;border-left:1px solid #bdbdbd}.clear .btn,.clear .more-btn,.more-action .btn,.more-action .more-btn{width:68px;margin:0 0 7px;padding:0}.clear .more-btn,.more-action .more-btn{width:36px;height:36px;align-self:center;border-radius:20px}.clear .name,.more-action .name{font-size:.9rem;font-weight:400;text-align:center}.icon{pointer-events:none}.btn{display:inline-flex;flex-flow:column;align-items:center}.btn.condition{padding-right:16px}.btn.chart{padding-right:24px}.btn img,.btn span{pointer-events:none}.chart-preview{width:350px;height:300px;background-color:#fff;overflow:hidden}.chart-preview .chart-preview-title{margin:1rem;justify-content:center}.chart-preview .chart-preview-area{height:270px}::ng-deep .toggle-content,::ng-deep .toggle-content .ig-scrollbar{--sb-size: var(--ig-scrollbar-sb-size, 1rem);--sb-thumb-min-height: var(--ig-scrollbar-sb-thumb-min-height, 2rem);--sb-thumb-bg-color: var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"] }]
1616
- }], ctorParameters: () => [{ type: i1.IgxOverlayService }], propDecorators: { button: [{
1645
+ IgxIconButtonDirective
1646
+ ], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<span #analyticsBtn class=\"analytics-btn\">\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\n </button>\n</span>\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\n <igx-tab-item [disabled]=\"!textFormatters.length\">\n <igx-tab-header>\n <span igxTabHeaderLabel>Conditional Formatting</span>\n </igx-tab-header>\n <igx-tab-content>\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"tabs\">\n <span class=\"tab-option\">\n @for (condition of textFormatters; track condition) {\n <span class=\"action btn condition\"\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\n (click)=\"formatCells(condition)\">\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\n </div>\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\n </span>\n }\n </span>\n <span class=\"clear action\"\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\n (click)=\"clearFormat()\">\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\n </div>\n <span class=\"btn name\">Clear All</span>\n </span>\n </div>\n </igx-tab-content>\n </igx-tab-item>\n @if (displayCreationTab) {\n <igx-tab-item [disabled]=\"!chartTypes.length\">\n <igx-tab-header>\n <span igxTabHeaderLabel>Create Chart</span>\n </igx-tab-header>\n <igx-tab-content>\n <igc-trial-watermark></igc-trial-watermark>\n <div class=\"tabs\">\n <span class=\"tab-option\">\n @for (chart of chartTypes | slice:0:4; track chart) {\n <span class=\"action btn chart\"\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\n </span>\n <span class=\"name\">{{chart}}</span>\n </span>\n }\n </span>\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\n (click)=\"openDialog()\">\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\n [style.--foreground]=\"'black'\">\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\n </button>\n <span class=\"name btn\">More...</span>\n </span>\n </div>\n </igx-tab-content>\n </igx-tab-item>\n }\n </igx-tabs>\n</div>\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\n <div class=\"chart-preview-title\">\n <h5>Preview Chart</h5>\n </div>\n <div class=\"chart-preview-area\">\n <ng-template #chartPreview></ng-template>\n </div>\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}.disableButton{opacity:.4;pointer-events:none}.clear,.more-action{display:flex;flex-flow:column;justify-content:center;border-left:1px solid #bdbdbd}.clear .btn,.clear .more-btn,.more-action .btn,.more-action .more-btn{width:68px;margin:0 0 7px;padding:0}.clear .more-btn,.more-action .more-btn{width:36px;height:36px;align-self:center;border-radius:20px}.clear .name,.more-action .name{font-size:.9rem;font-weight:400;text-align:center}.icon{pointer-events:none}.btn.condition{padding-right:16px}.btn.chart{padding-right:24px}.btn{display:inline-flex;flex-flow:column;align-items:center}.btn img,.btn span{pointer-events:none}.chart-preview{width:350px;height:300px;background-color:#fff;overflow:hidden}.chart-preview .chart-preview-title{margin:1rem;justify-content:center}.chart-preview .chart-preview-area{height:270px}::ng-deep .toggle-content,::ng-deep .toggle-content .ig-scrollbar{--sb-size: var(--igx-scrollbar-sb-size, var(--ig-scrollbar-sb-size, 1rem));--sb-thumb-min-height: var(--igx-scrollbar-sb-thumb-min-height, var(--ig-scrollbar-sb-thumb-min-height, 2rem));--sb-thumb-bg-color: var(--igx-scrollbar-sb-thumb-bg-color, var(--ig-scrollbar-sb-thumb-bg-color, var(--ig-gray-400)));--sb-thumb-bg-color-hover: var(--igx-scrollbar-sb-thumb-bg-color-hover, var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400)));--sb-thumb-border-color: var(--igx-scrollbar-sb-thumb-border-color, var(--ig-scrollbar-sb-thumb-border-color, transparent));--sb-thumb-border-size: var(--igx-scrollbar-sb-thumb-border-size, var(--ig-scrollbar-sb-thumb-border-size, 0));--sb-thumb-border-radius: var(--igx-scrollbar-sb-thumb-border-radius, var(--ig-scrollbar-sb-thumb-border-radius, 0));--sb-track-bg-color: var(--igx-scrollbar-sb-track-bg-color, var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100)));--sb-track-bg-color-hover: var(--igx-scrollbar-sb-track-bg-color-hover, var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100)));--sb-track-border-color: var(--igx-scrollbar-sb-track-border-color, var(--ig-scrollbar-sb-track-border-color, transparent));--sb-track-border-size: var(--igx-scrollbar-sb-track-border-size, var(--ig-scrollbar-sb-track-border-size, 0));--sb-corner-bg: var(--igx-scrollbar-sb-corner-bg, var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100)));--sb-corner-border-color: var(--igx-scrollbar-sb-corner-border-color, var(--ig-scrollbar-sb-corner-border-color, transparent));--sb-corner-border-size: var(--igx-scrollbar-sb-corner-border-size, var(--ig-scrollbar-sb-corner-border-size, 0));--ig-theme: material;--ig-theme-variant: light}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"] }]
1647
+ }], ctorParameters: () => [], propDecorators: { button: [{
1617
1648
  type: ViewChild,
1618
1649
  args: ['analyticsBtn']
1619
1650
  }], tabsMenu: [{
@@ -1631,13 +1662,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
1631
1662
  }] } });
1632
1663
 
1633
1664
  class IgxContextMenuDirective {
1634
- constructor(grid, textFormatter, chartsDirective, overlayService) {
1635
- this.grid = grid;
1636
- this.textFormatter = textFormatter;
1637
- this.chartsDirective = chartsDirective;
1638
- this.overlayService = overlayService;
1665
+ constructor() {
1639
1666
  this.displayCreationTab = true;
1640
- this.onButtonClose = new EventEmitter();
1667
+ this.buttonClose = new EventEmitter();
1641
1668
  this.formatters = [];
1642
1669
  this.charts = [];
1643
1670
  this.gridResizeNotify = new Subject();
@@ -1647,6 +1674,10 @@ class IgxContextMenuDirective {
1647
1674
  closeOnOutsideClick: false,
1648
1675
  modal: false
1649
1676
  };
1677
+ this.grid = inject(IgxGridComponent);
1678
+ this.textFormatter = inject(IgxConditionalFormattingDirective, { optional: true });
1679
+ this.chartsDirective = inject(IgxChartIntegrationDirective, { optional: true });
1680
+ this.overlayService = inject(IgxOverlayService);
1650
1681
  }
1651
1682
  ngOnInit() {
1652
1683
  this.gridResizeNotify.pipe(takeUntil(this.destroy$))
@@ -1659,11 +1690,11 @@ class IgxContextMenuDirective {
1659
1690
  ngAfterViewInit() {
1660
1691
  this.setUpGridListeners();
1661
1692
  if (this.textFormatter) {
1662
- this.textFormatter.onFormattersReady.pipe(takeUntil(this.destroy$))
1693
+ this.textFormatter.formattersReady.pipe(takeUntil(this.destroy$))
1663
1694
  .subscribe(names => this.formatters = names);
1664
1695
  }
1665
1696
  if (this.chartsDirective) {
1666
- this.chartsDirective.onChartTypesDetermined.pipe(takeUntil(this.destroy$))
1697
+ this.chartsDirective.chartTypesDetermined.pipe(takeUntil(this.destroy$))
1667
1698
  .subscribe((args) => this.charts = args.chartsForCreation);
1668
1699
  }
1669
1700
  this.overlayService.opening.pipe(takeUntil(this.destroy$))
@@ -1677,6 +1708,10 @@ class IgxContextMenuDirective {
1677
1708
  ngOnDestroy() {
1678
1709
  this.destroy$.next(true);
1679
1710
  this.destroy$.complete();
1711
+ if (this.contentObserver) {
1712
+ this.contentObserver.disconnect();
1713
+ this.contentObserver = null;
1714
+ }
1680
1715
  if (!this._collapsed) {
1681
1716
  this.close();
1682
1717
  }
@@ -1684,15 +1719,17 @@ class IgxContextMenuDirective {
1684
1719
  setUpGridListeners() {
1685
1720
  this.contentObserver = new ResizeObserver(() => this.gridResizeNotify.next());
1686
1721
  this.contentObserver.observe(this.grid.nativeElement);
1687
- this.grid.columnSelectionChanging.pipe(debounceTime(100))
1722
+ this.grid.columnSelectionChanging.pipe(debounceTime(100), takeUntil(this.destroy$))
1688
1723
  .subscribe((args) => {
1689
1724
  if (args.newSelection && args.oldSelection && !this._collapsed) {
1690
1725
  this.close();
1691
1726
  }
1692
1727
  this.grid.clearCellSelection();
1693
- this.chartsDirective.chartData = this.grid.getSelectedColumnsData();
1728
+ if (this.chartsDirective) {
1729
+ this.chartsDirective.chartData = this.grid.getSelectedColumnsData();
1730
+ }
1694
1731
  if (!this._collapsed) {
1695
- this.onButtonClose.emit();
1732
+ this.buttonClose.emit();
1696
1733
  }
1697
1734
  this.renderHeaderButton();
1698
1735
  });
@@ -1708,15 +1745,15 @@ class IgxContextMenuDirective {
1708
1745
  }
1709
1746
  }
1710
1747
  if (!this._collapsed) {
1711
- this.onButtonClose.emit();
1748
+ this.buttonClose.emit();
1712
1749
  }
1713
1750
  this.renderButton();
1714
1751
  });
1715
- this.grid.verticalScrollContainer.chunkLoad.pipe(merge(this.grid.parentVirtDir.chunkLoad, this.grid.filteringDone, this.grid.columnResized, this.grid.columnVisibilityChanged.pipe(debounceTime(200))), filter(() => this._range), takeUntil(this.destroy$)).subscribe(() => {
1716
- this.onButtonClose.emit();
1752
+ merge(this.grid.verticalScrollContainer.chunkLoad, this.grid.parentVirtDir.chunkLoad, this.grid.filteringDone, this.grid.columnResized, this.grid.columnVisibilityChanged.pipe(debounceTime(200))).pipe(filter(() => this._range), takeUntil(this.destroy$)).subscribe(() => {
1753
+ this.buttonClose.emit();
1717
1754
  this.renderButton();
1718
1755
  });
1719
- this.grid.selected.pipe(merge(this.grid.groupingDone), takeUntil(this.destroy$)).subscribe((args) => {
1756
+ merge(this.grid.selected, this.grid.groupingDone).pipe(takeUntil(this.destroy$)).subscribe((args) => {
1720
1757
  if (this.grid.selectedCells.length < 2 || args.expressions) {
1721
1758
  this._range = undefined;
1722
1759
  this.close();
@@ -1753,7 +1790,12 @@ class IgxContextMenuDirective {
1753
1790
  if (info) {
1754
1791
  info.settings.positionStrategy = this._analyticsBtnSettings.positionStrategy;
1755
1792
  }
1756
- this._collapsed ? this.show() : this.overlayService.reposition(this._id);
1793
+ if (this._collapsed) {
1794
+ this.show();
1795
+ }
1796
+ else {
1797
+ this.overlayService.reposition(this._id);
1798
+ }
1757
1799
  }
1758
1800
  renderHeaderButton() {
1759
1801
  const selectedColumns = this.grid.selectedColumns();
@@ -1768,7 +1810,6 @@ class IgxContextMenuDirective {
1768
1810
  });
1769
1811
  const selectedColumnsIndexes = selectedColumns.map(c => c.visibleIndex).sort((a, b) => a - b);
1770
1812
  let colIndex = selectedColumnsIndexes[selectedColumnsIndexes.length - 1];
1771
- let rowIndex = undefined;
1772
1813
  while (selectedColumnsIndexes.length) {
1773
1814
  if (this.grid.navigation.isColumnFullyVisible(colIndex)) {
1774
1815
  break;
@@ -1790,7 +1831,12 @@ class IgxContextMenuDirective {
1790
1831
  if (info) {
1791
1832
  info.settings.positionStrategy = this._analyticsBtnSettings.positionStrategy;
1792
1833
  }
1793
- this._collapsed ? this.show() : this.overlayService.reposition(this._id);
1834
+ if (this._collapsed) {
1835
+ this.show();
1836
+ }
1837
+ else {
1838
+ this.overlayService.reposition(this._id);
1839
+ }
1794
1840
  }
1795
1841
  show() {
1796
1842
  if (!this._collapsed) {
@@ -1807,28 +1853,24 @@ class IgxContextMenuDirective {
1807
1853
  }
1808
1854
  this._collapsed = true;
1809
1855
  this.overlayService.hide(this._id);
1810
- this.onButtonClose.emit();
1856
+ this.buttonClose.emit();
1811
1857
  this._id = undefined;
1812
1858
  }
1813
1859
  isWithInRange(rInex, cIndex) {
1814
1860
  return rInex >= this._range.rowStart && rInex <= this._range.rowEnd
1815
1861
  && cIndex >= this._range.columnStart && cIndex <= this._range.columnEnd;
1816
1862
  }
1817
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxContextMenuDirective, deps: [{ token: i1.IgxGridComponent }, { token: IgxConditionalFormattingDirective, optional: true }, { token: IgxChartIntegrationDirective, optional: true }, { token: i1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Directive }); }
1818
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: IgxContextMenuDirective, isStandalone: true, selector: "[igxContextMenu]", inputs: { displayCreationTab: "displayCreationTab" }, outputs: { onButtonClose: "onButtonClose" }, ngImport: i0 }); }
1863
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxContextMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1864
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: IgxContextMenuDirective, isStandalone: true, selector: "[igxContextMenu]", inputs: { displayCreationTab: "displayCreationTab" }, outputs: { buttonClose: "buttonClose" }, ngImport: i0 }); }
1819
1865
  }
1820
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: IgxContextMenuDirective, decorators: [{
1866
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: IgxContextMenuDirective, decorators: [{
1821
1867
  type: Directive,
1822
1868
  args: [{
1823
1869
  selector: '[igxContextMenu]',
1824
1870
  }]
1825
- }], ctorParameters: () => [{ type: i1.IgxGridComponent }, { type: IgxConditionalFormattingDirective, decorators: [{
1826
- type: Optional
1827
- }] }, { type: IgxChartIntegrationDirective, decorators: [{
1828
- type: Optional
1829
- }] }, { type: i1.IgxOverlayService }], propDecorators: { displayCreationTab: [{
1871
+ }], ctorParameters: () => [], propDecorators: { displayCreationTab: [{
1830
1872
  type: Input
1831
- }], onButtonClose: [{
1873
+ }], buttonClose: [{
1832
1874
  type: Output
1833
1875
  }] } });
1834
1876
 
@@ -1843,5 +1885,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
1843
1885
  * Generated bundle index. Do not edit.
1844
1886
  */
1845
1887
 
1846
- export { CHART_TYPE, ChartInitializer, ConditionalFormattingType, IgxChartIntegrationDirective, IgxChartMenuComponent, IgxConditionalFormattingDirective, IgxContextMenuComponent, IgxContextMenuDirective, IgxDataChartInitializer, IgxPieChartInitializer, IgxStackedDataChartInitializer, OPTIONS_TYPE, SvgPipe };
1888
+ export { CHART_TYPE, ChartInitializer, ConditionalFormattingType, IgxChartIntegrationDirective, IgxChartMenuComponent, IgxConditionalFormattingDirective, IgxContextMenuComponent, IgxContextMenuDirective, IgxDataChartInitializer, IgxPieChartInitializer, IgxStackedDataChartInitializer, OPTIONS_TYPE };
1847
1889
  //# sourceMappingURL=igniteui-angular-extras.mjs.map