igniteui-angular-extras 19.1.0 → 19.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { EventEmitter, Input, Output, Directive, Pipe, ViewContainerRef, HostBinding, ViewChild, CUSTOM_ELEMENTS_SCHEMA, ViewEncapsulation, Component, Optional } from '@angular/core';
3
3
  import { IgxCategoryXAxisComponent, IgxNumericYAxisComponent, IgxScatterLineSeriesComponent, IgxNumericXAxisComponent, IgxBubbleSeriesComponent, IgxScatterSeriesComponent, IgxBarSeriesComponent, IgxCategoryYAxisComponent, IgxStackedBarSeriesComponent, IgxStacked100BarSeriesComponent, IgxStackedFragmentSeriesComponent, IgxSizeScaleComponent, IgxColumnSeriesComponent, IgxAreaSeriesComponent, IgxLineSeriesComponent, IgxStackedColumnSeriesComponent, IgxStackedAreaSeriesComponent, IgxStackedLineSeriesComponent, IgxStacked100ColumnSeriesComponent, IgxStacked100AreaSeriesComponent, IgxStacked100LineSeriesComponent, IgxPieChartComponent, IgxDataChartComponent, IgxItemLegendComponent, IgxLegendComponent, IgxBarSeriesModule, IgxCategoryChartModule, IgxCategoryXAxisModule, IgxDataChartCategoryModule, IgxDataChartCoreModule, IgxDataChartInteractivityModule, IgxDataChartScatterModule, IgxDataChartStackedModule, IgxItemLegendModule, IgxLegendModule, IgxNumericXAxisModule, IgxNumericYAxisModule } from 'igniteui-angular-charts';
4
4
  import { Subject } from 'rxjs';
5
- import { takeUntil, merge, debounceTime, filter } from 'rxjs/operators';
5
+ import { takeUntil, debounceTime, merge, filter } from 'rxjs/operators';
6
6
  import * as i1 from 'igniteui-angular';
7
7
  import { IgxIconComponent, IgxIconButtonDirective, AutoPositionStrategy, CloseScrollStrategy, VerticalAlignment, HorizontalAlignment, IgxToggleDirective, IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective, AbsoluteScrollStrategy, IgxToggleActionDirective } from 'igniteui-angular';
8
8
  import * as i1$2 from '@angular/common';
@@ -486,9 +486,8 @@ class IgxConditionalFormattingDirective {
486
486
  return this._formatColors;
487
487
  }
488
488
  get selectedData() {
489
- if (!this._selectedData.length) {
490
- this._selectedData = this.toArray(this.grid.getSelectedData());
491
- }
489
+ this._selectedData = this.grid.getSelectedData().length ? this.toArray(this.grid.getSelectedData()) :
490
+ this.toArray(this.grid.getSelectedColumnsData());
492
491
  return this._selectedData;
493
492
  }
