igniteui-angular-extras 18.2.3 → 19.0.0

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.
Files changed (26) hide show
  1. package/README.md +38 -0
  2. package/fesm2022/igniteui-angular-extras.mjs +1237 -1305
  3. package/fesm2022/igniteui-angular-extras.mjs.map +1 -1
  4. package/lib/context-menu/chart-dialog/chart-dialog.component.d.ts +1 -1
  5. package/lib/context-menu/context-menu.component.d.ts +1 -1
  6. package/lib/context-menu/igx-context-menu.directive.d.ts +1 -1
  7. package/lib/directives/chart-integration/chart-integration.directive.d.ts +1 -1
  8. package/lib/directives/conditional-formatting/conditional-formatting.directive.d.ts +1 -1
  9. package/lib/page-header/page-header.component.d.ts +6 -0
  10. package/lib/pipes/svg.pipe.d.ts +1 -1
  11. package/package.json +6 -8
  12. package/public-api.d.ts +5 -1
  13. package/esm2022/igniteui-angular-extras.mjs +0 -5
  14. package/esm2022/images/charts.mjs +0 -408
  15. package/esm2022/images/conditions.mjs +0 -95
  16. package/esm2022/lib/context-menu/chart-dialog/chart-dialog.component.mjs +0 -70
  17. package/esm2022/lib/context-menu/context-menu.component.mjs +0 -176
  18. package/esm2022/lib/context-menu/igx-context-menu.directive.mjs +0 -154
  19. package/esm2022/lib/directives/chart-integration/chart-integration.directive.mjs +0 -312
  20. package/esm2022/lib/directives/chart-integration/chart-types.mjs +0 -28
  21. package/esm2022/lib/directives/chart-integration/initializers.mjs +0 -103
  22. package/esm2022/lib/directives/conditional-formatting/conditional-formatting.directive.mjs +0 -307
  23. package/esm2022/lib/igniteui-angular-extras.module.mjs +0 -108
  24. package/esm2022/lib/pipes/svg.pipe.mjs +0 -20
  25. package/esm2022/public-api.mjs +0 -21
  26. package/lib/igniteui-angular-extras.module.d.ts +0 -15
@@ -1,848 +1,477 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe, EventEmitter, ViewContainerRef, Component, ViewEncapsulation, ViewChild, Output, HostBinding, Directive, Input, Optional, NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
3
- import * as i1$1 from 'igniteui-angular';
4
- import { CloseScrollStrategy, AutoPositionStrategy, HorizontalAlignment, VerticalAlignment, IgxToggleDirective, IgxTabsComponent, AbsoluteScrollStrategy, IgxButtonModule, IgxDividerModule, IgxGridModule, IgxTabsModule, IgxToggleModule, IgxIconModule } from 'igniteui-angular';
5
- 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, IgxDataChartCategoryModule, IgxDataChartCoreModule, IgxLegendModule, IgxDataChartInteractivityModule, IgxNumericXAxisModule, IgxNumericYAxisModule, IgxCategoryXAxisModule, IgxItemLegendModule, IgxPieChartModule, IgxDataChartStackedModule, IgxDataChartScatterModule, IgxBarSeriesModule, IgxCategoryChartModule } from 'igniteui-angular-charts';
2
+ import { EventEmitter, Directive, Input, Output, Pipe, ViewContainerRef, Component, ViewEncapsulation, CUSTOM_ELEMENTS_SCHEMA, ViewChild, HostBinding, Optional } from '@angular/core';
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';
6
4
  import { Subject } from 'rxjs';
7
- import { ResizeObserver } from '@juggle/resize-observer';
8
- import * as i2 from '@angular/common';
9
- import { CommonModule } from '@angular/common';
10
- import * as i1 from '@angular/platform-browser';
11
5
  import { takeUntil, merge, debounceTime, filter } from 'rxjs/operators';
6
+ import * as i1 from 'igniteui-angular';
7
+ import { CloseScrollStrategy, AutoPositionStrategy, HorizontalAlignment, VerticalAlignment, IgxToggleDirective, IgxTabsComponent, IgxIconComponent as IgxIconComponent$1, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective, AbsoluteScrollStrategy } from 'igniteui-angular';
8
+ import * as i1$2 from '@angular/common';
9
+ import { CommonModule, NgFor } from '@angular/common';
10
+ import { ResizeObserver } from '@juggle/resize-observer';
11
+ import { IgxIconComponent, IgxToggleActionDirective } from '@infragistics/igniteui-angular';
12
+ import * as i1$1 from '@angular/platform-browser';
13
+
14
+ var CHART_TYPE;
15
+ (function (CHART_TYPE) {
16
+ CHART_TYPE["PIE"] = "Pie";
17
+ CHART_TYPE["COLUMN_GROUPED"] = "ColumnGrouped";
18
+ CHART_TYPE["AREA_GROUPED"] = "AreaGrouped";
19
+ CHART_TYPE["LINE_GROUPED"] = "LineGrouped";
20
+ CHART_TYPE["BAR_GROUPED"] = "BarGrouped";
21
+ CHART_TYPE["COLUMN_STACKED"] = "ColumnStacked";
22
+ CHART_TYPE["AREA_STACKED"] = "AreaStacked";
23
+ CHART_TYPE["LINE_STACKED"] = "LineStacked";
24
+ CHART_TYPE["BAR_STACKED"] = "BarStacked";
25
+ CHART_TYPE["COLUMN_100_STACKED"] = "Column100Stacked";
26
+ CHART_TYPE["AREA_100_STACKED"] = "Area100Stacked";
27
+ CHART_TYPE["LINE_100_STACKED"] = "Line100Stacked";
28
+ CHART_TYPE["BAR_100_STACKED"] = "Bar100Stacked";
29
+ CHART_TYPE["SCATTER_POINT"] = "ScatterPoint";
30
+ CHART_TYPE["SCATTER_BUBBLE"] = "ScatterBubble";
31
+ CHART_TYPE["SCATTER_LINE"] = "ScatterLine";
32
+ })(CHART_TYPE || (CHART_TYPE = {}));
33
+ var OPTIONS_TYPE;
34
+ (function (OPTIONS_TYPE) {
35
+ OPTIONS_TYPE["CHART"] = "chartOptions";
36
+ OPTIONS_TYPE["SERIES"] = "seriesModel";
37
+ OPTIONS_TYPE["X_AXIS"] = "xAxisOptions";
38
+ OPTIONS_TYPE["Y_AXIS"] = "yAxisOptions";
39
+ OPTIONS_TYPE["STACKED_SERIES"] = "stackedFragmentOptions";
40
+ })(OPTIONS_TYPE || (OPTIONS_TYPE = {}));
12
41
 
13
42
  // tslint:disable: max-line-length
14
- const Area100Stacked = `
15
- <svg id="Layer_1" data-name="Layer 1"
16
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
17
- <defs>
18
- <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>
19
- </defs>
20
- <rect class="cls-Area100Stacked-1" width="96" height="95.7"/>
21
- <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"/>
22
- <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"/>
23
- <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"/>
24
- </svg>
25
- `;
26
- const AreaGrouped = `
27
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
28
- <defs>
29
- <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>
30
- </defs>
31
- <g id="ChartNames">
32
- <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"/>
33
- <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"/>
34
- <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"/>
35
- <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"/>
36
- </g>
37
- </svg>
38
- `;
39
- const AreaStacked = `
40
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
41
- <defs>
42
- <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>
43
- </defs>
44
- <g id="ChartNames">
45
- <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"/>
46
- <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"/>
47
- <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"/>
48
- <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"/>
49
- </g>
50
- </svg>
51
- `;
52
- const Bar100Stacked = `
53
- <svg id="Layer_1" data-name="Layer 1"
54
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
55
- <defs>
56
- <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>
57
- </defs>
58
- <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"/>
59
- <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"/>
60
- <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"/>
61
- <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"/>
62
- <rect class="cls-Bar100Stacked-5" y="7.84" width="10.78" height="11.1"/>
63
- </svg>
64
- `;
65
- const BarGrouped = `
66
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
67
- <defs>
68
- <style>.cls-BarGrouped-1{fill:#f05951;}.cls-BarGrouped-2{fill:#ab4191;}.cls-BarGrouped-3{fill:#0f6860;}.cls-BarGrouped-4{fill:#fa8d3d;}</style>
69
- </defs>
70
- <g id="ChartNames">
71
- <rect class="cls-BarGrouped-1" y="77.13" width="21.19" height="6.29"/>
72
- <rect class="cls-BarGrouped-1" y="49.66" width="48.99" height="6.29"/>
73
- <rect class="cls-BarGrouped-1" y="22.18" width="72.5" height="6.29"/>
74
- <rect class="cls-BarGrouped-2" y="70.84" width="81.43" height="6.29"/>
75
- <rect class="cls-BarGrouped-3" y="89.71" width="60.25" height="6.29"/>
76
- <rect class="cls-BarGrouped-2" y="43.37" width="96" height="6.29"/>
77
- <rect class="cls-BarGrouped-3" y="62.23" width="33.43" height="6.29"/>
78
- <rect class="cls-BarGrouped-2" y="15.89" width="55.61" height="6.29"/>
79
- <rect class="cls-BarGrouped-3" y="34.76" width="45.35" height="6.29"/>
80
- <rect class="cls-BarGrouped-4" y="83.42" width="89.38" height="6.29"/>
81
- <rect class="cls-BarGrouped-4" y="55.94" width="70.84" height="6.29"/>
82
- <rect class="cls-BarGrouped-4" y="28.47" width="33.43" height="6.29"/>
83
- </g>
84
- </svg>
85
- `;
86
- const BarStacked = `
87
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
88
- <defs>
89
- <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>
90
- </defs>
91
- <g id="ChartNames">
92
- <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"/>
93
- <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"/>
94
- <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"/>
95
- <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"/>
96
- </g>
97
- </svg>
98
- `;
99
- const Column100Stacked = `
100
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
101
- <defs>
102
- <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>
103
- </defs>
104
- <g id="ChartNames">
105
- <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"/>
106
- <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"/>
107
- <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"/>
108
- <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"/>
109
- </g>
110
- </svg>
111
- `;
112
- const ColumnGrouped = `
113
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
114
- <defs>
115
- <style>.cls-ColumnGrouped-1{fill:#fa8d3d;}.cls-ColumnGrouped-2{fill:#f05951;}.cls-ColumnGrouped-3{fill:#0f6860;}.cls-ColumnGrouped-4{fill:#ab4191;}</style>
116
- </defs>
117
- <g id="ChartNames">
118
- <rect class="cls-ColumnGrouped-1" x="14.87" y="30.42" width="7.44" height="65.58"/>
119
- <rect class="cls-ColumnGrouped-1" x="48" y="8.11" width="7.44" height="87.89"/>
120
- <rect class="cls-ColumnGrouped-1" x="81.13" y="38.2" width="7.44" height="57.8"/>
121
- <rect class="cls-ColumnGrouped-2" x="7.44" y="43.61" width="7.44" height="52.39"/>
122
- <rect class="cls-ColumnGrouped-3" x="22.31" y="52.06" width="7.44" height="43.94"/>
123
- <rect class="cls-ColumnGrouped-2" x="40.56" y="34.48" width="7.44" height="61.52"/>
124
- <rect class="cls-ColumnGrouped-3" x="55.44" y="19.27" width="7.44" height="76.73"/>
125
- <rect class="cls-ColumnGrouped-2" x="73.69" y="12.17" width="7.44" height="83.83"/>
126
- <rect class="cls-ColumnGrouped-4" y="20.28" width="7.44" height="75.72"/>
127
- <rect class="cls-ColumnGrouped-4" x="33.13" y="71.32" width="7.44" height="24.68"/>
128
- <rect class="cls-ColumnGrouped-4" x="66.25" y="51.04" width="7.44" height="44.96"/>
129
- <rect class="cls-ColumnGrouped-3" x="88.56" y="63.21" width="7.44" height="32.79"/>
130
- </g>
131
- </svg>
132
- `;
133
- const ColumnStacked = `
134
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
135
- <defs>
136
- <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>
137
- </defs>
138
- <g id="ChartNames">
139
- <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"/>
140
- <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"/>
141
- <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"/>
142
- <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"/>
143
- </g>
144
- </svg>
145
- `;
146
- const Line100Stacked = `
147
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
148
- <defs>
149
- <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>
150
- </defs>
151
- <g id="ChartNames">
152
- <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"/>
153
- <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"/>
154
- <polyline class="cls-Line100Stacked-3" points="0 66.68 17.34 59.32 38.37 72.9 59.76 55.35 96 65.16"/>
155
- <polyline class="cls-Line100Stacked-4" points="0 85.81 17.34 78.52 59.39 88.12 80.78 76.87 96 82.48"/>
156
- </g>
157
- </svg>
158
- `;
159
- const LineGrouped = `
160
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
161
- <defs>
162
- <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>
163
- </defs>
164
- <g id="ChartNames">
165
- <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"/>
166
- <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"/>
167
- <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"/>
168
- <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"/>
169
- </g>
170
- </svg>
171
- `;
172
- const LineStacked = `
173
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
174
- <defs>
175
- <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>
176
- </defs>
177
- <g id="ChartNames">
178
- <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"/>
179
- <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"/>
180
- <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"/>
181
- <polyline class="cls-LineStacked-4" points="0 96 31.16 90.78 64.95 88.38 82.19 77.78 96 74.53"/>
182
- </g>
183
- </svg>
184
- `;
185
- const Pie = `
186
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
187
- <defs>
188
- <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>
189
- </defs>
190
- <g id="ChartNames">
191
- <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"/>
192
- <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"/>
193
- <path class="cls-Pie-3" d="M51.77,48,91.29,67.53a42.87,42.87,0,0,0,.53-38Z"/>
194
- <path class="cls-Pie-4" d="M44.19,48,84.24,29.52a43.13,43.13,0,0,0-40-25.73Z"/>
195
- </g>
196
- </svg>
197
- `;
198
- const ScatterBubble = `
199
- <svg id="Layer_1" data-name="Layer 1"
200
- xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
201
- <defs>
202
- <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>
203
- </defs>
204
- <circle class="cls-ScatterBubble-1" cx="6.06" cy="85.05" r="2.33"/>
205
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="83.89" r="2.33"/>
206
- <circle class="cls-ScatterBubble-1" cx="13.07" cy="78.83" r="2.33"/>
207
- <circle class="cls-ScatterBubble-1" cx="39.52" cy="59.38" r="2.33"/>
208
- <circle class="cls-ScatterBubble-1" cx="35.63" cy="53.94" r="2.33"/>
209
- <circle class="cls-ScatterBubble-1" cx="7.62" cy="70.27" r="2.33"/>
210
- <circle class="cls-ScatterBubble-1" cx="20.85" cy="71.44" r="2.33"/>
211
- <circle class="cls-ScatterBubble-2" cx="8.79" cy="84.28" r="3.11"/>
212
- <circle class="cls-ScatterBubble-1" cx="18.9" cy="67.16" r="3.11"/>
213
- <circle class="cls-ScatterBubble-1" cx="36.4" cy="59.77" r="3.11"/>
214
- <circle class="cls-ScatterBubble-1" cx="63.24" cy="21.26" r="3.11"/>
215
- <circle class="cls-ScatterBubble-1" cx="25.12" cy="70.27" r="3.11"/>
216
- <circle class="cls-ScatterBubble-2" cx="9.18" cy="71.83" r="3.11"/>
217
- <circle class="cls-ScatterBubble-2" cx="13.07" cy="47.32" r="3.11"/>
218
- <circle class="cls-ScatterBubble-1" cx="8.01" cy="60.94" r="4.28"/>
219
- <circle class="cls-ScatterBubble-2" cx="22.4" cy="74.94" r="4.28"/>
220
- <circle class="cls-ScatterBubble-1" cx="29.79" cy="54.33" r="4.28"/>
221
- <circle class="cls-ScatterBubble-1" cx="73.75" cy="30.99" r="4.28"/>
222
- <circle class="cls-ScatterBubble-1" cx="62.47" cy="34.88" r="4.28"/>
223
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="48.88" r="4.28"/>
224
- <circle class="cls-ScatterBubble-1" cx="44.18" cy="28.26" r="4.28"/>
225
- <circle class="cls-ScatterBubble-1" cx="16.57" cy="61.33" r="4.28"/>
226
- <circle class="cls-ScatterBubble-2" cx="29.79" cy="49.66" r="5.06"/>
227
- <circle class="cls-ScatterBubble-1" cx="47.68" cy="53.94" r="5.83"/>
228
- <circle class="cls-ScatterBubble-1" cx="62.08" cy="26.32" r="5.06"/>
229
- <circle class="cls-ScatterBubble-2" cx="86.58" cy="39.93" r="5.06"/>
230
- <circle class="cls-ScatterBubble-2" cx="70.63" cy="33.32" r="5.06"/>
231
- <circle class="cls-ScatterBubble-2" cx="64.8" cy="33.32" r="6.22"/>
232
- <circle class="cls-ScatterBubble-1" cx="25.9" cy="32.15" r="6.22"/>
233
- <circle class="cls-ScatterBubble-2" cx="39.52" cy="74.16" r="6.61"/>
234
- <circle class="cls-ScatterBubble-2" cx="56.23" cy="81.54" r="6.22"/>
235
- <circle class="cls-ScatterBubble-1" cx="51.19" cy="74.16" r="8.17"/>
236
- <circle class="cls-ScatterBubble-2" cx="42.24" cy="38.77" r="8.17"/>
237
- <circle class="cls-ScatterBubble-1" cx="50.8" cy="60.94" r="8.17"/>
238
- <circle class="cls-ScatterBubble-1" cx="41.85" cy="34.88" r="9.34"/>
239
- <circle class="cls-ScatterBubble-1" cx="52.35" cy="31.76" r="11.28"/>
240
- <circle class="cls-ScatterBubble-2" cx="58.97" cy="53.55" r="12.84"/>
241
- <circle class="cls-ScatterBubble-1" cx="37.57" cy="81.55" r="9.72"/>
242
- <circle class="cls-ScatterBubble-1" cx="58.58" cy="50.44" r="6.22"/>
243
- <circle class="cls-ScatterBubble-1" cx="51.57" cy="53.55" r="7"/>
244
- <circle class="cls-ScatterBubble-1" cx="53.52" cy="34.49" r="7"/>
245
- <circle class="cls-ScatterBubble-1" cx="57.41" cy="11.93" r="7"/>
246
- <circle class="cls-ScatterBubble-1" cx="86.19" cy="57.83" r="5.45"/>
247
- <circle class="cls-ScatterBubble-1" cx="20.85" cy="66.38" r="5.45"/>
248
- <circle class="cls-ScatterBubble-2" cx="38.35" cy="58.6" r="5.06"/>
249
- <circle class="cls-ScatterBubble-2" cx="15.79" cy="64.05" r="5.06"/>
250
- <circle class="cls-ScatterBubble-1" cx="28.24" cy="74.55" r="5.06"/>
251
- <circle class="cls-ScatterBubble-2" cx="57.02" cy="22.04" r="4.28"/>
252
- </svg>
253
- `;
254
- const ScatterLine = `
255
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
256
- <defs>
257
- <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>
258
- </defs>
259
- <g id="ChartNames">
260
- <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"/>
261
- <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"/>
262
- <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"/>
263
- <polyline class="cls-ScatterLine-4" points="23.58 4.76 10.97 12.44 8.47 29.72"/>
264
- <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"/>
265
- <circle class="cls-ScatterLine-6" cx="11.19" cy="12.61" r="1.5"/>
266
- <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"/>
267
- <circle class="cls-ScatterLine-6" cx="23.55" cy="4.59" r="1.5"/>
268
- <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"/>
269
- <circle class="cls-ScatterLine-6" cx="8.52" cy="29.64" r="1.5"/>
270
- <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"/>
271
- <circle class="cls-ScatterLine-6" cx="59.94" cy="7.26" r="1.5"/>
272
- <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"/>
273
- <circle class="cls-ScatterLine-6" cx="47.25" cy="10.24" r="1.5"/>
274
- <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"/>
275
- <circle class="cls-ScatterLine-6" cx="35.56" cy="14.94" r="1.5"/>
276
- <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"/>
277
- <circle class="cls-ScatterLine-6" cx="18.87" cy="32.08" r="1.5"/>
278
- <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"/>
279
- <circle class="cls-ScatterLine-6" cx="17.2" cy="50.34" r="1.5"/>
280
- <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"/>
281
- <circle class="cls-ScatterLine-6" cx="10.48" cy="58.24" r="1.5"/>
282
- <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"/>
283
- <circle class="cls-ScatterLine-6" cx="83.04" cy="60.02" r="1.5"/>
284
- <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"/>
285
- <circle class="cls-ScatterLine-6" cx="88.09" cy="49" r="1.5"/>
286
- <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"/>
287
- <circle class="cls-ScatterLine-6" cx="75.77" cy="71.18" r="1.5"/>
288
- <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"/>
289
- <circle class="cls-ScatterLine-6" cx="60.66" cy="85.65" r="1.5"/>
290
- <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"/>
291
- <circle class="cls-ScatterLine-6" cx="37.71" cy="81.53" r="1.5"/>
292
- <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"/>
293
- <circle class="cls-ScatterLine-6" cx="26.86" cy="87.32" r="1.5"/>
294
- <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"/>
295
- <circle class="cls-ScatterLine-6" cx="10.48" cy="85.73" r="1.5"/>
296
- <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"/>
297
- <circle class="cls-ScatterLine-6" cx="15.86" cy="77.38" r="1.5"/>
298
- <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"/>
299
- <circle class="cls-ScatterLine-6" cx="21.54" cy="70.71" r="1.5"/>
300
- <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"/>
301
- <circle class="cls-ScatterLine-6" cx="31.94" cy="58.91" r="1.5"/>
302
- <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"/>
303
- <circle class="cls-ScatterLine-6" cx="43.91" cy="49.67" r="1.5"/>
304
- <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"/>
305
- <circle class="cls-ScatterLine-6" cx="55.26" cy="41.66" r="1.5"/>
306
- <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"/>
307
- <circle class="cls-ScatterLine-6" cx="60.27" cy="31.3" r="1.5"/>
308
- <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"/>
309
- <circle class="cls-ScatterLine-6" cx="69.95" cy="23.62" r="1.5"/>
310
- <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"/>
311
- <circle class="cls-ScatterLine-6" cx="88.32" cy="6.59" r="1.5"/>
312
- </g>
313
- </svg>
314
- `;
315
- const ScatterPoint = `
316
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
317
- <defs>
318
- <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>
319
- </defs>
320
- <g id="ChartNames">
321
- <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"/>
322
- <circle class="cls-ScatterPoint-2" cx="8.79" cy="7.64" r="1.42"/>
323
- <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"/>
324
- <circle class="cls-ScatterPoint-2" cx="14.46" cy="10.01" r="1.42"/>
325
- <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"/>
326
- <circle class="cls-ScatterPoint-2" cx="24.38" cy="8.59" r="1.42"/>
327
- <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"/>
328
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="14.73" r="1.42"/>
329
- <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"/>
330
- <circle class="cls-ScatterPoint-2" cx="13.98" cy="31.27" r="1.42"/>
331
- <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"/>
332
- <circle class="cls-ScatterPoint-2" cx="5.48" cy="28.9" r="1.42"/>
333
- <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"/>
334
- <circle class="cls-ScatterPoint-2" cx="5.01" cy="34.57" r="1.42"/>
335
- <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"/>
336
- <circle class="cls-ScatterPoint-2" cx="3.12" cy="37.88" r="1.42"/>
337
- <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"/>
338
- <circle class="cls-ScatterPoint-2" cx="3.59" cy="44.5" r="1.42"/>
339
- <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"/>
340
- <circle class="cls-ScatterPoint-2" cx="5.01" cy="66.23" r="1.42"/>
341
- <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"/>
342
- <circle class="cls-ScatterPoint-2" cx="28.63" cy="75.21" r="1.42"/>
343
- <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"/>
344
- <circle class="cls-ScatterPoint-2" cx="12.09" cy="52.06" r="1.42"/>
345
- <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"/>
346
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="48.75" r="1.42"/>
347
- <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"/>
348
- <circle class="cls-ScatterPoint-2" cx="16.82" cy="41.66" r="1.42"/>
349
- <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"/>
350
- <circle class="cls-ScatterPoint-2" cx="24.85" cy="44.5" r="1.42"/>
351
- <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"/>
352
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="44.02" r="1.42"/>
353
- <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"/>
354
- <circle class="cls-ScatterPoint-2" cx="21.54" cy="87.88" r="1.42"/>
355
- <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"/>
356
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="67.65" r="1.42"/>
357
- <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"/>
358
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="51.58" r="1.42"/>
359
- <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"/>
360
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="53.94" r="1.42"/>
361
- <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"/>
362
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="63.39" r="1.42"/>
363
- <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"/>
364
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="71.43" r="1.42"/>
365
- <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"/>
366
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="83.24" r="1.42"/>
367
- <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"/>
368
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="75.21" r="1.42"/>
369
- <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"/>
370
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="63.39" r="1.42"/>
371
- <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"/>
372
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="71.43" r="1.42"/>
373
- <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"/>
374
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="55.83" r="1.42"/>
375
- <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"/>
376
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="24.81" r="1.42"/>
377
- <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"/>
378
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="21.97" r="1.42"/>
379
- <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"/>
380
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="84.1" r="1.42"/>
381
- <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"/>
382
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="70.95" r="1.42"/>
383
- <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"/>
384
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="88.36" r="1.42"/>
385
- <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"/>
386
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="71.43" r="1.42"/>
387
- <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"/>
388
- <circle class="cls-ScatterPoint-2" cx="22.01" cy="64.34" r="1.42"/>
389
- <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"/>
390
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="50.64" r="1.42"/>
391
- <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"/>
392
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="62.92" r="1.42"/>
393
- <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"/>
394
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="78.99" r="1.42"/>
395
- <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"/>
396
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="68.12" r="1.42"/>
397
- <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"/>
398
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="56.78" r="1.42"/>
399
- <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"/>
400
- <circle class="cls-ScatterPoint-2" cx="55.56" cy="76.15" r="1.42"/>
401
- <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"/>
402
- <circle class="cls-ScatterPoint-2" cx="44.22" cy="85.52" r="1.42"/>
403
- <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"/>
404
- <circle class="cls-ScatterPoint-2" cx="66.43" cy="83.24" r="1.42"/>
405
- <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"/>
406
- <circle class="cls-ScatterPoint-2" cx="77.76" cy="75.68" r="1.42"/>
407
- <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"/>
408
- <circle class="cls-ScatterPoint-2" cx="80.13" cy="75.21" r="1.42"/>
409
- <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"/>
410
- <circle class="cls-ScatterPoint-2" cx="88.63" cy="54.89" r="1.42"/>
411
- <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"/>
412
- <circle class="cls-ScatterPoint-2" cx="92.88" cy="70.95" r="1.42"/>
413
- <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"/>
414
- <circle class="cls-ScatterPoint-2" cx="89.1" cy="88.36" r="1.42"/>
415
- <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"/>
416
- <circle class="cls-ScatterPoint-2" cx="32.88" cy="83.71" r="1.42"/>
417
- </g>
418
- </svg>
419
- `;
420
-
421
- var charts = /*#__PURE__*/Object.freeze({
422
- __proto__: null,
423
- Area100Stacked: Area100Stacked,
424
- AreaGrouped: AreaGrouped,
425
- AreaStacked: AreaStacked,
426
- Bar100Stacked: Bar100Stacked,
427
- BarGrouped: BarGrouped,
428
- BarStacked: BarStacked,
429
- Column100Stacked: Column100Stacked,
430
- ColumnGrouped: ColumnGrouped,
431
- ColumnStacked: ColumnStacked,
432
- Line100Stacked: Line100Stacked,
433
- LineGrouped: LineGrouped,
434
- LineStacked: LineStacked,
435
- Pie: Pie,
436
- ScatterBubble: ScatterBubble,
437
- ScatterLine: ScatterLine,
438
- ScatterPoint: ScatterPoint
439
- });
440
-
441
- class SvgPipe {
442
- constructor(sanitizer) {
443
- this.sanitizer = sanitizer;
444
- }
445
- transform(markup) {
446
- return this.sanitizer.bypassSecurityTrustHtml(markup);
43
+ class SeriesFactory {
44
+ create(type) {
45
+ return new type();
447
46
  }
448
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SvgPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
449
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SvgPipe, name: "svg" }); }
450
47
  }
