cpf-cnpj-validator

Valida e formata strings de CPF ou CNPJ.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
cpf-cnpj-validator
200121.0.34 years ago6 years agoMinified + gzip package size for cpf-cnpj-validator in KB

Readme

cpf-cnpj-validator
Valida e formata strings de CPF ou CNPJ.
!travistravis-imagetravis-url !npmnpm-imagenpm-url 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 | |---------|--------------| | GERADORCPF | Interface para geração de números de CPF | | GERADORCNPJ | Interface para geração de números de CNPJ |

License

MIT
Copyright (c) 2020-present