494
493
  get textData() {
@@ -645,7 +644,10 @@ class IgxConditionalFormattingDirective {
645
644
  }
646
645
  ngAfterViewInit() {
647
646
  this.grid.rangeSelected.pipe(takeUntil(this.destroy$)).subscribe(() => {
648
- this.determineFormatters();
647
+ this.determineFormatters(false);
648
+ });
649
+ this.grid.columnSelectionChanging.pipe(takeUntil(this.destroy$), debounceTime(200)).subscribe(() => {
650
+ this.determineFormatters(true);
649
651
  });
650
652
  this.grid.cellEdit.pipe(takeUntil(this.destroy$)).subscribe((args) => {
651
653
  if ((args.newValue === args.oldValue || !this.formatter)) {
@@ -653,8 +655,7 @@ class IgxConditionalFormattingDirective {
653
655
  }
654
656
  if (this.isWithInFormattedRange(args.cellID.rowIndex, args.cellID.columnID - 1)) {
655
657
  const value = Number(args.newValue);
656
- const valueToBeAdded = !Number.isNaN(value) && Number.isFinite(value) ? value : args.newValue;
657
- this.selectedData.splice(this.selectedData.indexOf(args.oldValue), 1, valueToBeAdded);
658
+ this.selectedData.push(!Number.isNaN(value) && Number.isFinite(value) ? value : args.newValue);
658
659
  this.recalcCachedValues();
659
660
  this.formatCells(this.formatter, undefined, false);
660
661
  }
@@ -684,9 +685,10 @@ class IgxConditionalFormattingDirective {
684
685
  this.grid.cdr.detectChanges();
685
686
  });
686
687
  }
687
- determineFormatters() {
688
- const numericData = this.toArray(this.grid.getSelectedData()).some(rec => typeof rec === 'number');
689
- const textData = this.toArray(this.grid.getSelectedData()).some(rec => typeof rec === 'string');
688
+ determineFormatters(fromColumn) {
689
+ const data = fromColumn ? this.grid.getSelectedColumnsData() : this.grid.getSelectedData();
690
+ const numericData = this.toArray(data).some(rec => typeof rec === 'number');
691
+ const textData = this.toArray(data).some(rec => typeof rec === 'string');
690
692
  const formatters = Array.of(...this._commonFormattersName);
691
693
  if (!(numericData) && textData) {
692
694
  formatters.splice(0, 0, ...this._textFormatters);
@@ -701,13 +703,29 @@ class IgxConditionalFormattingDirective {
701
703
  }
702
704
  recalcCachedValues(clearAll = false) {
703
705
  if (clearAll) {
704
- this._startColumn = Math.min(...this.grid.getSelectedRanges().map(r => Number(r.columnStart)));
705
- this._endColumn = Math.max(...this.grid.getSelectedRanges().map(r => Number(r.columnEnd)));
706
+ if (this.grid.getSelectedRanges().length === 0) {
707
+ const selectedColumns = this.grid.selectedColumns();
708
+ if (selectedColumns.length === 1) {
709
+ this._startColumn = this._endColumn = selectedColumns[0].visibleIndex;
710
+ }
711
+ else if (selectedColumns.length > 1) {
712
+ this._startColumn = Math.min(...selectedColumns.map(c => c.visibleIndex));
713
+ this._endColumn = Math.max(...selectedColumns.map(c => c.visibleIndex));
714
+ }
715
+ else {
716
+ return;
717
+ }
718
+ }
719
+ else {
720
+ this._startColumn = Math.min(...this.grid.getSelectedRanges().map(r => Number(r.columnStart)));
721
+ this._endColumn = Math.max(...this.grid.getSelectedRanges().map(r => Number(r.columnEnd)));
722
+ }
706
723
  this._selectedData = [];
707
724
  }
708
725
  this._valueForComparison = this.textData[0];
726
+ const hasNegativeValues = this.numericData.some(value => value < 0);
709
727
  this._maxValue = Math.max(...this.numericData);
710
- this._minValue = Math.min(...this.numericData.filter(value => value < 0)) | 0;
728
+ this._minValue = hasNegativeValues ? Math.min(...this.numericData.filter(value => value < 0)) : 0;
711
729
  }
712
730
  isWithInFormattedRange(rowIndex, colID) {
713
731
  const visibleIndex = typeof colID === 'string' ? this.grid.getColumnByName(colID).visibleIndex : colID;
@@ -726,16 +744,31 @@ class IgxConditionalFormattingDirective {
726
744
  return Math.ceil(Math.abs(this._minValue) / (this._maxValue + Math.abs(this._minValue)) * 100);
727
745
  }
728
746
  getPositivePercentage(val) {
729
- const result = (Math.ceil(val) / (this._maxValue + Math.abs(this._minValue))) * 100;
730
- return Math.ceil(result);
747
+ return Math.ceil(Math.ceil(val) / (this._maxValue + Math.abs(this._minValue)) * 100);
731
748
  }
732
749
  getNegativePercentage(val) {
733
- const result = (Math.abs(val) / (this._maxValue + Math.abs(this._minValue))) * 100;
734
- return Math.ceil(result);
750
+ return Math.ceil(Math.abs(val) / (this._maxValue + Math.abs(this._minValue)) * 100);
735
751
  }
736
752
  resetRange(formatRange) {
737
753
  this.formatedRange.clear();
738
- const customRange = formatRange ? formatRange : this.grid.getSelectedRanges();
754
+ const selectedRanges = this.grid.getSelectedRanges();
755
+ let customRange;
756
+ // Column selection custom range
757
+ if (selectedRanges.length === 0) {
758
+ const selectedColumns = this.grid.selectedColumns();
759
+ customRange = [];
760
+ selectedColumns.forEach(c => {
761
+ customRange.push({
762
+ columnEnd: c.visibleIndex,
763
+ columnStart: c.visibleIndex,
764
+ rowEnd: this.grid.data.length - 1,
765
+ rowStart: 0
766
+ });
767
+ });
768
+ }
769
+ else {
770
+ customRange = formatRange ? formatRange : this.grid.getSelectedRanges();
771
+ }
739
772
  customRange.forEach(range => {
740
773
  for (let ri = range.rowStart; ri <= Number(range.rowEnd); ri++) {
741
774
  for (let ci = Number(range.columnStart); ci <= Number(range.columnEnd); ci++) {
@@ -1530,7 +1563,7 @@ class IgxContextMenuComponent {
1530
1563
  }
1531
1564
  }
1532
1565
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.0", ngImport: i0, type: IgxContextMenuComponent, deps: [{ token: i1.IgxOverlayService }], target: i0.ɵɵFactoryTarget.Component }); }
1533
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.0", 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 *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [".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, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-500));--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));--ig-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, var(--ig-secondary-500));--hover-border-color: var(--igx-button-hover-border-color, var(--ig-secondary-500));--focus-border-color: var(--igx-button-focus-border-color, var(--ig-secondary-500));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, var(--ig-secondary-500));--active-border-color: var(--igx-button-active-border-color, var(--ig-secondary-500));--disabled-border-color: var(--igx-button-disabled-border-color, var(--ig-gray-300));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-500));--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));--ig-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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-300));--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, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-300));--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, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "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, 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 }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }] }); }
1566
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.0", type: IgxContextMenuComponent, isStandalone: true, selector: "igx-context-menu", viewQueries: [{ propertyName: "button", first: true, predicate: ["analyticsBtn"], descendants: true }, { propertyName: "tabsMenu", first: true, predicate: ["tabsMenu"], descendants: true, read: IgxToggleDirective }, { propertyName: "chartPreview", first: true, predicate: ["chartPreview"], descendants: true, read: ViewContainerRef }, { propertyName: "chartPreviewDialog", first: true, predicate: ["chartPreviewDialog"], descendants: true, read: IgxToggleDirective }, { propertyName: "tabs", first: true, predicate: IgxTabsComponent, descendants: true }], ngImport: i0, template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\r\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\r\n </button>\r\n</span>\r\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\r\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\r\n <igx-tab-item [disabled]=\"!textFormatters.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Conditional Formatting</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let condition of textFormatters\" class=\"action btn condition\"\r\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\r\n (click)=\"formatCells(condition)\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\r\n </div>\r\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\r\n </span>\r\n </span>\r\n <span class=\"clear action\"\r\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\r\n (click)=\"clearFormat()\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\r\n </div>\r\n <span class=\"btn name\">Clear All</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n <igx-tab-item *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=flat],:host ::ng-deep .analytics-button .igx-button--flat,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=flat],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-hover-background: var(--igx-button-focus-hover-background, hsl(from var(--ig-secondary-500) h s l/.24));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-500));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=outlined],:host ::ng-deep .analytics-button .igx-button--outlined,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=outlined],:host ::ng-deep .analytics-button igx-button .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, var(--ig-secondary-500));--hover-border-color: var(--igx-button-hover-border-color, var(--ig-secondary-500));--focus-border-color: var(--igx-button-focus-border-color, var(--ig-secondary-500));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, var(--ig-secondary-500));--active-border-color: var(--igx-button-active-border-color, var(--ig-secondary-500));--disabled-border-color: var(--igx-button-disabled-border-color, var(--ig-gray-300));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-hover-background: var(--igx-button-focus-hover-background, hsl(from var(--ig-secondary-500) h s l/.24));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-500));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=contained],:host ::ng-deep .analytics-button .igx-button--contained,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=contained],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--active-background: var(--igx-button-active-background, var(--ig-secondary-300));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--focus-hover-background: var(--igx-button-focus-hover-background, var(--ig-secondary-400));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-400-contrast));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-300-contrast));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=fab],:host ::ng-deep .analytics-button .igx-button--fab,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=fab],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--active-background: var(--igx-button-active-background, var(--ig-secondary-300));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--focus-hover-background: var(--igx-button-focus-hover-background, var(--ig-secondary-400));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-400-contrast));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "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, 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 }, { kind: "directive", type: IgxIconButtonDirective, selector: "[igxIconButton]", inputs: ["igxIconButton"] }] }); }
1534
1567
  }
