File: //var/www/quadcode.com/src/utils/Validation.ts
import { t } from '$lib/translations';
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] = `*${t.get('Required field')}`;
} else {
delete formState.response[name];
}
break;
case 'first_name':
if (value === '') {
formState.response[name] = `*${t.get('Required field')}`;
} else {
delete formState.response[name];
}
break;
case 'email':
if (value === '') {
formState.response[name] = `*${t.get('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] = `*${t.get('Not valid email')}`;
} else {
delete formState.response[name];
}
}
break;
case 'phone':
if (value === '') {
formState.response[name] = `*${t.get('Required field')}`;
} else {
if (!/^[\d\+][\d\(\)\ -]{4,14}\d$/.test(value)) {
formState.response[name] = `*${t.get('Not valid phone number')}`;
} else {
delete formState.response[name];
}
}
break;
case 'agreement':
if (value === undefined || !value) {
formState.response[name] = `*${t.get('Required field')}`;
} else {
delete formState.response[name];
}
break;
case 'terms_agree':
if (value === undefined || !value) {
formState.response[name] = `*${t.get('Required field')}`;
} else {
delete formState.response[name];
}
break;
case 'token':
if (value === '') {
formState.response[name] = `*${t.get('Required field')}`;
} else {
delete formState.response[name];
}
break;
}
};
export default Validation;