UNPKG

@join-com/rc-phone-input

Version:

React component for entering telephone numbers

36 lines 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getMinPhoneNumberLength = function (format) { return (format.replace(/^\+[\.]+[- ]?(\([\.]+\))?/, '').match(/\./g) || []).length; }; var DEFAULT_MIN_PHONE_NUMBER_LENGTH = 7; var resolvePhoneNumber = function (country, input) { if (input.length < 4) { return; } var cleanNumber = input.replace(/[^\d+]/g, ''); if (!cleanNumber) { return; } var minLength = country.format ? Math.min(exports.getMinPhoneNumberLength(country.format), DEFAULT_MIN_PHONE_NUMBER_LENGTH) : DEFAULT_MIN_PHONE_NUMBER_LENGTH; if (cleanNumber.length < minLength) { return; } if (input[0] === '+') { return cleanNumber; } return "+" + country.dialCode + cleanNumber; }; var isPhoneNumberValid = function (phoneNumber) { return new RegExp(/^[+]*([-\s\./0-9]*)+$/).test("" + (phoneNumber || '')); }; exports.validateNumber = function (country, input) { var phoneNumber = resolvePhoneNumber(country, input); if (phoneNumber && isPhoneNumberValid(phoneNumber)) { return phoneNumber; } return undefined; }; //# sourceMappingURL=helpers.js.map