@@ -31,6 +31,7 @@ import { SortingDirection } from '../../data-operations/sorting-expression.inter
31
31
import { DropPosition } from '../moving/moving.service' ;
32
32
import { DatePipe } from '@angular/common' ;
33
33
import { IgxGridGroupByRowComponent } from './groupby-row.component' ;
34
+ import { IColumnPipeArgs } from 'igniteui-angular' ;
34
35
35
36
describe ( 'IgxGrid - Summaries #grid' , ( ) => {
36
37
@@ -154,7 +155,7 @@ describe('IgxGrid - Summaries #grid', () => {
154
155
it ( 'should properly render custom summaries' , ( ) => {
155
156
const summaryRow = GridSummaryFunctions . getRootSummaryRow ( fixture ) ;
156
157
GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 3 , [ 'Count' , 'Sum' , 'Avg' ] , [ '10' , '39,004' , '3,900.4' ] ) ;
157
- GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' ] , [ '5/17/ 1990' ] ) ;
158
+ GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' , 'Items InStock' ] , [ 'May 17, 1990' , '1337 '] ) ;
158
159
159
160
grid . filter ( 'UnitsInStock' , '0' , IgxNumberFilteringOperand . instance ( ) . condition ( 'lessThan' ) , true ) ;
160
161
fixture . detectChanges ( ) ;
@@ -181,7 +182,7 @@ describe('IgxGrid - Summaries #grid', () => {
181
182
it ( 'should change custom summaries at runtime' , ( ) => {
182
183
const summaryRow = GridSummaryFunctions . getRootSummaryRow ( fixture ) ;
183
184
GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 3 , [ 'Count' , 'Sum' , 'Avg' ] , [ '10' , '39,004' , '3,900.4' ] ) ;
184
- GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' ] , [ '5/17/ 1990' ] ) ;
185
+ GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' , 'Items InStock' ] , [ 'May 17, 1990' , '1337 '] ) ;
185
186
GridSummaryFunctions . verifyVisibleSummariesHeight ( fixture , 3 , grid . defaultSummaryHeight ) ;
186
187
grid . getColumnByName ( 'UnitsInStock' ) . summaries = fixture . componentInstance . dealsSummaryMinMax ;
187
188
fixture . detectChanges ( ) ;
@@ -192,20 +193,20 @@ describe('IgxGrid - Summaries #grid', () => {
192
193
it ( 'should be able to access alldata from each summary' , ( ) => {
193
194
const summaryRow = GridSummaryFunctions . getRootSummaryRow ( fixture ) ;
194
195
GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 3 , [ 'Count' , 'Sum' , 'Avg' ] , [ '10' , '39,004' , '3,900.4' ] ) ;
195
- GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' ] , [ '5/17/ 1990' ] ) ;
196
+ GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' , 'Items InStock' ] , [ 'May 17, 1990' , '1337 '] ) ;
196
197
GridSummaryFunctions . verifyVisibleSummariesHeight ( fixture , 3 , grid . defaultSummaryHeight ) ;
197
198
grid . getColumnByName ( 'UnitsInStock' ) . summaries = fixture . componentInstance . inStockSummary ;
198
199
fixture . detectChanges ( ) ;
199
200
200
201
GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 3 , [ 'Count' , 'Min' , 'Max' , 'Sum' , 'Avg' , 'Items InStock' ] ,
201
- [ '10' , '0' , '20000 ' , '39004 ' , '3900 .4' , '6' ] ) ;
202
- GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' ] , [ '5/17/ 1990' ] ) ;
202
+ [ '10' , '0' , '20,000 ' , '39,004 ' , '3,900 .4' , '6' ] ) ;
203
+ GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 4 , [ 'Earliest' , 'Items InStock' ] , [ 'May 17, 1990' , '1337 '] ) ;
203
204
204
205
grid . getCellByColumn ( 4 , 'InStock' ) . update ( true ) ;
205
206
fixture . detectChanges ( ) ;
206
207
207
208
GridSummaryFunctions . verifyColumnSummaries ( summaryRow , 3 , [ 'Count' , 'Min' , 'Max' , 'Sum' , 'Avg' , 'Items InStock' ] ,
208
- [ '10' , '0' , '20000 ' , '39004 ' , '3900 .4' , '7' ] ) ;
209
+ [ '10' , '0' , '20,000 ' , '39,004 ' , '3,900 .4' , '7' ] ) ;
209
210
210
211
grid . filter ( 'UnitsInStock' , 0 , IgxNumberFilteringOperand . instance ( ) . condition ( 'equals' ) ) ;
211
212
fixture . detectChanges ( ) ;
@@ -292,7 +293,7 @@ describe('IgxGrid - Summaries #grid', () => {
292
293
expect ( grid . hasSummarizedColumns ) . toBe ( false ) ;
293
294
} ) ;
294
295
295
- it ( 'should change summary operand through grid API ' , ( ) => {
296
+ it ( 'should change summary operand through grid API' , ( ) => {
296
297
grid . enableSummaries ( [ { fieldName : 'UnitsInStock' , customSummary : fix . componentInstance . dealsSummaryMinMax } ] ) ;
297
298
fix . detectChanges ( ) ;
298
299
@@ -2442,11 +2443,6 @@ class DealsSummary extends IgxNumberSummaryOperand {
2442
2443
public operate ( summaries ?: any [ ] ) : IgxSummaryResult [ ] {
2443
2444
const result = super . operate ( summaries ) . filter ( ( obj ) => {
2444
2445
if ( obj . key === 'average' || obj . key === 'sum' || obj . key === 'count' ) {
2445
- const summaryResult = obj . summaryResult ;
2446
- // apply formatting to float numbers
2447
- if ( Number ( summaryResult ) === summaryResult ) {
2448
- obj . summaryResult = summaryResult . toLocaleString ( 'en-us' , { maximumFractionDigits : 2 } ) ;
2449
- }
2450
2446
return obj ;
2451
2447
}
2452
2448
} ) ;
@@ -2462,11 +2458,6 @@ class DealsSummaryMinMax extends IgxNumberSummaryOperand {
2462
2458
public operate ( summaries ?: any [ ] ) : IgxSummaryResult [ ] {
2463
2459
const result = super . operate ( summaries ) . filter ( ( obj ) => {
2464
2460
if ( obj . key === 'min' || obj . key === 'max' ) {
2465
- const summaryResult = obj . summaryResult ;
2466
- // apply formatting to float numbers
2467
- if ( Number ( summaryResult ) === summaryResult ) {
2468
- obj . summaryResult = summaryResult . toLocaleString ( 'en-us' , { maximumFractionDigits : 2 } ) ;
2469
- }
2470
2461
return obj ;
2471
2462
}
2472
2463
} ) ;
@@ -2482,11 +2473,14 @@ class EarliestSummary extends IgxDateSummaryOperand {
2482
2473
public operate ( summaries ?: any [ ] ) : IgxSummaryResult [ ] {
2483
2474
const result = super . operate ( summaries ) . filter ( ( obj ) => {
2484
2475
if ( obj . key === 'earliest' ) {
2485
- const date = obj . summaryResult ? new Date ( obj . summaryResult ) : undefined ;
2486
- obj . summaryResult = date ? new Intl . DateTimeFormat ( 'en-US' ) . format ( date ) : undefined ;
2487
2476
return obj ;
2488
2477
}
2489
2478
} ) ;
2479
+ result . push ( {
2480
+ key : 'test' ,
2481
+ label : 'Items InStock' ,
2482
+ summaryResult : 1337
2483
+ } ) ;
2490
2484
return result ;
2491
2485
}
2492
2486
}
@@ -2541,14 +2535,15 @@ class AllDataAvgSummary extends IgxSummaryOperand {
2541
2535
2542
2536
@Component ( {
2543
2537
template : `
2544
- <igx-grid #grid1 [data]="data" [primaryKey]="'ProductID'" [allowFiltering]="true">
2538
+ <igx-grid #grid1 [data]="data" [primaryKey]="'ProductID'" [locale]="locale" [ allowFiltering]="true">
2545
2539
<igx-column field="ProductID" header="Product ID">
2546
2540
</igx-column>
2547
2541
<igx-column field="ProductName" [hasSummary]="true">
2548
2542
</igx-column>
2549
2543
<igx-column field="InStock" [dataType]="'boolean'" [hasSummary]="true">
2550
2544
</igx-column>
2551
- <igx-column field="UnitsInStock" [dataType]="'number'" [hasSummary]="true" [summaries]="dealsSummary">
2545
+ <igx-column field="UnitsInStock" [dataType]="'number'" [hasSummary]="true" [pipeArgs]="formatOptions"
2546
+ [summaries]="dealsSummary">
2552
2547
</igx-column>
2553
2548
<igx-column field="OrderDate" width="200px" [dataType]="'date'" [sortable]="true" [hasSummary]="true"
2554
2549
[summaries]="earliest">
@@ -2566,5 +2561,9 @@ export class CustomSummariesComponent {
2566
2561
public earliest = EarliestSummary ;
2567
2562
public inStockSummary = InStockSummary ;
2568
2563
public allDataAvgSummary = AllDataAvgSummary ;
2564
+ public formatOptions : IColumnPipeArgs = {
2565
+ digitsInfo : '1.0-2'
2566
+ } ;
2567
+ public locale = 'en-US' ;
2569
2568
}
2570
2569
0 commit comments