Skip to content

Commit 0626b1a

Browse files
authored
Merge branch '9.0.x' into ddimitrov/fix-7133-9.0.x
2 parents 9f50b53 + 9a6b48f commit 0626b1a

18 files changed

+568
-634
lines changed

package-lock.json

Lines changed: 19 additions & 25 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,12 @@
5353
"@angular/platform-browser-dynamic": "^9.0.0",
5454
"@angular/router": "^9.0.0",
5555
"@types/hammerjs": "^2.0.36",
56+
"@types/jszip": "^3.1.7",
5657
"@types/source-map": "0.5.2",
5758
"classlist.js": "^1.1.20150312",
5859
"core-js": "^2.6.2",
5960
"hammerjs": "^2.0.8",
60-
"jszip": "^3.1.5",
61+
"jszip": "^3.3.0",
6162
"resize-observer-polyfill": "^1.5.1",
6263
"rxjs": "^6.5.4",
6364
"tslib": "^1.10.0",

projects/igniteui-angular/ng-package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
},
88
"whitelistedNonPeerDependencies": [
99
"@types/hammerjs",
10+
"@types/jszip",
1011
"hammerjs",
1112
"jszip",
1213
"resize-observer-polyfill"

projects/igniteui-angular/ng-package.prod.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
},
1111
"whitelistedNonPeerDependencies": [
1212
"@types/hammerjs",
13+
"@types/jszip",
1314
"hammerjs",
1415
"jszip",
1516
"resize-observer-polyfill"

projects/igniteui-angular/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,9 @@
6767
],
6868
"dependencies": {
6969
"@types/hammerjs": "^2.0.36",
70+
"@types/jszip": "^3.1.7",
7071
"hammerjs": "^2.0.8",
71-
"jszip": "^3.1.5",
72+
"jszip": "^3.3.0",
7273
"resize-observer-polyfill": "^1.5.1"
7374
},
7475
"peerDependencies": {

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

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,12 @@
3131
[indeterminate]="item.indeterminate"
3232
[disableTransitions]="true"
3333
(change)="onCheckboxChange($event)">
34-
{{ column.formatter && !item.isSpecial ? column.formatter(item.label) : column.dataType === 'number' ? (item.label | igxdecimal:
35-
column.grid.locale) : column.dataType === 'date' ? (item.label | igxdate: column.grid.locale) : item.label }}
34+
{{ item.label }}
3635
</igx-checkbox>
3736
</igx-list-item>
3837
</div>
3938

40-
<ng-template igxDataLoading>
39+
<ng-template igxDataLoading>
4140
<div class="igx-excel-filter__loading">
4241
<ng-container *ngTemplateOutlet="valuesLoadingTemplate">
4342
</ng-container>

projects/igniteui-angular/src/lib/grids/filtering/excel-style/excel-style-search.pipe.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,9 @@ export class IgxExcelStyleSearchFilterPipe implements PipeTransform {
2020

2121
searchText = searchText.toLowerCase();
2222
const result = items.filter((it, i) => (i === 0 && it.isSpecial) ||
23-
(it.value !== null && it.value !== undefined) &&
24-
it.value.toString().toLowerCase().indexOf(searchText) > -1);
23+
(it.label !== null && it.label !== undefined) &&
24+
!it.isBlanks &&
25+
it.label.toString().toLowerCase().indexOf(searchText) > -1);
2526

2627
// If 'result' contains the 'Select All' item and at least one more - we use it, otherwise we use an empty array.
2728
return result.length > 1 ? result : [];

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

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ import { ISelectionEventArgs, IgxDropDownComponent } from '../../../drop-down';
4040
import { IgxColumnComponent } from '../../columns/column.component';
4141
import { IgxGridBaseDirective } from '../../grid-base.directive';
4242
import { DisplayDensity } from '../../../core/density';
43+
import { IgxDecimalPipeComponent, IgxDatePipeComponent } from '../../common/pipes';
4344

4445
/**
4546
*@hidden
@@ -50,6 +51,7 @@ export class FilterListItem {
5051
public isSelected: boolean;
5152
public indeterminate: boolean;
5253
public isSpecial = false;
54+
public isBlanks = false;
5355
}
5456

5557
@Directive({
@@ -672,6 +674,10 @@ export class IgxGridExcelStyleFilteringComponent implements OnDestroy {
672674
private addItems(shouldUpdateSelection: boolean) {
673675
this.selectAllSelected = true;
674676
this.selectAllIndeterminate = false;
677+
678+
const numberPipe = new IgxDecimalPipeComponent(this.column.grid.locale);
679+
const datePipe = new IgxDatePipeComponent(this.column.grid.locale);
680+
675681
this.uniqueValues.forEach(element => {
676682
if (element !== undefined && element !== null && element !== '') {
677683
const filterListItem = new FilterListItem();
@@ -691,12 +697,29 @@ export class IgxGridExcelStyleFilteringComponent implements OnDestroy {
691697
filterListItem.isSelected = true;
692698
}
693699
if (this.column.dataType === DataType.Date) {
694-
filterListItem.value = new Date(element);
695-
filterListItem.label = new Date(element);
700+
const date = new Date(element);
701+
702+
filterListItem.value = date;
703+
704+
filterListItem.label = this.column.formatter ?
705+
this.column.formatter(date) :
706+
datePipe.transform(date, this.column.grid.locale);
707+
708+
} else if (this.column.dataType === DataType.Number) {
709+
filterListItem.value = element;
710+
711+
filterListItem.label = this.column.formatter ?
712+
this.column.formatter(element) :
713+
numberPipe.transform(element, this.column.grid.locale);
714+
696715
} else {
697716
filterListItem.value = element;
698-
filterListItem.label = element;
717+
718+
filterListItem.label = this.column.formatter ?
719+
this.column.formatter(element) :
720+
element;
699721
}
722+
700723
filterListItem.indeterminate = false;
701724
this.listData.push(filterListItem);
702725
} else {
@@ -732,6 +755,7 @@ export class IgxGridExcelStyleFilteringComponent implements OnDestroy {
732755
blanks.label = this.grid.resourceStrings.igx_grid_excel_blanks;
733756
blanks.indeterminate = false;
734757
blanks.isSpecial = true;
758+
blanks.isBlanks = true;
735759
this.listData.unshift(blanks);
736760
}
737761

0 commit comments

Comments
 (0)