@wldlab/yup-phone
Version:
Plugin for Yup who validate phone number with libphonenumber-js from Google
27 lines (17 loc) • 611 B
JavaScript
;
var Yup = require('yup');
var max = require('libphonenumber-js/max');
// vendors
const regex = /(\+)?(1)?[- ]?\(?[1-9]\d\d\)?[- ]?\d\d\d[- ]?\d\d\d\d/;
function yupPhone(countryCode, message) {
return this.matches(regex, message).test('phone', message, (value) => {
if (!regex.test(value)) return false;
const phoneNumber = max.parsePhoneNumberFromString(value, countryCode);
if (phoneNumber === 'undefined') return false;
return phoneNumber.isValid();
});
}
var yupPhone$1 = (() => {
Yup.addMethod(Yup.string, 'phone', yupPhone);
})();
module.exports = yupPhone$1;