23 lines
806 B
TypeScript
23 lines
806 B
TypeScript
import { object, string } from 'yup';
|
|
|
|
const EMAIL_REGEX: RegExp =
|
|
/^(([^<>()[\]\\.,;:\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,}))$/;
|
|
|
|
export const registerSchema = object({
|
|
name: string().trim().min(1).required('required'),
|
|
email: string()
|
|
.trim()
|
|
.matches(EMAIL_REGEX, 'Expected a valid email')
|
|
.required('required'),
|
|
password: string().trim().min(12).max(32).required('required'),
|
|
});
|
|
|
|
export const loginSchema = object({
|
|
email: string()
|
|
.trim()
|
|
.matches(EMAIL_REGEX, 'Expected a valid email')
|
|
.required('required'),
|
|
// Don't include the min and max here to let bad actors waste their time
|
|
password: string().trim().required('required'),
|
|
});
|