validation-br 1.4.4 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/test.yml +6 -6
- package/.prettierrc.js +1 -1
- package/dist/cnh.d.ts +91 -91
- package/dist/cnh.js +138 -133
- package/dist/cnh.js.map +1 -1
- package/dist/cnh.test.d.ts +1 -1
- package/dist/cnpj.d.ts +87 -82
- package/dist/cnpj.js +150 -124
- package/dist/cnpj.js.map +1 -1
- package/dist/cnpj.test.d.ts +1 -1
- package/dist/cpf.d.ts +99 -99
- package/dist/cpf.js +146 -141
- package/dist/cpf.js.map +1 -1
- package/dist/cpf.test.d.ts +1 -1
- package/dist/data/ValidationBRError.d.ts +6 -6
- package/dist/data/ValidationBRError.js +9 -9
- package/dist/data/ValidationBRError.js.map +1 -1
- package/dist/index.d.ts +21 -21
- package/dist/index.js +41 -32
- package/dist/index.js.map +1 -1
- package/dist/index.test.d.ts +1 -1
- package/dist/judicialProcess.d.ts +126 -126
- package/dist/judicialProcess.js +189 -184
- package/dist/judicialProcess.js.map +1 -1
- package/dist/judicialProcess.test.d.ts +1 -1
- package/dist/nup17.d.ts +102 -102
- package/dist/nup17.js +154 -149
- package/dist/nup17.js.map +1 -1
- package/dist/nup17.test.d.ts +1 -1
- package/dist/pisPasep.d.ts +81 -81
- package/dist/pisPasep.js +125 -120
- package/dist/pisPasep.js.map +1 -1
- package/dist/pisPasep.test.d.ts +1 -1
- package/dist/postalCode.d.ts +83 -83
- package/dist/postalCode.js +135 -130
- package/dist/postalCode.js.map +1 -1
- package/dist/postalCode.test.d.ts +1 -1
- package/dist/renavam.d.ts +75 -75
- package/dist/renavam.js +121 -116
- package/dist/renavam.js.map +1 -1
- package/dist/renavam.test.d.ts +1 -1
- package/dist/tituloEleitor.d.ts +93 -93
- package/dist/tituloEleitor.js +142 -137
- package/dist/tituloEleitor.js.map +1 -1
- package/dist/tituloEleitor.test.d.ts +1 -1
- package/dist/utils-applyMask.test.d.ts +1 -1
- package/dist/utils-checkRepeatedSequence.test.d.ts +1 -0
- package/dist/utils-clearValue.test.d.ts +1 -1
- package/dist/utils-fakeNumber.test.d.ts +1 -1
- package/dist/utils-insertAtPosition.test.d.ts +1 -1
- package/dist/utils-invalidListGenerator.test.d.ts +1 -1
- package/dist/utils-randomLetter.test.d.ts +1 -1
- package/dist/utils-removeFromPosition.test.d.ts +1 -1
- package/dist/utils-sumElementsByMultipliers.test.d.ts +1 -1
- package/dist/utils-sumToDV.test.d.ts +1 -1
- package/dist/utils.d.ts +131 -133
- package/dist/utils.js +188 -190
- package/dist/utils.js.map +1 -1
- package/docs/Nota.COCAD.SUARA.2024.05.49.CNPJ.Alfanumerico-1.pdf +0 -0
- package/{.eslintrc.js → eslint.config.js} +39 -39
- package/jest.config.js +1 -6
- package/package.json +6 -27
- package/readme.md +42 -27
- package/.eslintcache +0 -1
- package/.eslintignore +0 -2
package/dist/cnpj.d.ts
CHANGED
|
@@ -1,82 +1,87 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* isCNPJ()
|
|
3
|
-
* Calcula se um CNPJ é válido
|
|
4
|
-
*
|
|
5
|
-
* @doc
|
|
6
|
-
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
|
|
7
|
-
*
|
|
8
|
-
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
9
|
-
*
|
|
10
|
-
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
|
|
11
|
-
*
|
|
12
|
-
* - Os caracteres 13 e 14 são os dígitos verificadores
|
|
13
|
-
*
|
|
14
|
-
* 1) Partes do número
|
|
15
|
-
* _______________________________ _______________ _______
|
|
16
|
-
* | Número | Filiais | DV |
|
|
17
|
-
* | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
|
|
18
|
-
* |_______________________________|_______________|_______|
|
|
19
|
-
*
|
|
20
|
-
* 2) Cálculo do primeiro DV.
|
|
21
|
-
*
|
|
22
|
-
* - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
23
|
-
*
|
|
24
|
-
* 1 1 2 2 2 3 3 3 0 0 0 1
|
|
25
|
-
* x x x x x x x x x x x x
|
|
26
|
-
* 5 4 3 2 9 8 7 6 5 4 3 2
|
|
27
|
-
* = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
|
|
28
|
-
*
|
|
29
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
30
|
-
* 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
|
|
31
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
32
|
-
*
|
|
33
|
-
* 3) Cálculo do segundo DV.
|
|
34
|
-
*
|
|
35
|
-
* - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
|
|
36
|
-
* números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
|
|
37
|
-
*
|
|
38
|
-
* 1 1 2 2 2 3 3 3 0 0 0 1 8
|
|
39
|
-
* x x x x x x x x x x x x x
|
|
40
|
-
* 6 5 4 3 2 9 8 7 6 5 4 3 2
|
|
41
|
-
* = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
|
|
42
|
-
*
|
|
43
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
44
|
-
* 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
|
|
45
|
-
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
46
|
-
*
|
|
47
|
-
* Fonte: http://www.macoratti.net/alg_cnpj.htm
|
|
48
|
-
*
|
|
49
|
-
* @param {String} value Título eleitoral
|
|
50
|
-
* @returns {Boolean}
|
|
51
|
-
*/
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
*
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
*
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
*
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
1
|
+
/**
|
|
2
|
+
* isCNPJ()
|
|
3
|
+
* Calcula se um CNPJ é válido
|
|
4
|
+
*
|
|
5
|
+
* @doc
|
|
6
|
+
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
|
|
7
|
+
*
|
|
8
|
+
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
9
|
+
*
|
|
10
|
+
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
|
|
11
|
+
*
|
|
12
|
+
* - Os caracteres 13 e 14 são os dígitos verificadores
|
|
13
|
+
*
|
|
14
|
+
* 1) Partes do número
|
|
15
|
+
* _______________________________ _______________ _______
|
|
16
|
+
* | Número | Filiais | DV |
|
|
17
|
+
* | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
|
|
18
|
+
* |_______________________________|_______________|_______|
|
|
19
|
+
*
|
|
20
|
+
* 2) Cálculo do primeiro DV.
|
|
21
|
+
*
|
|
22
|
+
* - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
23
|
+
*
|
|
24
|
+
* 1 1 2 2 2 3 3 3 0 0 0 1
|
|
25
|
+
* x x x x x x x x x x x x
|
|
26
|
+
* 5 4 3 2 9 8 7 6 5 4 3 2
|
|
27
|
+
* = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
|
|
28
|
+
*
|
|
29
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
30
|
+
* 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
|
|
31
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
32
|
+
*
|
|
33
|
+
* 3) Cálculo do segundo DV.
|
|
34
|
+
*
|
|
35
|
+
* - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
|
|
36
|
+
* números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
|
|
37
|
+
*
|
|
38
|
+
* 1 1 2 2 2 3 3 3 0 0 0 1 8
|
|
39
|
+
* x x x x x x x x x x x x x
|
|
40
|
+
* 6 5 4 3 2 9 8 7 6 5 4 3 2
|
|
41
|
+
* = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
|
|
42
|
+
*
|
|
43
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
44
|
+
* 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
|
|
45
|
+
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
46
|
+
*
|
|
47
|
+
* Fonte: http://www.macoratti.net/alg_cnpj.htm
|
|
48
|
+
*
|
|
49
|
+
* @param {String} value Título eleitoral
|
|
50
|
+
* @returns {Boolean}
|
|
51
|
+
*/
|
|
52
|
+
type FakeInput = {
|
|
53
|
+
withMask?: boolean;
|
|
54
|
+
alphanumeric?: boolean;
|
|
55
|
+
};
|
|
56
|
+
export declare function dv(value: string | number): string;
|
|
57
|
+
/**
|
|
58
|
+
* Aplica uma máscara ao número informado
|
|
59
|
+
*
|
|
60
|
+
* @param {String} value Número de Processo
|
|
61
|
+
* @returns {String} Valor com a máscara
|
|
62
|
+
*/
|
|
63
|
+
export declare function mask(value: string | number): string;
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
*
|
|
67
|
+
*/
|
|
68
|
+
export declare function fake(options?: FakeInput): string;
|
|
69
|
+
export declare function fake(withMask?: boolean): string;
|
|
70
|
+
/**
|
|
71
|
+
* validateOrFail()
|
|
72
|
+
* Valida se um número é válido e
|
|
73
|
+
* retorna uma exceção se não estiver
|
|
74
|
+
*
|
|
75
|
+
* @param {String|Number} value Número a ser validado
|
|
76
|
+
* @returns {Boolean}
|
|
77
|
+
*/
|
|
78
|
+
export declare function validateOrFail(value: string | number): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* validate()
|
|
81
|
+
* Valida se um número é válido
|
|
82
|
+
*
|
|
83
|
+
* @param {String|Number} value Número a ser validado
|
|
84
|
+
* @returns {Boolean}
|
|
85
|
+
*/
|
|
86
|
+
export declare function validate(value: string | number): boolean;
|
|
87
|
+
export default validate;
|
package/dist/cnpj.js
CHANGED
|
@@ -1,125 +1,151 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* isCNPJ()
|
|
4
|
-
* Calcula se um CNPJ é válido
|
|
5
|
-
*
|
|
6
|
-
* @doc
|
|
7
|
-
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
|
|
8
|
-
*
|
|
9
|
-
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
10
|
-
*
|
|
11
|
-
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
|
|
12
|
-
*
|
|
13
|
-
* - Os caracteres 13 e 14 são os dígitos verificadores
|
|
14
|
-
*
|
|
15
|
-
* 1) Partes do número
|
|
16
|
-
* _______________________________ _______________ _______
|
|
17
|
-
* | Número | Filiais | DV |
|
|
18
|
-
* | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
|
|
19
|
-
* |_______________________________|_______________|_______|
|
|
20
|
-
*
|
|
21
|
-
* 2) Cálculo do primeiro DV.
|
|
22
|
-
*
|
|
23
|
-
* - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
24
|
-
*
|
|
25
|
-
* 1 1 2 2 2 3 3 3 0 0 0 1
|
|
26
|
-
* x x x x x x x x x x x x
|
|
27
|
-
* 5 4 3 2 9 8 7 6 5 4 3 2
|
|
28
|
-
* = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
|
|
29
|
-
*
|
|
30
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
31
|
-
* 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
|
|
32
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
33
|
-
*
|
|
34
|
-
* 3) Cálculo do segundo DV.
|
|
35
|
-
*
|
|
36
|
-
* - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
|
|
37
|
-
* números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
|
|
38
|
-
*
|
|
39
|
-
* 1 1 2 2 2 3 3 3 0 0 0 1 8
|
|
40
|
-
* x x x x x x x x x x x x x
|
|
41
|
-
* 6 5 4 3 2 9 8 7 6 5 4 3 2
|
|
42
|
-
* = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
|
|
43
|
-
*
|
|
44
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
45
|
-
* 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
|
|
46
|
-
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
47
|
-
*
|
|
48
|
-
* Fonte: http://www.macoratti.net/alg_cnpj.htm
|
|
49
|
-
*
|
|
50
|
-
* @param {String} value Título eleitoral
|
|
51
|
-
* @returns {Boolean}
|
|
52
|
-
*/
|
|
53
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
|
-
};
|
|
56
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
|
-
exports.
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
exports.
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
*
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
*
|
|
114
|
-
*
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
return
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* isCNPJ()
|
|
4
|
+
* Calcula se um CNPJ é válido
|
|
5
|
+
*
|
|
6
|
+
* @doc
|
|
7
|
+
* - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
|
|
8
|
+
*
|
|
9
|
+
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
10
|
+
*
|
|
11
|
+
* - Os caracteres 9 a 12 são a identificação das filiais da empresa.
|
|
12
|
+
*
|
|
13
|
+
* - Os caracteres 13 e 14 são os dígitos verificadores
|
|
14
|
+
*
|
|
15
|
+
* 1) Partes do número
|
|
16
|
+
* _______________________________ _______________ _______
|
|
17
|
+
* | Número | Filiais | DV |
|
|
18
|
+
* | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
|
|
19
|
+
* |_______________________________|_______________|_______|
|
|
20
|
+
*
|
|
21
|
+
* 2) Cálculo do primeiro DV.
|
|
22
|
+
*
|
|
23
|
+
* - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
24
|
+
*
|
|
25
|
+
* 1 1 2 2 2 3 3 3 0 0 0 1
|
|
26
|
+
* x x x x x x x x x x x x
|
|
27
|
+
* 5 4 3 2 9 8 7 6 5 4 3 2
|
|
28
|
+
* = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
|
|
29
|
+
*
|
|
30
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
31
|
+
* 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
|
|
32
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
33
|
+
*
|
|
34
|
+
* 3) Cálculo do segundo DV.
|
|
35
|
+
*
|
|
36
|
+
* - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
|
|
37
|
+
* números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
|
|
38
|
+
*
|
|
39
|
+
* 1 1 2 2 2 3 3 3 0 0 0 1 8
|
|
40
|
+
* x x x x x x x x x x x x x
|
|
41
|
+
* 6 5 4 3 2 9 8 7 6 5 4 3 2
|
|
42
|
+
* = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
|
|
43
|
+
*
|
|
44
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
45
|
+
* 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
|
|
46
|
+
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
47
|
+
*
|
|
48
|
+
* Fonte: http://www.macoratti.net/alg_cnpj.htm
|
|
49
|
+
*
|
|
50
|
+
* @param {String} value Título eleitoral
|
|
51
|
+
* @returns {Boolean}
|
|
52
|
+
*/
|
|
53
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
|
+
};
|
|
56
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
|
+
exports.dv = dv;
|
|
58
|
+
exports.mask = mask;
|
|
59
|
+
exports.fake = fake;
|
|
60
|
+
exports.validateOrFail = validateOrFail;
|
|
61
|
+
exports.validate = validate;
|
|
62
|
+
const ValidationBRError_1 = __importDefault(require("./data/ValidationBRError"));
|
|
63
|
+
const utils_1 = require("./utils");
|
|
64
|
+
function dv(value) {
|
|
65
|
+
const cnpj = (0, utils_1.clearValue)(value, 12, {
|
|
66
|
+
trimAtRight: true,
|
|
67
|
+
rejectEmpty: true,
|
|
68
|
+
});
|
|
69
|
+
const dv1Factors = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];
|
|
70
|
+
const dv1 = sumToDvWithAlpha(cnpj.substring(0, 12), dv1Factors);
|
|
71
|
+
const dv2Factors = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];
|
|
72
|
+
const dv2 = sumToDvWithAlpha(cnpj.substring(0, 12) + dv1, dv2Factors);
|
|
73
|
+
return `${dv1}${dv2}`;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Aplica uma máscara ao número informado
|
|
77
|
+
*
|
|
78
|
+
* @param {String} value Número de Processo
|
|
79
|
+
* @returns {String} Valor com a máscara
|
|
80
|
+
*/
|
|
81
|
+
function mask(value) {
|
|
82
|
+
return (0, utils_1.applyMask)(value, '00.000.000/0000-00');
|
|
83
|
+
}
|
|
84
|
+
function fake(options = false) {
|
|
85
|
+
const num = (0, utils_1.fakeNumber)(12, true);
|
|
86
|
+
const cnpj = `${num}${dv(num)}`;
|
|
87
|
+
const withMask = typeof options === 'boolean' ? options : options.withMask;
|
|
88
|
+
if (withMask)
|
|
89
|
+
return mask(cnpj);
|
|
90
|
+
return cnpj;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* validateOrFail()
|
|
94
|
+
* Valida se um número é válido e
|
|
95
|
+
* retorna uma exceção se não estiver
|
|
96
|
+
*
|
|
97
|
+
* @param {String|Number} value Número a ser validado
|
|
98
|
+
* @returns {Boolean}
|
|
99
|
+
*/
|
|
100
|
+
function validateOrFail(value) {
|
|
101
|
+
const cnpj = (0, utils_1.clearValue)(value, 14, {
|
|
102
|
+
fillZerosAtLeft: false,
|
|
103
|
+
rejectEmpty: true,
|
|
104
|
+
rejectHigherLength: true,
|
|
105
|
+
rejectEqualSequence: true,
|
|
106
|
+
});
|
|
107
|
+
if (dv(cnpj) !== cnpj.substring(12, 14)) {
|
|
108
|
+
throw ValidationBRError_1.default.INVALID_DV;
|
|
109
|
+
}
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* validate()
|
|
114
|
+
* Valida se um número é válido
|
|
115
|
+
*
|
|
116
|
+
* @param {String|Number} value Número a ser validado
|
|
117
|
+
* @returns {Boolean}
|
|
118
|
+
*/
|
|
119
|
+
function validate(value) {
|
|
120
|
+
try {
|
|
121
|
+
return validateOrFail(value);
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
exports.default = validate;
|
|
128
|
+
/**
|
|
129
|
+
*
|
|
130
|
+
* Converte o número para
|
|
131
|
+
*
|
|
132
|
+
*
|
|
133
|
+
*/
|
|
134
|
+
function asciiTableConverter(character) {
|
|
135
|
+
if (/^\d$/.test(character))
|
|
136
|
+
return +character;
|
|
137
|
+
const ascii = character.toLocaleUpperCase().charCodeAt(0) - 48;
|
|
138
|
+
return ascii;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
*
|
|
142
|
+
*
|
|
143
|
+
*
|
|
144
|
+
*/
|
|
145
|
+
function sumToDvWithAlpha(value, multiplier) {
|
|
146
|
+
const sum = [...value]
|
|
147
|
+
.map(character => asciiTableConverter(character))
|
|
148
|
+
.reduce((sum, asciiChar, index) => sum + asciiChar * multiplier[index], 0);
|
|
149
|
+
return (0, utils_1.sumToDV)(sum);
|
|
150
|
+
}
|
|
125
151
|
//# sourceMappingURL=cnpj.js.map
|
package/dist/cnpj.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cnpj.js","sourceRoot":"","sources":["../src/cnpj.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG
|
|
1
|
+
{"version":3,"file":"cnpj.js","sourceRoot":"","sources":["../src/cnpj.ts"],"names":[],"mappings":"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"}
|
package/dist/cnpj.test.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
package/dist/cpf.d.ts
CHANGED
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* isCPF()
|
|
3
|
-
* Calcula se um CPF é válido
|
|
4
|
-
*
|
|
5
|
-
* @doc
|
|
6
|
-
* CPF deve possuir 11 dígitos.
|
|
7
|
-
*
|
|
8
|
-
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
9
|
-
*
|
|
10
|
-
* - O caractere 9 refere-se à região fiscal emissora do documento
|
|
11
|
-
* 1 – DF, GO, MS, MT e TO
|
|
12
|
-
* 2 – AC, AM, AP, PA, RO e RR
|
|
13
|
-
* 3 – CE, MA e PI
|
|
14
|
-
* 4 – AL, PB, PE, RN
|
|
15
|
-
* 5 – BA e SE
|
|
16
|
-
* 6 – MG
|
|
17
|
-
* 7 – ES e RJ
|
|
18
|
-
* 8 – SP
|
|
19
|
-
* 9 – PR e SC
|
|
20
|
-
* 0 – RS
|
|
21
|
-
*
|
|
22
|
-
* - Os caracteres 10 e 11 são dígitos verificadores.
|
|
23
|
-
*
|
|
24
|
-
* 1) Partes do número
|
|
25
|
-
* ------------------------------------------------
|
|
26
|
-
* | Número | R | DV |
|
|
27
|
-
* 2 8 0 . 0 1 2 . 3 8 9 - 3 8
|
|
28
|
-
*
|
|
29
|
-
* 2) Cálculo do primeiro DV.
|
|
30
|
-
*
|
|
31
|
-
* - Soma-se o produto das algarismos 1 a 9 pelos números 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
32
|
-
*
|
|
33
|
-
* 2 8 0 0 1 2 3 8 9
|
|
34
|
-
* x x x x x x x x x
|
|
35
|
-
* 10 9 8 7 6 5 4 3 2
|
|
36
|
-
* = 20 +72 +0 +0 +6 +10 +12 +24 +18 = 162
|
|
37
|
-
*
|
|
38
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
39
|
-
* 162 / 11 tem resto 8. 11 - 8 = 3. DV1 é 3.
|
|
40
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
41
|
-
*
|
|
42
|
-
* 3) Cálculo do segundo DV.
|
|
43
|
-
*
|
|
44
|
-
* - Soma-se o produto das algarismos 1 a 10 pelos números 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
45
|
-
*
|
|
46
|
-
* 2 8 0 0 1 2 3 8 9 3
|
|
47
|
-
* x x x x x x x x x x
|
|
48
|
-
* 11 10 9 8 7 6 5 4 3 2
|
|
49
|
-
* = 22 +80 +0 +0 +7 +12 +15 +32 +27 = 201
|
|
50
|
-
*
|
|
51
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
52
|
-
* 201 / 11 tem resto 3. 11 - 3 = 8. DV2 é 8.
|
|
53
|
-
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
54
|
-
*
|
|
55
|
-
* Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-cpf/
|
|
56
|
-
*
|
|
57
|
-
* @param {String} value Título eleitoral
|
|
58
|
-
* @returns {Boolean}
|
|
59
|
-
*/
|
|
60
|
-
/**
|
|
61
|
-
* dv()
|
|
62
|
-
* Calcula o dígito verificador
|
|
63
|
-
*
|
|
64
|
-
* @param {Number|String} value
|
|
65
|
-
* @returns {String}
|
|
66
|
-
*/
|
|
67
|
-
export declare const dv: (value: string | number) => string;
|
|
68
|
-
/**
|
|
69
|
-
* Aplica uma máscara ao número informado
|
|
70
|
-
*
|
|
71
|
-
* @param {String} value Número de Processo
|
|
72
|
-
* @returns {String} Valor com a máscara
|
|
73
|
-
*/
|
|
74
|
-
export declare const mask: (value: string | number) => string;
|
|
75
|
-
/**
|
|
76
|
-
* fake()
|
|
77
|
-
* Gera um número válido
|
|
78
|
-
*
|
|
79
|
-
* @returns {String}
|
|
80
|
-
*/
|
|
81
|
-
export declare const fake: (withMask?: boolean) => string;
|
|
82
|
-
/**
|
|
83
|
-
* validateOrFail()
|
|
84
|
-
* Valida se um número é válido e
|
|
85
|
-
* retorna uma exceção se não estiver
|
|
86
|
-
*
|
|
87
|
-
* @param {String|Number} value Número a ser validado
|
|
88
|
-
* @returns {Boolean}
|
|
89
|
-
*/
|
|
90
|
-
export declare const validateOrFail: (value: string | number) => boolean;
|
|
91
|
-
/**
|
|
92
|
-
* validate()
|
|
93
|
-
* Valida se um número é válido
|
|
94
|
-
*
|
|
95
|
-
* @param {String|Number} value Número a ser validado
|
|
96
|
-
* @returns {Boolean}
|
|
97
|
-
*/
|
|
98
|
-
export declare const validate: (value: string | number) => boolean;
|
|
99
|
-
export default validate;
|
|
1
|
+
/**
|
|
2
|
+
* isCPF()
|
|
3
|
+
* Calcula se um CPF é válido
|
|
4
|
+
*
|
|
5
|
+
* @doc
|
|
6
|
+
* CPF deve possuir 11 dígitos.
|
|
7
|
+
*
|
|
8
|
+
* - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
|
|
9
|
+
*
|
|
10
|
+
* - O caractere 9 refere-se à região fiscal emissora do documento
|
|
11
|
+
* 1 – DF, GO, MS, MT e TO
|
|
12
|
+
* 2 – AC, AM, AP, PA, RO e RR
|
|
13
|
+
* 3 – CE, MA e PI
|
|
14
|
+
* 4 – AL, PB, PE, RN
|
|
15
|
+
* 5 – BA e SE
|
|
16
|
+
* 6 – MG
|
|
17
|
+
* 7 – ES e RJ
|
|
18
|
+
* 8 – SP
|
|
19
|
+
* 9 – PR e SC
|
|
20
|
+
* 0 – RS
|
|
21
|
+
*
|
|
22
|
+
* - Os caracteres 10 e 11 são dígitos verificadores.
|
|
23
|
+
*
|
|
24
|
+
* 1) Partes do número
|
|
25
|
+
* ------------------------------------------------
|
|
26
|
+
* | Número | R | DV |
|
|
27
|
+
* 2 8 0 . 0 1 2 . 3 8 9 - 3 8
|
|
28
|
+
*
|
|
29
|
+
* 2) Cálculo do primeiro DV.
|
|
30
|
+
*
|
|
31
|
+
* - Soma-se o produto das algarismos 1 a 9 pelos números 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
32
|
+
*
|
|
33
|
+
* 2 8 0 0 1 2 3 8 9
|
|
34
|
+
* x x x x x x x x x
|
|
35
|
+
* 10 9 8 7 6 5 4 3 2
|
|
36
|
+
* = 20 +72 +0 +0 +6 +10 +12 +24 +18 = 162
|
|
37
|
+
*
|
|
38
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
39
|
+
* 162 / 11 tem resto 8. 11 - 8 = 3. DV1 é 3.
|
|
40
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
|
|
41
|
+
*
|
|
42
|
+
* 3) Cálculo do segundo DV.
|
|
43
|
+
*
|
|
44
|
+
* - Soma-se o produto das algarismos 1 a 10 pelos números 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
45
|
+
*
|
|
46
|
+
* 2 8 0 0 1 2 3 8 9 3
|
|
47
|
+
* x x x x x x x x x x
|
|
48
|
+
* 11 10 9 8 7 6 5 4 3 2
|
|
49
|
+
* = 22 +80 +0 +0 +7 +12 +15 +32 +27 = 201
|
|
50
|
+
*
|
|
51
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
52
|
+
* 201 / 11 tem resto 3. 11 - 3 = 8. DV2 é 8.
|
|
53
|
+
* Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
|
|
54
|
+
*
|
|
55
|
+
* Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-cpf/
|
|
56
|
+
*
|
|
57
|
+
* @param {String} value Título eleitoral
|
|
58
|
+
* @returns {Boolean}
|
|
59
|
+
*/
|
|
60
|
+
/**
|
|
61
|
+
* dv()
|
|
62
|
+
* Calcula o dígito verificador
|
|
63
|
+
*
|
|
64
|
+
* @param {Number|String} value
|
|
65
|
+
* @returns {String}
|
|
66
|
+
*/
|
|
67
|
+
export declare const dv: (value: string | number) => string;
|
|
68
|
+
/**
|
|
69
|
+
* Aplica uma máscara ao número informado
|
|
70
|
+
*
|
|
71
|
+
* @param {String} value Número de Processo
|
|
72
|
+
* @returns {String} Valor com a máscara
|
|
73
|
+
*/
|
|
74
|
+
export declare const mask: (value: string | number) => string;
|
|
75
|
+
/**
|
|
76
|
+
* fake()
|
|
77
|
+
* Gera um número válido
|
|
78
|
+
*
|
|
79
|
+
* @returns {String}
|
|
80
|
+
*/
|
|
81
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
82
|
+
/**
|
|
83
|
+
* validateOrFail()
|
|
84
|
+
* Valida se um número é válido e
|
|
85
|
+
* retorna uma exceção se não estiver
|
|
86
|
+
*
|
|
87
|
+
* @param {String|Number} value Número a ser validado
|
|
88
|
+
* @returns {Boolean}
|
|
89
|
+
*/
|
|
90
|
+
export declare const validateOrFail: (value: string | number) => boolean;
|
|
91
|
+
/**
|
|
92
|
+
* validate()
|
|
93
|
+
* Valida se um número é válido
|
|
94
|
+
*
|
|
95
|
+
* @param {String|Number} value Número a ser validado
|
|
96
|
+
* @returns {Boolean}
|
|
97
|
+
*/
|
|
98
|
+
export declare const validate: (value: string | number) => boolean;
|
|
99
|
+
export default validate;
|