File: /var/www/fintechfuel/src/utils/Validation.ts
import type { IForm } from '../type/form';
const Validation = ({
name,
value,
formState,
notMessage,
}: {
name: string;
value: string | boolean | null | number;
formState: IForm;
notMessage: boolean;
}) => {
switch (name) {
case 'name':
case 'price':
if (value === '') {
formState.response[name] = 'Required';
} else {
delete formState.response[name];
}
break;
// case 'message':
// if (notMessage) {
// break;
// }
// if (value === '') {
// formState.response[name] = 'Required';
// } else {
// delete formState.response[name];
// }
// break;
case 'email':
if (value === '') {
formState.response[name] = 'Required';
} 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] = 'Must be a valid email';
} else {
delete formState.response[name];
}
}
break;
case 'phone':
if (value === '') {
formState.response[name] = 'Required';
} else {
if (!/^[\d\+][\d\(\)\ -]{4,14}\d$/.test(String(value))) {
formState.response[name] = 'Not valid phone number';
} else {
delete formState.response[name];
}
}
break;
}
};
export default Validation;