ngx-mat-lib
Version:
A bunch of utilities and components to use in your Angular 7+ apps!
22 lines (21 loc) • 2.14 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
/**
* An array selection must have
* at least x items
* @param {?=} max
* @return {?}
*/
export function xmatMaxListSelection(max) {
if (max === void 0) { max = 1; }
return function (formArray) {
/** @type {?} */
var totalSelected = formArray.controls
.map(function (control) { return control.value; })
.reduce(function (prev, next) { return next ? prev + next : prev; }, 0);
return totalSelected > max ? { max: true } : null;
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1hdC1tYXgtbGlzdC1zZWxlY3Rpb24udmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1tYXQtbGliLyIsInNvdXJjZXMiOlsibGliL3ZhbGlkYXRvcnMveG1hdC1tYXgtbGlzdC1zZWxlY3Rpb24udmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBTUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEdBQWU7SUFBZixvQkFBQSxFQUFBLE9BQWU7SUFDaEQsT0FBTyxVQUFDLFNBQW9COztRQUN4QixJQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsUUFBUTthQUN2QyxHQUFHLENBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxPQUFPLENBQUMsS0FBSyxFQUFiLENBQWEsQ0FBQzthQUM3QixNQUFNLENBQUMsVUFBQyxJQUFJLEVBQUUsSUFBSSxJQUFLLE9BQUEsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQXpCLENBQXlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFdEQsT0FBTyxhQUFhLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0tBQ25ELENBQUM7Q0FFTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VmFsaWRhdG9yRm4sIEZvcm1BcnJheX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbi8qKlxuICogQW4gYXJyYXkgc2VsZWN0aW9uIG11c3QgaGF2ZVxuICogYXQgbGVhc3QgeCBpdGVtc1xuICovXG5leHBvcnQgZnVuY3Rpb24geG1hdE1heExpc3RTZWxlY3Rpb24obWF4OiBudW1iZXIgPSAxKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoZm9ybUFycmF5OiBGb3JtQXJyYXkpID0+IHtcbiAgICAgICAgY29uc3QgdG90YWxTZWxlY3RlZCA9IGZvcm1BcnJheS5jb250cm9sc1xuICAgICAgICAubWFwKGNvbnRyb2wgPT4gY29udHJvbC52YWx1ZSlcbiAgICAgICAgLnJlZHVjZSgocHJldiwgbmV4dCkgPT4gbmV4dCA/IHByZXYgKyBuZXh0IDogcHJldiwgMCk7XG5cbiAgICAgICAgcmV0dXJuIHRvdGFsU2VsZWN0ZWQgPiBtYXggPyB7bWF4OiB0cnVlfSA6IG51bGw7XG4gICAgfTtcblxufVxuXG4iXX0=