UNPKG

@crispengari/random-verification-codes

Version:

This is a simple node.js/ts package that generates random verification codes.

30 lines (26 loc) 810 B
// A function that randomly generate a single integer export const generateInteger = (): Number => Math.floor(Math.random() * 100) % 10; // A function that generates the verification code as export const generateVerificationCode = async ( numberOfDigits: number = 5, allowZeroStart: boolean = true, returnAsString: boolean = true ): Promise<string | number> => { let digits: Number[] = []; while (true) { const next = generateInteger(); if (digits.length === numberOfDigits) { break; } if (next === 0 && allowZeroStart === false) { continue; } else { digits.push(next); } } digits = digits.sort(() => Math.random() - 0.5); return (await returnAsString) ? digits.join("") : Number.parseInt(digits.join("")); };