cpf-cnpj-validator

Valida e formata strings de CPF ou CNPJ.

Usage no npm install needed!

<script type="module">
  import cpfCnpjValidator from 'https://cdn.skypack.dev/cpf-cnpj-validator';
</script>

README

cpf-cnpj-validator

Valida e formata strings de CPF ou CNPJ.

travis npm GitHub top language GitHub last commit

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
GERADOR_CPF Interface para geração de números de CPF
GERADOR_CNPJ Interface para geração de números de CNPJ

License

MIT

Copyright (c) 2020-present