1 import {AbstractControl, ValidationErrors} from '@angular/forms';
\r
3 export function inRangeValidator(in_range: number[]): ValidationErrors|null {
\r
4 return (control: AbstractControl): ValidationErrors => {
\r
5 const value = parseFloat(control.value);
\r
6 if (isNaN(value) || value > in_range[1] || value < in_range[0]) {
\r
19 export function greaterOrEqualValidator(max: string): ValidationErrors|null {
\r
20 return (control: AbstractControl): ValidationErrors => {
\r
21 const value = parseFloat(control.value);
\r
22 const maxValue: any = parseFloat(max);
\r
23 if (!isNaN(maxValue) && (isNaN(value) || value < maxValue)) {
\r
25 greater_or_equal: true
\r
28 greater_or_equal: true
\r
36 export function lessOrEqualValidator(min: string): ValidationErrors|null {
\r
37 return (control: AbstractControl): ValidationErrors => {
\r
38 const value = parseFloat(control.value);
\r
39 const minValue: any = parseFloat(min);
\r
40 if (!isNaN(minValue) && (isNaN(value) || value > minValue)) {
\r
53 export function greaterThanValidator(max: string): ValidationErrors|null {
\r
54 return (control: AbstractControl): ValidationErrors => {
\r
55 const value = parseFloat(control.value);
\r
56 const maxValue: any = parseFloat(max);
\r
57 if (!isNaN(maxValue) && (isNaN(value) || value <= maxValue)) {
\r
70 export function lessThanValidator(min: string): ValidationErrors|null {
\r
71 return (control: AbstractControl): ValidationErrors => {
\r
72 const value = parseFloat(control.value);
\r
73 const minValue: any = parseFloat(min);
\r
74 if (!isNaN(minValue) && (isNaN(value) || value >= minValue)) {
\r
87 export function equalValidator(value: any): ValidationErrors|null {
\r
88 return (control: AbstractControl): ValidationErrors => {
\r
89 if (control.value != value) {
\r
102 export function lengthValidator(length: number): ValidationErrors|null {
\r
103 return (control: AbstractControl): ValidationErrors => {
\r
104 if (control.value && control.value.length !== length) {
\r
105 control.setErrors({
\r
117 export function floatValidator(): ValidationErrors|null {
\r
118 return (control: AbstractControl): ValidationErrors => {
\r
119 let floatPattern = /^(-?\d+)(\.\d+)?$/;
\r
120 if (control.value && !floatPattern.test(control.value)) {
\r
121 control.setErrors({
\r
133 export function integerValidator(): ValidationErrors|null {
\r
134 return (control: AbstractControl): ValidationErrors => {
\r
135 let integerPattern = /^-?\d+$/;
\r
136 if (control.value && !integerPattern.test(control.value)) {
\r
137 control.setErrors({
\r