UNPKG

yh-validator

Version:

A lightweight form validation library with modular functions

1 lines 686 B
'use strict';function h(e,o={}){let{minLength:s=8,minUppercase:n=1,minLowercase:a=1,minNumbers:r=1,minSpecialChars:i=1}=o,t=[];e.length<s&&t.push(`Password must be at least ${s} characters long.`);let c=(e.match(/[A-Z]/g)||[]).length,l=(e.match(/[a-z]/g)||[]).length,u=(e.match(/[0-9]/g)||[]).length,m=(e.match(/[!@#$%^&*(),.?":{}|<>_\-\\[\]]/g)||[]).length;return c<n&&t.push(`Password must contain at least ${n} uppercase letter(s).`),l<a&&t.push(`Password must contain at least ${a} lowercase letter(s).`),u<r&&t.push(`Password must contain at least ${r} number(s).`),m<i&&t.push(`Password must contain at least ${i} special character(s).`),{valid:t.length===0,errors:t}}exports.a=h;