gerador-br
Version:
Gerador de Dados Fictícios - Brasil
35 lines (31 loc) • 1.21 kB
JavaScript
;
var dbCeps = require('../data/db-ceps.cjs');
var utils = require('../utils.cjs');
/**
* Gera um CEP aleatório.
*
* O CEP gerado pode ser formatado com máscara (xxxxx-xxx) ou apenas com os dígitos.
*
* @param {boolean} [mask=false] - Se `true`, o CEP será retornado com a máscara de formatação (xxxxx-xxx). Se `false`, o CEP será retornado apenas com os dígitos.
* @param {string} [state] - A sigla do estado para filtrar os CEPs. Se não fornecido, um CEP de qualquer estado será gerado.
* @returns {string} O CEP gerado.
* @example
* // CEP sem máscara
* console.log(cep()); // "12345678"
*
* // CEP com máscara
* console.log(cep(true)); // "12345-678"
*
* // CEP de São Paulo (SP) sem máscara
* console.log(cep(false, "SP")); // "01001000"
*
* // CEP de São Paulo (SP) com máscara
* console.log(cep(true, "SP")); // "01001-000"
*/
function cep(mask = false, state) {
const uf = state || utils.stateRand;
const fullAddress = dbCeps.filter((enderecos) => enderecos.uf === uf);
const sortAddress = fullAddress[Math.floor(Math.random() * fullAddress.length)];
return mask ? sortAddress.cep : sortAddress.cep.replace(/\D/g, '');
}
exports.cep = cep;