Skip to content
Snippets Groups Projects
Verified Commit 188ac1fb authored by Defendi Alberto's avatar Defendi Alberto
Browse files

Moved isEmailValid

parent 53455fa1
No related branches found
No related tags found
No related merge requests found
export const isEmailValid = (email: string): boolean => {
/**
* The following is the RFC 5322 valid email regex
* Hinted from question https://stackoverflow.com/questions/201323/how-to-validate-an-email-address-using-a-regular-expression
* More on http://emailregex.com/
*/
// eslint-disable-next-line
const VALID_EMAIL_REGEX = /^(([^<>()\[\]\\.,;:\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,}))$/;
return VALID_EMAIL_REGEX.test(String(email).toLowerCase());
};
......@@ -2,6 +2,7 @@ import React, { useState } from 'react';
import { createStyles, makeStyles, Theme } from '@material-ui/core/styles';
import TextField from '@material-ui/core/TextField';
import Button from '@material-ui/core/Button';
import { isEmailValid } from './emailValidator';
const useStyles = makeStyles((theme: Theme) =>
createStyles({
......@@ -34,21 +35,10 @@ export const Form: React.FC = () => {
};
const [formValues, setFormValues] = useState<formData>(defaultValues);
const isEmailValid = (): boolean => {
/**
* The following is the RFC 5322 valid email regex
* Hinted from question https://stackoverflow.com/questions/201323/how-to-validate-an-email-address-using-a-regular-expression
* More on http://emailregex.com/
*/
// eslint-disable-next-line
const VALID_EMAIL_REGEX = /^(([^<>()\[\]\\.,;:\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,}))$/;
return VALID_EMAIL_REGEX.test(String(formValues.email).toLowerCase());
};
const handleSubmit = (event: React.FormEvent): void => {
event.preventDefault();
const errors: Array<string> = [];
if (!isEmailValid()) {
if (!isEmailValid(formValues.email)) {
errors.push('email');
console.log('Email address not valid');
} else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment