ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
39 lines • 4.25 kB
JavaScript
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
import { Pipe } from '@angular/core';
import { sum } from 'ng-zorro-antd/core/util';
import * as i0 from "@angular/core";
export class NzAggregatePipe {
transform(value, method) {
if (!Array.isArray(value)) {
return value;
}
if (value.length === 0) {
return undefined;
}
switch (method) {
case 'sum':
return sum(value);
case 'avg':
return sum(value) / value.length;
case 'max':
return Math.max(...value);
case 'min':
return Math.min(...value);
default:
throw Error(`Invalid Pipe Arguments: Aggregate pipe doesn't support this type`);
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzAggregatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: NzAggregatePipe, isStandalone: true, name: "nzAggregate" }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzAggregatePipe, decorators: [{
type: Pipe,
args: [{
name: 'nzAggregate',
standalone: true
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnotYWdncmVnYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL3BpcGVzL256LWFnZ3JlZ2F0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXBELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFROUMsTUFBTSxPQUFPLGVBQWU7SUFDMUIsU0FBUyxDQUFDLEtBQWUsRUFBRSxNQUF1QjtRQUNoRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2QixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsUUFBUSxNQUFNLEVBQUUsQ0FBQztZQUNmLEtBQUssS0FBSztnQkFDUixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNuQyxLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDNUIsS0FBSyxLQUFLO2dCQUNSLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQzVCO2dCQUNFLE1BQU0sS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztJQUNILENBQUM7OEdBdEJVLGVBQWU7NEdBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFKM0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsYUFBYTtvQkFDbkIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2dpdGh1Yi5jb20vTkctWk9SUk8vbmctem9ycm8tYW50ZC9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBzdW0gfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdXRpbCc7XG5cbmV4cG9ydCB0eXBlIEFnZ3JlZ2F0ZU1ldGhvZCA9ICdzdW0nIHwgJ21heCcgfCAnbWluJyB8ICdhdmcnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICduekFnZ3JlZ2F0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTnpBZ2dyZWdhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyW10sIG1ldGhvZDogQWdncmVnYXRlTWV0aG9kKTogdW5kZWZpbmVkIHwgbnVtYmVyIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKG1ldGhvZCkge1xuICAgICAgY2FzZSAnc3VtJzpcbiAgICAgICAgcmV0dXJuIHN1bSh2YWx1ZSk7XG4gICAgICBjYXNlICdhdmcnOlxuICAgICAgICByZXR1cm4gc3VtKHZhbHVlKSAvIHZhbHVlLmxlbmd0aDtcbiAgICAgIGNhc2UgJ21heCc6XG4gICAgICAgIHJldHVybiBNYXRoLm1heCguLi52YWx1ZSk7XG4gICAgICBjYXNlICdtaW4nOlxuICAgICAgICByZXR1cm4gTWF0aC5taW4oLi4udmFsdWUpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWQgUGlwZSBBcmd1bWVudHM6IEFnZ3JlZ2F0ZSBwaXBlIGRvZXNuJ3Qgc3VwcG9ydCB0aGlzIHR5cGVgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==