igniteui-angular 16.1.15 → 16.1.17

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.
@@ -10134,12 +10134,8 @@ class IgxButtonDirective extends DisplayDensityBase {
10134
10134
  */
10135
10135
  set selected(value) {
10136
10136
  if (this._selected !== value) {
10137
- if (!this._selected) {
10138
- this.buttonSelected.emit({
10139
- button: this
10140
- });
10141
- }
10142
10137
  this._selected = value;
10138
+ this._renderer.setAttribute(this.nativeElement, 'data-selected', value.toString());
10143
10139
  }
10144
10140
  }
10145
10141
  get selected() {
@@ -10184,6 +10180,13 @@ class IgxButtonDirective extends DisplayDensityBase {
10184
10180
  */
10185
10181
  this._selected = false;
10186
10182
  }
10183
+ ngAfterContentInit() {
10184
+ this.nativeElement.addEventListener('click', () => {
10185
+ this.buttonSelected.emit({
10186
+ button: this
10187
+ });
10188
+ });
10189
+ }
10187
10190
  /**
10188
10191
  * @hidden
10189
10192
  * @internal
@@ -10330,7 +10333,7 @@ class IgxButtonDirective extends DisplayDensityBase {
10330
10333
  * @internal
10331
10334
  */
10332
10335
  deselect() {
10333
- this._selected = false;
10336
+ this.selected = false;
10334
10337
  }
10335
10338
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: IgxButtonDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DisplayDensityToken, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
10336
10339
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.8", type: IgxButtonDirective, isStandalone: true, selector: "[igxButton]", inputs: { selected: "selected", type: ["igxButton", "type"], color: ["igxButtonColor", "color"], background: ["igxButtonBackground", "background"], label: ["igxLabel", "label"], disabled: "disabled" }, outputs: { buttonClick: "buttonClick", buttonSelected: "buttonSelected" }, host: { listeners: { "click": "onClick($event)" }, properties: { "attr.role": "this.role", "class.igx-button": "this._cssClass", "class.igx-button--disabled": "this.disabled", "class.igx-button--flat": "this.flat", "class.igx-button--raised": "this.raised", "class.igx-button--outlined": "this.outlined", "class.igx-button--icon": "this.icon", "class.igx-button--fab": "this.fab", "style.--component-size": "this.componentSize", "attr.disabled": "this.disabledAttribute" } }, usesInheritance: true, ngImport: i0 }); }
@@ -27351,7 +27354,7 @@ class IgxGridSelectionService {
27351
27354
  /** Returns all data in the grid, with applied filtering and sorting and without deleted rows. */
27352
27355
  get allData() {
27353
27356
  let allData;
27354
- if (this.isFilteringApplied() || this.grid.sortingExpressions.length) {
27357
+ if (this.isFilteringApplied() || this.grid.sortingExpressions.length || this.grid.groupingExpressions?.length) {
27355
27358
  allData = this.grid.pinnedRecordsCount ? this.grid._filteredSortedUnpinnedData : this.grid.filteredSortedData;
27356
27359
  }
27357
27360
  else {
@@ -29635,10 +29638,14 @@ class IgxButtonGroupComponent extends DisplayDensityBase {
29635
29638
  */
29636
29639
  this.selectedIndexes = [];
29637
29640
  this.buttonClickNotifier$ = new Subject();
29638
- this.buttonSelectedNotifier$ = new Subject();
29639
29641
  this.queryListNotifier$ = new Subject();
29640
29642
  this._disabled = false;
29641
29643
  this._selectionMode = 'single';
29644
+ this.observerConfig = {
29645
+ attributeFilter: ["data-selected"],
29646
+ childList: true,
29647
+ subtree: true,
29648
+ };
29642
29649
  }
29643
29650
  /**
29644
29651
  * Gets the selected button/buttons.
@@ -29670,6 +29677,7 @@ class IgxButtonGroupComponent extends DisplayDensityBase {
29670
29677
  if (index >= this.buttons.length || index < 0) {
29671
29678
  return;
29672
29679
  }
29680
+ this.updateSelected(index);
29673
29681
  const button = this.buttons[index];
29674
29682
  button.select();
29675
29683
  }
@@ -29753,15 +29761,14 @@ class IgxButtonGroupComponent extends DisplayDensityBase {
29753
29761
  this.updateSelected(index);
29754
29762
  }
29755
29763
  button.buttonClick.pipe(takeUntil(this.buttonClickNotifier$)).subscribe((_) => this._clickHandler(index));
29756
- button.buttonSelected
29757
- .pipe(takeUntil(this.buttonSelectedNotifier$))
29758
- .subscribe((_) => this.updateSelected(index));
29759
29764
  });
29760
29765
  };
29761
29766
  this.viewButtons.changes.pipe(takeUntil(this.queryListNotifier$)).subscribe(() => initButtons());
29762
29767
  this.templateButtons.changes.pipe(takeUntil(this.queryListNotifier$)).subscribe(() => initButtons());
29763
29768
  initButtons();
29764
29769
  this._cdr.detectChanges();
29770
+ this.mutationObserver = this.setMutationsObserver();
29771
+ this.mutationObserver.observe(this._el.nativeElement, this.observerConfig);
29765
29772
  }
29766
29773
  /**
29767
29774
  * @hidden
@@ -29769,15 +29776,15 @@ class IgxButtonGroupComponent extends DisplayDensityBase {
29769
29776
  ngOnDestroy() {
29770
29777
  this.buttonClickNotifier$.next();
29771
29778
  this.buttonClickNotifier$.complete();
29772
- this.buttonSelectedNotifier$.next();
29773
- this.buttonSelectedNotifier$.complete();
29774
29779
  this.queryListNotifier$.next();
29775
29780
  this.queryListNotifier$.complete();
29781
+ this.mutationObserver.disconnect();
29776
29782
  }
29777
29783
  /**
29778
29784
  * @hidden
29779
29785
  */
29780
29786
  _clickHandler(index) {
29787
+ this.mutationObserver.disconnect();
29781
29788
  const button = this.buttons[index];
29782
29789
  const args = { owner: this, button, index };
29783
29790
  if (this.selectionMode !== 'multi') {
@@ -29797,6 +29804,43 @@ class IgxButtonGroupComponent extends DisplayDensityBase {
29797
29804
  this.deselected.emit(args);
29798
29805
  }
29799
29806
  }
29807
+ this.mutationObserver.observe(this._el.nativeElement, this.observerConfig);
29808
+ }
29809
+ setMutationsObserver() {
29810
+ return new MutationObserver((records, observer) => {
29811
+ // Stop observing while handling changes
29812
+ observer.disconnect();
29813
+ const updatedButtons = this.getUpdatedButtons(records);
29814
+ if (updatedButtons.length > 0) {
29815
+ updatedButtons.forEach((button) => {
29816
+ const index = this.buttons.map((b) => b.nativeElement).indexOf(button);
29817
+ const args = { owner: this, button: this.buttons[index], index };
29818
+ this.updateButtonSelectionState(index, args);
29819
+ });
29820
+ }
29821
+ // Watch for changes again
29822
+ observer.observe(this._el.nativeElement, this.observerConfig);
29823
+ });
29824
+ }
29825
+ getUpdatedButtons(records) {
29826
+ const updated = [];
29827
+ records
29828
+ .filter((x) => x.type === 'attributes')
29829
+ .reduce((prev, curr) => {
29830
+ prev.push(curr.target);
29831
+ return prev;
29832
+ }, updated);
29833
+ return updated;
29834
+ }
29835
+ updateButtonSelectionState(index, args) {
29836
+ if (this.selectedIndexes.indexOf(index) === -1) {
29837
+ this.selectButton(index);
29838
+ this.selected.emit(args);
29839
+ }
29840
+ else {
29841
+ this.deselectButton(index);
29842
+ this.deselected.emit(args);
29843
+ }
29800
29844
  }
29801
29845
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: IgxButtonGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: DisplayDensityToken, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
29802
29846
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.8", type: IgxButtonGroupComponent, isStandalone: true, selector: "igx-buttongroup", inputs: { id: "id", itemContentCssClass: "itemContentCssClass", multiSelection: "multiSelection", selectionMode: "selectionMode", values: "values", disabled: "disabled", alignment: "alignment" }, outputs: { selected: "selected", deselected: "deselected" }, host: { properties: { "attr.id": "this.id", "style.zIndex": "this.zIndex" } }, queries: [{ propertyName: "templateButtons", predicate: IgxButtonDirective }], viewQueries: [{ propertyName: "viewButtons", predicate: IgxButtonDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"igx-button-group\" role=\"group\" [class.igx-button-group--vertical]=\"isVertical\">\n <button *ngFor=\"let button of values; let i = 'index'\"\n type=\"button\"\n igxButton=\"flat\"\n [displayDensity]=\"displayDensity\"\n [selected]=\"button.selected\"\n [attr.data-togglable]=\"button.togglable\"\n [disabled]=\"disabled || button.disabled\"\n [igxButtonColor]=\"button.color\"\n [igxButtonBackground]=\"button.bgcolor\"\n [igxLabel]=\"button.label\"\n [igxRipple]=\"button.ripple\"\n >\n <span class=\"igx-button-group__item-content {{ itemContentCssClass }}\">\n <igx-icon *ngIf=\"button.icon\">{{button.icon}}</igx-icon>\n <span class=\"igx-button-group__button-text\" *ngIf=\"button.label\">{{button.label}}</span>\n </span>\n </button>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: IgxButtonDirective, selector: "[igxButton]", inputs: ["selected", "igxButton", "igxButtonColor", "igxButtonBackground", "igxLabel", "disabled"], outputs: ["buttonClick", "buttonSelected"] }, { kind: "directive", type: IgxRippleDirective, selector: "[igxRipple]", inputs: ["igxRippleTarget", "igxRipple", "igxRippleDuration", "igxRippleCentered", "igxRippleDisabled"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }] }); }
@@ -45105,6 +45149,9 @@ class IgxColumnGroupComponent extends IgxColumnComponent {
45105
45149
  }
45106
45150
  this.children.forEach(child => {
45107
45151
  child.parent = this;
45152
+ if (this.pinned) {
45153
+ child.pinned = this.pinned;
45154
+ }
45108
45155
  });
45109
45156
  if (this.collapsible) {
45110
45157
  this.setExpandCollapseState();
@@ -45112,10 +45159,20 @@ class IgxColumnGroupComponent extends IgxColumnComponent {
45112
45159
  this.children.changes
45113
45160
  .pipe(takeUntil(this.destroy$))
45114
45161
  .subscribe((change) => {
45115
- change.forEach(x => x.parent = this);
45162
+ let shouldReinitPinning = false;
45163
+ change.forEach(x => {
45164
+ x.parent = this;
45165
+ if (this.pinned && x.pinned !== this.pinned) {
45166
+ shouldReinitPinning = true;
45167
+ x.pinned = this.pinned;
45168
+ }
45169
+ });
45116
45170
  if (this.collapsible) {
45117
45171
  this.setExpandCollapseState();
45118
45172
  }
45173
+ if (shouldReinitPinning) {
45174
+ this.grid.initPinning();
45175
+ }
45119
45176
  });
45120
45177
  }
45121
45178
  /** @hidden @internal **/
@@ -67412,16 +67469,21 @@ class IgxGridBaseDirective extends DisplayDensityBase {
67412
67469
  if (diff) {
67413
67470
  let added = false;
67414
67471
  let removed = false;
67472
+ let pinning = false;
67415
67473
  diff.forEachAddedItem((record) => {
67416
67474
  added = true;
67417
67475
  if (record.item.pinned) {
67418
67476
  this._pinnedColumns.push(record.item);
67477
+ pinning = true;
67419
67478
  }
67420
67479
  else {
67421
67480
  this._unpinnedColumns.push(record.item);
67422
67481
  }
67423
67482
  });
67424
67483
  this.initColumns(this.columnList.toArray(), (col) => this.columnInit.emit(col));
67484
+ if (pinning) {
67485
+ this.initPinning();
67486
+ }
67425
67487
  diff.forEachRemovedItem((record) => {
67426
67488
  const isColumnGroup = record.item instanceof IgxColumnGroupComponent;
67427
67489
  if (!isColumnGroup) {
@@ -67987,42 +68049,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
67987
68049
  * @hidden
67988
68050
  */
67989
68051
  initPinning() {
67990
- const pinnedColumns = [];
67991
- const unpinnedColumns = [];
67992
68052
  this.calculateGridWidth();
67993
68053
  this.resetCaches();
67994
- // When a column is a group or is inside a group, pin all related.
67995
- this._pinnedColumns.forEach(col => {
67996
- if (col.parent) {
67997
- col.parent.pinned = true;
67998
- }
67999
- if (col.columnGroup) {
68000
- col.children.forEach(child => child.pinned = true);
68001
- }
68002
- });
68003
- // Make sure we don't exceed unpinned area min width and get pinned and unpinned col collections.
68004
- // We take into account top level columns (top level groups and non groups).
68005
- // If top level is unpinned the pinning handles all children to be unpinned as well.
68006
- for (const column of this._columns) {
68007
- if (column.pinned && !column.parent) {
68008
- pinnedColumns.push(column);
68009
- }
68010
- else if (column.pinned && column.parent) {
68011
- if (column.topLevelParent.pinned) {
68012
- pinnedColumns.push(column);
68013
- }
68014
- else {
68015
- column.pinned = false;
68016
- unpinnedColumns.push(column);
68017
- }
68018
- }
68019
- else {
68020
- unpinnedColumns.push(column);
68021
- }
68022
- }
68023
- // Assign the applicable collections.
68024
- this._pinnedColumns = pinnedColumns;
68025
- this._unpinnedColumns = unpinnedColumns;
68054
+ this.handleColumnPinningForGroups();
68026
68055
  this.notifyChanges();
68027
68056
  }
68028
68057
  /**
@@ -68408,6 +68437,42 @@ class IgxGridBaseDirective extends DisplayDensityBase {
68408
68437
  settings.target = targetRow.element.nativeElement;
68409
68438
  this.toggleRowEditingOverlay(true);
68410
68439
  }
68440
+ handleColumnPinningForGroups() {
68441
+ // When a column is a group or is inside a group, pin all related.
68442
+ const pinnedColumns = [];
68443
+ const unpinnedColumns = [];
68444
+ this._pinnedColumns.forEach(col => {
68445
+ if (col.parent) {
68446
+ col.parent.pinned = true;
68447
+ }
68448
+ if (col.columnGroup) {
68449
+ col.children.forEach(child => child.pinned = true);
68450
+ }
68451
+ });
68452
+ // Make sure we don't exceed unpinned area min width and get pinned and unpinned col collections.
68453
+ // We take into account top level columns (top level groups and non groups).
68454
+ // If top level is unpinned the pinning handles all children to be unpinned as well.
68455
+ for (const column of this._columns) {
68456
+ if (column.pinned && !column.parent) {
68457
+ pinnedColumns.push(column);
68458
+ }
68459
+ else if (column.pinned && column.parent) {
68460
+ if (column.topLevelParent.pinned) {
68461
+ pinnedColumns.push(column);
68462
+ }
68463
+ else {
68464
+ column.pinned = false;
68465
+ unpinnedColumns.push(column);
68466
+ }
68467
+ }
68468
+ else {
68469
+ unpinnedColumns.push(column);
68470
+ }
68471
+ }
68472
+ // Assign the applicable collections.
68473
+ this._pinnedColumns = pinnedColumns;
68474
+ this._unpinnedColumns = unpinnedColumns;
68475
+ }
68411
68476
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.8", ngImport: i0, type: IgxGridBaseDirective, deps: [{ token: IgxGridValidationService }, { token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i0.EnvironmentInjector }, { token: IgxGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: LOCALE_ID }, { token: PlatformUtil }, { token: IgxGridTransaction, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
68412
68477
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.8", type: IgxGridBaseDirective, inputs: { snackbarDisplayTime: "snackbarDisplayTime", autoGenerate: "autoGenerate", autoGenerateExclude: "autoGenerateExclude", moving: "moving", emptyGridTemplate: "emptyGridTemplate", addRowEmptyTemplate: "addRowEmptyTemplate", loadingGridTemplate: "loadingGridTemplate", summaryRowHeight: "summaryRowHeight", dataCloneStrategy: "dataCloneStrategy", clipboardOptions: "clipboardOptions", rowClasses: "rowClasses", rowStyles: "rowStyles", primaryKey: "primaryKey", uniqueColumnValuesStrategy: "uniqueColumnValuesStrategy", dragGhostCustomTemplate: "dragGhostCustomTemplate", rowEditTextTemplate: "rowEditTextTemplate", rowAddTextTemplate: "rowAddTextTemplate", rowEditActionsTemplate: "rowEditActionsTemplate", rowExpandedIndicatorTemplate: "rowExpandedIndicatorTemplate", rowCollapsedIndicatorTemplate: "rowCollapsedIndicatorTemplate", headerExpandedIndicatorTemplate: "headerExpandedIndicatorTemplate", headerCollapsedIndicatorTemplate: "headerCollapsedIndicatorTemplate", excelStyleHeaderIconTemplate: "excelStyleHeaderIconTemplate", sortAscendingHeaderIconTemplate: "sortAscendingHeaderIconTemplate", sortDescendingHeaderIconTemplate: "sortDescendingHeaderIconTemplate", sortHeaderIconTemplate: "sortHeaderIconTemplate", resourceStrings: "resourceStrings", filteringLogic: "filteringLogic", filteringExpressionsTree: "filteringExpressionsTree", advancedFilteringExpressionsTree: "advancedFilteringExpressionsTree", locale: "locale", pagingMode: "pagingMode", hideRowSelectors: "hideRowSelectors", rowDraggable: "rowDraggable", validationTrigger: "validationTrigger", rowEditable: "rowEditable", height: "height", width: "width", rowHeight: "rowHeight", columnWidth: "columnWidth", emptyGridMessage: "emptyGridMessage", isLoading: "isLoading", emptyFilteredGridMessage: "emptyFilteredGridMessage", pinning: "pinning", allowFiltering: "allowFiltering", allowAdvancedFiltering: "allowAdvancedFiltering", filterMode: "filterMode", summaryPosition: "summaryPosition", summaryCalculationMode: "summaryCalculationMode", showSummaryOnCollapse: "showSummaryOnCollapse", filterStrategy: "filterStrategy", sortStrategy: "sortStrategy", sortingOptions: "sortingOptions", selectedRows: "selectedRows", headSelectorTemplate: "headSelectorTemplate", rowSelectorTemplate: "rowSelectorTemplate", dragIndicatorIconTemplate: "dragIndicatorIconTemplate", sortingExpressions: "sortingExpressions", batchEditing: "batchEditing", cellSelection: "cellSelection", rowSelection: "rowSelection", columnSelection: "columnSelection", expansionStates: "expansionStates", outlet: "outlet", totalRecords: "totalRecords", selectRowOnClick: "selectRowOnClick" }, outputs: { filteringExpressionsTreeChange: "filteringExpressionsTreeChange", advancedFilteringExpressionsTreeChange: "advancedFilteringExpressionsTreeChange", gridScroll: "gridScroll", cellClick: "cellClick", formGroupCreated: "formGroupCreated", validationStatusChange: "validationStatusChange", selected: "selected", rowSelectionChanging: "rowSelectionChanging", columnSelectionChanging: "columnSelectionChanging", columnPin: "columnPin", columnPinned: "columnPinned", cellEditEnter: "cellEditEnter", cellEditExit: "cellEditExit", cellEdit: "cellEdit", cellEditDone: "cellEditDone", rowEditEnter: "rowEditEnter", rowEdit: "rowEdit", rowEditDone: "rowEditDone", rowEditExit: "rowEditExit", columnInit: "columnInit", sorting: "sorting", sortingDone: "sortingDone", filtering: "filtering", filteringDone: "filteringDone", rowAdded: "rowAdded", rowDeleted: "rowDeleted", rowDelete: "rowDelete", rowAdd: "rowAdd", columnResized: "columnResized", contextMenu: "contextMenu", doubleClick: "doubleClick", columnVisibilityChanging: "columnVisibilityChanging", columnVisibilityChanged: "columnVisibilityChanged", columnMovingStart: "columnMovingStart", columnMoving: "columnMoving", columnMovingEnd: "columnMovingEnd", gridKeydown: "gridKeydown", rowDragStart: "rowDragStart", rowDragEnd: "rowDragEnd", gridCopy: "gridCopy", expansionStatesChange: "expansionStatesChange", rowToggle: "rowToggle", rowPinning: "rowPinning", rowPinned: "rowPinned", activeNodeChange: "activeNodeChange", sortingExpressionsChange: "sortingExpressionsChange", toolbarExporting: "toolbarExporting", rangeSelected: "rangeSelected", rendered: "rendered", localeChange: "localeChange", dataChanging: "dataChanging", dataChanged: "dataChanged" }, host: { listeners: { "mouseleave": "hideActionStrip()" }, properties: { "attr.tabindex": "this.tabindex", "attr.role": "this.hostRole", "class.igx-grid": "this.baseClass", "style.--component-size": "this.hostStyles", "style.height": "this.height", "style.width": "this.hostWidth" } }, queries: [{ propertyName: "actionStrip", first: true, predicate: IgxActionStripComponent, descendants: true }, { propertyName: "excelStyleLoadingValuesTemplateDirective", first: true, predicate: IgxExcelStyleLoadingValuesTemplateDirective, descendants: true, read: IgxExcelStyleLoadingValuesTemplateDirective, static: true }, { propertyName: "rowAddText", first: true, predicate: IgxRowAddTextDirective, descendants: true, read: TemplateRef }, { propertyName: "rowExpandedIndicatorDirectiveTemplate", first: true, predicate: IgxRowExpandedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "rowCollapsedIndicatorDirectiveTemplate", first: true, predicate: IgxRowCollapsedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "headerExpandedIndicatorDirectiveTemplate", first: true, predicate: IgxHeaderExpandedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "headerCollapsedIndicatorDirectiveTemplate", first: true, predicate: IgxHeaderCollapsedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "excelStyleHeaderIconDirectiveTemplate", first: true, predicate: IgxExcelStyleHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortAscendingHeaderIconDirectiveTemplate", first: true, predicate: IgxSortAscendingHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortDescendingHeaderIconDirectiveTemplate", first: true, predicate: IgxSortDescendingHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortHeaderIconDirectiveTemplate", first: true, predicate: IgxSortHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "excelStyleFilteringComponents", predicate: IgxGridExcelStyleFilteringComponent, read: IgxGridExcelStyleFilteringComponent }, { propertyName: "columnList", predicate: IgxColumnComponent, descendants: true, read: IgxColumnComponent }, { propertyName: "headSelectorsTemplates", predicate: IgxHeadSelectorDirective, read: TemplateRef }, { propertyName: "rowSelectorsTemplates", predicate: IgxRowSelectorDirective, read: TemplateRef }, { propertyName: "dragGhostCustomTemplates", predicate: IgxRowDragGhostDirective, read: TemplateRef }, { propertyName: "rowEditCustomDirectives", predicate: IgxRowEditTemplateDirective, read: TemplateRef }, { propertyName: "rowEditTextDirectives", predicate: IgxRowEditTextDirective, read: TemplateRef }, { propertyName: "rowEditActionsDirectives", predicate: IgxRowEditActionsDirective, read: TemplateRef }, { propertyName: "dragIndicatorIconTemplates", predicate: IgxDragIndicatorIconDirective, read: TemplateRef }, { propertyName: "rowEditTabsCUSTOM", predicate: IgxRowEditTabStopDirective, descendants: true }, { propertyName: "toolbar", predicate: IgxGridToolbarComponent }, { propertyName: "paginationComponents", predicate: IgxPaginatorComponent }], viewQueries: [{ propertyName: "addRowSnackbar", first: true, predicate: IgxSnackbarComponent, descendants: true }, { propertyName: "resizeLine", first: true, predicate: IgxGridColumnResizerComponent, descendants: true }, { propertyName: "loadingOverlay", first: true, predicate: ["loadingOverlay"], descendants: true, read: IgxToggleDirective, static: true }, { propertyName: "loadingOutlet", first: true, predicate: ["igxLoadingOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "emptyFilteredGridTemplate", first: true, predicate: ["emptyFilteredGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "emptyGridDefaultTemplate", first: true, predicate: ["defaultEmptyGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "loadingGridDefaultTemplate", first: true, predicate: ["defaultLoadingGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "parentVirtDir", first: true, predicate: ["scrollContainer"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "verticalScrollContainer", first: true, predicate: ["verticalScrollContainer"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "verticalScroll", first: true, predicate: ["verticalScrollHolder"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "scr", first: true, predicate: ["scr"], descendants: true, read: ElementRef, static: true }, { propertyName: "headerSelectorBaseTemplate", first: true, predicate: ["headSelectorBaseTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "footer", first: true, predicate: ["footer"], descendants: true, read: ElementRef }, { propertyName: "theadRow", first: true, predicate: IgxGridHeaderRowComponent, descendants: true, static: true }, { propertyName: "groupArea", first: true, predicate: IgxGridGroupByAreaComponent, descendants: true }, { propertyName: "tbody", first: true, predicate: ["tbody"], descendants: true, static: true }, { propertyName: "pinContainer", first: true, predicate: ["pinContainer"], descendants: true, read: ElementRef }, { propertyName: "tfoot", first: true, predicate: ["tfoot"], descendants: true, static: true }, { propertyName: "rowEditingOutletDirective", first: true, predicate: ["igxRowEditingOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "dragIndicatorIconBase", first: true, predicate: ["dragIndicatorIconBase"], descendants: true, read: TemplateRef, static: true }, { propertyName: "rowEditingOverlay", first: true, predicate: ["rowEditingOverlay"], descendants: true, read: IgxToggleDirective }, { propertyName: "_outletDirective", first: true, predicate: ["igxFilteringOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "defaultExpandedTemplate", first: true, predicate: ["defaultExpandedTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultCollapsedTemplate", first: true, predicate: ["defaultCollapsedTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultESFHeaderIconTemplate", first: true, predicate: ["defaultESFHeaderIcon"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultRowEditTemplate", first: true, predicate: ["defaultRowEditTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "tmpOutlets", predicate: IgxTemplateOutletDirective, descendants: true, read: IgxTemplateOutletDirective }, { propertyName: "rowEditTabsDEFAULT", predicate: IgxRowEditTabStopDirective, descendants: true }, { propertyName: "_summaryRowList", predicate: ["summaryRow"], descendants: true, read: IgxSummaryRowComponent }, { propertyName: "_rowList", predicate: ["row"], descendants: true }, { propertyName: "_pinnedRowList", predicate: ["pinnedRow"], descendants: true }, { propertyName: "_dataRowList", predicate: IgxRowDirective, descendants: true, read: IgxRowDirective }], usesInheritance: true, ngImport: i0 }); }
68413
68478
  }
@@ -78757,7 +78822,7 @@ class IgxTreeGridSelectionService extends IgxGridSelectionService {
78757
78822
  added, removed, event, cancel: false
78758
78823
  };
78759
78824
  this.calculateRowsNewSelectionState(args, !!this.grid.primaryKey);
78760
- args.newSelection = Array.from(this.allData.filter(r => this.rowsToBeSelected.has(this.grid.primaryKey ? r[this.grid.primaryKey] : r)));
78825
+ args.newSelection = Array.from(this.grid.gridAPI.get_all_data().filter(r => this.rowsToBeSelected.has(this.grid.primaryKey ? r[this.grid.primaryKey] : r)));
78761
78826
  // retrieve rows/parents/children which has been added/removed from the selection
78762
78827
  this.handleAddedAndRemovedArgs(args);
78763
78828
  this.grid.rowSelectionChanging.emit(args);