export function maxTerm()

in src/app/customers/cases/form/detail/validator/max-term.validators.ts [30:54]


export function maxTerm(termRange: TermRange): ValidatorFn {
  return (group: FormGroup): ValidationErrors | null => {
    const term: number = parseInt(group.get('term').value, 10);

    if (isEmptyInputValue(term)) {
      return null;
    }

    const maxValues = getMaxValues(termRange.temporalUnit, termRange.maximum);

    const termTemporalUnit = group.get('termTemporalUnit').value;

    if (!isValid(term, termTemporalUnit, maxValues)) {
      return {
        maxTerm: {
          maxWeeks: maxValues.maxWeeks,
          maxMonths: maxValues.maxMonths,
          maxYears: maxValues.maxYears
        },
      };
    }

    return null;
  };
}