cpf-cnpj-validator
Valida e formata strings de CPF ou CNPJ.!travistravis-imagetravis-url !npmnpm-imagenpm-url
Requer:
Node `^8.0.0
`.@hapi/joi `
^17.1.0
`.Instalação:
npm i cpf-cnpj-validator -S
Uso:
:warning: NOTE: Os exemplos estão na versão es6, mas você pode está usando a sintaxe antiga como preferir.import { cpf } from 'cpf-cnpj-validator';
// or const { cpf } = require('cpf-cnpj-validator');
// gera um número de cpf
const num = cpf.generate();
// #=> 25634428777
// verifica se é um número válido
cpf.isValid(num);
// #=> true
// formata o número gerado
cpf.format(num);
// #=> 256.344.287-77
:warning: NOTE: Os módulos de cpf e cnpj possuem métodos nomeados de forma igual diferindo se apenas os resultados.
import { cnpj } from 'cpf-cnpj-validator';
// or const { cnpj } = require('cpf-cnpj-validator');
// gera um número de cpnj
const num = cnpj.generate();
// #=> 58403919000106
// verifica se é um número válido
cnpj.isValid(num);
// #=> true
// formata o número gerado
cnpj.format(num);
// #=> 58.403.919/0001-06
Veja mais exemplos práticos consultando os testes para CPF e CNPJ.
Joi
@hapi/joi é uma excelente biblioteca para validação de objetos javascript que permite a construção de mecanismos personalizados para tal. A biblioteca cpf-cnpj-validator disponibiliza um mecanismo personalizado para Joi capaz de validar se uma string pode ser, ou não, um número válido de CPF ou CNPJ:import validator from 'cpf-cnpj-validator';
// or
// const { validator } = require('cpf-cnpj-validator')
//
const Joi = require('@hapi/joi').extend(validator)
const cnpjSchema = Joi.document().cnpj();
const cpfSchema = Joi.document().cpf();
// valida o CPF
cpfSchema.validate('54271113107');
// #=> true
// valida o CNPJ
cnpjSchema.validate('38313108000107');
// #=> true
Maiores informações podem ser obtidas com os testes de validação 1 e validação 2.
Tests
npm test
:rocket: Serviços
| Site | Descrição | |---------|--------------| | GERADORCPF | Interface para geração de números de CPF | | GERADORCNPJ | Interface para geração de números de CNPJ |License
MITCopyright (c) 2020-present