Skip to content

Commit c98e56d

Browse files
authored
Merge pull request #10729 from IgniteUI/mkirova/fix-10728
fix(igxPivot): Fix issue with cached data view for pivot grid.
2 parents 5332957 + e5f6c09 commit c98e56d

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

projects/igniteui-angular/src/lib/grids/grid-base.directive.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2704,6 +2704,7 @@ export abstract class IgxGridBaseDirective extends DisplayDensityBase implements
27042704
protected _transactions: TransactionService<Transaction, State>;
27052705
protected _batchEditing = false;
27062706
protected _autoGeneratedCols = [];
2707+
protected _dataView = [];
27072708

27082709
/** @hidden @internal */
27092710
public get paginator() {
@@ -2763,7 +2764,6 @@ export abstract class IgxGridBaseDirective extends DisplayDensityBase implements
27632764
private _unpinnedWidth = NaN;
27642765
private _visibleColumns = [];
27652766
private _columnGroups = false;
2766-
private _dataView = [];
27672767

27682768
private _columnWidth: string;
27692769

@@ -3447,7 +3447,7 @@ export abstract class IgxGridBaseDirective extends DisplayDensityBase implements
34473447
this._filteredSortedData = data;
34483448
this.refreshSearch(true, false);
34493449
}
3450-
this.buildDataView();
3450+
this.buildDataView(data);
34513451
}
34523452

34533453
/**
@@ -6925,7 +6925,7 @@ export abstract class IgxGridBaseDirective extends DisplayDensityBase implements
69256925
column.resetCaches();
69266926
}
69276927

6928-
private buildDataView() {
6928+
protected buildDataView(data: any[]) {
69296929
this._dataView = this.isRowPinningToTop ?
69306930
[...this.pinnedDataView, ...this.unpinnedDataView] :
69316931
[...this.unpinnedDataView, ...this.pinnedDataView];

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-grid.component.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1014,6 +1014,10 @@ export class IgxPivotGridComponent extends IgxGridBaseDirective implements OnIni
10141014
protected calcGridHeadRow() {
10151015
}
10161016

1017+
protected buildDataView(data: any[]) {
1018+
this._dataView = data;
1019+
}
1020+
10171021
/**
10181022
* @hidden @internal
10191023
*/

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-grid.pipes.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Pipe, PipeTransform } from '@angular/core';
1+
import { Inject, Pipe, PipeTransform } from '@angular/core';
22
import { cloneArray } from '../../core/utils';
33
import { DataUtil } from '../../data-operations/data-util';
44
import { FilteringExpressionsTree, IFilteringExpressionsTree } from '../../data-operations/filtering-expressions-tree';
@@ -11,7 +11,7 @@ import {
1111
import { PivotUtil } from './pivot-util';
1212
import { FilteringLogic } from '../../data-operations/filtering-expression.interface';
1313
import { ISortingExpression, SortingDirection } from '../../data-operations/sorting-strategy';
14-
import { GridType } from '../common/grid.interface';
14+
import { GridType, IGX_GRID_BASE } from '../common/grid.interface';
1515
import { GridBaseAPIService } from '../api.service';
1616
import { IgxGridBaseDirective } from '../grid-base.directive';
1717
import { IGridSortingStrategy } from '../common/strategy';
@@ -51,7 +51,7 @@ export class IgxPivotRowPipe implements PipeTransform {
5151
})
5252
export class IgxPivotRowExpansionPipe implements PipeTransform {
5353

54-
constructor() { }
54+
constructor(@Inject(IGX_GRID_BASE) private grid?: GridType) { }
5555

5656
public transform(
5757
collection: any[],
@@ -74,6 +74,10 @@ export class IgxPivotRowExpansionPipe implements PipeTransform {
7474
}
7575
const finalData = config.columnStrategy ? data : data.filter(x => x[pivotKeys.records]);
7676
this.cleanState(finalData, pivotKeys);
77+
78+
if (this.grid) {
79+
this.grid.setFilteredSortedData(finalData, false);
80+
}
7781
return finalData;
7882
}
7983

@@ -168,7 +172,6 @@ export class IgxPivotGridFilterPipe implements PipeTransform {
168172
pure: true
169173
})
170174
export class IgxPivotGridColumnSortingPipe implements PipeTransform {
171-
172175
public transform(
173176
collection: any[],
174177
expressions: ISortingExpression[],

0 commit comments

Comments
 (0)