@@ -8,14 +8,32 @@ import { PivotUtil } from './pivot-util';
88
99@Injectable ( )
1010export class IgxPivotFilteringService extends IgxFilteringService {
11+ public clearFilter ( field : string ) : void {
12+ this . clear_filter ( field ) ;
13+ }
14+
15+ public clear_filter ( fieldName : string ) {
16+ super . clear_filter ( fieldName ) ;
17+ const grid = this . grid ;
18+ const config = ( grid as IgxPivotGridComponent ) . pivotConfiguration ;
19+ const allDimensions = PivotUtil . flatten ( config . rows . concat ( config . columns ) . concat ( config . filters ) . filter ( x => x !== null ) ) ;
20+ const enabledDimensions = allDimensions . filter ( x => x && x . enabled ) ;
21+ const dim = enabledDimensions . find ( x => x . memberName === fieldName || x . member === fieldName ) ;
22+ dim . filters = undefined ;
23+ grid . filteringPipeTrigger ++ ;
24+ if ( PivotUtil . flatten ( config . columns ) . indexOf ( dim ) !== - 1 ) {
25+ // update columns
26+ ( grid as any ) . setupColumns ( ) ;
27+ }
28+ }
1129 protected filter_internal ( fieldName : string , term , conditionOrExpressionsTree : IFilteringOperation | IFilteringExpressionsTree ,
1230 ignoreCase : boolean ) {
1331 super . filter_internal ( fieldName , term , conditionOrExpressionsTree , ignoreCase ) ;
1432 const grid = this . grid ;
1533 const config = ( grid as IgxPivotGridComponent ) . pivotConfiguration ;
1634 const allDimensions = PivotUtil . flatten ( config . rows . concat ( config . columns ) . concat ( config . filters ) . filter ( x => x !== null ) ) ;
1735 const enabledDimensions = allDimensions . filter ( x => x && x . enabled ) ;
18- const dim = enabledDimensions . find ( x => x . fieldName === fieldName || x . member === fieldName ) ;
36+ const dim = enabledDimensions . find ( x => x . memberName === fieldName || x . member === fieldName ) ;
1937 const filteringTree = dim . filters || new FilteringExpressionsTree ( FilteringLogic . And ) ;
2038 const fieldFilterIndex = filteringTree . findIndex ( fieldName ) ;
2139 if ( fieldFilterIndex > - 1 ) {
@@ -30,23 +48,4 @@ export class IgxPivotFilteringService extends IgxFilteringService {
3048 ( grid as any ) . setupColumns ( ) ;
3149 }
3250 }
33- public clearFilter ( field : string ) : void {
34- this . clear_filter ( field ) ;
35- }
36-
37- public clear_filter ( fieldName : string ) {
38- super . clear_filter ( fieldName ) ;
39- const grid = this . grid ;
40- const config = ( grid as IgxPivotGridComponent ) . pivotConfiguration ;
41- const allDimensions = PivotUtil . flatten ( config . rows . concat ( config . columns ) . concat ( config . filters ) . filter ( x => x !== null ) ) ;
42- const enabledDimensions = allDimensions . filter ( x => x && x . enabled ) ;
43- const dim = enabledDimensions . find ( x => x . fieldName === fieldName || x . member === fieldName ) ;
44- dim . filters = undefined ;
45- grid . filteringPipeTrigger ++ ;
46- if ( PivotUtil . flatten ( config . columns ) . indexOf ( dim ) !== - 1 ) {
47- // update columns
48- ( grid as any ) . setupColumns ( ) ;
49- }
50- }
51-
5251}
0 commit comments