File: /var/www/quadcode.com/builds/-DFbjr9L/0/foach/quadcode.com/src/utils/Validation.ts
import type { IForm } from '../type/form';
const Validation = ({ name, value, formState }: { name: string; value: string | boolean | null; formState: IForm }) => {
switch (name) {
case 'name':
if (value === '') {
formState.response[name] = '*Required field';
} else {
delete formState.response[name];
}
break;
case 'email':
if (value === '') {
formState.response[name] = '*Required field';
} else {
if (
!String(value).match(
/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
)
) {
formState.response[name] = '*Not valid email';
} else {
delete formState.response[name];
}
}
break;
case 'phone':
if (value === '') {
formState.response[name] = '*Required field';
} else {
if (!/^[\d\+][\d\(\)\ -]{4,14}\d$/.test(value)) {
formState.response[name] = '*Not valid phone number';
} else {
delete formState.response[name];
}
}
break;
case 'agreement':
if (value === undefined || !value) {
formState.response[name] = '*Required field';
} else {
delete formState.response[name];
}
break;
case 'token':
if (value === '') {
formState.response[name] = '*Required field';
} else {
delete formState.response[name];
}
break;
}
};
export default Validation;