Skip to content

Commit 48ee153

Browse files
teodosiahgedinakovaigdmdimitrov
authored
fix(esf): discard filter in esf menu on cancel button click (#15123)
Co-authored-by: Galina Edinakova <[email protected]> Co-authored-by: igdmdimitrov <[email protected]>
1 parent 7f650c9 commit 48ee153

File tree

3 files changed

+33
-2
lines changed

3 files changed

+33
-2
lines changed

projects/igniteui-angular/src/lib/grids/filtering/excel-style/excel-style-custom-dialog.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ <h4 class="ig-typography__h6">
5757
<div class="igx-excel-filter__cancel">
5858
<button type="button"
5959
igxButton="flat"
60-
(click)="closeDialog()">
60+
(click)="cancelDialog()">
6161
{{ grid.resourceStrings.igx_grid_excel_cancel }}
6262
</button>
6363
</div>

projects/igniteui-angular/src/lib/grids/filtering/excel-style/excel-style-custom-dialog.component.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import { IgxOverlayService } from '../../../services/overlay/overlay';
3333
import { IgxIconComponent } from '../../../icon/icon.component';
3434
import { IgxButtonDirective } from '../../../directives/button/button.directive';
3535
import { NgClass, NgIf, NgFor } from '@angular/common';
36+
import { BaseFilteringComponent } from './base-filtering.component';
3637

3738
/**
3839
* @hidden
@@ -95,6 +96,7 @@ export class IgxExcelStyleCustomDialogComponent implements AfterViewInit {
9596
protected overlayService: IgxOverlayService,
9697
private cdr: ChangeDetectorRef,
9798
protected platform: PlatformUtil,
99+
public esf: BaseFilteringComponent
98100
) { }
99101

100102
public ngAfterViewInit(): void {
@@ -140,7 +142,7 @@ export class IgxExcelStyleCustomDialogComponent implements AfterViewInit {
140142
this.createInitialExpressionUIElement();
141143
this.cdr.detectChanges();
142144
}
143-
145+
144146
public closeDialog() {
145147
if (this.overlayComponentId) {
146148
this.overlayService.hide(this.overlayComponentId);
@@ -150,6 +152,11 @@ export class IgxExcelStyleCustomDialogComponent implements AfterViewInit {
150152
}
151153
}
152154

155+
public cancelDialog() {
156+
this.esf.cancel();
157+
this.closeDialog();
158+
}
159+
153160
public onApplyButtonClick() {
154161
this.expressionsList = this.expressionsList.filter(
155162
element => element.expression.condition &&

projects/igniteui-angular/src/lib/grids/grid/grid-filtering-ui.spec.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7012,6 +7012,30 @@ describe('IgxGrid - Filtering actions - Excel style filtering #grid', () => {
70127012

70137013
}));
70147014

7015+
it('should discard filters through esf menu properly on cancel button click', fakeAsync(() => {
7016+
grid.filter('ProductName', 'Ignite', IgxStringFilteringOperand.instance().condition('contains'));
7017+
fix.detectChanges();
7018+
7019+
expect(fix.debugElement.nativeElement.querySelector('.igx-excel-filter__filter-number').textContent).toContain('(1)');
7020+
expect(grid.filteredData.length).toEqual(2);
7021+
tick(200);
7022+
fix.detectChanges();
7023+
7024+
GridFunctions.clickExcelFilterCascadeButton(fix);
7025+
tick();
7026+
fix.detectChanges();
7027+
7028+
GridFunctions.clickOperatorFromCascadeMenu(fix, 0);
7029+
tick(100);
7030+
fix.detectChanges();
7031+
GridFunctions.setOperatorESF(fix, 1, 0);
7032+
GridFunctions.setInputValueESF(fix, 1, 'Angular');
7033+
GridFunctions.clickCancelExcelStyleCustomFiltering(fix);
7034+
7035+
expect(fix.debugElement.nativeElement.querySelector('.igx-excel-filter__filter-number').textContent).toContain('(1)');
7036+
expect(grid.filteredData.length).toEqual(2);
7037+
}));
7038+
70157039
});
70167040
});
70177041

0 commit comments

Comments
 (0)