1535
1568
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.0", ngImport: i0, type: IgxContextMenuComponent, decorators: [{
1536
1569
  type: Component,
@@ -1559,7 +1592,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.0", ngImpor
1559
1592
  IgxNumericXAxisModule,
1560
1593
  IgxNumericYAxisModule,
1561
1594
  IgxIconButtonDirective,
1562
- ], 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 *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [".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, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-500));--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));--ig-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, var(--ig-secondary-500));--hover-border-color: var(--igx-button-hover-border-color, var(--ig-secondary-500));--focus-border-color: var(--igx-button-focus-border-color, var(--ig-secondary-500));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, var(--ig-secondary-500));--active-border-color: var(--igx-button-active-border-color, var(--ig-secondary-500));--disabled-border-color: var(--igx-button-disabled-border-color, var(--ig-gray-300));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-500));--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));--ig-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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-300));--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, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, var(--ig-secondary-300));--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, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"] }]
1595
+ ], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<span #analyticsBtn class=\"analytics-btn\">\r\n <button #btn class=\"analytics-button\" igxIconButton=\"flat\" (click)=\"toggleTabMenu()\">\r\n <igx-icon #icon class=\"icon\" family=\"material\">insert_chart_outlined</igx-icon>\r\n </button>\r\n</span>\r\n<div #tabsMenu igxToggle class=\"toggle-content ig-scrollbar\">\r\n <igx-tabs tabsType=\"fixed\" [selectedIndex]=\"!this.textFormatters.length && chartTypes.length ? 1 : 0\">\r\n <igx-tab-item [disabled]=\"!textFormatters.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Conditional Formatting</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let condition of textFormatters\" class=\"action btn condition\"\r\n [ngClass]=\"{'selected--condition': condition === currentFormatter}\"\r\n (click)=\"formatCells(condition)\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages[condition.replace(' ', '')] | svg\">\r\n </div>\r\n <span class=\"name\">{{condition.replace('10', '10%')}}</span>\r\n </span>\r\n </span>\r\n <span class=\"clear action\"\r\n [ngClass]=\"{'disableButton': contextDirective.textFormatter ? !contextDirective.textFormatter.formatter : true }\"\r\n (click)=\"clearFormat()\">\r\n <div class=\"imgSize\" [innerHTML]=\"conditionImages['Clear'] | svg\">\r\n </div>\r\n <span class=\"btn name\">Clear All</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n <igx-tab-item *ngIf=\"displayCreationTab\" [disabled]=\"!chartTypes.length\">\r\n <igx-tab-header>\r\n <span igxTabHeaderLabel>Create Chart</span>\r\n </igx-tab-header>\r\n <igx-tab-content>\r\n <igc-trial-watermark></igc-trial-watermark>\r\n <div class=\"tabs\">\r\n <span class=\"tab-option\">\r\n <span *ngFor=\"let chart of chartTypes | slice:0:4\" class=\"action btn chart\"\r\n [ngClass]=\"{'selected': chart === currentChartType}\" (mouseenter)=\"previewChart(chart)\"\r\n (mouseleave)=\"hidePreview()\" (click)=\"openDialog(chart)\">\r\n <span [innerHTML]=\"chartImages[chart] | svg\" class=\"imgSize\">\r\n </span>\r\n <span class=\"name\">{{chart}}</span>\r\n </span>\r\n </span>\r\n <span class=\"more-action chart\" [ngClass]=\"{'disableButton': !chartTypes.length}\"\r\n (click)=\"openDialog()\">\r\n <button class=\"more-btn more-icon\" igxIconButton=\"flat\" [style.--background]=\"'#EBEBEB'\"\r\n [style.--foreground]=\"'black'\">\r\n <igx-icon class=\"icon\" family=\"material\">more_horiz</igx-icon>\r\n </button>\r\n <span class=\"name btn\">More...</span>\r\n </span>\r\n </div>\r\n </igx-tab-content>\r\n </igx-tab-item>\r\n </igx-tabs>\r\n</div>\r\n<div igxToggle #chartPreviewDialog class=\"chart-preview\">\r\n <div class=\"chart-preview-title\">\r\n <h5>Preview Chart</h5>\r\n </div>\r\n <div class=\"chart-preview-area\">\r\n <ng-template #chartPreview></ng-template>\r\n </div>\r\n</div>", styles: [":host ::ng-deep .analytics-button{--ig-size: var(--ig-size-small)}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=flat],:host ::ng-deep .analytics-button .igx-button--flat,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=flat],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-hover-background: var(--igx-button-focus-hover-background, hsl(from var(--ig-secondary-500) h s l/.24));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-500));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=outlined],:host ::ng-deep .analytics-button .igx-button--outlined,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=outlined],:host ::ng-deep .analytics-button igx-button .igx-button--outlined{--shadow-color: var(--igx-button-shadow-color, transparent);--border-color: var(--igx-button-border-color, var(--ig-secondary-500));--hover-border-color: var(--igx-button-hover-border-color, var(--ig-secondary-500));--focus-border-color: var(--igx-button-focus-border-color, var(--ig-secondary-500));--focus-visible-border-color: var(--igx-button-focus-visible-border-color, var(--ig-secondary-500));--active-border-color: var(--igx-button-active-border-color, var(--ig-secondary-500));--disabled-border-color: var(--igx-button-disabled-border-color, var(--ig-gray-300));--disabled-background: var(--igx-button-disabled-background, transparent);--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-hover-background: var(--igx-button-focus-hover-background, hsl(from var(--ig-secondary-500) h s l/.24));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-background: var(--igx-button-active-background, hsl(from var(--ig-secondary-500) h s l/.16));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-500));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=contained],:host ::ng-deep .analytics-button .igx-button--contained,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=contained],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--active-background: var(--igx-button-active-background, var(--ig-secondary-300));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--focus-hover-background: var(--igx-button-focus-hover-background, var(--ig-secondary-400));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-400-contrast));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-300-contrast));--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));--ig-theme: material}:host ::ng-deep .analytics-button,:host ::ng-deep .analytics-button [igxButton=fab],:host ::ng-deep .analytics-button .igx-button--fab,:host ::ng-deep .analytics-button igx-button,:host ::ng-deep .analytics-button igx-button [igxButton=fab],:host ::ng-deep .analytics-button igx-button .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, var(--ig-gray-100));--disabled-foreground: var(--igx-button-disabled-foreground, var(--ig-gray-500));--disabled-icon-color: var(--igx-button-disabled-icon-color, var(--ig-gray-500));--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, hsl(from var(--ig-success-500) h s l/.8));--active-background: var(--igx-button-active-background, var(--ig-secondary-300));--border-radius: var(--igx-button-border-radius, 0);--foreground: var(--igx-button-foreground, var(--ig-gray-900-contrast));--icon-color: var(--igx-button-icon-color, var(--ig-gray-900-contrast));--icon-color-hover: var(--igx-button-icon-color-hover, var(--ig-gray-900-contrast));--hover-background: var(--igx-button-hover-background, var(--ig-success-500));--hover-foreground: var(--igx-button-hover-foreground, var(--ig-gray-900-contrast));--focus-background: var(--igx-button-focus-background, var(--ig-success-500));--focus-foreground: var(--igx-button-focus-foreground, var(--ig-gray-900-contrast));--focus-hover-background: var(--igx-button-focus-hover-background, var(--ig-secondary-400));--focus-hover-foreground: var(--igx-button-focus-hover-foreground, var(--ig-secondary-400-contrast));--focus-visible-background: var(--igx-button-focus-visible-background, var(--ig-success-500));--focus-visible-foreground: var(--igx-button-focus-visible-foreground, var(--ig-gray-900-contrast));--active-foreground: var(--igx-button-active-foreground, var(--ig-secondary-300-contrast));--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));--ig-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, var(--ig-gray-400));--sb-thumb-bg-color-hover: var(--ig-scrollbar-sb-thumb-bg-color-hover, var(--ig-gray-400));--sb-thumb-border-color: var(--ig-scrollbar-sb-thumb-border-color, transparent);--sb-thumb-border-size: var(--ig-scrollbar-sb-thumb-border-size, 0);--sb-thumb-border-radius: var(--ig-scrollbar-sb-thumb-border-radius, 0);--sb-track-bg-color: var(--ig-scrollbar-sb-track-bg-color, var(--ig-gray-100));--sb-track-bg-color-hover: var(--ig-scrollbar-sb-track-bg-color-hover, var(--ig-gray-100));--sb-track-border-color: var(--ig-scrollbar-sb-track-border-color, transparent);--sb-track-border-size: var(--ig-scrollbar-sb-track-border-size, 0);--sb-corner-bg: var(--ig-scrollbar-sb-corner-bg, var(--ig-gray-100));--sb-corner-border-color: var(--ig-scrollbar-sb-corner-border-color, transparent);--sb-corner-border-size: var(--ig-scrollbar-sb-corner-border-size, 0);--ig-theme: material}@-moz-document url-prefix(){}::ng-deep .toggle-content{width:354px;max-width:358px;height:148px;background-color:#fff}::ng-deep .toggle-content .tabs{display:flex!important;border:.2px solid;border-color:#d3d3d3}::ng-deep .toggle-content .tab-option{padding:.9rem;height:100px;width:358px;display:inline-flex;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-content:center}::ng-deep .toggle-content .tab-option .chartImgButton{width:48px;height:48px}::ng-deep .toggle-content .tab-option .imgSize,::ng-deep .toggle-content .clear.action .imgSize{width:36px;height:36px;align-self:center}::ng-deep .toggle-content .action{cursor:pointer;opacity:1}::ng-deep .toggle-content .action.selected{opacity:.62}::ng-deep .toggle-content .action.selected--condition{pointer-events:none;opacity:.62}\n"] }]
1563
1596
  }], ctorParameters: () => [{ type: i1.IgxOverlayService }], propDecorators: { button: [{
1564
1597
  type: ViewChild,
1565
1598
  args: ['analyticsBtn']
@@ -1631,6 +1664,18 @@ class IgxContextMenuDirective {
1631
1664
  setUpGridListeners() {
1632
1665
  this.contentObserver = new ResizeObserver(() => this.gridResizeNotify.next());
1633
1666
  this.contentObserver.observe(this.grid.nativeElement);
1667
+ this.grid.columnSelectionChanging.pipe(debounceTime(100))
1668
+ .subscribe((args) => {
1669
+ if (args.newSelection && args.oldSelection && !this._collapsed) {
1670
+ this.close();
1671
+ }
1672
+ this.grid.clearCellSelection();
1673
+ this.chartsDirective.chartData = this.grid.getSelectedColumnsData();
1674
+ if (!this._collapsed) {
1675
+ this.onButtonClose.emit();
1676
+ }
1677
+ this.renderHeaderButton();
1678
+ });
1634
1679
  this.grid.rangeSelected.pipe(takeUntil(this.destroy$))
1635
1680
  .subscribe((args) => {
1636
1681
  this._range = args;
@@ -1690,6 +1735,43 @@ class IgxContextMenuDirective {
1690
1735
  }
1691
1736
  this._collapsed ? this.show() : this.overlayService.reposition(this._id);
1692
1737
  }
1738
+ renderHeaderButton() {
1739
+ const selectedColumns = this.grid.selectedColumns();
1740
+ if (selectedColumns.length === 0) {
1741
+ return;
1742
+ }
1743
+ this._analyticsBtnSettings.positionStrategy = new AutoPositionStrategy({
1744
+ horizontalDirection: HorizontalAlignment.Right,
1745
+ horizontalStartPoint: HorizontalAlignment.Right,
1746
+ verticalStartPoint: VerticalAlignment.Bottom,
1747
+ verticalDirection: VerticalAlignment.Bottom, closeAnimation: null
1748
+ });
1749
+ const selectedColumnsIndexes = selectedColumns.map(c => c.visibleIndex).sort((a, b) => a - b);
1750
+ let colIndex = selectedColumnsIndexes[selectedColumnsIndexes.length - 1];
1751
+ let rowIndex = undefined;
1752
+ while (selectedColumnsIndexes.length) {
1753
+ if (this.grid.navigation.isColumnFullyVisible(colIndex)) {
1754
+ break;
1755
+ }
1756
+ selectedColumnsIndexes.pop();
1757
+ colIndex = selectedColumnsIndexes[selectedColumnsIndexes.length - 1];
1758
+ }
1759
+ if (!selectedColumnsIndexes.length) {
1760
+ return;
1761
+ }
1762
+ const col = selectedColumns.find(c => c.visibleIndex === colIndex);
1763
+ if (!col) {
1764
+ return;
1765
+ }
1766
+ const headerCell = col.headerCell.nativeElement;
1767
+ this._analyticsBtnSettings.target = headerCell;
1768
+ this._analyticsBtnSettings.scrollStrategy = new AbsoluteScrollStrategy();
1769
+ const info = this.overlayService.getOverlayById(this._id);
1770
+ if (info) {
1771
+ info.settings.positionStrategy = this._analyticsBtnSettings.positionStrategy;
1772
+ }
1773
+ this._collapsed ? this.show() : this.overlayService.reposition(this._id);
1774
+ }
1693
1775
  show() {
1694
1776
  if (!this._collapsed) {
1695
1777
  return;