Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

validation-br

Package Overview
Dependencies
Maintainers
0
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

validation-br - npm Package Compare versions

Comparing version 1.5.1 to 1.5.2

33

dist/cnpj.d.ts

@@ -5,8 +5,14 @@ /**

*
* A partir da Nota Técnica conjunta COCAD/SUARA/RFB nº 49 de 14 de maio de 2024, CNPJ passa
* a poder ser criado com letras e números, ao invés de apenas números. Esta alteração entra
* em vigor em 2026.
*
*
* @doc
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
* - CNPJ deve possuir 14 dígitos no formato AA.AAA.AAA/AAAA-NN, onde A representa letras
* ou números e N representa números (Nota Técnica conjunta COCAD/SUARA/RFB nº 49 de 14 de maio de 2024)
*
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
* - Os caracteres 1 a 8 são a identificação da empresa definida pela Receita Federal. Podem ser letras ou números
*
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
* - Os caracteres 9 a 12 são a identificação das filiais da empresa. Podendo ser letras ou números
*

@@ -21,2 +27,23 @@ * - Os caracteres 13 e 14 são os dígitos verificadores

*
*
* 2.1) Conversão dos números para tabela ASCII
* Converte os caracteres do CNPJ em valores numéricos, mesmo que alguns deles
* sejam numéricos. A conversão será baseada na tabela ASCII
*
* Tabela ASCII
* 0 = 48 1 = 49 2 = 50 3 = 51 4 = 52
* 5 = 53 6 = 54 7 = 55 8 = 56 9 = 57
* A = 65 B = 66 C = 67 D = 68 E = 69
* F = 70 G = 71 H = 72 I = 73 J = 74
* K = 75 L = 76 M = 77 N = 78 O = 79
* P = 80 Q = 81 R = 82 S = 83 T = 84
* U = 85 V = 86 W = 87 X = 88 Y = 89
* Z = 90
*
* Ao converter cada dígito do CNPJ para o seu equivalente na tabela ASCII, subtraia de 48
* para obter o número que será multiplicado.
* Como o "0" é 48 e deve-se subtrair de 48, não há mudanças nos números.
*
*
*
* 2) Cálculo do primeiro DV.

@@ -23,0 +50,0 @@ *

@@ -6,8 +6,14 @@ "use strict";

*
* A partir da Nota Técnica conjunta COCAD/SUARA/RFB nº 49 de 14 de maio de 2024, CNPJ passa
* a poder ser criado com letras e números, ao invés de apenas números. Esta alteração entra
* em vigor em 2026.
*
*
* @doc
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
* - CNPJ deve possuir 14 dígitos no formato AA.AAA.AAA/AAAA-NN, onde A representa letras
* ou números e N representa números (Nota Técnica conjunta COCAD/SUARA/RFB nº 49 de 14 de maio de 2024)
*
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
* - Os caracteres 1 a 8 são a identificação da empresa definida pela Receita Federal. Podem ser letras ou números
*
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
* - Os caracteres 9 a 12 são a identificação das filiais da empresa. Podendo ser letras ou números
*

@@ -22,2 +28,23 @@ * - Os caracteres 13 e 14 são os dígitos verificadores

*
*
* 2.1) Conversão dos números para tabela ASCII
* Converte os caracteres do CNPJ em valores numéricos, mesmo que alguns deles
* sejam numéricos. A conversão será baseada na tabela ASCII
*
* Tabela ASCII
* 0 = 48 1 = 49 2 = 50 3 = 51 4 = 52
* 5 = 53 6 = 54 7 = 55 8 = 56 9 = 57
* A = 65 B = 66 C = 67 D = 68 E = 69
* F = 70 G = 71 H = 72 I = 73 J = 74
* K = 75 L = 76 M = 77 N = 78 O = 79
* P = 80 Q = 81 R = 82 S = 83 T = 84
* U = 85 V = 86 W = 87 X = 88 Y = 89
* Z = 90
*
* Ao converter cada dígito do CNPJ para o seu equivalente na tabela ASCII, subtraia de 48
* para obter o número que será multiplicado.
* Como o "0" é 48 e deve-se subtrair de 48, não há mudanças nos números.
*
*
*
* 2) Cálculo do primeiro DV.

@@ -86,7 +113,9 @@ *

}
function fake(options = false) {
const num = (0, utils_1.fakeNumber)(12, true);
function fake(input = false) {
const options = typeof input === 'boolean'
? { withMask: input, alphanumeric: true }
: { withMask: false, alphanumeric: true, ...input };
const num = (0, utils_1.fakeNumber)(12, true, options.alphanumeric);
const cnpj = `${num}${dv(num)}`;
const withMask = typeof options === 'boolean' ? options : options.withMask;
if (withMask)
if (options.withMask)
return mask(cnpj);

@@ -93,0 +122,0 @@ return cnpj;

4

dist/utils.d.ts

@@ -33,3 +33,3 @@ /**

*/
export declare function sumElementsByMultipliers(value: string, multiplier: string | number[]): number;
export declare function sumElementsByMultipliers(value: string, multiplier: number[]): number;
/**

@@ -47,3 +47,3 @@ * fakeNumber()

*/
export declare function fakeNumber(length: number, forceLength?: boolean): number | string;
export declare function fakeNumber(length: number, forceLength?: boolean, isAlpha?: boolean): string;
/**

@@ -50,0 +50,0 @@ * Limpa um número informado, retirando caracteres diferentes de números,

@@ -53,5 +53,2 @@ "use strict";

function sumElementsByMultipliers(value, multiplier) {
if (!Array.isArray(multiplier)) {
multiplier = [...multiplier].map((n) => Number(n));
}
return multiplier.reduce((accu, curr, i) => accu + curr * Number(value[i]), 0);

@@ -71,7 +68,11 @@ }

*/
function fakeNumber(length, forceLength = false) {
const value = Math.floor(Math.random() * 10 ** length);
function fakeNumber(length, forceLength = false, isAlpha = false) {
let value;
if (isAlpha)
value = Math.round(Math.random() * 36 ** length).toString(36).toLocaleUpperCase();
else
value = Math.floor(Math.random() * 10 ** length).toString();
if (forceLength)
return String(value).padStart(length, '0');
return +value;
return String(value);
}

@@ -78,0 +79,0 @@ /**

{
"name": "validation-br",
"description": "Brazilian personal documents validation - cpf, cnpj, titulo, pis/pasep, cnh, renavam, processos judiciais, protocolo federal, código de rastreamento dos correios",
"version": "1.5.1",
"version": "1.5.2",
"main": "dist/index.js",

@@ -14,3 +14,4 @@ "types": "./dist/index.d.ts",

"test:coverage": "jest --collectCoverageFrom=src/**/*.ts --coverage",
"format": "prettier --write \"./**/*.{js,ts,json}\""
"format": "prettier --write \"./**/*.{js,ts,json}\"",
"prepublish": "npm run build"
},

@@ -17,0 +18,0 @@ "lint-staged": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc