@ivandt/json-rules
Version:
Rule parsing engine for JSON rules
24 lines (23 loc) • 866 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.validatePhone = validatePhone;
const isMobilePhone_1 = __importDefault(require("validator/lib/isMobilePhone"));
/**
* Validates phone numbers using validator.js
* Users must import required locales themselves:
* import "validator/lib/locales/en-US";
*/
function validatePhone(value, config) {
if (typeof value !== "string") {
return false;
}
const options = {
strictMode: config.strict || false,
};
// Clean phone number by removing spaces, hyphens, and parentheses
const cleanPhone = value.replace(/[\s\-\(\)]/g, "");
return (0, isMobilePhone_1.default)(cleanPhone, config.locale, options);
}