Summary Table
Categories |
Total Count |
PII |
0 |
URL |
0 |
DNS |
0 |
EKL |
0 |
IP |
0 |
PORT |
0 |
VsID |
0 |
CF |
0 |
AI |
0 |
VPD |
0 |
PL |
0 |
Other |
0 |
File Content
import {
FormGroup,
ValidationErrors,
ValidatorFn,
Validators
} from '@angular/forms';
export const atLeastOne = (validator: ValidatorFn) => (
group: FormGroup
): ValidationErrors | null => {
const hasAtLeastOne =
group &&
group.controls &&
Object.keys(group.controls).some(k => !validator(group.controls[k]));
// validator(group.controls[k]) --> null if no error --> false --> true
// --> { required: true } if error --> true --> false
// ! in front of the whole thing
return hasAtLeastOne
? null
: {
atLeastOne: true
};
};