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