@unbrokensociety/validate-easy
Version:
A lightweight validation library with easy-to-use functions for email, phone number, and password validation
29 lines (22 loc) • 870 B
JavaScript
import { parsePhoneNumberFromString } from "libphonenumber-js";
function isEmail(email) {
if (typeof email !== "string") return false;
// RFC 5322 standarti bo‘yicha soddalashtirilgan regex
const regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return regex.test(email.trim());
}
function validatePhoneNumber(phone, region) {
try {
const phoneNumber = parsePhoneNumberFromString(phone, region);
return phoneNumber?.isValid() ?? false;
} catch {
return false;
}
}
function validatePassword(password) {
// Eng kamida 8 ta belgi, bitta katta harf, bitta kichik harf, bitta raqam va bitta maxsus belgi
const regex =
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/;
return regex.test(password);
}
export { isEmail, validatePassword, validatePhoneNumber }