fluent-vuelidate
Version:
A fluent, typescript-first validation library for Vue3
15 lines (14 loc) • 623 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useIsEmail = void 0;
const types_1 = require("../types");
const useIsEmail = (model, propertyName, message) => {
const emailExpression = /^[a-zA-Z0-9.!#$%&’"*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$/;
const property = model[propertyName];
return {
error: message ? message : `${propertyName} is invalid.`,
field: propertyName,
state: property && emailExpression.test(property) ? types_1.FieldState.Valid : types_1.FieldState.Invalid,
};
};
exports.useIsEmail = useIsEmail;