import { FormControl } from '@angular/forms';
const alphanumericLetters = /^[0-9a-zA-Z\s]+$/; // /^[\w\s]+$/;
const alphabetLetters = /^[a-zA-Z\s]+$/;
const floatingNumbers = /^(?:\d*\.\d{1,2}|\d+)$/ ; // /^\d{1,8}(\.\d{1,4})+$/; // [0-9]+(\.[0-9]{1,2})
const specialCharacters = /^[-.,//0-9a-zA-Z\s]+$/;
const nospace = /^[^\s].*/;
const minNumber = /^[1-9][0-9]*$/;
const panCardNumber = /^[a-zA-Z]{5}[0-9]{4}[a-zA-Z]{1}$/;
const mobileNumber = /^[0][1-9]\d{8}$|^[5-9]\d{8}$/;
const emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/;
const solvezyEmail = /^[a-zA-Z0-9._-]+@[sS]+[oO]+[lL]+[vV]+[eE]+[zZ]+[yY]+\.[cC]+[oO]+[mM]+$/;
const numberValidator = (control: FormControl) => {
return isNaN(control.value) ? { invalid: true, numeric : true } : null;
};
const alphanumericValidator = (control: FormControl) => {
if (!control.value || control.value.match(alphanumericLetters)) {
return null;
} else {
return { invalid: true, alphanumeric : true };
}
};
const panCardNumberValidator = (control: FormControl) => {
if (!control.value || control.value.match(panCardNumber)) {
return null;
} else {
return { invalid: true, panNumber : true };
}
};
const mobileNumberValidator = (control: FormControl) => {
if (!control.value || control.value.match(mobileNumber)) {
return null;
} else {
return { invalid: true, mobNumber : true };
}
};
const emailValidator = (control: FormControl) => {
if (!control.value || control.value.match(emailPattern)) {
return null;
} else {
return { invalid: true, emailValid : true };
}
};
const solvezyemailValidator = (control: FormControl) => {
if (!control.value || control.value.match(solvezyEmail)) {
return null;
} else {
return { invalid: true, solvezyEmailValid : true };
}
};
const fltNumValidator = (control: FormControl) => {
if (control.value.match(floatingNumbers)) {
return null;
} else {
return { invalid: true, decimalValid: true };
}
};
const textOnlyValidator = (control: FormControl) => {
if (!control.value || control.value.match(alphabetLetters)) {
return null;
} else {
return { invalid: true, textOnly : true };
}
};
const splCharValidator = (control: FormControl) => {
if (control.value.match(specialCharacters)) {
return null;
} else {
return { invalid: true };
}
};
const minAmount = (control: FormControl) => {
if (!control.value || control.value.match(minNumber)) {
return null;
} else {
return { invalid: true };
}
};
const nospaceValidator = (control: FormControl) => {
return null;
};
const compareStrings = (c: FormControl) => {
const pass = c.get('new').value;
const confirm = c.get('confirm').value;
if (pass === confirm) {
return null;
} else {
return {invalid: true, mismatch: true};
}
};
export {
numberValidator,
alphanumericValidator,
textOnlyValidator,
fltNumValidator,
splCharValidator,
nospaceValidator,
minAmount,
panCardNumberValidator,
mobileNumberValidator,
emailValidator,
compareStrings,
solvezyemailValidator
};
PostedBy: pankaj_bhakre
No comments:
Post a Comment