payload-field-validators
Version:
Easy validation handlers for Payload CMS collection's fields
17 lines (15 loc) • 902 B
text/typescript
import {validateField, validateRegex} from '../index.js'
import * as v from 'valibot'
import { valibotCheck } from '../../utils/index.js'
/**
* Wrapper function for Email validation
* @param value the input to be checked
* @param message message to shown if input is invalid email address
*/
export function validateEmail(value: any, message?: string): any {
return validateRegex({
value,
regExp: /(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])/,
message: message || 'Not a valid Email address',
})
}