UNPKG

form-genius

Version:

🚀 AI-powered, dynamic, and customizable form validation for Node.js. Supports unlimited fields, auto-detection, real-time validation, and AI-based corrections.

16 lines (13 loc) • 901 B
module.exports = function validatePassword(password, rules) { const minLength = rules.minLength || 8; const hasUpperCase = /[A-Z]/.test(password); const hasLowerCase = /[a-z]/.test(password); const hasNumber = /[0-9]/.test(password); const hasSpecialChar = /[!@#$%^&*]/.test(password); if (password.length < minLength) return { valid: false, message: `Password must be at least ${minLength} characters` }; if (!hasUpperCase) return { valid: false, message: "Password must contain at least one uppercase letter" }; if (!hasLowerCase) return { valid: false, message: "Password must contain at least one lowercase letter" }; if (!hasNumber) return { valid: false, message: "Password must contain at least one number" }; if (!hasSpecialChar) return { valid: false, message: "Password must contain at least one special character" }; return { valid: true }; };