UNPKG

simple-pass-generator

Version:

Easy-to-use random password generator

1 lines 754 B
function getRandomPass(l,...t){const s={n:"0123456789",l:"aeiouybcdfghjklmnpqrstvwxzAEIOUYBCDFGHJKLMNPQRSTVWXZ",s:"!#$%&()*+,-./:;<=>?@[]^_`{|}~"};if(typeof l!=="number"||l<=0)throw new Error("ERROR! Length must be a positive number.");if(t.length===0)throw new Error("ERROR! At least one type of characters must be specified.");let v="";for(const e of t)if(e==="letters"||e==="string")v+=s.l;else if(e==="numbers"||e==="number")v+=s.n;else if(e==="symbols"||e==="symbol"||e==="char")v+=s.s;else throw new Error(`ERROR! Invalid character type: ${e}. Must be 'letters', 'string', 'numbers', 'number', 'symbols', 'symbol' or 'char'.`);let p="";for(let i=0;i<l;i++){const r=Math.floor(Math.random()*v.length);p+=v[r]}return p}module.exports={getRandomPass};