451
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SvgPipe, decorators: [{
452
- type: Pipe,
453
- args: [{
454
- name: 'svg'
455
- }]
456
- }], ctorParameters: () => [{ type: i1.DomSanitizer }] });
457
-
458
- class IgxChartMenuComponent {
459
- get width() {
460
- return this.fullScreen ? this._width : 0.7 * this._width;
461
- }
462
- set width(value) {
463
- this._width = value;
48
+ class ChartInitializer {
49
+ constructor() {
50
+ this.seriesFactory = new SeriesFactory();
464
51
  }
465
- get height() {
466
- return this.fullScreen ? this._height : 0.7 * this._height;
52
+ applyOptions(target, options) {
53
+ if (options) {
54
+ Object.keys(options).forEach(key => {
55
+ if (target[key] instanceof EventEmitter) {
56
+ target[key].subscribe(options[key]);
57
+ }
58
+ else {
59
+ target[key] = options[key];
60
+ }
61
+ });
62
+ }
467
63
  }
468
- set height(value) {
469
- this._height = value;
64
+ }
65
+ class IgxPieChartInitializer extends ChartInitializer {
66
+ constructor() {
67
+ super();
470
68
  }
471
- constructor(element) {
472
- this.element = element;
473
- this.onClose = new EventEmitter();
474
- this.chartDialogResizeNotify = new Subject();
475
- this.allCharts = [];
476
- this.fullScreen = false;
477
- this.isConfigAreaExpanded = false;
478
- this.mainChartTypes = ['Column', 'Area', 'Bar', 'Line', 'Scatter', 'Pie'];
479
- this.images = charts;
69
+ initChart(chart, options) {
70
+ this.applyOptions(chart, options.chartOptions);
71
+ return chart;
480
72
  }
481
- ngAfterViewInit() {
482
- this.contentObserver = new ResizeObserver((args) => this.chartDialogResizeNotify.next(args));
483
- this.contentObserver.observe(this.element.nativeElement);
484
- this.createChart(this.currentChartType);
485
- }
486
- toggleFullScreen() {
487
- this.fullScreen = !this.fullScreen;
73
+ }
74
+ class IgxDataChartInitializer extends ChartInitializer {
75
+ constructor(seriesType) {
76
+ super();
77
+ switch (seriesType) {
78
+ case IgxBarSeriesComponent:
79
+ this.xAxis = new IgxNumericXAxisComponent();
80
+ this.yAxis = new IgxCategoryYAxisComponent();
81
+ break;
82
+ case IgxScatterSeriesComponent:
83
+ case IgxBubbleSeriesComponent:
84
+ case IgxScatterLineSeriesComponent:
85
+ this.xAxis = new IgxNumericXAxisComponent();
86
+ this.yAxis = new IgxNumericYAxisComponent();
87
+ break;
88
+ default:
89
+ this.xAxis = new IgxCategoryXAxisComponent();
90
+ this.yAxis = new IgxNumericYAxisComponent();
91
+ }
92
+ this.seriesType = seriesType;
488
93
  }
489
- hasAvailableChart(chartType) {
490
- return this.allCharts.some(c => c.includes(chartType));
94
+ initChart(chart, options) {
95
+ options.seriesOptions.forEach((option) => {
96
+ const series = this.seriesFactory.create(this.seriesType);
97
+ series.xAxis = this.xAxis;
98
+ series.yAxis = this.yAxis;
99
+ this.applyOptions(series, option);
100
+ chart.series.add(series);
101
+ });
102
+ this.applyOptions(chart, options.chartOptions);
103
+ this.applyOptions(this.xAxis, options.xAxisOptions);
104
+ this.applyOptions(this.yAxis, options.yAxisOptions);
105
+ chart.axes.add(this.xAxis);
106
+ chart.axes.add(this.yAxis);
107
+ return chart;
491
108
  }
492
- createChart(chartType) {
493
- this.currentChartType = chartType;
494
- this.title = chartType.split(/(?=[A-Z])/).toString().replace(',', ' ');
495
- try {
496
- this.chartArea.clear();
109
+ }
110
+ class IgxStackedDataChartInitializer extends ChartInitializer {
111
+ constructor(seriesType) {
112
+ super();
113
+ if (seriesType === IgxStackedBarSeriesComponent || seriesType === IgxStacked100BarSeriesComponent) {
114
+ this.xAxis = new IgxNumericXAxisComponent();
115
+ this.yAxis = new IgxCategoryYAxisComponent();
497
116
  }
498
- catch (e) { }
499
- this.chartDirective.chartFactory(chartType, this.chartArea);
117
+ else {
118
+ this.xAxis = new IgxCategoryXAxisComponent();
119
+ this.yAxis = new IgxNumericYAxisComponent();
120
+ }
121
+ this.seriesType = seriesType;
122
+ }
123
+ initChart(chart, options) {
124
+ const series = this.seriesFactory.create(this.seriesType);
125
+ series.xAxis = this.xAxis;
126
+ series.yAxis = this.yAxis;
127
+ options.stackedFragmentOptions.forEach(fragOpt => {
128
+ const frag = new IgxStackedFragmentSeriesComponent();
129
+ this.applyOptions(frag, fragOpt);
130
+ series.series.add(frag);
131
+ });
132
+ this.applyOptions(series, options.seriesOptions);
133
+ this.applyOptions(chart, options.chartOptions);
134
+ this.applyOptions(this.xAxis, options.xAxisOptions);
135
+ this.applyOptions(this.yAxis, options.yAxisOptions);
136
+ chart.series.add(series);
137
+ chart.axes.add(this.xAxis);
138
+ chart.axes.add(this.yAxis);
139
+ return chart;
500
140
  }
501
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxChartMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
502
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: IgxChartMenuComponent, 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{width:100%;height:90%;display:inline-flex;flex-flow:row}.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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0)}@-moz-document url-prefix(){}.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: "directive", type: i1$1.IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "directive", type: i1$1.IgxDividerDirective, selector: "igx-divider", inputs: ["id", "role", "type", "middle", "vertical", "inset"] }, { kind: "component", type: i1$1.IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SvgPipe, name: "svg" }], encapsulation: i0.ViewEncapsulation.None }); }
503
141
  }
504
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxChartMenuComponent, decorators: [{
505
- type: Component,
506
- args: [{ selector: 'igx-chart-menu', encapsulation: ViewEncapsulation.None, 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{width:100%;height:90%;display:inline-flex;flex-flow:row}.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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0)}@-moz-document url-prefix(){}.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"] }]
507
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { chartArea: [{
508
- type: ViewChild,
509
- args: ['chartArea', { read: ViewContainerRef }]
510
- }], onClose: [{
511
- type: Output
512
- }], width: [{
513
- type: HostBinding,
514
- args: ['style.width.px']
515
- }], height: [{
516
- type: HostBinding,
517
- args: ['style.height.px']
518
- }] } });
519
-
520
- // tslint:disable: max-line-length
521
- const Clear = `
522
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
523
- <defs>
524
- <style>.cls-Clear-1{fill-rule:evenodd;}.cls-Clear-2{fill:none;}</style>
525
- </defs>
526
- <g id="Layer_2" data-name="Layer 2">
527
- <g id="Layer_1-2" data-name="Layer 1">
528
- <g id="Conditional-formating">
529
- <g id="Artboard">
530
- <g id="refresh-24px">
531
- <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"/>
532
- <polygon class="cls-Clear-2" points="0 0 24 0 24 24 0 24 0 0"/>
533
- </g>
534
- </g>
535
- </g>
536
- </g>
537
- </g>
538
- </svg>
539
- `;
540
- const ColorScale = `
541
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
542
- <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"/>
543
- <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"/>
544
- <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"/>
545
- <path d="M0 0h24v24H0z" fill="none"/>
546
- </svg>
547
-
548
- `;
549
- const DataBars = `
550
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
551
- <path d="M3 7h12v2H3zM3 15h12v2H3zM3 19h18v2H3zM3 11h18v2H3zM3 3h18v2H3z"/>
552
- <path d="M0 0h24v24H0z" fill="none"/>
553
- </svg>
554
-
555
- `;
556
- const DuplicateValues = `
557
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
558
- <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"/>
559
- <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"/>
560
- <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"/>
561
- <path d="M0 0h24v24H0z" fill="none"/>
562
- </svg>
563
-
564
- `;
565
- const Empty = `
566
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
567
- <path d="M0 0h24v24H0z" fill="none"/>
568
- <path d="M5 17h2v2H5zM13 17h2v2h-2zM5 13h2v2H5zM17 17h2v2h-2zM13 5h2v2h-2zM9 17h2v2H9zM17 9h2v2h-2zM17 13h2v2h-2zM17 5h2v2h-2zM5 9h2v2H5zM5 5h2v2H5zM9 5h2v2H9z"/>
569
- <path d="M0 0h24v24H0z" fill="none"/>
570
- </svg>
571
-
572
- `;
573
- const Equal = `
574
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
575
- <path d="M5 13.5h14v2H5zM5 8.5h14v2H5z"/>
576
- </svg>
577
-
578
- `;
579
- const GreaterThan = `
580
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
581
- <path d="M6 7.11L15.09 12 6 16.89V19l12-6.46v-1.08L6 5v2.11z"/>
582
- </svg>
583
-
584
- `;
585
- const TextContains = `
586
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
587
- <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"/>
588
- <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"/>
589
- <path d="M3 3v18h18V3zm16 16H5V5h14z"/>
590
- <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"/>
591
- <path d="M0 0h24v24H0z" fill="none"/>
592
- </svg>
593
-
594
- `;
595
- const Top10 = `
596
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
597
- <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"/>
598
- <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"/>
599
- <path d="M0 0h24v24H0z" fill="none"/>
600
- </svg>
601
-
602
- `;
603
- const UniqueValues = `
604
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
605
- <path d="M0 0h24v24H0z" fill="none"/>
606
- <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"/>
607
- <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"/>
608
- <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"/>
609
- <path d="M0 0h24v24H0z" fill="none"/>
610
- <path d="M0 0h24v24H0z" fill="none"/>
611
- </svg>
612
-
613
- `;
614
-
615
- var conditions = /*#__PURE__*/Object.freeze({
616
- __proto__: null,
617
- Clear: Clear,
618
- ColorScale: ColorScale,
619
- DataBars: DataBars,
620
- DuplicateValues: DuplicateValues,
621
- Empty: Empty,
622
- Equal: Equal,
623
- GreaterThan: GreaterThan,
624
- TextContains: TextContains,
625
- Top10: Top10,
626
- UniqueValues: UniqueValues
627
- });
628
-
629
- var CHART_TYPE;
630
- (function (CHART_TYPE) {
631
- CHART_TYPE["PIE"] = "Pie";
632
- CHART_TYPE["COLUMN_GROUPED"] = "ColumnGrouped";
633
- CHART_TYPE["AREA_GROUPED"] = "AreaGrouped";
634
- CHART_TYPE["LINE_GROUPED"] = "LineGrouped";
635
- CHART_TYPE["BAR_GROUPED"] = "BarGrouped";
636
- CHART_TYPE["COLUMN_STACKED"] = "ColumnStacked";
637
- CHART_TYPE["AREA_STACKED"] = "AreaStacked";
638
- CHART_TYPE["LINE_STACKED"] = "LineStacked";
639
- CHART_TYPE["BAR_STACKED"] = "BarStacked";
640
- CHART_TYPE["COLUMN_100_STACKED"] = "Column100Stacked";
641
- CHART_TYPE["AREA_100_STACKED"] = "Area100Stacked";
642
- CHART_TYPE["LINE_100_STACKED"] = "Line100Stacked";
643
- CHART_TYPE["BAR_100_STACKED"] = "Bar100Stacked";
644
- CHART_TYPE["SCATTER_POINT"] = "ScatterPoint";
645
- CHART_TYPE["SCATTER_BUBBLE"] = "ScatterBubble";
646
- CHART_TYPE["SCATTER_LINE"] = "ScatterLine";
647
- })(CHART_TYPE || (CHART_TYPE = {}));
648
- var OPTIONS_TYPE;
649
- (function (OPTIONS_TYPE) {
650
- OPTIONS_TYPE["CHART"] = "chartOptions";
651
- OPTIONS_TYPE["SERIES"] = "seriesModel";
652
- OPTIONS_TYPE["X_AXIS"] = "xAxisOptions";
653
- OPTIONS_TYPE["Y_AXIS"] = "yAxisOptions";
654
- OPTIONS_TYPE["STACKED_SERIES"] = "stackedFragmentOptions";
655
- })(OPTIONS_TYPE || (OPTIONS_TYPE = {}));
656
142
 
657
- class IgxContextMenuComponent {
658
- constructor(overlayService) {
659
- this.overlayService = overlayService;
660
- this.chartTypes = [];
661
- this.textFormatters = [];
662
- this.destroy$ = new Subject();
663
- this._chartDialogOS = { closeOnOutsideClick: false };
664
- this._tabsMenuOverlaySettings = {
665
- closeOnOutsideClick: false,
666
- modal: false,
667
- outlet: null,
668
- scrollStrategy: new CloseScrollStrategy(),
669
- positionStrategy: new AutoPositionStrategy({
670
- horizontalDirection: HorizontalAlignment.Center,
671
- horizontalStartPoint: HorizontalAlignment.Center,
672
- verticalStartPoint: VerticalAlignment.Bottom,
673
- verticalDirection: VerticalAlignment.Bottom,
674
- openAnimation: null,
675
- closeAnimation: null
676
- })
677
- };
678
- this._chartPreviewDialogOverlaySettings = {
679
- closeOnOutsideClick: false,
680
- modal: false,
681
- outlet: null,
682
- scrollStrategy: new CloseScrollStrategy(),
683
- positionStrategy: new AutoPositionStrategy({
684
- horizontalDirection: HorizontalAlignment.Center,
685
- horizontalStartPoint: HorizontalAlignment.Center,
686
- verticalStartPoint: VerticalAlignment.Top,
687
- verticalDirection: VerticalAlignment.Top,
688
- openAnimation: null,
689
- closeAnimation: null
690
- })
691
- };
692
- this.chartImages = charts;
693
- this.conditionImages = conditions;
143
+ class IgxChartIntegrationDirective {
144
+ get chartData() {
145
+ return this._chartData;
694
146
  }
695
- ngAfterViewInit() {
696
- this.chartTypes = this.contextDirective.charts;
697
- this.textFormatters = this.contextDirective.formatters;
698
- if (this.contextDirective.chartsDirective) {
699
- this.contextDirective.chartsDirective.onChartTypesDetermined.pipe(takeUntil(this.destroy$))
700
- .subscribe((args) => this.chartTypes = args.chartsForCreation);
701
- }
702
- if (this.contextDirective.textFormatter) {
703
- this.contextDirective.textFormatter.onFormattersReady.pipe(takeUntil(this.destroy$))
704
- .subscribe(names => this.textFormatters = names);
147
+ set chartData(selectedData) {
148
+ const charts = new Set(this._dataChartTypes);
149
+ const dataModel = selectedData.length ? selectedData[0] : {};
150
+ this._labelMemberPaths = Object.keys(dataModel).filter(key => typeof dataModel[key] === 'string');
151
+ this._valueMemberPaths = Object.keys(dataModel).filter(key => typeof dataModel[key] === 'number');
152
+ this._chartData = selectedData.map((dataRecord, index) => this.addIndexMemberPath(dataRecord, index + 1));
153
+ const args = {
154
+ chartsAvailabilty: new Map(),
155
+ chartsForCreation: []
156
+ };
157
+ if (selectedData.length === 0 || this._valueMemberPaths.length === 0) {
158
+ this.onChartTypesDetermined.emit(args);
159
+ return;
705
160
  }
706
- this.contextDirective.onButtonClose.pipe(takeUntil(this.destroy$))
707
- .subscribe(() => { if (this.tabsMenu && !this.tabsMenu.collapsed) {
708
- this.tabsMenu.close();
709
- } });
710
- this.contextDirective.gridResizeNotify.pipe(takeUntil(this.destroy$))
711
- .subscribe(() => {
712
- if (!this.tabsMenu.collapsed) {
713
- this.tabsMenu.close();
714
- }
715
- });
716
- this.tabsMenu.opening.pipe(takeUntil(this.destroy$))
717
- .subscribe(() => {
718
- if (this.tabs.selectedItem.disabled) {
719
- debugger;
720
- // const i = this.tabs.items.find(tab => !tab.disabled)?.index || 0;
721
- // this.tabs.selectTab(this.tabs.tabs.toArray()[i], true);
722
- }
723
- });
724
- this.overlayService.opening.pipe(takeUntil(this.destroy$))
725
- .subscribe((args) => {
726
- if (args.componentRef) {
727
- const instance = args.componentRef.instance;
728
- instance.width = this.contextDirective.grid.nativeElement.clientWidth;
729
- instance.height = this.contextDirective.grid.nativeElement.clientHeight;
730
- instance.currentChartType = this.currentChartType;
731
- instance.allCharts = this.chartTypes;
732
- instance.chartDirective = this.contextDirective.chartsDirective;
733
- instance.onClose?.subscribe(() => {
734
- this.closeDialog();
735
- });
736
- instance.chartDialogResizeNotify?.subscribe(resizedContentArgs => {
737
- // This is a temporary fix, which should be removed right after
738
- // the overlay service is capable of notifying the overlay content elements
739
- // that their children has been resized.
740
- if (this.overlayService._overlayElement.children[1]) {
741
- // tslint:disable-next-line: max-line-length
742
- this.overlayService._overlayElement.children[1].children[0].style.width = resizedContentArgs[0].contentRect.width + 'px';
743
- }
744
- });
745
- }
746
- });
747
- this.overlayService.closing.pipe(takeUntil(this.destroy$))
748
- .subscribe((args) => {
749
- if (args.componentRef && args.componentRef.instance instanceof IgxChartMenuComponent) {
750
- if (this._dialogId) {
751
- this.tabsMenu.open(this._tabsMenuOverlaySettings);
161
+ if (selectedData.length === 1) {
162
+ charts.forEach((chart, _, set) => {
163
+ const isColumnChart = chart.indexOf('Column') !== -1;
164
+ const isBarChart = chart.indexOf('Bar') !== -1;
165
+ const isPieChart = chart.indexOf('Pie') !== -1;
166
+ if (!(isColumnChart || isBarChart || isPieChart)) {
167
+ set.delete(chart);
752
168
  }
753
- }
754
- });
169
+ });
170
+ }
171
+ // Config pie chart
172
+ const cannotCreatePieChart = selectedData.some(record => record[this._valueMemberPaths[0]] <= 0);
173
+ if (cannotCreatePieChart) {
174
+ charts.delete(CHART_TYPE.PIE);
175
+ }
176
+ // Config scatter chart member paths
177
+ const canCreateScatterChart = this._valueMemberPaths.length >= 2;
178
+ const canCreateBubbleChart = this._valueMemberPaths.length >= 3;
179
+ if (!canCreateScatterChart) {
180
+ charts.delete(CHART_TYPE.SCATTER_BUBBLE);
181
+ charts.delete(CHART_TYPE.SCATTER_LINE);
182
+ charts.delete(CHART_TYPE.SCATTER_POINT);
183
+ }
184
+ if (!canCreateBubbleChart) {
185
+ charts.delete(CHART_TYPE.SCATTER_BUBBLE);
186
+ }
187
+ args.chartsAvailabilty = this.chartTypesAvailability;
188
+ args.chartsForCreation = [...charts];
189
+ this.onChartTypesDetermined.emit(args);
755
190
  }
756
- ngOnDestroy() {
757
- this.destroy$.next(true);
758
- this.destroy$.complete();
191
+ set scatterChartYAxisValueMemberPath(path) {
192
+ this._scatterChartYAxisValueMemberPath = path;
759
193
  }
760
- toggleTabMenu() {
761
- this.currentChartType = this.currentChartType ? this.currentChartType : CHART_TYPE.COLUMN_GROUPED;
762
- this._tabsMenuOverlaySettings.target = this.button.nativeElement;
763
- this.tabsMenu.collapsed ? this.tabsMenu.open(this._tabsMenuOverlaySettings) : this.tabsMenu.close();
194
+ get scatterChartYAxisValueMemberPath() {
195
+ return this._scatterChartYAxisValueMemberPath &&
196
+ this._valueMemberPaths.indexOf(this._scatterChartYAxisValueMemberPath) !== -1 ?
197
+ this._scatterChartYAxisValueMemberPath : this._valueMemberPaths[0];
764
198
  }
765
- formatCells(condition) {
766
- this.currentFormatter = condition;
767
- this.contextDirective.textFormatter.formatCells(condition);
199
+ set bubbleChartRadiusMemberPath(path) {
200
+ this._bubbleChartRadiusMemberPath = path;
768
201
  }
769
- clearFormat() {
770
- this.contextDirective.textFormatter.clearFormatting();
771
- this.currentFormatter = undefined;
202
+ get bubbleChartRadiusMemberPath() {
203
+ return this._bubbleChartRadiusMemberPath &&
204
+ this._valueMemberPaths.indexOf(this._bubbleChartRadiusMemberPath) !== -1 ?
205
+ this._bubbleChartRadiusMemberPath : this._valueMemberPaths[1];
772
206
  }
773
- previewChart(currentChartType) {
774
- this.currentChartType = currentChartType;
775
- this.chartPreview.clear();
776
- this.contextDirective.chartsDirective.chartFactory(currentChartType, this.chartPreview);
777
- this._chartPreviewDialogOverlaySettings.target = this.tabsMenu.element;
778
- this.chartPreviewDialog.open(this._chartPreviewDialogOverlaySettings);
207
+ get _labelMemberPath() {
208
+ return this.defaultLabelMemberPath && this._chartData.some(r => r[this.defaultLabelMemberPath] !== undefined) ?
209
+ this.defaultLabelMemberPath : this._labelMemberPaths.length > 0 ? this._labelMemberPaths[0] : 'Index';
779
210
  }
780
- hidePreview() {
781
- this.chartPreviewDialog.close();
211
+ get pieChartOptions() {
212
+ return {
213
+ width: '85%',
214
+ height: '75%',
215
+ dataSource: this.chartData,
216
+ valueMemberPath: this._valueMemberPaths[0],
217
+ legendLabelMemberPath: this._labelMemberPath,
218
+ labelMemberPath: this._labelMemberPath,
219
+ };
782
220
  }
783
- openDialog(type) {
784
- this.currentChartType = type ? type : this.currentChartType ? this.currentChartType : CHART_TYPE.COLUMN_GROUPED;
785
- this._dialogId = this._dialogId ? this._dialogId :
786
- this.overlayService.attach(IgxChartMenuComponent, this._chartDialogOS);
787
- this.tabsMenu.close();
788
- this.overlayService.show(this._dialogId);
221
+ get dataChartOptions() {
222
+ return {
223
+ width: '100%',
224
+ height: '85%',
225
+ autoMarginWidth: 50,
226
+ isVerticalZoomEnabled: true,
227
+ isHorizontalZoomEnabled: true,
228
+ dataSource: this.chartData
229
+ };
789
230
  }
790
- closeDialog() {
791
- const info = this.overlayService.getOverlayById(this._dialogId);
792
- if (info) {
793
- this.overlayService.hide(this._dialogId);
794
- this.overlayService.detach(this._dialogId);
795
- this._dialogId = undefined;
231
+ constructor(factoryResolver) {
232
+ this.factoryResolver = factoryResolver;
233
+ this.onChartTypesDetermined = new EventEmitter();
234
+ this.onChartCreationDone = new EventEmitter();
235
+ this.useLegend = true;
236
+ this.defaultLabelMemberPath = undefined;
237
+ this.chartTypesAvailability = new Map();
238
+ this.customChartComponentOptions = new Map();
239
+ this.dataCharts = new Map();
240
+ this._scatterChartYAxisValueMemberPath = undefined;
241
+ this._bubbleChartRadiusMemberPath = undefined;
242
+ this._valueMemberPaths = [];
243
+ this._labelMemberPaths = [];
244
+ this._sizeScale = new IgxSizeScaleComponent();
245
+ this._dataChartTypes = new Set();
246
+ this.dataChartSeriesOptionsModel = {
247
+ isHighlightingEnabled: true,
248
+ areaFillOpacity: .4,
249
+ markerType: 3,
250
+ showDefaultTooltip: true
251
+ };
252
+ this.scatterChartSeriesOptionsModel = {
253
+ markerType: 3,
254
+ showDefaultTooltip: true
255
+ };
256
+ this.bubbleChartSeriesOptionsModel = {
257
+ radiusScale: this._sizeScale
258
+ };
259
+ this.dataCharts.set(CHART_TYPE.COLUMN_GROUPED, IgxColumnSeriesComponent);
260
+ this.dataCharts.set(CHART_TYPE.AREA_GROUPED, IgxAreaSeriesComponent);
261
+ this.dataCharts.set(CHART_TYPE.LINE_GROUPED, IgxLineSeriesComponent);
262
+ this.dataCharts.set(CHART_TYPE.BAR_GROUPED, IgxBarSeriesComponent);
263
+ this.dataCharts.set(CHART_TYPE.COLUMN_STACKED, IgxStackedColumnSeriesComponent);
264
+ this.dataCharts.set(CHART_TYPE.AREA_STACKED, IgxStackedAreaSeriesComponent);
265
+ this.dataCharts.set(CHART_TYPE.LINE_STACKED, IgxStackedLineSeriesComponent);
266
+ this.dataCharts.set(CHART_TYPE.BAR_STACKED, IgxStackedBarSeriesComponent);
267
+ this.dataCharts.set(CHART_TYPE.COLUMN_100_STACKED, IgxStacked100ColumnSeriesComponent);
268
+ this.dataCharts.set(CHART_TYPE.AREA_100_STACKED, IgxStacked100AreaSeriesComponent);
269
+ this.dataCharts.set(CHART_TYPE.LINE_100_STACKED, IgxStacked100LineSeriesComponent);
270
+ this.dataCharts.set(CHART_TYPE.BAR_100_STACKED, IgxStacked100BarSeriesComponent);
271
+ this.dataCharts.set(CHART_TYPE.SCATTER_POINT, IgxScatterSeriesComponent);
272
+ this.dataCharts.set(CHART_TYPE.SCATTER_BUBBLE, IgxBubbleSeriesComponent);
273
+ this.dataCharts.set(CHART_TYPE.SCATTER_LINE, IgxScatterLineSeriesComponent);
274
+ this.dataCharts.set(CHART_TYPE.PIE, IgxPieChartComponent);
275
+ const iterable = this.dataCharts.keys();
276
+ for (let head = iterable.next().value; head !== undefined; head = iterable.next().value) {
277
+ this._dataChartTypes.add(head);
278
+ this.chartTypesAvailability.set(head, true);
279
+ this.customChartComponentOptions.set(head, {});
796
280
  }
797
281
  }
798
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxContextMenuComponent, deps: [{ token: i1$1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Component }); }
799
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: IgxContextMenuComponent, 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 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 <!--NOTE: This component has been updated by Infragistics migration: v12.0.0\r\nPlease check your template whether all bindings/event handlers are correct.-->\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 [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: [".analytics-btn,.analytics-btn [igxButton=flat],.analytics-btn .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0))}.analytics-btn,.analytics-btn [igxButton=outlined],.analytics-btn .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0))}.analytics-btn,.analytics-btn [igxButton=contained],.analytics-btn .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8))}.analytics-btn,.analytics-btn [igxButton=fab],.analytics-btn .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12))}.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{width:354px;max-width:358px;height:148px;background-color:#fff}::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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0)}@-moz-document url-prefix(){}::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: "directive", type: i1$1.IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }, { kind: "component", type: i1$1.IgxTabsComponent, selector: "igx-tabs", inputs: ["tabAlignment", "activation"] }, { kind: "component", type: i1$1.IgxTabItemComponent, selector: "igx-tab-item" }, { kind: "component", type: i1$1.IgxTabHeaderComponent, selector: "igx-tab-header" }, { kind: "component", type: i1$1.IgxTabContentComponent, selector: "igx-tab-content" }, { kind: "directive", type: i1$1.IgxTabHeaderLabelDirective, selector: "igx-tab-header-label,[igxTabHeaderLabel]" }, { kind: "directive", type: i1$1.IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "component", type: i1$1.IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.SlicePipe, name: "slice" }, { kind: "pipe", type: SvgPipe, name: "svg" }] }); }
800
- }
801
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxContextMenuComponent, decorators: [{
802
- type: Component,
803
- args: [{ selector: 'igx-context-menu', template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn 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 <!--NOTE: This component has been updated by Infragistics migration: v12.0.0\r\nPlease check your template whether all bindings/event handlers are correct.-->\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 [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: [".analytics-btn,.analytics-btn [igxButton=flat],.analytics-btn .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0))}.analytics-btn,.analytics-btn [igxButton=outlined],.analytics-btn .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0))}.analytics-btn,.analytics-btn [igxButton=contained],.analytics-btn .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8))}.analytics-btn,.analytics-btn [igxButton=fab],.analytics-btn .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, #396a42);--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, #396a42);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, #396a42);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12))}.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{width:354px;max-width:358px;height:148px;background-color:#fff}::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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0)}@-moz-document url-prefix(){}::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"] }]
804
- }], ctorParameters: () => [{ type: i1$1.IgxOverlayService }], propDecorators: { button: [{
805
- type: ViewChild,
806
- args: ['analyticsBtn']
807
- }], tabsMenu: [{
808
- type: ViewChild,
809
- args: ['tabsMenu', { read: IgxToggleDirective }]
810
- }], chartPreview: [{
811
- type: ViewChild,
812
- args: ['chartPreview', { read: ViewContainerRef }]
813
- }], chartPreviewDialog: [{
814
- type: ViewChild,
815
- args: ['chartPreviewDialog', { read: IgxToggleDirective }]
816
- }], tabs: [{
817
- type: ViewChild,
818
- args: [IgxTabsComponent]
819
- }] } });
820
-
821
- var ConditionalFormattingType;
822
- (function (ConditionalFormattingType) {
823
- ConditionalFormattingType["dataBars"] = "Data Bars";
824
- ConditionalFormattingType["colorScale"] = "Color Scale";
825
- ConditionalFormattingType["top10"] = "Top 10";
826
- ConditionalFormattingType["textContains"] = "Text Contains";
827
- ConditionalFormattingType["single"] = "Duplicate Values";
828
- ConditionalFormattingType["unique"] = "Unique Values";
829
- ConditionalFormattingType["empty"] = "Empty";
830
- })(ConditionalFormattingType || (ConditionalFormattingType = {}));
831
- class IgxConditionalFormattingDirective {
832
- set formatColors(val) {
833
- this._formatColors = val;
282
+ getAvailableCharts() {
283
+ const res = [];
284
+ this.chartTypesAvailability.forEach((isAvailable, chartType) => {
285
+ if (isAvailable) {
286
+ res.push(chartType);
287
+ }
288
+ });
289
+ return res;
834
290
  }
835
- get formatColors() {
836
- return this._formatColors;
291
+ disableCharts(types) {
292
+ types.forEach(type => {
293
+ if (this.chartTypesAvailability.get(type)) {
294
+ this.chartTypesAvailability.set(type, false);
295
+ }
296
+ });
837
297
  }
838
- get selectedData() {
839
- if (!this._selectedData.length) {
840
- this._selectedData = this.toArray(this.grid.getSelectedData());
841
- }
842
- return this._selectedData;
298
+ enableCharts(types) {
299
+ types.forEach(type => {
300
+ if (!this.chartTypesAvailability.get(type)) {
301
+ this.chartTypesAvailability.set(type, true);
302
+ }
303
+ });
843
304
  }
844
- get textData() {
845
- return this.selectedData.filter(val => typeof val === 'string');
305
+ chartFactory(type, viewContainerRef) {
306
+ if (!this.chartTypesAvailability.get(type)) {
307
+ return;
308
+ }
309
+ let componentFactory;
310
+ let componentRef;
311
+ this._sizeScale.maximumValue = 60;
312
+ this._sizeScale.minimumValue = 10;
313
+ const chartType = this.dataCharts.get(type);
314
+ if (type === CHART_TYPE.PIE) {
315
+ componentFactory = this.factoryResolver.resolveComponentFactory(IgxPieChartComponent);
316
+ componentRef = viewContainerRef.createComponent(componentFactory);
317
+ }
318
+ else {
319
+ componentFactory = this.factoryResolver.resolveComponentFactory(IgxDataChartComponent);
320
+ componentRef = viewContainerRef.createComponent(componentFactory);
321
+ }
322
+ const options = this.getChartOptions(type);
323
+ const initializer = this.getInitializer(type, chartType);
324
+ if (this.useLegend) {
325
+ const legendType = type === CHART_TYPE.PIE ? IgxItemLegendComponent : IgxLegendComponent;
326
+ const legendFactory = this.factoryResolver.resolveComponentFactory(legendType);
327
+ const legendComponentRef = viewContainerRef.createComponent(legendFactory);
328
+ options.chartOptions['legend'] = legendComponentRef.instance;
329
+ }
330
+ const chart = initializer.initChart(componentRef.instance, options);
331
+ this.onChartCreationDone.emit(chart);
332
+ }
333
+ getInitializer(chartType, componentClassRef) {
334
+ if (chartType.includes('Pie')) {
335
+ return new IgxPieChartInitializer();
336
+ }
337
+ else if (chartType.includes('Stacked')) {
338
+ return new IgxStackedDataChartInitializer(componentClassRef);
339
+ }
340
+ else {
341
+ return new IgxDataChartInitializer(componentClassRef);
342
+ }
343
+ }
344
+ getChartOptions(type) {
345
+ const chartComponentOptions = {};
346
+ return type === CHART_TYPE.PIE ? this.addPieChartDataOptions(chartComponentOptions) :
347
+ this.addDataChartDataOptions(type, chartComponentOptions, type.includes('Stacked'));
348
+ }
349
+ addPieChartDataOptions(chartComponentOptions) {
350
+ // tslint:disable-next-line: max-line-length
351
+ chartComponentOptions.chartOptions = Object.assign(this.pieChartOptions, this.customChartComponentOptions.get(CHART_TYPE.PIE).chartOptions);
352
+ return chartComponentOptions;
353
+ }
354
+ addDataChartDataOptions(type, chartComponentOptions, stacked) {
355
+ chartComponentOptions.chartOptions = Object.assign(this.dataChartOptions, this.customChartComponentOptions.get(type));
356
+ if (type.indexOf('Scatter') !== -1) {
357
+ this.addScatterChartDataOptions(type, chartComponentOptions);
358
+ }
359
+ else {
360
+ // tslint:disable-next-line: max-line-length
361
+ chartComponentOptions.seriesModel = Object.assign(this.dataChartSeriesOptionsModel, this.customChartComponentOptions.get(type).seriesModel);
362
+ this.setAxisLabelOption(type, chartComponentOptions);
363
+ const options = [];
364
+ this._valueMemberPaths.forEach(valueMemberPath => {
365
+ const dataOptions = {
366
+ title: valueMemberPath,
367
+ valueMemberPath
368
+ };
369
+ if (stacked) {
370
+ options.push({ ...dataOptions });
371
+ }
372
+ else {
373
+ options.push({ ...dataOptions, ...chartComponentOptions.seriesModel });
374
+ }
375
+ });
376
+ stacked ? chartComponentOptions.stackedFragmentOptions = options :
377
+ chartComponentOptions.seriesOptions = options;
378
+ }
379
+ return chartComponentOptions;
380
+ }
381
+ addScatterChartDataOptions(scatterChart, chartComponentOptions) {
382
+ // tslint:disable-next-line: max-line-length
383
+ chartComponentOptions.seriesModel = Object.assign(this.scatterChartSeriesOptionsModel, this.customChartComponentOptions.get(scatterChart).seriesModel);
384
+ chartComponentOptions.seriesModel['yMemberPath'] = this.scatterChartYAxisValueMemberPath;
385
+ if (scatterChart === CHART_TYPE.SCATTER_BUBBLE) {
386
+ chartComponentOptions.seriesModel = Object.assign(chartComponentOptions.seriesModel, this.bubbleChartSeriesOptionsModel);
387
+ chartComponentOptions.seriesModel['radiusMemberPath'] = this.bubbleChartRadiusMemberPath;
388
+ }
389
+ const model = chartComponentOptions.seriesModel;
390
+ const seriesOptions = [];
391
+ this._valueMemberPaths.filter(v => !(v === model['yMemberPath'] ||
392
+ v === model['radiusMemberPath'])).forEach(valueMemberPath => {
393
+ const dataOptions = {
394
+ title: `${model['yMemberPath']} vs ${valueMemberPath}`,
395
+ xMemberPath: valueMemberPath,
396
+ labelMemberPath: this._labelMemberPath
397
+ };
398
+ seriesOptions.push({ ...dataOptions, ...model });
399
+ });
400
+ chartComponentOptions.seriesOptions = seriesOptions;
401
+ }
402
+ addIndexMemberPath(dataRecord, index) {
403
+ dataRecord = { ...{ [this._labelMemberPath]: index }, ...dataRecord };
404
+ return dataRecord;
405
+ }
406
+ setAxisLabelOption(type, options) {
407
+ if (type.indexOf('Bar') !== -1) {
408
+ options.yAxisOptions = Object.assign({
409
+ label: this._labelMemberPath
410
+ }, this.customChartComponentOptions.get(type).yAxisOptions);
411
+ }
412
+ else {
413
+ options.xAxisOptions = Object.assign({
414
+ label: this._labelMemberPath
415
+ }, this.customChartComponentOptions.get(type).xAxisOptions);
416
+ }
417
+ }
418
+ setChartComponentOptions(chart, optionsType, options) {
419
+ if (!this.customChartComponentOptions.get(chart)[optionsType]) {
420
+ this.customChartComponentOptions.get(chart)[optionsType] = {};
421
+ }
422
+ Object.keys(options).forEach(property => {
423
+ this.customChartComponentOptions.get(chart)[optionsType][property] = options[property];
424
+ });
425
+ }
426
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxChartIntegrationDirective, deps: [{ token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); }
427
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.3", type: IgxChartIntegrationDirective, isStandalone: true, selector: "[igxChartIntegration]", inputs: { chartData: "chartData", useLegend: "useLegend", defaultLabelMemberPath: "defaultLabelMemberPath", scatterChartYAxisValueMemberPath: "scatterChartYAxisValueMemberPath", bubbleChartRadiusMemberPath: "bubbleChartRadiusMemberPath" }, outputs: { onChartTypesDetermined: "onChartTypesDetermined", onChartCreationDone: "onChartCreationDone" }, ngImport: i0 }); }
428
+ }
429
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxChartIntegrationDirective, decorators: [{
430
+ type: Directive,
431
+ args: [{
432
+ selector: '[igxChartIntegration]',
433
+ }]
434
+ }], ctorParameters: () => [{ type: i0.ComponentFactoryResolver }], propDecorators: { chartData: [{
435
+ type: Input
436
+ }], onChartTypesDetermined: [{
437
+ type: Output
438
+ }], onChartCreationDone: [{
439
+ type: Output
440
+ }], useLegend: [{
441
+ type: Input
442
+ }], defaultLabelMemberPath: [{
443
+ type: Input
444
+ }], scatterChartYAxisValueMemberPath: [{
445
+ type: Input
446
+ }], bubbleChartRadiusMemberPath: [{
447
+ type: Input
448
+ }] } });
449
+
450
+ var ConditionalFormattingType;
451
+ (function (ConditionalFormattingType) {
452
+ ConditionalFormattingType["dataBars"] = "Data Bars";
453
+ ConditionalFormattingType["colorScale"] = "Color Scale";
454
+ ConditionalFormattingType["top10"] = "Top 10";
455
+ ConditionalFormattingType["textContains"] = "Text Contains";
456
+ ConditionalFormattingType["single"] = "Duplicate Values";
457
+ ConditionalFormattingType["unique"] = "Unique Values";
458
+ ConditionalFormattingType["empty"] = "Empty";
459
+ })(ConditionalFormattingType || (ConditionalFormattingType = {}));
460
+ class IgxConditionalFormattingDirective {
461
+ set formatColors(val) {
462
+ this._formatColors = val;
463
+ }
464
+ get formatColors() {
465
+ return this._formatColors;
466
+ }
467
+ get selectedData() {
468
+ if (!this._selectedData.length) {
469
+ this._selectedData = this.toArray(this.grid.getSelectedData());
470
+ }
471
+ return this._selectedData;
472
+ }
473
+ get textData() {
474
+ return this.selectedData.filter(val => typeof val === 'string');
846
475
  }
847
476
  get numericData() {
848
477
  return this.selectedData.filter(val => typeof val === 'number');
@@ -1099,433 +728,811 @@ class IgxConditionalFormattingDirective {
1099
728
  this.formatedRange.has(rowIndex) ? this.formatedRange.get(rowIndex).add(colIndex) :
1100
729
  this.formatedRange.set(rowIndex, new Set()).get(rowIndex).add(colIndex);
1101
730
  }
1102
- toArray(data) {
1103
- let result = [];
1104
- data.forEach(rec => result = result.concat(Object.values(rec)));
1105
- return result;
731
+ toArray(data) {
732
+ let result = [];
733
+ data.forEach(rec => result = result.concat(Object.values(rec)));
734
+ return result;
735
+ }
736
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxConditionalFormattingDirective, deps: [{ token: i1.IgxGridComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
737
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.3", type: IgxConditionalFormattingDirective, isStandalone: true, selector: "[igxConditionalFormatting]", inputs: { formatter: "formatter", formatColors: "formatColors" }, outputs: { onFormattersReady: "onFormattersReady" }, ngImport: i0 }); }
738
+ }
739
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxConditionalFormattingDirective, decorators: [{
740
+ type: Directive,
741
+ args: [{
742
+ selector: '[igxConditionalFormatting]',
743
+ }]
744
+ }], ctorParameters: () => [{ type: i1.IgxGridComponent }], propDecorators: { formatter: [{
745
+ type: Input
746
+ }], formatColors: [{
747
+ type: Input
748
+ }], onFormattersReady: [{
749
+ type: Output
750
+ }] } });
751
+
752
+ // tslint:disable: max-line-length
753
+ const Area100Stacked = `
754
+ <svg id="Layer_1" data-name="Layer 1"
755
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
756
+ <defs>
757
+ <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>
758
+ </defs>
759
+ <rect class="cls-Area100Stacked-1" width="96" height="95.7"/>
760
+ <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"/>
761
+ <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"/>
762
+ <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"/>
763
+ </svg>
764
+ `;
765
+ const AreaGrouped = `
766
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
767
+ <defs>
768
+ <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>
769
+ </defs>
770
+ <g id="ChartNames">
771
+ <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"/>
772
+ <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"/>
773
+ <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"/>
774
+ <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"/>
775
+ </g>
776
+ </svg>
777
+ `;
778
+ const AreaStacked = `
779
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
780
+ <defs>
781
+ <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>
782
+ </defs>
783
+ <g id="ChartNames">
784
+ <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"/>
785
+ <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"/>
786
+ <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"/>
787
+ <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"/>
788
+ </g>
789
+ </svg>
790
+ `;
791
+ const Bar100Stacked = `
792
+ <svg id="Layer_1" data-name="Layer 1"
793
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
794
+ <defs>
795
+ <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>
796
+ </defs>
797
+ <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"/>
798
+ <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"/>
799
+ <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"/>
800
+ <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"/>
801
+ <rect class="cls-Bar100Stacked-5" y="7.84" width="10.78" height="11.1"/>
802
+ </svg>
803
+ `;
804
+ const BarGrouped = `
805
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
806
+ <defs>
807
+ <style>.cls-BarGrouped-1{fill:#f05951;}.cls-BarGrouped-2{fill:#ab4191;}.cls-BarGrouped-3{fill:#0f6860;}.cls-BarGrouped-4{fill:#fa8d3d;}</style>
808
+ </defs>
809
+ <g id="ChartNames">
810
+ <rect class="cls-BarGrouped-1" y="77.13" width="21.19" height="6.29"/>
811
+ <rect class="cls-BarGrouped-1" y="49.66" width="48.99" height="6.29"/>
812
+ <rect class="cls-BarGrouped-1" y="22.18" width="72.5" height="6.29"/>
813
+ <rect class="cls-BarGrouped-2" y="70.84" width="81.43" height="6.29"/>
814
+ <rect class="cls-BarGrouped-3" y="89.71" width="60.25" height="6.29"/>
815
+ <rect class="cls-BarGrouped-2" y="43.37" width="96" height="6.29"/>
816
+ <rect class="cls-BarGrouped-3" y="62.23" width="33.43" height="6.29"/>
817
+ <rect class="cls-BarGrouped-2" y="15.89" width="55.61" height="6.29"/>
818
+ <rect class="cls-BarGrouped-3" y="34.76" width="45.35" height="6.29"/>
819
+ <rect class="cls-BarGrouped-4" y="83.42" width="89.38" height="6.29"/>
820
+ <rect class="cls-BarGrouped-4" y="55.94" width="70.84" height="6.29"/>
821
+ <rect class="cls-BarGrouped-4" y="28.47" width="33.43" height="6.29"/>
822
+ </g>
823
+ </svg>
824
+ `;
825
+ const BarStacked = `
826
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
827
+ <defs>
828
+ <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>
829
+ </defs>
830
+ <g id="ChartNames">
831
+ <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"/>
832
+ <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"/>
833
+ <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"/>
834
+ <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"/>
835
+ </g>
836
+ </svg>
837
+ `;
838
+ const Column100Stacked = `
839
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
840
+ <defs>
841
+ <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>
842
+ </defs>
843
+ <g id="ChartNames">
844
+ <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"/>
845
+ <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"/>
846
+ <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"/>
847
+ <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"/>
848
+ </g>
849
+ </svg>
850
+ `;
851
+ const ColumnGrouped = `
852
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
853
+ <defs>
854
+ <style>.cls-ColumnGrouped-1{fill:#fa8d3d;}.cls-ColumnGrouped-2{fill:#f05951;}.cls-ColumnGrouped-3{fill:#0f6860;}.cls-ColumnGrouped-4{fill:#ab4191;}</style>
855
+ </defs>
856
+ <g id="ChartNames">
857
+ <rect class="cls-ColumnGrouped-1" x="14.87" y="30.42" width="7.44" height="65.58"/>
858
+ <rect class="cls-ColumnGrouped-1" x="48" y="8.11" width="7.44" height="87.89"/>
859
+ <rect class="cls-ColumnGrouped-1" x="81.13" y="38.2" width="7.44" height="57.8"/>
860
+ <rect class="cls-ColumnGrouped-2" x="7.44" y="43.61" width="7.44" height="52.39"/>
861
+ <rect class="cls-ColumnGrouped-3" x="22.31" y="52.06" width="7.44" height="43.94"/>
862
+ <rect class="cls-ColumnGrouped-2" x="40.56" y="34.48" width="7.44" height="61.52"/>
863
+ <rect class="cls-ColumnGrouped-3" x="55.44" y="19.27" width="7.44" height="76.73"/>
864
+ <rect class="cls-ColumnGrouped-2" x="73.69" y="12.17" width="7.44" height="83.83"/>
865
+ <rect class="cls-ColumnGrouped-4" y="20.28" width="7.44" height="75.72"/>
866
+ <rect class="cls-ColumnGrouped-4" x="33.13" y="71.32" width="7.44" height="24.68"/>
867
+ <rect class="cls-ColumnGrouped-4" x="66.25" y="51.04" width="7.44" height="44.96"/>
868
+ <rect class="cls-ColumnGrouped-3" x="88.56" y="63.21" width="7.44" height="32.79"/>
869
+ </g>
870
+ </svg>
871
+ `;
872
+ const ColumnStacked = `
873
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
874
+ <defs>
875
+ <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>
876
+ </defs>
877
+ <g id="ChartNames">
878
+ <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"/>
879
+ <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"/>
880
+ <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"/>
881
+ <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"/>
882
+ </g>
883
+ </svg>
884
+ `;
885
+ const Line100Stacked = `
886
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
887
+ <defs>
888
+ <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>
889
+ </defs>
890
+ <g id="ChartNames">
891
+ <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"/>
892
+ <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"/>
893
+ <polyline class="cls-Line100Stacked-3" points="0 66.68 17.34 59.32 38.37 72.9 59.76 55.35 96 65.16"/>
894
+ <polyline class="cls-Line100Stacked-4" points="0 85.81 17.34 78.52 59.39 88.12 80.78 76.87 96 82.48"/>
895
+ </g>
896
+ </svg>
897
+ `;
898
+ const LineGrouped = `
899
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
900
+ <defs>
901
+ <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>
902
+ </defs>
903
+ <g id="ChartNames">
904
+ <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"/>
905
+ <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"/>
906
+ <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"/>
907
+ <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"/>
908
+ </g>
909
+ </svg>
910
+ `;
911
+ const LineStacked = `
912
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
913
+ <defs>
914
+ <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>
915
+ </defs>
916
+ <g id="ChartNames">
917
+ <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"/>
918
+ <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"/>
919
+ <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"/>
920
+ <polyline class="cls-LineStacked-4" points="0 96 31.16 90.78 64.95 88.38 82.19 77.78 96 74.53"/>
921
+ </g>
922
+ </svg>
923
+ `;
924
+ const Pie = `
925
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
926
+ <defs>
927
+ <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>
928
+ </defs>
929
+ <g id="ChartNames">
930
+ <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"/>
931
+ <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"/>
932
+ <path class="cls-Pie-3" d="M51.77,48,91.29,67.53a42.87,42.87,0,0,0,.53-38Z"/>
933
+ <path class="cls-Pie-4" d="M44.19,48,84.24,29.52a43.13,43.13,0,0,0-40-25.73Z"/>
934
+ </g>
935
+ </svg>
936
+ `;
937
+ const ScatterBubble = `
938
+ <svg id="Layer_1" data-name="Layer 1"
939
+ xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
940
+ <defs>
941
+ <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>
942
+ </defs>
943
+ <circle class="cls-ScatterBubble-1" cx="6.06" cy="85.05" r="2.33"/>
944
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="83.89" r="2.33"/>
945
+ <circle class="cls-ScatterBubble-1" cx="13.07" cy="78.83" r="2.33"/>
946
+ <circle class="cls-ScatterBubble-1" cx="39.52" cy="59.38" r="2.33"/>
947
+ <circle class="cls-ScatterBubble-1" cx="35.63" cy="53.94" r="2.33"/>
948
+ <circle class="cls-ScatterBubble-1" cx="7.62" cy="70.27" r="2.33"/>
949
+ <circle class="cls-ScatterBubble-1" cx="20.85" cy="71.44" r="2.33"/>
950
+ <circle class="cls-ScatterBubble-2" cx="8.79" cy="84.28" r="3.11"/>
951
+ <circle class="cls-ScatterBubble-1" cx="18.9" cy="67.16" r="3.11"/>
952
+ <circle class="cls-ScatterBubble-1" cx="36.4" cy="59.77" r="3.11"/>
953
+ <circle class="cls-ScatterBubble-1" cx="63.24" cy="21.26" r="3.11"/>
954
+ <circle class="cls-ScatterBubble-1" cx="25.12" cy="70.27" r="3.11"/>
955
+ <circle class="cls-ScatterBubble-2" cx="9.18" cy="71.83" r="3.11"/>
956
+ <circle class="cls-ScatterBubble-2" cx="13.07" cy="47.32" r="3.11"/>
957
+ <circle class="cls-ScatterBubble-1" cx="8.01" cy="60.94" r="4.28"/>
958
+ <circle class="cls-ScatterBubble-2" cx="22.4" cy="74.94" r="4.28"/>
959
+ <circle class="cls-ScatterBubble-1" cx="29.79" cy="54.33" r="4.28"/>
960
+ <circle class="cls-ScatterBubble-1" cx="73.75" cy="30.99" r="4.28"/>
961
+ <circle class="cls-ScatterBubble-1" cx="62.47" cy="34.88" r="4.28"/>
962
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="48.88" r="4.28"/>
963
+ <circle class="cls-ScatterBubble-1" cx="44.18" cy="28.26" r="4.28"/>
964
+ <circle class="cls-ScatterBubble-1" cx="16.57" cy="61.33" r="4.28"/>
965
+ <circle class="cls-ScatterBubble-2" cx="29.79" cy="49.66" r="5.06"/>
966
+ <circle class="cls-ScatterBubble-1" cx="47.68" cy="53.94" r="5.83"/>
967
+ <circle class="cls-ScatterBubble-1" cx="62.08" cy="26.32" r="5.06"/>
968
+ <circle class="cls-ScatterBubble-2" cx="86.58" cy="39.93" r="5.06"/>
969
+ <circle class="cls-ScatterBubble-2" cx="70.63" cy="33.32" r="5.06"/>
970
+ <circle class="cls-ScatterBubble-2" cx="64.8" cy="33.32" r="6.22"/>
971
+ <circle class="cls-ScatterBubble-1" cx="25.9" cy="32.15" r="6.22"/>
972
+ <circle class="cls-ScatterBubble-2" cx="39.52" cy="74.16" r="6.61"/>
973
+ <circle class="cls-ScatterBubble-2" cx="56.23" cy="81.54" r="6.22"/>
974
+ <circle class="cls-ScatterBubble-1" cx="51.19" cy="74.16" r="8.17"/>
975
+ <circle class="cls-ScatterBubble-2" cx="42.24" cy="38.77" r="8.17"/>
976
+ <circle class="cls-ScatterBubble-1" cx="50.8" cy="60.94" r="8.17"/>
977
+ <circle class="cls-ScatterBubble-1" cx="41.85" cy="34.88" r="9.34"/>
978
+ <circle class="cls-ScatterBubble-1" cx="52.35" cy="31.76" r="11.28"/>
979
+ <circle class="cls-ScatterBubble-2" cx="58.97" cy="53.55" r="12.84"/>
980
+ <circle class="cls-ScatterBubble-1" cx="37.57" cy="81.55" r="9.72"/>
981
+ <circle class="cls-ScatterBubble-1" cx="58.58" cy="50.44" r="6.22"/>
982
+ <circle class="cls-ScatterBubble-1" cx="51.57" cy="53.55" r="7"/>
983
+ <circle class="cls-ScatterBubble-1" cx="53.52" cy="34.49" r="7"/>
984
+ <circle class="cls-ScatterBubble-1" cx="57.41" cy="11.93" r="7"/>
985
+ <circle class="cls-ScatterBubble-1" cx="86.19" cy="57.83" r="5.45"/>
986
+ <circle class="cls-ScatterBubble-1" cx="20.85" cy="66.38" r="5.45"/>
987
+ <circle class="cls-ScatterBubble-2" cx="38.35" cy="58.6" r="5.06"/>
988
+ <circle class="cls-ScatterBubble-2" cx="15.79" cy="64.05" r="5.06"/>
989
+ <circle class="cls-ScatterBubble-1" cx="28.24" cy="74.55" r="5.06"/>
990
+ <circle class="cls-ScatterBubble-2" cx="57.02" cy="22.04" r="4.28"/>
991
+ </svg>
992
+ `;
993
+ const ScatterLine = `
994
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
995
+ <defs>
996
+ <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>
997
+ </defs>
998
+ <g id="ChartNames">
999
+ <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"/>
1000
+ <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"/>
1001
+ <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"/>
1002
+ <polyline class="cls-ScatterLine-4" points="23.58 4.76 10.97 12.44 8.47 29.72"/>
1003
+ <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"/>
1004
+ <circle class="cls-ScatterLine-6" cx="11.19" cy="12.61" r="1.5"/>
1005
+ <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"/>
1006
+ <circle class="cls-ScatterLine-6" cx="23.55" cy="4.59" r="1.5"/>
1007
+ <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"/>
1008
+ <circle class="cls-ScatterLine-6" cx="8.52" cy="29.64" r="1.5"/>
1009
+ <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"/>
1010
+ <circle class="cls-ScatterLine-6" cx="59.94" cy="7.26" r="1.5"/>
1011
+ <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"/>
1012
+ <circle class="cls-ScatterLine-6" cx="47.25" cy="10.24" r="1.5"/>
1013
+ <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"/>
1014
+ <circle class="cls-ScatterLine-6" cx="35.56" cy="14.94" r="1.5"/>
1015
+ <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"/>
1016
+ <circle class="cls-ScatterLine-6" cx="18.87" cy="32.08" r="1.5"/>
1017
+ <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"/>
1018
+ <circle class="cls-ScatterLine-6" cx="17.2" cy="50.34" r="1.5"/>
1019
+ <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"/>
1020
+ <circle class="cls-ScatterLine-6" cx="10.48" cy="58.24" r="1.5"/>
1021
+ <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"/>
1022
+ <circle class="cls-ScatterLine-6" cx="83.04" cy="60.02" r="1.5"/>
1023
+ <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"/>
1024
+ <circle class="cls-ScatterLine-6" cx="88.09" cy="49" r="1.5"/>
1025
+ <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"/>
1026
+ <circle class="cls-ScatterLine-6" cx="75.77" cy="71.18" r="1.5"/>
1027
+ <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"/>
1028
+ <circle class="cls-ScatterLine-6" cx="60.66" cy="85.65" r="1.5"/>
1029
+ <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"/>
1030
+ <circle class="cls-ScatterLine-6" cx="37.71" cy="81.53" r="1.5"/>
1031
+ <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"/>
1032
+ <circle class="cls-ScatterLine-6" cx="26.86" cy="87.32" r="1.5"/>
1033
+ <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"/>
1034
+ <circle class="cls-ScatterLine-6" cx="10.48" cy="85.73" r="1.5"/>
1035
+ <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"/>
1036
+ <circle class="cls-ScatterLine-6" cx="15.86" cy="77.38" r="1.5"/>
1037
+ <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"/>
1038
+ <circle class="cls-ScatterLine-6" cx="21.54" cy="70.71" r="1.5"/>
1039
+ <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"/>
1040
+ <circle class="cls-ScatterLine-6" cx="31.94" cy="58.91" r="1.5"/>
1041
+ <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"/>
1042
+ <circle class="cls-ScatterLine-6" cx="43.91" cy="49.67" r="1.5"/>
1043
+ <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"/>
1044
+ <circle class="cls-ScatterLine-6" cx="55.26" cy="41.66" r="1.5"/>
1045
+ <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"/>
1046
+ <circle class="cls-ScatterLine-6" cx="60.27" cy="31.3" r="1.5"/>
1047
+ <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"/>
1048
+ <circle class="cls-ScatterLine-6" cx="69.95" cy="23.62" r="1.5"/>
1049
+ <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"/>
1050
+ <circle class="cls-ScatterLine-6" cx="88.32" cy="6.59" r="1.5"/>
1051
+ </g>
1052
+ </svg>
1053
+ `;
1054
+ const ScatterPoint = `
1055
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96">
1056
+ <defs>
1057
+ <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>
1058
+ </defs>
1059
+ <g id="ChartNames">
1060
+ <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"/>
1061
+ <circle class="cls-ScatterPoint-2" cx="8.79" cy="7.64" r="1.42"/>
1062
+ <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"/>
1063
+ <circle class="cls-ScatterPoint-2" cx="14.46" cy="10.01" r="1.42"/>
1064
+ <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"/>
1065
+ <circle class="cls-ScatterPoint-2" cx="24.38" cy="8.59" r="1.42"/>
1066
+ <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"/>
1067
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="14.73" r="1.42"/>
1068
+ <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"/>
1069
+ <circle class="cls-ScatterPoint-2" cx="13.98" cy="31.27" r="1.42"/>
1070
+ <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"/>
1071
+ <circle class="cls-ScatterPoint-2" cx="5.48" cy="28.9" r="1.42"/>
1072
+ <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"/>
1073
+ <circle class="cls-ScatterPoint-2" cx="5.01" cy="34.57" r="1.42"/>
1074
+ <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"/>
1075
+ <circle class="cls-ScatterPoint-2" cx="3.12" cy="37.88" r="1.42"/>
1076
+ <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"/>
1077
+ <circle class="cls-ScatterPoint-2" cx="3.59" cy="44.5" r="1.42"/>
1078
+ <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"/>
1079
+ <circle class="cls-ScatterPoint-2" cx="5.01" cy="66.23" r="1.42"/>
1080
+ <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"/>
1081
+ <circle class="cls-ScatterPoint-2" cx="28.63" cy="75.21" r="1.42"/>
1082
+ <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"/>
1083
+ <circle class="cls-ScatterPoint-2" cx="12.09" cy="52.06" r="1.42"/>
1084
+ <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"/>
1085
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="48.75" r="1.42"/>
1086
+ <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"/>
1087
+ <circle class="cls-ScatterPoint-2" cx="16.82" cy="41.66" r="1.42"/>
1088
+ <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"/>
1089
+ <circle class="cls-ScatterPoint-2" cx="24.85" cy="44.5" r="1.42"/>
1090
+ <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"/>
1091
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="44.02" r="1.42"/>
1092
+ <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"/>
1093
+ <circle class="cls-ScatterPoint-2" cx="21.54" cy="87.88" r="1.42"/>
1094
+ <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"/>
1095
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="67.65" r="1.42"/>
1096
+ <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"/>
1097
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="51.58" r="1.42"/>
1098
+ <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"/>
1099
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="53.94" r="1.42"/>
1100
+ <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"/>
1101
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="63.39" r="1.42"/>
1102
+ <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"/>
1103
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="71.43" r="1.42"/>
1104
+ <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"/>
1105
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="83.24" r="1.42"/>
1106
+ <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"/>
1107
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="75.21" r="1.42"/>
1108
+ <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"/>
1109
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="63.39" r="1.42"/>
1110
+ <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"/>
1111
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="71.43" r="1.42"/>
1112
+ <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"/>
1113
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="55.83" r="1.42"/>
1114
+ <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"/>
1115
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="24.81" r="1.42"/>
1116
+ <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"/>
1117
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="21.97" r="1.42"/>
1118
+ <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"/>
1119
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="84.1" r="1.42"/>
1120
+ <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"/>
1121
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="70.95" r="1.42"/>
1122
+ <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"/>
1123
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="88.36" r="1.42"/>
1124
+ <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"/>
1125
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="71.43" r="1.42"/>
1126
+ <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"/>
1127
+ <circle class="cls-ScatterPoint-2" cx="22.01" cy="64.34" r="1.42"/>
1128
+ <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"/>
1129
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="50.64" r="1.42"/>
1130
+ <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"/>
1131
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="62.92" r="1.42"/>
1132
+ <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"/>
1133
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="78.99" r="1.42"/>
1134
+ <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"/>
1135
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="68.12" r="1.42"/>
1136
+ <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"/>
1137
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="56.78" r="1.42"/>
1138
+ <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"/>
1139
+ <circle class="cls-ScatterPoint-2" cx="55.56" cy="76.15" r="1.42"/>
1140
+ <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"/>
1141
+ <circle class="cls-ScatterPoint-2" cx="44.22" cy="85.52" r="1.42"/>
1142
+ <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"/>
1143
+ <circle class="cls-ScatterPoint-2" cx="66.43" cy="83.24" r="1.42"/>
1144
+ <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"/>
1145
+ <circle class="cls-ScatterPoint-2" cx="77.76" cy="75.68" r="1.42"/>
1146
+ <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"/>
1147
+ <circle class="cls-ScatterPoint-2" cx="80.13" cy="75.21" r="1.42"/>
1148
+ <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"/>
1149
+ <circle class="cls-ScatterPoint-2" cx="88.63" cy="54.89" r="1.42"/>
1150
+ <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"/>
1151
+ <circle class="cls-ScatterPoint-2" cx="92.88" cy="70.95" r="1.42"/>
1152
+ <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"/>
1153
+ <circle class="cls-ScatterPoint-2" cx="89.1" cy="88.36" r="1.42"/>
1154
+ <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"/>
1155
+ <circle class="cls-ScatterPoint-2" cx="32.88" cy="83.71" r="1.42"/>
1156
+ </g>
1157
+ </svg>
1158
+ `;
1159
+
1160
+ var charts = /*#__PURE__*/Object.freeze({
1161
+ __proto__: null,
1162
+ Area100Stacked: Area100Stacked,
1163
+ AreaGrouped: AreaGrouped,
1164
+ AreaStacked: AreaStacked,
1165
+ Bar100Stacked: Bar100Stacked,
1166
+ BarGrouped: BarGrouped,
1167
+ BarStacked: BarStacked,
1168
+ Column100Stacked: Column100Stacked,
1169
+ ColumnGrouped: ColumnGrouped,
1170
+ ColumnStacked: ColumnStacked,
1171
+ Line100Stacked: Line100Stacked,
1172
+ LineGrouped: LineGrouped,
1173
+ LineStacked: LineStacked,
1174
+ Pie: Pie,
1175
+ ScatterBubble: ScatterBubble,
1176
+ ScatterLine: ScatterLine,
1177
+ ScatterPoint: ScatterPoint
1178
+ });
1179
+
1180
+ class SvgPipe {
1181
+ constructor(sanitizer) {
1182
+ this.sanitizer = sanitizer;
1183
+ }
1184
+ transform(markup) {
1185
+ return this.sanitizer.bypassSecurityTrustHtml(markup);
1106
1186
  }
1107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxConditionalFormattingDirective, deps: [{ token: i1$1.IgxGridComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
1108
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: IgxConditionalFormattingDirective, selector: "[igxConditionalFormatting]", inputs: { formatter: "formatter", formatColors: "formatColors" }, outputs: { onFormattersReady: "onFormattersReady" }, ngImport: i0 }); }
1187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: SvgPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1188
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.3", ngImport: i0, type: SvgPipe, isStandalone: true, name: "svg" }); }
1109
1189
  }
1110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxConditionalFormattingDirective, decorators: [{
1111
- type: Directive,
1190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: SvgPipe, decorators: [{
1191
+ type: Pipe,
1112
1192
  args: [{
1113
- selector: '[igxConditionalFormatting]'
1193
+ name: 'svg',
1114
1194
  }]
1115
- }], ctorParameters: () => [{ type: i1$1.IgxGridComponent }], propDecorators: { formatter: [{
1116
- type: Input
1117
- }], formatColors: [{
1118
- type: Input
1119
- }], onFormattersReady: [{
1120
- type: Output
1121
- }] } });
1122
-
1123
- // tslint:disable: max-line-length
1124
- class SeriesFactory {
1125
- create(type) {
1126
- return new type();
1127
- }
1128
- }
1129
- class ChartInitializer {
1130
- constructor() {
1131
- this.seriesFactory = new SeriesFactory();
1132
- }
1133
- applyOptions(target, options) {
1134
- if (options) {
1135
- Object.keys(options).forEach(key => {
1136
- if (target[key] instanceof EventEmitter) {
1137
- target[key].subscribe(options[key]);
1138
- }
1139
- else {
1140
- target[key] = options[key];
1141
- }
1142
- });
1143
- }
1144
- }
1145
- }
1146
- class IgxPieChartInitializer extends ChartInitializer {
1147
- constructor() {
1148
- super();
1149
- }
1150
- initChart(chart, options) {
1151
- this.applyOptions(chart, options.chartOptions);
1152
- return chart;
1153
- }
1154
- }
1155
- class IgxDataChartInitializer extends ChartInitializer {
1156
- constructor(seriesType) {
1157
- super();
1158
- switch (seriesType) {
1159
- case IgxBarSeriesComponent:
1160
- this.xAxis = new IgxNumericXAxisComponent();
1161
- this.yAxis = new IgxCategoryYAxisComponent();
1162
- break;
1163
- case IgxScatterSeriesComponent:
1164
- case IgxBubbleSeriesComponent:
1165
- case IgxScatterLineSeriesComponent:
1166
- this.xAxis = new IgxNumericXAxisComponent();
1167
- this.yAxis = new IgxNumericYAxisComponent();
1168
- break;
1169
- default:
1170
- this.xAxis = new IgxCategoryXAxisComponent();
1171
- this.yAxis = new IgxNumericYAxisComponent();
1172
- }
1173
- this.seriesType = seriesType;
1174
- }
1175
- initChart(chart, options) {
1176
- options.seriesOptions.forEach((option) => {
1177
- const series = this.seriesFactory.create(this.seriesType);
1178
- series.xAxis = this.xAxis;
1179
- series.yAxis = this.yAxis;
1180
- this.applyOptions(series, option);
1181
- chart.series.add(series);
1182
- });
1183
- this.applyOptions(chart, options.chartOptions);
1184
- this.applyOptions(this.xAxis, options.xAxisOptions);
1185
- this.applyOptions(this.yAxis, options.yAxisOptions);
1186
- chart.axes.add(this.xAxis);
1187
- chart.axes.add(this.yAxis);
1188
- return chart;
1189
- }
1190
- }
1191
- class IgxStackedDataChartInitializer extends ChartInitializer {
1192
- constructor(seriesType) {
1193
- super();
1194
- if (seriesType === IgxStackedBarSeriesComponent || seriesType === IgxStacked100BarSeriesComponent) {
1195
- this.xAxis = new IgxNumericXAxisComponent();
1196
- this.yAxis = new IgxCategoryYAxisComponent();
1197
- }
1198
- else {
1199
- this.xAxis = new IgxCategoryXAxisComponent();
1200
- this.yAxis = new IgxNumericYAxisComponent();
1201
- }
1202
- this.seriesType = seriesType;
1203
- }
1204
- initChart(chart, options) {
1205
- const series = this.seriesFactory.create(this.seriesType);
1206
- series.xAxis = this.xAxis;
1207
- series.yAxis = this.yAxis;
1208
- options.stackedFragmentOptions.forEach(fragOpt => {
1209
- const frag = new IgxStackedFragmentSeriesComponent();
1210
- this.applyOptions(frag, fragOpt);
1211
- series.series.add(frag);
1212
- });
1213
- this.applyOptions(series, options.seriesOptions);
1214
- this.applyOptions(chart, options.chartOptions);
1215
- this.applyOptions(this.xAxis, options.xAxisOptions);
1216
- this.applyOptions(this.yAxis, options.yAxisOptions);
1217
- chart.series.add(series);
1218
- chart.axes.add(this.xAxis);
1219
- chart.axes.add(this.yAxis);
1220
- return chart;
1221
- }
1222
- }
1195
+ }], ctorParameters: () => [{ type: i1$1.DomSanitizer }] });
1223
1196
 
1224
- class IgxChartIntegrationDirective {
1225
- get chartData() {
1226
- return this._chartData;
1197
+ class IgxChartMenuComponent {
1198
+ get width() {
1199
+ return this.fullScreen ? this._width : 0.7 * this._width;
1227
1200
  }
1228
- set chartData(selectedData) {
1229
- const charts = new Set(this._dataChartTypes);
1230
- const dataModel = selectedData.length ? selectedData[0] : {};
1231
- this._labelMemberPaths = Object.keys(dataModel).filter(key => typeof dataModel[key] === 'string');
1232
- this._valueMemberPaths = Object.keys(dataModel).filter(key => typeof dataModel[key] === 'number');
1233
- this._chartData = selectedData.map((dataRecord, index) => this.addIndexMemberPath(dataRecord, index + 1));
1234
- const args = {
1235
- chartsAvailabilty: new Map(),
1236
- chartsForCreation: []
1237
- };
1238
- if (selectedData.length === 0 || this._valueMemberPaths.length === 0) {
1239
- this.onChartTypesDetermined.emit(args);
1240
- return;
1241
- }
1242
- if (selectedData.length === 1) {
1243
- charts.forEach((chart, _, set) => {
1244
- const isColumnChart = chart.indexOf('Column') !== -1;
1245
- const isBarChart = chart.indexOf('Bar') !== -1;
1246
- const isPieChart = chart.indexOf('Pie') !== -1;
1247
- if (!(isColumnChart || isBarChart || isPieChart)) {
1248
- set.delete(chart);
1249
- }
1250
- });
1251
- }
1252
- // Config pie chart
1253
- const cannotCreatePieChart = selectedData.some(record => record[this._valueMemberPaths[0]] <= 0);
1254
- if (cannotCreatePieChart) {
1255
- charts.delete(CHART_TYPE.PIE);
1256
- }
1257
- // Config scatter chart member paths
1258
- const canCreateScatterChart = this._valueMemberPaths.length >= 2;
1259
- const canCreateBubbleChart = this._valueMemberPaths.length >= 3;
1260
- if (!canCreateScatterChart) {
1261
- charts.delete(CHART_TYPE.SCATTER_BUBBLE);
1262
- charts.delete(CHART_TYPE.SCATTER_LINE);
1263
- charts.delete(CHART_TYPE.SCATTER_POINT);
1264
- }
1265
- if (!canCreateBubbleChart) {
1266
- charts.delete(CHART_TYPE.SCATTER_BUBBLE);
1267
- }
1268
- args.chartsAvailabilty = this.chartTypesAvailability;
1269
- args.chartsForCreation = [...charts];
1270
- this.onChartTypesDetermined.emit(args);
1201
+ set width(value) {
1202
+ this._width = value;
1271
1203
  }
1272
- set scatterChartYAxisValueMemberPath(path) {
1273
- this._scatterChartYAxisValueMemberPath = path;
1204
+ get height() {
1205
+ return this.fullScreen ? this._height : 0.7 * this._height;
1274
1206
  }
1275
- get scatterChartYAxisValueMemberPath() {
1276
- return this._scatterChartYAxisValueMemberPath &&
1277
- this._valueMemberPaths.indexOf(this._scatterChartYAxisValueMemberPath) !== -1 ?
1278
- this._scatterChartYAxisValueMemberPath : this._valueMemberPaths[0];
1207
+ set height(value) {
1208
+ this._height = value;
1279
1209
  }
1280
- set bubbleChartRadiusMemberPath(path) {
1281
- this._bubbleChartRadiusMemberPath = path;
1210
+ constructor(element) {
1211
+ this.element = element;
1212
+ this.onClose = new EventEmitter();
1213
+ this.chartDialogResizeNotify = new Subject();
1214
+ this.allCharts = [];
1215
+ this.fullScreen = false;
1216
+ this.isConfigAreaExpanded = false;
1217
+ this.mainChartTypes = ['Column', 'Area', 'Bar', 'Line', 'Scatter', 'Pie'];
1218
+ this.images = charts;
1282
1219
  }
1283
- get bubbleChartRadiusMemberPath() {
1284
- return this._bubbleChartRadiusMemberPath &&
1285
- this._valueMemberPaths.indexOf(this._bubbleChartRadiusMemberPath) !== -1 ?
1286
- this._bubbleChartRadiusMemberPath : this._valueMemberPaths[1];
1220
+ ngAfterViewInit() {
1221
+ this.contentObserver = new ResizeObserver((args) => this.chartDialogResizeNotify.next(args));
1222
+ this.contentObserver.observe(this.element.nativeElement);
1223
+ this.createChart(this.currentChartType);
1287
1224
  }
1288
- get _labelMemberPath() {
1289
- return this.defaultLabelMemberPath && this._chartData.some(r => r[this.defaultLabelMemberPath] !== undefined) ?
1290
- this.defaultLabelMemberPath : this._labelMemberPaths.length > 0 ? this._labelMemberPaths[0] : 'Index';
1225
+ toggleFullScreen() {
1226
+ this.fullScreen = !this.fullScreen;
1291
1227
  }
1292
- get pieChartOptions() {
1293
- return {
1294
- width: '85%',
1295
- height: '75%',
1296
- dataSource: this.chartData,
1297
- valueMemberPath: this._valueMemberPaths[0],
1298
- legendLabelMemberPath: this._labelMemberPath,
1299
- labelMemberPath: this._labelMemberPath,
1300
- };
1228
+ hasAvailableChart(chartType) {
1229
+ return this.allCharts.some(c => c.includes(chartType));
1301
1230
  }
1302
- get dataChartOptions() {
1303
- return {
1304
- width: '100%',
1305
- height: '85%',
1306
- autoMarginWidth: 50,
1307
- isVerticalZoomEnabled: true,
1308
- isHorizontalZoomEnabled: true,
1309
- dataSource: this.chartData
1310
- };
1231
+ createChart(chartType) {
1232
+ this.currentChartType = chartType;
1233
+ this.title = chartType.split(/(?=[A-Z])/).toString().replace(',', ' ');
1234
+ try {
1235
+ this.chartArea.clear();
1236
+ }
1237
+ catch (e) { }
1238
+ this.chartDirective.chartFactory(chartType, this.chartArea);
1311
1239
  }
1312
- constructor(factoryResolver) {
1313
- this.factoryResolver = factoryResolver;
1314
- this.onChartTypesDetermined = new EventEmitter();
1315
- this.onChartCreationDone = new EventEmitter();
1316
- this.useLegend = true;
1317
- this.defaultLabelMemberPath = undefined;
1318
- this.chartTypesAvailability = new Map();
1319
- this.customChartComponentOptions = new Map();
1320
- this.dataCharts = new Map();
1321
- this._scatterChartYAxisValueMemberPath = undefined;
1322
- this._bubbleChartRadiusMemberPath = undefined;
1323
- this._valueMemberPaths = [];
1324
- this._labelMemberPaths = [];
1325
- this._sizeScale = new IgxSizeScaleComponent();
1326
- this._dataChartTypes = new Set();
1327
- this.dataChartSeriesOptionsModel = {
1328
- isHighlightingEnabled: true,
1329
- areaFillOpacity: .4,
1330
- markerType: 3,
1331
- showDefaultTooltip: true
1332
- };
1333
- this.scatterChartSeriesOptionsModel = {
1334
- markerType: 3,
1335
- showDefaultTooltip: true
1240
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxChartMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1241
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.3", 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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--theme: var(--ig-scrollbar-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: "pipe", type: i1$2.TitleCasePipe, name: "titlecase" }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }, { kind: "pipe", type: SvgPipe, name: "svg" }], encapsulation: i0.ViewEncapsulation.None }); }
1242
+ }
1243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxChartMenuComponent, decorators: [{
1244
+ type: Component,
1245
+ args: [{ selector: 'igx-chart-menu', encapsulation: ViewEncapsulation.None, imports: [CommonModule, IgxIconComponent, 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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--theme: var(--ig-scrollbar-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"] }]
1246
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { chartArea: [{
1247
+ type: ViewChild,
1248
+ args: ['chartArea', { read: ViewContainerRef }]
1249
+ }], onClose: [{
1250
+ type: Output
1251
+ }], width: [{
1252
+ type: HostBinding,
1253
+ args: ['style.width.px']
1254
+ }], height: [{
1255
+ type: HostBinding,
1256
+ args: ['style.height.px']
1257
+ }] } });
1258
+
1259
+ // tslint:disable: max-line-length
1260
+ const Clear = `
1261
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1262
+ <defs>
1263
+ <style>.cls-Clear-1{fill-rule:evenodd;}.cls-Clear-2{fill:none;}</style>
1264
+ </defs>
1265
+ <g id="Layer_2" data-name="Layer 2">
1266
+ <g id="Layer_1-2" data-name="Layer 1">
1267
+ <g id="Conditional-formating">
1268
+ <g id="Artboard">
1269
+ <g id="refresh-24px">
1270
+ <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"/>
1271
+ <polygon class="cls-Clear-2" points="0 0 24 0 24 24 0 24 0 0"/>
1272
+ </g>
1273
+ </g>
1274
+ </g>
1275
+ </g>
1276
+ </g>
1277
+ </svg>
1278
+ `;
1279
+ const ColorScale = `
1280
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1281
+ <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"/>
1282
+ <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"/>
1283
+ <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"/>
1284
+ <path d="M0 0h24v24H0z" fill="none"/>
1285
+ </svg>
1286
+
1287
+ `;
1288
+ const DataBars = `
1289
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1290
+ <path d="M3 7h12v2H3zM3 15h12v2H3zM3 19h18v2H3zM3 11h18v2H3zM3 3h18v2H3z"/>
1291
+ <path d="M0 0h24v24H0z" fill="none"/>
1292
+ </svg>
1293
+
1294
+ `;
1295
+ const DuplicateValues = `
1296
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1297
+ <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"/>
1298
+ <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"/>
1299
+ <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"/>
1300
+ <path d="M0 0h24v24H0z" fill="none"/>
1301
+ </svg>
1302
+
1303
+ `;
1304
+ const Empty = `
1305
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1306
+ <path d="M0 0h24v24H0z" fill="none"/>
1307
+ <path d="M5 17h2v2H5zM13 17h2v2h-2zM5 13h2v2H5zM17 17h2v2h-2zM13 5h2v2h-2zM9 17h2v2H9zM17 9h2v2h-2zM17 13h2v2h-2zM17 5h2v2h-2zM5 9h2v2H5zM5 5h2v2H5zM9 5h2v2H9z"/>
1308
+ <path d="M0 0h24v24H0z" fill="none"/>
1309
+ </svg>
1310
+
1311
+ `;
1312
+ const Equal = `
1313
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1314
+ <path d="M5 13.5h14v2H5zM5 8.5h14v2H5z"/>
1315
+ </svg>
1316
+
1317
+ `;
1318
+ const GreaterThan = `
1319
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1320
+ <path d="M6 7.11L15.09 12 6 16.89V19l12-6.46v-1.08L6 5v2.11z"/>
1321
+ </svg>
1322
+
1323
+ `;
1324
+ const TextContains = `
1325
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1326
+ <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"/>
1327
+ <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"/>
1328
+ <path d="M3 3v18h18V3zm16 16H5V5h14z"/>
1329
+ <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"/>
1330
+ <path d="M0 0h24v24H0z" fill="none"/>
1331
+ </svg>
1332
+
1333
+ `;
1334
+ const Top10 = `
1335
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1336
+ <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"/>
1337
+ <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"/>
1338
+ <path d="M0 0h24v24H0z" fill="none"/>
1339
+ </svg>
1340
+
1341
+ `;
1342
+ const UniqueValues = `
1343
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
1344
+ <path d="M0 0h24v24H0z" fill="none"/>
1345
+ <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"/>
1346
+ <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"/>
1347
+ <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"/>
1348
+ <path d="M0 0h24v24H0z" fill="none"/>
1349
+ <path d="M0 0h24v24H0z" fill="none"/>
1350
+ </svg>
1351
+
1352
+ `;
1353
+
1354
+ var conditions = /*#__PURE__*/Object.freeze({
1355
+ __proto__: null,
1356
+ Clear: Clear,
1357
+ ColorScale: ColorScale,
1358
+ DataBars: DataBars,
1359
+ DuplicateValues: DuplicateValues,
1360
+ Empty: Empty,
1361
+ Equal: Equal,
1362
+ GreaterThan: GreaterThan,
1363
+ TextContains: TextContains,
1364
+ Top10: Top10,
1365
+ UniqueValues: UniqueValues
1366
+ });
1367
+
1368
+ class IgxContextMenuComponent {
1369
+ constructor(overlayService) {
1370
+ this.overlayService = overlayService;
1371
+ this.chartTypes = [];
1372
+ this.textFormatters = [];
1373
+ this.destroy$ = new Subject();
1374
+ this._chartDialogOS = { closeOnOutsideClick: false };
1375
+ this._tabsMenuOverlaySettings = {
1376
+ closeOnOutsideClick: false,
1377
+ modal: false,
1378
+ outlet: null,
1379
+ scrollStrategy: new CloseScrollStrategy(),
1380
+ positionStrategy: new AutoPositionStrategy({
1381
+ horizontalDirection: HorizontalAlignment.Center,
1382
+ horizontalStartPoint: HorizontalAlignment.Center,
1383
+ verticalStartPoint: VerticalAlignment.Bottom,
1384
+ verticalDirection: VerticalAlignment.Bottom,
1385
+ openAnimation: null,
1386
+ closeAnimation: null,
1387
+ }),
1336
1388
  };
1337
- this.bubbleChartSeriesOptionsModel = {
1338
- radiusScale: this._sizeScale
1389
+ this._chartPreviewDialogOverlaySettings = {
1390
+ closeOnOutsideClick: false,
1391
+ modal: false,
1392
+ outlet: null,
1393
+ scrollStrategy: new CloseScrollStrategy(),
1394
+ positionStrategy: new AutoPositionStrategy({
1395
+ horizontalDirection: HorizontalAlignment.Center,
1396
+ horizontalStartPoint: HorizontalAlignment.Center,
1397
+ verticalStartPoint: VerticalAlignment.Top,
1398
+ verticalDirection: VerticalAlignment.Top,
1399
+ openAnimation: null,
1400
+ closeAnimation: null,
1401
+ }),
1339
1402
  };
1340
- this.dataCharts.set(CHART_TYPE.COLUMN_GROUPED, IgxColumnSeriesComponent);
1341
- this.dataCharts.set(CHART_TYPE.AREA_GROUPED, IgxAreaSeriesComponent);
1342
- this.dataCharts.set(CHART_TYPE.LINE_GROUPED, IgxLineSeriesComponent);
1343
- this.dataCharts.set(CHART_TYPE.BAR_GROUPED, IgxBarSeriesComponent);
1344
- this.dataCharts.set(CHART_TYPE.COLUMN_STACKED, IgxStackedColumnSeriesComponent);
1345
- this.dataCharts.set(CHART_TYPE.AREA_STACKED, IgxStackedAreaSeriesComponent);
1346
- this.dataCharts.set(CHART_TYPE.LINE_STACKED, IgxStackedLineSeriesComponent);
1347
- this.dataCharts.set(CHART_TYPE.BAR_STACKED, IgxStackedBarSeriesComponent);
1348
- this.dataCharts.set(CHART_TYPE.COLUMN_100_STACKED, IgxStacked100ColumnSeriesComponent);
1349
- this.dataCharts.set(CHART_TYPE.AREA_100_STACKED, IgxStacked100AreaSeriesComponent);
1350
- this.dataCharts.set(CHART_TYPE.LINE_100_STACKED, IgxStacked100LineSeriesComponent);
1351
- this.dataCharts.set(CHART_TYPE.BAR_100_STACKED, IgxStacked100BarSeriesComponent);
1352
- this.dataCharts.set(CHART_TYPE.SCATTER_POINT, IgxScatterSeriesComponent);
1353
- this.dataCharts.set(CHART_TYPE.SCATTER_BUBBLE, IgxBubbleSeriesComponent);
1354
- this.dataCharts.set(CHART_TYPE.SCATTER_LINE, IgxScatterLineSeriesComponent);
1355
- this.dataCharts.set(CHART_TYPE.PIE, IgxPieChartComponent);
1356
- const iterable = this.dataCharts.keys();
1357
- for (let head = iterable.next().value; head !== undefined; head = iterable.next().value) {
1358
- this._dataChartTypes.add(head);
1359
- this.chartTypesAvailability.set(head, true);
1360
- this.customChartComponentOptions.set(head, {});
1361
- }
1403
+ this.chartImages = charts;
1404
+ this.conditionImages = conditions;
1362
1405
  }
1363
- getAvailableCharts() {
1364
- const res = [];
1365
- this.chartTypesAvailability.forEach((isAvailable, chartType) => {
1366
- if (isAvailable) {
1367
- res.push(chartType);
1406
+ ngAfterViewInit() {
1407
+ this.chartTypes = this.contextDirective.charts;
1408
+ this.textFormatters = this.contextDirective.formatters;
1409
+ if (this.contextDirective.chartsDirective) {
1410
+ this.contextDirective.chartsDirective.onChartTypesDetermined.pipe(takeUntil(this.destroy$))
1411
+ .subscribe((args) => (this.chartTypes = args.chartsForCreation));
1412
+ }
1413
+ if (this.contextDirective.textFormatter) {
1414
+ this.contextDirective.textFormatter.onFormattersReady.pipe(takeUntil(this.destroy$))
1415
+ .subscribe((names) => (this.textFormatters = names));
1416
+ }
1417
+ this.contextDirective.onButtonClose.pipe(takeUntil(this.destroy$))
1418
+ .subscribe(() => {
1419
+ if (this.tabsMenu && !this.tabsMenu.collapsed) {
1420
+ this.tabsMenu.close();
1368
1421
  }
1369
1422
  });
1370
- return res;
1371
- }
1372
- disableCharts(types) {
1373
- types.forEach(type => {
1374
- if (this.chartTypesAvailability.get(type)) {
1375
- this.chartTypesAvailability.set(type, false);
1423
+ this.contextDirective.gridResizeNotify.pipe(takeUntil(this.destroy$))
1424
+ .subscribe(() => {
1425
+ if (!this.tabsMenu.collapsed) {
1426
+ this.tabsMenu.close();
1376
1427
  }
1377
1428
  });
1378
- }
1379
- enableCharts(types) {
1380
- types.forEach(type => {
1381
- if (!this.chartTypesAvailability.get(type)) {
1382
- this.chartTypesAvailability.set(type, true);
1429
+ this.overlayService.opening.pipe(takeUntil(this.destroy$))
1430
+ .subscribe((args) => {
1431
+ if (args.componentRef) {
1432
+ const instance = args.componentRef.instance;
1433
+ instance.width = this.contextDirective.grid.nativeElement.clientWidth;
1434
+ instance.height = this.contextDirective.grid.nativeElement.clientHeight;
1435
+ instance.currentChartType = this.currentChartType;
1436
+ instance.allCharts = this.chartTypes;
1437
+ instance.chartDirective = this.contextDirective.chartsDirective;
1438
+ instance.onClose?.subscribe(() => this.closeDialog());
1439
+ }
1440
+ });
1441
+ this.overlayService.closing.pipe(takeUntil(this.destroy$))
1442
+ .subscribe((args) => {
1443
+ if (args.componentRef && args.componentRef.instance instanceof IgxChartMenuComponent) {
1444
+ if (this._dialogId) {
1445
+ this.tabsMenu.open(this._tabsMenuOverlaySettings);
1446
+ }
1383
1447
  }
1384
1448
  });
1385
1449
  }
1386
- chartFactory(type, viewContainerRef) {
1387
- if (!this.chartTypesAvailability.get(type)) {
1388
- return;
1389
- }
1390
- let componentFactory;
1391
- let componentRef;
1392
- this._sizeScale.maximumValue = 60;
1393
- this._sizeScale.minimumValue = 10;
1394
- const chartType = this.dataCharts.get(type);
1395
- if (type === CHART_TYPE.PIE) {
1396
- componentFactory = this.factoryResolver.resolveComponentFactory(IgxPieChartComponent);
1397
- componentRef = viewContainerRef.createComponent(componentFactory);
1398
- }
1399
- else {
1400
- componentFactory = this.factoryResolver.resolveComponentFactory(IgxDataChartComponent);
1401
- componentRef = viewContainerRef.createComponent(componentFactory);
1402
- }
1403
- const options = this.getChartOptions(type);
1404
- const initializer = this.getInitializer(type, chartType);
1405
- if (this.useLegend) {
1406
- const legendType = type === CHART_TYPE.PIE ? IgxItemLegendComponent : IgxLegendComponent;
1407
- const legendFactory = this.factoryResolver.resolveComponentFactory(legendType);
1408
- const legendComponentRef = viewContainerRef.createComponent(legendFactory);
1409
- options.chartOptions['legend'] = legendComponentRef.instance;
1410
- }
1411
- const chart = initializer.initChart(componentRef.instance, options);
1412
- this.onChartCreationDone.emit(chart);
1413
- }
1414
- getInitializer(chartType, componentClassRef) {
1415
- if (chartType.includes('Pie')) {
1416
- return new IgxPieChartInitializer();
1417
- }
1418
- else if (chartType.includes('Stacked')) {
1419
- return new IgxStackedDataChartInitializer(componentClassRef);
1420
- }
1421
- else {
1422
- return new IgxDataChartInitializer(componentClassRef);
1423
- }
1450
+ ngOnDestroy() {
1451
+ this.destroy$.next(true);
1452
+ this.destroy$.complete();
1424
1453
  }
1425
- getChartOptions(type) {
1426
- const chartComponentOptions = {};
1427
- return type === CHART_TYPE.PIE ? this.addPieChartDataOptions(chartComponentOptions) :
1428
- this.addDataChartDataOptions(type, chartComponentOptions, type.includes('Stacked'));
1454
+ toggleTabMenu() {
1455
+ this.currentChartType = this.currentChartType || CHART_TYPE.COLUMN_GROUPED;
1456
+ this._tabsMenuOverlaySettings.target = this.button.nativeElement;
1457
+ this.tabsMenu.collapsed ? this.tabsMenu.open(this._tabsMenuOverlaySettings) : this.tabsMenu.close();
1429
1458
  }
1430
- addPieChartDataOptions(chartComponentOptions) {
1431
- // tslint:disable-next-line: max-line-length
1432
- chartComponentOptions.chartOptions = Object.assign(this.pieChartOptions, this.customChartComponentOptions.get(CHART_TYPE.PIE).chartOptions);
1433
- return chartComponentOptions;
1459
+ formatCells(condition) {
1460
+ this.currentFormatter = condition;
1461
+ this.contextDirective.textFormatter.formatCells(condition);
1434
1462
  }
1435
- addDataChartDataOptions(type, chartComponentOptions, stacked) {
1436
- chartComponentOptions.chartOptions = Object.assign(this.dataChartOptions, this.customChartComponentOptions.get(type));
1437
- if (type.indexOf('Scatter') !== -1) {
1438
- this.addScatterChartDataOptions(type, chartComponentOptions);
1439
- }
1440
- else {
1441
- // tslint:disable-next-line: max-line-length
1442
- chartComponentOptions.seriesModel = Object.assign(this.dataChartSeriesOptionsModel, this.customChartComponentOptions.get(type).seriesModel);
1443
- this.setAxisLabelOption(type, chartComponentOptions);
1444
- const options = [];
1445
- this._valueMemberPaths.forEach(valueMemberPath => {
1446
- const dataOptions = {
1447
- title: valueMemberPath,
1448
- valueMemberPath
1449
- };
1450
- if (stacked) {
1451
- options.push({ ...dataOptions });
1452
- }
1453
- else {
1454
- options.push({ ...dataOptions, ...chartComponentOptions.seriesModel });
1455
- }
1456
- });
1457
- stacked ? chartComponentOptions.stackedFragmentOptions = options :
1458
- chartComponentOptions.seriesOptions = options;
1459
- }
1460
- return chartComponentOptions;
1463
+ clearFormat() {
1464
+ this.contextDirective.textFormatter.clearFormatting();
1465
+ this.currentFormatter = undefined;
1461
1466
  }
1462
- addScatterChartDataOptions(scatterChart, chartComponentOptions) {
1463
- // tslint:disable-next-line: max-line-length
1464
- chartComponentOptions.seriesModel = Object.assign(this.scatterChartSeriesOptionsModel, this.customChartComponentOptions.get(scatterChart).seriesModel);
1465
- chartComponentOptions.seriesModel['yMemberPath'] = this.scatterChartYAxisValueMemberPath;
1466
- if (scatterChart === CHART_TYPE.SCATTER_BUBBLE) {
1467
- chartComponentOptions.seriesModel = Object.assign(chartComponentOptions.seriesModel, this.bubbleChartSeriesOptionsModel);
1468
- chartComponentOptions.seriesModel['radiusMemberPath'] = this.bubbleChartRadiusMemberPath;
1469
- }
1470
- const model = chartComponentOptions.seriesModel;
1471
- const seriesOptions = [];
1472
- this._valueMemberPaths.filter(v => !(v === model['yMemberPath'] ||
1473
- v === model['radiusMemberPath'])).forEach(valueMemberPath => {
1474
- const dataOptions = {
1475
- title: `${model['yMemberPath']} vs ${valueMemberPath}`,
1476
- xMemberPath: valueMemberPath,
1477
- labelMemberPath: this._labelMemberPath
1478
- };
1479
- seriesOptions.push({ ...dataOptions, ...model });
1480
- });
1481
- chartComponentOptions.seriesOptions = seriesOptions;
1467
+ previewChart(currentChartType) {
1468
+ this.currentChartType = currentChartType;
1469
+ this.chartPreview.clear();
1470
+ this.contextDirective.chartsDirective.chartFactory(currentChartType, this.chartPreview);
1471
+ this._chartPreviewDialogOverlaySettings.target = this.tabsMenu.element;
1472
+ this.chartPreviewDialog.open(this._chartPreviewDialogOverlaySettings);
1482
1473
  }
1483
- addIndexMemberPath(dataRecord, index) {
1484
- dataRecord = { ...{ [this._labelMemberPath]: index }, ...dataRecord };
1485
- return dataRecord;
1474
+ hidePreview() {
1475
+ this.chartPreviewDialog.close();
1486
1476
  }
1487
- setAxisLabelOption(type, options) {
1488
- if (type.indexOf('Bar') !== -1) {
1489
- options.yAxisOptions = Object.assign({
1490
- label: this._labelMemberPath
1491
- }, this.customChartComponentOptions.get(type).yAxisOptions);
1492
- }
1493
- else {
1494
- options.xAxisOptions = Object.assign({
1495
- label: this._labelMemberPath
1496
- }, this.customChartComponentOptions.get(type).xAxisOptions);
1497
- }
1477
+ openDialog(type) {
1478
+ this.currentChartType =
1479
+ type || this.currentChartType || CHART_TYPE.COLUMN_GROUPED;
1480
+ this._dialogId = this._dialogId || this.overlayService.attach(IgxChartMenuComponent, this._chartDialogOS);
1481
+ this.tabsMenu.close();
1482
+ this.overlayService.show(this._dialogId);
1498
1483
  }
1499
- setChartComponentOptions(chart, optionsType, options) {
1500
- if (!this.customChartComponentOptions.get(chart)[optionsType]) {
1501
- this.customChartComponentOptions.get(chart)[optionsType] = {};
1484
+ closeDialog() {
1485
+ const info = this.overlayService.getOverlayById(this._dialogId);
1486
+ if (info) {
1487
+ this.overlayService.hide(this._dialogId);
1488
+ this.overlayService.detach(this._dialogId);
1489
+ this._dialogId = undefined;
1502
1490
  }
1503
- Object.keys(options).forEach(property => {
1504
- this.customChartComponentOptions.get(chart)[optionsType][property] = options[property];
1505
- });
1506
1491
  }
1507
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxChartIntegrationDirective, deps: [{ token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); }
1508
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: IgxChartIntegrationDirective, selector: "[igxChartIntegration]", inputs: { chartData: "chartData", useLegend: "useLegend", defaultLabelMemberPath: "defaultLabelMemberPath", scatterChartYAxisValueMemberPath: "scatterChartYAxisValueMemberPath", bubbleChartRadiusMemberPath: "bubbleChartRadiusMemberPath" }, outputs: { onChartTypesDetermined: "onChartTypesDetermined", onChartCreationDone: "onChartCreationDone" }, ngImport: i0 }); }
1492
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxContextMenuComponent, deps: [{ token: i1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Component }); }
1493
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.3", 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 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 [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: [".analytics-btn,.analytics-btn [igxButton=flat],.analytics-btn .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=outlined],.analytics-btn .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=contained],.analytics-btn .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=fab],.analytics-btn .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12));--theme: var(--igx-button-theme, material)}.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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--theme: var(--ig-scrollbar-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: "pipe", type: i1$2.SlicePipe, name: "slice" }, { kind: "pipe", type: SvgPipe, name: "svg" }, { kind: "directive", type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { kind: "component", type: IgxIconComponent$1, selector: "igx-icon", inputs: ["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 }] }); }
1509
1494
  }
1510
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxChartIntegrationDirective, decorators: [{
1511
- type: Directive,
1512
- args: [{
1513
- selector: '[igxChartIntegration]'
1514
- }]
1515
- }], ctorParameters: () => [{ type: i0.ComponentFactoryResolver }], propDecorators: { chartData: [{
1516
- type: Input
1517
- }], onChartTypesDetermined: [{
1518
- type: Output
1519
- }], onChartCreationDone: [{
1520
- type: Output
1521
- }], useLegend: [{
1522
- type: Input
1523
- }], defaultLabelMemberPath: [{
1524
- type: Input
1525
- }], scatterChartYAxisValueMemberPath: [{
1526
- type: Input
1527
- }], bubbleChartRadiusMemberPath: [{
1528
- type: Input
1495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxContextMenuComponent, decorators: [{
1496
+ type: Component,
1497
+ args: [{ selector: 'igx-context-menu', imports: [
1498
+ CommonModule,
1499
+ NgFor,
1500
+ SvgPipe,
1501
+ IgxToggleDirective,
1502
+ IgxIconComponent$1,
1503
+ IgxTabsComponent,
1504
+ IgxTabItemComponent,
1505
+ IgxTabHeaderComponent,
1506
+ IgxTabContentComponent,
1507
+ IgxTabHeaderLabelDirective,
1508
+ IgxBarSeriesModule,
1509
+ IgxCategoryChartModule,
1510
+ IgxCategoryXAxisModule,
1511
+ IgxDataChartCategoryModule,
1512
+ IgxDataChartCoreModule,
1513
+ IgxDataChartInteractivityModule,
1514
+ IgxDataChartScatterModule,
1515
+ IgxDataChartStackedModule,
1516
+ IgxItemLegendModule,
1517
+ IgxLegendModule,
1518
+ IgxNumericXAxisModule,
1519
+ IgxNumericYAxisModule,
1520
+ ], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn 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 [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: [".analytics-btn,.analytics-btn [igxButton=flat],.analytics-btn .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=outlined],.analytics-btn .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, #335e3b);--focus-foreground: var(--igx-button-focus-foreground, white);--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=contained],.analytics-btn .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8));--theme: var(--igx-button-theme, material)}.analytics-btn,.analytics-btn [igxButton=fab],.analytics-btn .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, #335e3b);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, #fff);--icon-color: var(--igx-button-icon-color, #fff);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, #459a55);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-foreground: var(--igx-button-focus-foreground, white);--focus-hover-background: var(--igx-button-focus-hover-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, white);--focus-visible-background: var(--igx-button-focus-visible-background, rgb(57.4189655172, 105.8310344828, 66.425862069));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, white);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12));--theme: var(--igx-button-theme, material)}.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, hsl(from var(--ig-gray-400) h s l/1));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, hsl(from var(--ig-gray-400) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, hsl(from var(--ig-gray-100) h s l/1));--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, hsl(from var(--ig-gray-100) h s l/1));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--theme: var(--ig-scrollbar-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"] }]
1521
+ }], ctorParameters: () => [{ type: i1.IgxOverlayService }], propDecorators: { button: [{
1522
+ type: ViewChild,
1523
+ args: ['analyticsBtn']
1524
+ }], tabsMenu: [{
1525
+ type: ViewChild,
1526
+ args: ['tabsMenu', { read: IgxToggleDirective }]
1527
+ }], chartPreview: [{
1528
+ type: ViewChild,
1529
+ args: ['chartPreview', { read: ViewContainerRef }]
1530
+ }], chartPreviewDialog: [{
1531
+ type: ViewChild,
1532
+ args: ['chartPreviewDialog', { read: IgxToggleDirective }]
1533
+ }], tabs: [{
1534
+ type: ViewChild,
1535
+ args: [IgxTabsComponent]
1529
1536
  }] } });
1530
1537
 
1531
1538
  class IgxContextMenuDirective {
@@ -1601,6 +1608,12 @@ class IgxContextMenuDirective {
1601
1608
  this.onButtonClose.emit();
1602
1609
  this.renderButton();
1603
1610
  });
1611
+ this.grid.selected.pipe(merge(this.grid.groupingDone), takeUntil(this.destroy$)).subscribe((args) => {
1612
+ if (this.grid.selectedCells.length < 2 || args.expressions) {
1613
+ this._range = undefined;
1614
+ this.close();
1615
+ }
1616
+ });
1604
1617
  }
1605
1618
  renderButton() {
1606
1619
  if (!this._range) {
@@ -1656,124 +1669,43 @@ class IgxContextMenuDirective {
1656
1669
  return rInex >= this._range.rowStart && rInex <= this._range.rowEnd
1657
1670
  && cIndex >= this._range.columnStart && cIndex <= this._range.columnEnd;
1658
1671
  }
1659
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxContextMenuDirective, deps: [{ token: i1$1.IgxGridComponent }, { token: IgxConditionalFormattingDirective, optional: true }, { token: IgxChartIntegrationDirective, optional: true }, { token: i1$1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Directive }); }
1660
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: IgxContextMenuDirective, selector: "[igxContextMenu]", outputs: { onButtonClose: "onButtonClose" }, ngImport: i0 }); }
1672
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxContextMenuDirective, deps: [{ token: i1.IgxGridComponent }, { token: IgxConditionalFormattingDirective, optional: true }, { token: IgxChartIntegrationDirective, optional: true }, { token: i1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Directive }); }
1673
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.3", type: IgxContextMenuDirective, isStandalone: true, selector: "[igxContextMenu]", outputs: { onButtonClose: "onButtonClose" }, ngImport: i0 }); }
1661
1674
  }
1662
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxContextMenuDirective, decorators: [{
1675
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: IgxContextMenuDirective, decorators: [{
1663
1676
  type: Directive,
1664
1677
  args: [{
1665
- selector: '[igxContextMenu]'
1678
+ selector: '[igxContextMenu]',
1666
1679
  }]
1667
- }], ctorParameters: () => [{ type: i1$1.IgxGridComponent }, { type: IgxConditionalFormattingDirective, decorators: [{
1680
+ }], ctorParameters: () => [{ type: i1.IgxGridComponent }, { type: IgxConditionalFormattingDirective, decorators: [{
1668
1681
  type: Optional
1669
1682
  }] }, { type: IgxChartIntegrationDirective, decorators: [{
1670
1683
  type: Optional
1671
- }] }, { type: i1$1.IgxOverlayService }], propDecorators: { onButtonClose: [{
1684
+ }] }, { type: i1.IgxOverlayService }], propDecorators: { onButtonClose: [{
1672
1685
  type: Output
1673
1686
  }] } });
1674
1687
 
1675
- class IgxExtrasModule {
1676
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxExtrasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1677
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: IgxExtrasModule, declarations: [IgxConditionalFormattingDirective,
1678
- IgxChartIntegrationDirective,
1679
- IgxContextMenuDirective,
1680
- IgxContextMenuComponent,
1681
- IgxChartMenuComponent,
1682
- SvgPipe], imports: [IgxButtonModule,
1683
- IgxDividerModule,
1684
- IgxGridModule,
1685
- IgxTabsModule,
1686
- IgxToggleModule,
1687
- IgxDataChartCategoryModule,
1688
- IgxDataChartCoreModule,
1689
- IgxLegendModule,
1690
- IgxDataChartInteractivityModule,
1691
- IgxNumericXAxisModule,
1692
- IgxNumericYAxisModule,
1693
- IgxCategoryXAxisModule,
1694
- IgxItemLegendModule,
1695
- IgxPieChartModule,
1696
- IgxDataChartStackedModule,
1697
- IgxDividerModule,
1698
- IgxDataChartScatterModule,
1699
- IgxBarSeriesModule,
1700
- IgxIconModule,
1701
- IgxCategoryChartModule,
1702
- CommonModule], exports: [IgxConditionalFormattingDirective,
1703
- IgxChartIntegrationDirective,
1704
- IgxContextMenuDirective] }); }
1705
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxExtrasModule, imports: [IgxButtonModule,
1706
- IgxDividerModule,
1707
- IgxGridModule,
1708
- IgxTabsModule,
1709
- IgxToggleModule,
1710
- IgxDataChartCategoryModule,
1711
- IgxDataChartCoreModule,
1712
- IgxLegendModule,
1713
- IgxDataChartInteractivityModule,
1714
- IgxNumericXAxisModule,
1715
- IgxNumericYAxisModule,
1716
- IgxCategoryXAxisModule,
1717
- IgxItemLegendModule,
1718
- IgxPieChartModule,
1719
- IgxDataChartStackedModule,
1720
- IgxDividerModule,
1721
- IgxDataChartScatterModule,
1722
- IgxBarSeriesModule,
1723
- IgxIconModule,
1724
- IgxCategoryChartModule,
1725
- CommonModule] }); }
1688
+ class PageHeaderComponent {
1689
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: PageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.3", type: PageHeaderComponent, isStandalone: true, selector: "app-page-header", inputs: { title: "title" }, ngImport: i0, template: "<div class=\"sample-header\">\r\n <h1 class=\"title ig-typography__h3\">\r\n <button igxIconButton=\"flat\"\r\n igxRipple\r\n igxRippleCentered=\"true\"\r\n igxToggleAction=\"navdrawer\"\r\n class=\"hamburger\">\r\n <igx-icon family=\"material\">menu</igx-icon>\r\n </button>\r\n {{ title }}\r\n </h1>\r\n <p class=\"description\">\r\n <ng-content></ng-content>\r\n </p>\r\n</div>\r\n", styles: [":host ::ng-deep,:host ::ng-deep [igxButton=flat],:host ::ng-deep .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=outlined],:host ::ng-deep .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=contained],:host ::ng-deep .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=fab],:host ::ng-deep .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, clamp(.75rem, calc(var(--ig-radius-factor, 1) * 1.75rem), 1.75rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12));--theme: var(--igx-button-theme, material)}:host ::ng-deep .hamburger{margin-right:32px}[dir=rtl] :host ::ng-deep .hamburger{margin-left:32px;margin-right:initial}.sample-header{padding:48px 24px;background:#111}.sample-header .title{display:flex;flex-flow:row nowrap;align-items:center;color:#fff;font-weight:400;margin:0}.sample-header .description{color:#fff;margin-top:48px;margin-bottom:0}\n"], dependencies: [{ kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "name", "active"] }, { kind: "directive", type: IgxToggleActionDirective, selector: "[igxToggleAction]", inputs: ["overlaySettings", "igxToggleOutlet", "igxToggleAction"], exportAs: ["toggle-action"] }] }); }
1726
1691
  }
1727
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: IgxExtrasModule, decorators: [{
1728
- type: NgModule,
1729
- args: [{
1730
- declarations: [
1731
- IgxConditionalFormattingDirective,
1732
- IgxChartIntegrationDirective,
1733
- IgxContextMenuDirective,
1734
- IgxContextMenuComponent,
1735
- IgxChartMenuComponent,
1736
- SvgPipe
1737
- ],
1738
- imports: [
1739
- IgxButtonModule,
1740
- IgxDividerModule,
1741
- IgxGridModule,
1742
- IgxTabsModule,
1743
- IgxToggleModule,
1744
- IgxDataChartCategoryModule,
1745
- IgxDataChartCoreModule,
1746
- IgxLegendModule,
1747
- IgxDataChartInteractivityModule,
1748
- IgxNumericXAxisModule,
1749
- IgxNumericYAxisModule,
1750
- IgxCategoryXAxisModule,
1751
- IgxItemLegendModule,
1752
- IgxPieChartModule,
1753
- IgxDataChartStackedModule,
1754
- IgxDividerModule,
1755
- IgxDataChartScatterModule,
1756
- IgxBarSeriesModule,
1757
- IgxIconModule,
1758
- IgxCategoryChartModule,
1759
- CommonModule
1760
- ],
1761
- exports: [
1762
- IgxConditionalFormattingDirective,
1763
- IgxChartIntegrationDirective,
1764
- IgxContextMenuDirective
1765
- ],
1766
- schemas: [CUSTOM_ELEMENTS_SCHEMA]
1767
- }]
1768
- }] });
1692
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: PageHeaderComponent, decorators: [{
1693
+ type: Component,
1694
+ args: [{ selector: 'app-page-header', imports: [IgxIconComponent, IgxToggleActionDirective], template: "<div class=\"sample-header\">\r\n <h1 class=\"title ig-typography__h3\">\r\n <button igxIconButton=\"flat\"\r\n igxRipple\r\n igxRippleCentered=\"true\"\r\n igxToggleAction=\"navdrawer\"\r\n class=\"hamburger\">\r\n <igx-icon family=\"material\">menu</igx-icon>\r\n </button>\r\n {{ title }}\r\n </h1>\r\n <p class=\"description\">\r\n <ng-content></ng-content>\r\n </p>\r\n</div>\r\n", styles: [":host ::ng-deep,:host ::ng-deep [igxButton=flat],:host ::ng-deep .igx-button--flat{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=outlined],:host ::ng-deep .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, hsl(from var(--ig-secondary-500) h s l/1));--hover-border-color: var(--igx-button-hover-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-border-color: var(--igx-button-focus-border-color, hsl(from var(--ig-secondary-500) h s l/1));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, hsl(from var(--ig-secondary-500) h s l/1));--active-border-color: var(--igx-button-active-border-color, hsl(from var(--ig-secondary-500) h s l/1));--disabled-border-color: var(--igx-button-disabled-border-color, hsl(from var(--ig-gray-300) h s l/1));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-0));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-0));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-0));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-0));--background: var(--igx-button-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, hsl(from var(--ig-secondary-500) h s l/1));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-0));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-0));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-0));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-0));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=contained],:host ::ng-deep .igx-button--contained{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-2));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-4));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-8));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-8));--background: var(--igx-button-background, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, clamp(0rem, calc(var(--ig-radius-factor, .2) * 1.25rem), 1.25rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-2));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-4));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-8));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-8));--theme: var(--igx-button-theme, material)}:host ::ng-deep,:host ::ng-deep [igxButton=fab],:host ::ng-deep .igx-button--fab{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, transparent);--hover-border-color: var(--igx-button-hover-border-color, transparent);--focus-border-color: var(--igx-button-focus-border-color, transparent);--focus-visible-border-color: var(--igx-button-focus-visible-border-color, transparent);--active-border-color: var(--igx-button-active-border-color, transparent);--disabled-border-color: var(--igx-button-disabled-border-color, transparent);--disabled-background: var(--igx-button-disabled-background, hsl(from var(--ig-gray-100) h s l/1));--disabled-foreground: var(--igx-button-disabled-foreground, hsl(from var(--ig-gray-500) h s l/1));--disabled-icon-color: var(--igx-button-disabled-icon-color, hsl(from var(--ig-gray-500) h s l/1));--size: var(--igx-button-size, max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));--default-size: var(--igx-button-default-size, 3);--resting-elevation: var(--igx-button-resting-elevation, var(--ig-elevation-6));--hover-elevation: var(--igx-button-hover-elevation, var(--ig-elevation-12));--focus-elevation: var(--igx-button-focus-elevation, var(--ig-elevation-12));--active-elevation: var(--igx-button-active-elevation, var(--ig-elevation-12));--background: var(--igx-button-background, white);--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-300) h s l/1));--border-radius: var(--igx-button-border-radius, clamp(.75rem, calc(var(--ig-radius-factor, 1) * 1.75rem), 1.75rem));--foreground: var(--igx-button-foreground, black);--icon-color: var(--igx-button-icon-color, black);--icon-color-hover: var(--igx-button-icon-color-hover, black);--hover-background: var(--igx-button-hover-background, white);--hover-foreground: var(--igx-button-hover-foreground, black);--focus-background: var(--igx-button-focus-background, white);--focus-foreground: var(--igx-button-focus-foreground, black);--focus-hover-background: var(--igx-button-focus-hover-background, white);--focus-hover-foreground: var(--igx-button-focus-hover-foreground, black);--focus-visible-background: var(--igx-button-focus-visible-background, white);--focus-visible-foreground: var(--igx-button-focus-visible-foreground, black);--active-foreground: var(--igx-button-active-foreground, color-mix(in oklch, var(--ig-secondary-300-contrast) 100%, transparent));--resting-shadow: var(--igx-button-resting-shadow, var(--ig-elevation-6));--hover-shadow: var(--igx-button-hover-shadow, var(--ig-elevation-12));--focus-shadow: var(--igx-button-focus-shadow, var(--ig-elevation-12));--active-shadow: var(--igx-button-active-shadow, var(--ig-elevation-12));--theme: var(--igx-button-theme, material)}:host ::ng-deep .hamburger{margin-right:32px}[dir=rtl] :host ::ng-deep .hamburger{margin-left:32px;margin-right:initial}.sample-header{padding:48px 24px;background:#111}.sample-header .title{display:flex;flex-flow:row nowrap;align-items:center;color:#fff;font-weight:400;margin:0}.sample-header .description{color:#fff;margin-top:48px;margin-bottom:0}\n"] }]
1695
+ }], propDecorators: { title: [{
1696
+ type: Input
1697
+ }] } });
1769
1698
 
1770
1699
  /*
1771
1700
  * Public API Surface of igniteui-angular-extras
1772
1701
  */
1702
+ /**
1703
+ * Directives
1704
+ */
1773
1705
 
1774
1706
  /**
1775
1707
  * Generated bundle index. Do not edit.
1776
1708
  */
1777
1709
 
1778
- export { CHART_TYPE, ChartInitializer, ConditionalFormattingType, IgxChartIntegrationDirective, IgxChartMenuComponent, IgxConditionalFormattingDirective, IgxContextMenuComponent, IgxContextMenuDirective, IgxDataChartInitializer, IgxExtrasModule, IgxPieChartInitializer, IgxStackedDataChartInitializer, OPTIONS_TYPE };
1710
+ export { CHART_TYPE, ChartInitializer, ConditionalFormattingType, IgxChartIntegrationDirective, IgxChartMenuComponent, IgxConditionalFormattingDirective, IgxContextMenuComponent, IgxContextMenuDirective, IgxDataChartInitializer, IgxPieChartInitializer, IgxStackedDataChartInitializer, OPTIONS_TYPE, PageHeaderComponent, SvgPipe };
1779
1711
  //# sourceMappingURL=igniteui-angular-extras.mjs.map