validation-br 1.6.2-d → 1.6.3
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/.prettierignore +1 -0
- package/.prettierrc.js +7 -0
- package/.publish/package-lock.json +4372 -0
- package/.publish/package.json +112 -0
- package/.publish/readme.md +492 -0
- package/dist/_exceptions/ValidationBRError.d.ts +7 -0
- package/dist/_exceptions/ValidationBRError.js +11 -0
- package/dist/_exceptions/ValidationBRError.js.map +1 -0
- package/dist/cnh.d.ts +98 -0
- package/dist/cnh.js +149 -0
- package/dist/cnh.js.map +1 -0
- package/dist/cnpj.d.ts +121 -0
- package/dist/cnpj.js +193 -0
- package/dist/cnpj.js.map +1 -0
- package/dist/cpf.d.ts +106 -0
- package/dist/cpf.js +157 -0
- package/dist/cpf.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/judicialProcess.d.ts +133 -0
- package/dist/judicialProcess.js +200 -0
- package/dist/judicialProcess.js.map +1 -0
- package/dist/nup17.d.ts +103 -0
- package/dist/nup17.js +159 -0
- package/dist/nup17.js.map +1 -0
- package/dist/pisPasep.d.ts +88 -0
- package/dist/pisPasep.js +136 -0
- package/dist/pisPasep.js.map +1 -0
- package/dist/postalCode.d.ts +92 -0
- package/dist/postalCode.js +144 -0
- package/dist/postalCode.js.map +1 -0
- package/dist/renavam.d.ts +82 -0
- package/dist/renavam.js +132 -0
- package/dist/renavam.js.map +1 -0
- package/dist/tituloEleitor.d.ts +100 -0
- package/dist/tituloEleitor.js +157 -0
- package/dist/tituloEleitor.js.map +1 -0
- package/dist/utils.d.ts +131 -0
- package/dist/utils.js +190 -0
- package/dist/utils.js.map +1 -0
- package/eslint.config.js +82 -0
- package/jest.config.js +11 -0
- package/package.json +7 -9
- package/publish.sh +31 -0
- package/tsconfig.json +25 -0
- package/dist/test/cnh.test.d.ts +0 -1
- package/dist/test/cnh.test.js +0 -126
- package/dist/test/cnh.test.js.map +0 -1
- package/dist/test/cnpj.test.d.ts +0 -1
- package/dist/test/cnpj.test.js +0 -191
- package/dist/test/cnpj.test.js.map +0 -1
- package/dist/test/cpf.test.d.ts +0 -1
- package/dist/test/cpf.test.js +0 -146
- package/dist/test/cpf.test.js.map +0 -1
- package/dist/test/index.test.d.ts +0 -1
- package/dist/test/index.test.js +0 -93
- package/dist/test/index.test.js.map +0 -1
- package/dist/test/judicialProcess.test.d.ts +0 -1
- package/dist/test/judicialProcess.test.js +0 -134
- package/dist/test/judicialProcess.test.js.map +0 -1
- package/dist/test/nup17.test.d.ts +0 -1
- package/dist/test/nup17.test.js +0 -143
- package/dist/test/nup17.test.js.map +0 -1
- package/dist/test/pisPasep.test.d.ts +0 -1
- package/dist/test/pisPasep.test.js +0 -145
- package/dist/test/pisPasep.test.js.map +0 -1
- package/dist/test/postalCode.test.d.ts +0 -1
- package/dist/test/postalCode.test.js +0 -133
- package/dist/test/postalCode.test.js.map +0 -1
- package/dist/test/renavam.test.d.ts +0 -1
- package/dist/test/renavam.test.js +0 -101
- package/dist/test/renavam.test.js.map +0 -1
- package/dist/test/tituloEleitor.test.d.ts +0 -1
- package/dist/test/tituloEleitor.test.js +0 -128
- package/dist/test/tituloEleitor.test.js.map +0 -1
- package/dist/test/utils-applyMask.test.d.ts +0 -1
- package/dist/test/utils-applyMask.test.js +0 -15
- package/dist/test/utils-applyMask.test.js.map +0 -1
- package/dist/test/utils-checkRepeatedSequence.test.d.ts +0 -1
- package/dist/test/utils-checkRepeatedSequence.test.js +0 -18
- package/dist/test/utils-checkRepeatedSequence.test.js.map +0 -1
- package/dist/test/utils-clearValue.test.d.ts +0 -1
- package/dist/test/utils-clearValue.test.js +0 -59
- package/dist/test/utils-clearValue.test.js.map +0 -1
- package/dist/test/utils-fakeNumber.test.d.ts +0 -1
- package/dist/test/utils-fakeNumber.test.js +0 -24
- package/dist/test/utils-fakeNumber.test.js.map +0 -1
- package/dist/test/utils-insertAtPosition.test.d.ts +0 -1
- package/dist/test/utils-insertAtPosition.test.js +0 -16
- package/dist/test/utils-insertAtPosition.test.js.map +0 -1
- package/dist/test/utils-randomLetter.test.d.ts +0 -1
- package/dist/test/utils-randomLetter.test.js +0 -11
- package/dist/test/utils-randomLetter.test.js.map +0 -1
- package/dist/test/utils-removeFromPosition.test.d.ts +0 -1
- package/dist/test/utils-removeFromPosition.test.js +0 -12
- package/dist/test/utils-removeFromPosition.test.js.map +0 -1
- package/dist/test/utils-sumElementsByMultipliers.test.d.ts +0 -1
- package/dist/test/utils-sumElementsByMultipliers.test.js +0 -23
- package/dist/test/utils-sumElementsByMultipliers.test.js.map +0 -1
- package/dist/test/utils-sumToDV.test.d.ts +0 -1
- package/dist/test/utils-sumToDV.test.js +0 -14
- package/dist/test/utils-sumToDV.test.js.map +0 -1
- /package/{dist/src → .publish/dist}/_exceptions/ValidationBRError.d.ts +0 -0
- /package/{dist/src → .publish/dist}/_exceptions/ValidationBRError.js +0 -0
- /package/{dist/src → .publish/dist}/_exceptions/ValidationBRError.js.map +0 -0
- /package/{dist/src → .publish/dist}/cnh.d.ts +0 -0
- /package/{dist/src → .publish/dist}/cnh.js +0 -0
- /package/{dist/src → .publish/dist}/cnh.js.map +0 -0
- /package/{dist/src → .publish/dist}/cnpj.d.ts +0 -0
- /package/{dist/src → .publish/dist}/cnpj.js +0 -0
- /package/{dist/src → .publish/dist}/cnpj.js.map +0 -0
- /package/{dist/src → .publish/dist}/cpf.d.ts +0 -0
- /package/{dist/src → .publish/dist}/cpf.js +0 -0
- /package/{dist/src → .publish/dist}/cpf.js.map +0 -0
- /package/{dist/src → .publish/dist}/index.d.ts +0 -0
- /package/{dist/src → .publish/dist}/index.js +0 -0
- /package/{dist/src → .publish/dist}/index.js.map +0 -0
- /package/{dist/src → .publish/dist}/judicialProcess.d.ts +0 -0
- /package/{dist/src → .publish/dist}/judicialProcess.js +0 -0
- /package/{dist/src → .publish/dist}/judicialProcess.js.map +0 -0
- /package/{dist/src → .publish/dist}/nup17.d.ts +0 -0
- /package/{dist/src → .publish/dist}/nup17.js +0 -0
- /package/{dist/src → .publish/dist}/nup17.js.map +0 -0
- /package/{dist/src → .publish/dist}/pisPasep.d.ts +0 -0
- /package/{dist/src → .publish/dist}/pisPasep.js +0 -0
- /package/{dist/src → .publish/dist}/pisPasep.js.map +0 -0
- /package/{dist/src → .publish/dist}/postalCode.d.ts +0 -0
- /package/{dist/src → .publish/dist}/postalCode.js +0 -0
- /package/{dist/src → .publish/dist}/postalCode.js.map +0 -0
- /package/{dist/src → .publish/dist}/renavam.d.ts +0 -0
- /package/{dist/src → .publish/dist}/renavam.js +0 -0
- /package/{dist/src → .publish/dist}/renavam.js.map +0 -0
- /package/{dist/src → .publish/dist}/tituloEleitor.d.ts +0 -0
- /package/{dist/src → .publish/dist}/tituloEleitor.js +0 -0
- /package/{dist/src → .publish/dist}/tituloEleitor.js.map +0 -0
- /package/{dist/src → .publish/dist}/utils.d.ts +0 -0
- /package/{dist/src → .publish/dist}/utils.js +0 -0
- /package/{dist/src → .publish/dist}/utils.js.map +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RENAVAM
|
|
3
|
+
* Funções auxiliares para cálculo de máscaras, validação, dígito verificador e criaçãode
|
|
4
|
+
* números fake.
|
|
5
|
+
*
|
|
6
|
+
* @doc
|
|
7
|
+
* - O número de RENAVAM deve possuir 11 caracteres
|
|
8
|
+
*
|
|
9
|
+
* - Os caracteres de 1 a 10 são a numeração documento
|
|
10
|
+
*
|
|
11
|
+
* - O caractere 11 é o dígito verificador.
|
|
12
|
+
*
|
|
13
|
+
* 1) Partes do número
|
|
14
|
+
* _______________________________________________
|
|
15
|
+
* | Número | D V |
|
|
16
|
+
* | 2 6 8 2 7 6 4 9 9 6 - 0 |
|
|
17
|
+
* |_________________________________________|_____|
|
|
18
|
+
*
|
|
19
|
+
* 2) Cálculo do DV.
|
|
20
|
+
*
|
|
21
|
+
* - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
22
|
+
*
|
|
23
|
+
* 2 6 8 2 7 6 4 9 9 6
|
|
24
|
+
* x x x x x x x x x x
|
|
25
|
+
* 3 2 9 8 7 6 5 4 3 2
|
|
26
|
+
* = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
|
|
27
|
+
*
|
|
28
|
+
* - O somatório encontrado é multiplicado por 10 e ao resultado
|
|
29
|
+
* é aplicado o cálculo do MOD 11.
|
|
30
|
+
*
|
|
31
|
+
* ( 234 * 10 ) / 11 tem resto 8. DV = 8. Caso o resto seja maior ou igual a
|
|
32
|
+
* 10, DV será 0.
|
|
33
|
+
*
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* dv()
|
|
38
|
+
* Calcula o dígito verificador
|
|
39
|
+
*
|
|
40
|
+
* @param {Number|String} value
|
|
41
|
+
* @returns {String}
|
|
42
|
+
*/
|
|
43
|
+
export declare const dv: (value: string | number) => string;
|
|
44
|
+
/**
|
|
45
|
+
* Aplica uma máscara ao número informado
|
|
46
|
+
*
|
|
47
|
+
* @param {String} value Número de Processo
|
|
48
|
+
* @returns {String} Valor com a máscara
|
|
49
|
+
*/
|
|
50
|
+
export declare const mask: (value: string | number) => string;
|
|
51
|
+
/**
|
|
52
|
+
* fake()
|
|
53
|
+
* Gera um número válido
|
|
54
|
+
*
|
|
55
|
+
* @returns {String}
|
|
56
|
+
*/
|
|
57
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
58
|
+
/**
|
|
59
|
+
* validateOrFail()
|
|
60
|
+
* Valida se um número é válido e
|
|
61
|
+
* retorna uma exceção se não estiver
|
|
62
|
+
*
|
|
63
|
+
* @param {String|Number} value Número a ser validado
|
|
64
|
+
* @returns {Boolean}
|
|
65
|
+
*/
|
|
66
|
+
export declare const validateOrFail: (value: string | number) => boolean;
|
|
67
|
+
/**
|
|
68
|
+
* validate()
|
|
69
|
+
* Valida se um número é válido
|
|
70
|
+
*
|
|
71
|
+
* @param {String|Number} value Número a ser validado
|
|
72
|
+
* @returns {Boolean}
|
|
73
|
+
*/
|
|
74
|
+
export declare const validate: (value: string | number) => boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Retorna String sem máscara
|
|
77
|
+
*
|
|
78
|
+
* @param {String|Number} value Valor a remover máscara
|
|
79
|
+
* @returns {String}
|
|
80
|
+
*/
|
|
81
|
+
export declare const normalize: (value: string | number) => string;
|
|
82
|
+
export default validate;
|
package/dist/renavam.js
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* RENAVAM
|
|
4
|
+
* Funções auxiliares para cálculo de máscaras, validação, dígito verificador e criaçãode
|
|
5
|
+
* números fake.
|
|
6
|
+
*
|
|
7
|
+
* @doc
|
|
8
|
+
* - O número de RENAVAM deve possuir 11 caracteres
|
|
9
|
+
*
|
|
10
|
+
* - Os caracteres de 1 a 10 são a numeração documento
|
|
11
|
+
*
|
|
12
|
+
* - O caractere 11 é o dígito verificador.
|
|
13
|
+
*
|
|
14
|
+
* 1) Partes do número
|
|
15
|
+
* _______________________________________________
|
|
16
|
+
* | Número | D V |
|
|
17
|
+
* | 2 6 8 2 7 6 4 9 9 6 - 0 |
|
|
18
|
+
* |_________________________________________|_____|
|
|
19
|
+
*
|
|
20
|
+
* 2) Cálculo do DV.
|
|
21
|
+
*
|
|
22
|
+
* - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
23
|
+
*
|
|
24
|
+
* 2 6 8 2 7 6 4 9 9 6
|
|
25
|
+
* x x x x x x x x x x
|
|
26
|
+
* 3 2 9 8 7 6 5 4 3 2
|
|
27
|
+
* = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
|
|
28
|
+
*
|
|
29
|
+
* - O somatório encontrado é multiplicado por 10 e ao resultado
|
|
30
|
+
* é aplicado o cálculo do MOD 11.
|
|
31
|
+
*
|
|
32
|
+
* ( 234 * 10 ) / 11 tem resto 8. DV = 8. Caso o resto seja maior ou igual a
|
|
33
|
+
* 10, DV será 0.
|
|
34
|
+
*
|
|
35
|
+
*
|
|
36
|
+
*/
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.normalize = exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
42
|
+
const ValidationBRError_1 = __importDefault(require("./_exceptions/ValidationBRError"));
|
|
43
|
+
const utils_1 = require("./utils");
|
|
44
|
+
/**
|
|
45
|
+
* dv()
|
|
46
|
+
* Calcula o dígito verificador
|
|
47
|
+
*
|
|
48
|
+
* @param {Number|String} value
|
|
49
|
+
* @returns {String}
|
|
50
|
+
*/
|
|
51
|
+
const dv = (value) => {
|
|
52
|
+
const renavam = (0, utils_1.clearValue)(value, 10, {
|
|
53
|
+
fillZerosAtLeft: true,
|
|
54
|
+
trimAtRight: true,
|
|
55
|
+
rejectEmpty: true,
|
|
56
|
+
});
|
|
57
|
+
const sum1 = (0, utils_1.sumElementsByMultipliers)(renavam, [3, 2, 9, 8, 7, 6, 5, 4, 3, 2]) * 10;
|
|
58
|
+
const dv1 = sum1 % 11 >= 10 ? 0 : sum1 % 11;
|
|
59
|
+
return `${dv1}`;
|
|
60
|
+
};
|
|
61
|
+
exports.dv = dv;
|
|
62
|
+
/**
|
|
63
|
+
* Aplica uma máscara ao número informado
|
|
64
|
+
*
|
|
65
|
+
* @param {String} value Número de Processo
|
|
66
|
+
* @returns {String} Valor com a máscara
|
|
67
|
+
*/
|
|
68
|
+
const mask = (value) => (0, utils_1.applyMask)(value, '0000000000-0');
|
|
69
|
+
exports.mask = mask;
|
|
70
|
+
/**
|
|
71
|
+
* fake()
|
|
72
|
+
* Gera um número válido
|
|
73
|
+
*
|
|
74
|
+
* @returns {String}
|
|
75
|
+
*/
|
|
76
|
+
const fake = (withMask = false) => {
|
|
77
|
+
const value = (0, utils_1.fakeNumber)(10, true);
|
|
78
|
+
const renavam = `${value}${(0, exports.dv)(value)}`;
|
|
79
|
+
if (withMask)
|
|
80
|
+
return (0, exports.mask)(renavam);
|
|
81
|
+
return renavam;
|
|
82
|
+
};
|
|
83
|
+
exports.fake = fake;
|
|
84
|
+
/**
|
|
85
|
+
* validateOrFail()
|
|
86
|
+
* Valida se um número é válido e
|
|
87
|
+
* retorna uma exceção se não estiver
|
|
88
|
+
*
|
|
89
|
+
* @param {String|Number} value Número a ser validado
|
|
90
|
+
* @returns {Boolean}
|
|
91
|
+
*/
|
|
92
|
+
const validateOrFail = (value) => {
|
|
93
|
+
const renavam = (0, exports.normalize)(value);
|
|
94
|
+
if ((0, exports.dv)(renavam) !== renavam.substring(10, 11)) {
|
|
95
|
+
throw ValidationBRError_1.default.INVALID_DV;
|
|
96
|
+
}
|
|
97
|
+
return true;
|
|
98
|
+
};
|
|
99
|
+
exports.validateOrFail = validateOrFail;
|
|
100
|
+
/**
|
|
101
|
+
* validate()
|
|
102
|
+
* Valida se um número é válido
|
|
103
|
+
*
|
|
104
|
+
* @param {String|Number} value Número a ser validado
|
|
105
|
+
* @returns {Boolean}
|
|
106
|
+
*/
|
|
107
|
+
const validate = (value) => {
|
|
108
|
+
try {
|
|
109
|
+
return (0, exports.validateOrFail)(value);
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
exports.validate = validate;
|
|
116
|
+
/**
|
|
117
|
+
* Retorna String sem máscara
|
|
118
|
+
*
|
|
119
|
+
* @param {String|Number} value Valor a remover máscara
|
|
120
|
+
* @returns {String}
|
|
121
|
+
*/
|
|
122
|
+
const normalize = (value) => {
|
|
123
|
+
return (0, utils_1.clearValue)(value, 11, {
|
|
124
|
+
fillZerosAtLeft: true,
|
|
125
|
+
rejectEmpty: true,
|
|
126
|
+
rejectHigherLength: true,
|
|
127
|
+
rejectEqualSequence: true,
|
|
128
|
+
});
|
|
129
|
+
};
|
|
130
|
+
exports.normalize = normalize;
|
|
131
|
+
exports.default = exports.validate;
|
|
132
|
+
//# sourceMappingURL=renavam.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renavam.js","sourceRoot":"","sources":["../../src/renavam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;;;;;;AAEH,wFAAgE;AAChE,mCAAsF;AAEtF;;;;;;GAMG;AACI,MAAM,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QACpC,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAA,gCAAwB,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACpF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;IAE5C,OAAO,GAAG,GAAG,EAAE,CAAC;AAClB,CAAC,CAAC;AAXW,QAAA,EAAE,MAWb;AAEF;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAA5E,QAAA,IAAI,QAAwE;AAEzF;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,KAAK,GAAG,IAAA,kBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,EAAE,CAAC;IAEvC,IAAI,QAAQ;QAAE,OAAO,IAAA,YAAI,EAAC,OAAO,CAAC,CAAC;IAEnC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AARW,QAAA,IAAI,QAQf;AAEF;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,OAAO,GAAG,IAAA,iBAAS,EAAC,KAAK,CAAC,CAAC;IAEjC,IAAI,IAAA,UAAE,EAAC,OAAO,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,2BAAiB,CAAC,UAAU,CAAC;IACrC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEF;;;;;;GAMG;AACI,MAAM,QAAQ,GAAG,CAAC,KAAsB,EAAW,EAAE;IAC1D,IAAI,CAAC;QACH,OAAO,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AANW,QAAA,QAAQ,YAMnB;AAEF;;;;;GAKG;AACI,MAAM,SAAS,GAAG,CAAC,KAAsB,EAAU,EAAE;IAC1D,OAAO,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QAC3B,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAC;AACL,CAAC,CAAC;AAPW,QAAA,SAAS,aAOpB;AAEF,kBAAe,gBAAQ,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* isTitulo()
|
|
3
|
+
* Calcula se um título eleitoral é válido
|
|
4
|
+
*
|
|
5
|
+
* @doc
|
|
6
|
+
* Título de eleitor deve possuir 12 dígitos.
|
|
7
|
+
*
|
|
8
|
+
* - Os caracteres 1 a 8 são números sequenciais.
|
|
9
|
+
*
|
|
10
|
+
* - Os caracteres 9 e 10 representam os estados da federação onde o título
|
|
11
|
+
* foi emitido (01 = SP, 02 = MG, 03 = RJ, 04 = RS, 05 = BA, 06 = PR, 07 = CE, 08 = PE,
|
|
12
|
+
* 09 = SC, 10 = GO, 11 = MA12 = PB, 13 = PA, 14 = ES, 15 = PI, 16 = RN, 17 = AL,
|
|
13
|
+
* 18 = MT, 19 = MS, 20 = DF, 21 = SE, 22 = AM, 23 = RO, 24 = AC, 25 = AP, 26 = RR,
|
|
14
|
+
* 27 = TO, 28 = Exterior(ZZ).
|
|
15
|
+
*
|
|
16
|
+
* - Os caracteres 11 e 12 são dígitos verificadores.
|
|
17
|
+
*
|
|
18
|
+
* 1) Partes do número
|
|
19
|
+
* ------------------------------------------------
|
|
20
|
+
* | Número Sequencial | UF | DV |
|
|
21
|
+
* 1 0 2 3 8 5 0 1 0 6 7 1
|
|
22
|
+
*
|
|
23
|
+
* 2) Cálculo do primeiro DV.
|
|
24
|
+
*
|
|
25
|
+
* - Soma-se o produto das algarismos 1 a 8 pelos números 2, 3, 4, 5, 6, 7, 8 e 9.
|
|
26
|
+
*
|
|
27
|
+
* 1 0 2 3 8 5 0 1
|
|
28
|
+
* x x x x x x x x
|
|
29
|
+
* 2 3 4 5 6 7 8 9
|
|
30
|
+
* = 2 + 0 + 8 +15 +48 +35 + 0 + 9 = 117
|
|
31
|
+
*
|
|
32
|
+
* - O somatório encontrado é dividido por 11. O DV1 é o resto da divisão. Se o
|
|
33
|
+
* resto for 10, o DV1 é 0.
|
|
34
|
+
*
|
|
35
|
+
* 2.1) 117 / 11 tem resto igual a 7.
|
|
36
|
+
*
|
|
37
|
+
* 3) Cálculo do segundo DV
|
|
38
|
+
*
|
|
39
|
+
* - Soma-se o produto dos algarismos 9 a 11 (relativos aos 2 dígitos da UF e o novo
|
|
40
|
+
* DV1 que acabou de ser calculado) e os multiplicam pelos números 7, 8 e 9. Se o
|
|
41
|
+
* resto for 10, DV2 será 0.
|
|
42
|
+
* 0 6 7
|
|
43
|
+
* x x x
|
|
44
|
+
* 7 8 9
|
|
45
|
+
* = 0 +48 +63 = 111
|
|
46
|
+
*
|
|
47
|
+
* 3.1) 111 / 11 tem resto igual a 1.
|
|
48
|
+
*
|
|
49
|
+
* Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-titulo-de-eleitor/
|
|
50
|
+
*
|
|
51
|
+
* @param {String} value Título eleitoral
|
|
52
|
+
* @returns {Boolean}
|
|
53
|
+
*/
|
|
54
|
+
/**
|
|
55
|
+
* dv()
|
|
56
|
+
* Calcula o dígito verificador
|
|
57
|
+
*
|
|
58
|
+
* @param {Number|String} value
|
|
59
|
+
* @returns {String}
|
|
60
|
+
*/
|
|
61
|
+
export declare const dv: (value: string | number) => string;
|
|
62
|
+
/**
|
|
63
|
+
* Aplica uma máscara ao número informado
|
|
64
|
+
*
|
|
65
|
+
* @param {String} value Número de Processo
|
|
66
|
+
* @returns {String} Valor com a máscara
|
|
67
|
+
*/
|
|
68
|
+
export declare const mask: (value: string | number) => string;
|
|
69
|
+
/**
|
|
70
|
+
* fake()
|
|
71
|
+
* Gera um número válido
|
|
72
|
+
*
|
|
73
|
+
* @returns {String}
|
|
74
|
+
*/
|
|
75
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
76
|
+
/**
|
|
77
|
+
* validateOrFail()
|
|
78
|
+
* Valida se um número é válido e
|
|
79
|
+
* retorna uma exceção se não estiver
|
|
80
|
+
*
|
|
81
|
+
* @param {String|Number} value Número a ser validado
|
|
82
|
+
* @returns {Boolean}
|
|
83
|
+
*/
|
|
84
|
+
export declare const validateOrFail: (value: string | number) => boolean;
|
|
85
|
+
/**
|
|
86
|
+
* validate()
|
|
87
|
+
* Valida se um número é válido
|
|
88
|
+
*
|
|
89
|
+
* @param {String|Number} value Número a ser validado
|
|
90
|
+
* @returns {Boolean}
|
|
91
|
+
*/
|
|
92
|
+
export declare const validate: (value: string | number) => boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Retorna String sem máscara
|
|
95
|
+
*
|
|
96
|
+
* @param {String|Number} value Valor a remover máscara
|
|
97
|
+
* @returns {String}
|
|
98
|
+
*/
|
|
99
|
+
export declare const normalize: (value: string | number) => string;
|
|
100
|
+
export default validate;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* isTitulo()
|
|
4
|
+
* Calcula se um título eleitoral é válido
|
|
5
|
+
*
|
|
6
|
+
* @doc
|
|
7
|
+
* Título de eleitor deve possuir 12 dígitos.
|
|
8
|
+
*
|
|
9
|
+
* - Os caracteres 1 a 8 são números sequenciais.
|
|
10
|
+
*
|
|
11
|
+
* - Os caracteres 9 e 10 representam os estados da federação onde o título
|
|
12
|
+
* foi emitido (01 = SP, 02 = MG, 03 = RJ, 04 = RS, 05 = BA, 06 = PR, 07 = CE, 08 = PE,
|
|
13
|
+
* 09 = SC, 10 = GO, 11 = MA12 = PB, 13 = PA, 14 = ES, 15 = PI, 16 = RN, 17 = AL,
|
|
14
|
+
* 18 = MT, 19 = MS, 20 = DF, 21 = SE, 22 = AM, 23 = RO, 24 = AC, 25 = AP, 26 = RR,
|
|
15
|
+
* 27 = TO, 28 = Exterior(ZZ).
|
|
16
|
+
*
|
|
17
|
+
* - Os caracteres 11 e 12 são dígitos verificadores.
|
|
18
|
+
*
|
|
19
|
+
* 1) Partes do número
|
|
20
|
+
* ------------------------------------------------
|
|
21
|
+
* | Número Sequencial | UF | DV |
|
|
22
|
+
* 1 0 2 3 8 5 0 1 0 6 7 1
|
|
23
|
+
*
|
|
24
|
+
* 2) Cálculo do primeiro DV.
|
|
25
|
+
*
|
|
26
|
+
* - Soma-se o produto das algarismos 1 a 8 pelos números 2, 3, 4, 5, 6, 7, 8 e 9.
|
|
27
|
+
*
|
|
28
|
+
* 1 0 2 3 8 5 0 1
|
|
29
|
+
* x x x x x x x x
|
|
30
|
+
* 2 3 4 5 6 7 8 9
|
|
31
|
+
* = 2 + 0 + 8 +15 +48 +35 + 0 + 9 = 117
|
|
32
|
+
*
|
|
33
|
+
* - O somatório encontrado é dividido por 11. O DV1 é o resto da divisão. Se o
|
|
34
|
+
* resto for 10, o DV1 é 0.
|
|
35
|
+
*
|
|
36
|
+
* 2.1) 117 / 11 tem resto igual a 7.
|
|
37
|
+
*
|
|
38
|
+
* 3) Cálculo do segundo DV
|
|
39
|
+
*
|
|
40
|
+
* - Soma-se o produto dos algarismos 9 a 11 (relativos aos 2 dígitos da UF e o novo
|
|
41
|
+
* DV1 que acabou de ser calculado) e os multiplicam pelos números 7, 8 e 9. Se o
|
|
42
|
+
* resto for 10, DV2 será 0.
|
|
43
|
+
* 0 6 7
|
|
44
|
+
* x x x
|
|
45
|
+
* 7 8 9
|
|
46
|
+
* = 0 +48 +63 = 111
|
|
47
|
+
*
|
|
48
|
+
* 3.1) 111 / 11 tem resto igual a 1.
|
|
49
|
+
*
|
|
50
|
+
* Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-titulo-de-eleitor/
|
|
51
|
+
*
|
|
52
|
+
* @param {String} value Título eleitoral
|
|
53
|
+
* @returns {Boolean}
|
|
54
|
+
*/
|
|
55
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
56
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
57
|
+
};
|
|
58
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
59
|
+
exports.normalize = exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
60
|
+
const ValidationBRError_1 = __importDefault(require("./_exceptions/ValidationBRError"));
|
|
61
|
+
const utils_1 = require("./utils");
|
|
62
|
+
/**
|
|
63
|
+
* dv()
|
|
64
|
+
* Calcula o dígito verificador
|
|
65
|
+
*
|
|
66
|
+
* @param {Number|String} value
|
|
67
|
+
* @returns {String}
|
|
68
|
+
*/
|
|
69
|
+
const dv = (value) => {
|
|
70
|
+
const titulo = (0, utils_1.clearValue)(value, 10, {
|
|
71
|
+
fillZerosAtLeft: true,
|
|
72
|
+
trimAtRight: true,
|
|
73
|
+
rejectEmpty: true,
|
|
74
|
+
});
|
|
75
|
+
const uf = titulo.substring(8, 10);
|
|
76
|
+
if (uf > '28') {
|
|
77
|
+
throw new ValidationBRError_1.default(`A UF ${uf} é inválida`);
|
|
78
|
+
}
|
|
79
|
+
const sum1 = (0, utils_1.sumElementsByMultipliers)(titulo.substring(0, 8), [2, 3, 4, 5, 6, 7, 8, 9]);
|
|
80
|
+
const dv1 = sum1 % 11 >= 10 ? 0 : sum1 % 11;
|
|
81
|
+
const sum2 = (0, utils_1.sumElementsByMultipliers)(titulo.substring(8, 10) + dv1, [7, 8, 9]);
|
|
82
|
+
const dv2 = sum2 % 11 >= 10 ? 0 : sum2 % 11;
|
|
83
|
+
return `${dv1}${dv2}`;
|
|
84
|
+
};
|
|
85
|
+
exports.dv = dv;
|
|
86
|
+
/**
|
|
87
|
+
* Aplica uma máscara ao número informado
|
|
88
|
+
*
|
|
89
|
+
* @param {String} value Número de Processo
|
|
90
|
+
* @returns {String} Valor com a máscara
|
|
91
|
+
*/
|
|
92
|
+
const mask = (value) => (0, utils_1.applyMask)(value, '0000.0000.0000');
|
|
93
|
+
exports.mask = mask;
|
|
94
|
+
/**
|
|
95
|
+
* fake()
|
|
96
|
+
* Gera um número válido
|
|
97
|
+
*
|
|
98
|
+
* @returns {String}
|
|
99
|
+
*/
|
|
100
|
+
const fake = (withMask = false) => {
|
|
101
|
+
const num = (0, utils_1.fakeNumber)(8, true);
|
|
102
|
+
const uf = (Math.random() * 27 + 1).toFixed(0).padStart(2, '0');
|
|
103
|
+
const titulo = `${num}${uf}${(0, exports.dv)(num + uf)}`;
|
|
104
|
+
if (withMask)
|
|
105
|
+
return (0, exports.mask)(titulo);
|
|
106
|
+
return titulo;
|
|
107
|
+
};
|
|
108
|
+
exports.fake = fake;
|
|
109
|
+
/**
|
|
110
|
+
* validateOrFail()
|
|
111
|
+
* Valida se um número é válido e
|
|
112
|
+
* retorna uma exceção se não estiver
|
|
113
|
+
*
|
|
114
|
+
* @param {String|Number} value Número a ser validado
|
|
115
|
+
* @returns {Boolean}
|
|
116
|
+
*/
|
|
117
|
+
const validateOrFail = (value) => {
|
|
118
|
+
const titulo = (0, exports.normalize)(value);
|
|
119
|
+
if ((0, exports.dv)(titulo) !== titulo.substring(10, 12)) {
|
|
120
|
+
throw ValidationBRError_1.default.INVALID_DV;
|
|
121
|
+
}
|
|
122
|
+
return true;
|
|
123
|
+
};
|
|
124
|
+
exports.validateOrFail = validateOrFail;
|
|
125
|
+
/**
|
|
126
|
+
* validate()
|
|
127
|
+
* Valida se um número é válido
|
|
128
|
+
*
|
|
129
|
+
* @param {String|Number} value Número a ser validado
|
|
130
|
+
* @returns {Boolean}
|
|
131
|
+
*/
|
|
132
|
+
const validate = (value) => {
|
|
133
|
+
try {
|
|
134
|
+
return (0, exports.validateOrFail)(value);
|
|
135
|
+
}
|
|
136
|
+
catch (error) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
exports.validate = validate;
|
|
141
|
+
/**
|
|
142
|
+
* Retorna String sem máscara
|
|
143
|
+
*
|
|
144
|
+
* @param {String|Number} value Valor a remover máscara
|
|
145
|
+
* @returns {String}
|
|
146
|
+
*/
|
|
147
|
+
const normalize = (value) => {
|
|
148
|
+
return (0, utils_1.clearValue)(value, 12, {
|
|
149
|
+
fillZerosAtLeft: true,
|
|
150
|
+
rejectEmpty: true,
|
|
151
|
+
rejectHigherLength: true,
|
|
152
|
+
rejectEqualSequence: true,
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
exports.normalize = normalize;
|
|
156
|
+
exports.default = exports.validate;
|
|
157
|
+
//# sourceMappingURL=tituloEleitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tituloEleitor.js","sourceRoot":"","sources":["../../src/tituloEleitor.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Calcula o DV verificador a partir das regras do MOD11:
|
|
3
|
+
* O valor da soma é dividido por 11. O resultado é o resto da divisão. Caso o resto seja
|
|
4
|
+
* menor que 2, ou seja, o valor da divisão seja 10 ou 11, o resultado é 0.
|
|
5
|
+
*
|
|
6
|
+
* @param {Integer} sum Soma
|
|
7
|
+
* @returns {Integer}
|
|
8
|
+
*/
|
|
9
|
+
export declare function sumToDV(sum: number): number;
|
|
10
|
+
/**
|
|
11
|
+
* Checa se o número repassado possui todos os digitos iguais
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* checkRepeatedSequence(12345678)
|
|
15
|
+
* // -> false
|
|
16
|
+
* checkRepeatedSequence(11111111)
|
|
17
|
+
* // -> true
|
|
18
|
+
*
|
|
19
|
+
*/
|
|
20
|
+
export declare function checkRepeatedSequence(value: string): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Multiplica os elementos de uma string com os elementos de outra, ou de um array
|
|
23
|
+
* e soma o resultado ao final
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* sumElementsByMultipliers('123', '987') //-> 46
|
|
27
|
+
* sumElementsByMultipliers('123', [9, 8, 7]) //-> 46
|
|
28
|
+
*
|
|
29
|
+
* @param {String} value
|
|
30
|
+
* @param {String|Array} multiplier
|
|
31
|
+
* @returns {Integer} Somatório
|
|
32
|
+
*/
|
|
33
|
+
export declare function sumElementsByMultipliers(value: string, multiplier: number[]): number;
|
|
34
|
+
/**
|
|
35
|
+
* fakeNumber()
|
|
36
|
+
* Cria um número aleatório com o número de caracteres
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* fakeNumber(8, true) // -> 00083159
|
|
40
|
+
* fakeNumber(4) // -> 831
|
|
41
|
+
*
|
|
42
|
+
* @param {Integer} length
|
|
43
|
+
* @param {Boolean} forceLength Adiciona zeros à esquerda para ter os números de caractes exatos
|
|
44
|
+
* @returns {String}
|
|
45
|
+
*/
|
|
46
|
+
export declare function fakeNumber(length: number, forceLength?: boolean, isAlpha?: boolean): string;
|
|
47
|
+
/**
|
|
48
|
+
* Limpa um número informado, retirando caracteres diferentes de números,
|
|
49
|
+
* preenchendo com zeros à esquerda se for menor que o tamanho exato e
|
|
50
|
+
* removendo uma parte do número se for maior que tamanho definido.
|
|
51
|
+
*
|
|
52
|
+
* 1) Retira caracteres não-numéricos
|
|
53
|
+
* 2) Preenche com zeros à esquerda se 'value' for menor que 'length'
|
|
54
|
+
* 3) Remove caracteres à direita se 'value' for maior que 'length'
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* clearValue(12345-6, 6) // -> 123456
|
|
58
|
+
* clearValue(12345678, 3) // -> 123
|
|
59
|
+
* clearValue(12345, 10) // -> 0000001234
|
|
60
|
+
*
|
|
61
|
+
* @param {Number|String} value
|
|
62
|
+
* @param {Number} length Tamanho exato. Se for null, só retira os caracteres não-numéricos
|
|
63
|
+
* @returns {String} Número com o tamanho exato
|
|
64
|
+
*/
|
|
65
|
+
export declare function clearValue(value: string | number, length?: number | null, options?: ClearValueOptions): string;
|
|
66
|
+
/**
|
|
67
|
+
* insertAtPosition()
|
|
68
|
+
* Insere um conjunto de caracteres em um local específico de uma string
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* insertAtPosition('AAABBB', 'C', 3) // -> AAACBBB
|
|
72
|
+
* insertAtPosition('000011122223445555', 99, 7) // -> 00001119922223445555
|
|
73
|
+
*
|
|
74
|
+
* @param {String|Number} value Valor original
|
|
75
|
+
* @param {String|Number} insertValue Valor que será inserido
|
|
76
|
+
* @param {String|Number} position Posição que receberá o novo valor
|
|
77
|
+
* @returns {String}
|
|
78
|
+
*
|
|
79
|
+
*/
|
|
80
|
+
export declare function insertAtPosition(value: string, insertValue: string, position: number): string;
|
|
81
|
+
/**
|
|
82
|
+
* removeFromPosition()
|
|
83
|
+
* Retira um conjunto de caracteres de um local específico de uma string
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* removeFromPosition('00001119922223445555', 7,9) // -> 000011122223445555
|
|
87
|
+
* removeFromPosition('AAACBBB', 3,4) // -> AAABBB
|
|
88
|
+
*
|
|
89
|
+
* @param {String|Number} value Valor original
|
|
90
|
+
* @param {String|Number} startPosition
|
|
91
|
+
* @param {String|Number} endPosition
|
|
92
|
+
* @returns {String}
|
|
93
|
+
*
|
|
94
|
+
*/
|
|
95
|
+
export declare function removeFromPosition(value: string, startPosition: number, endPosition: number): string;
|
|
96
|
+
/**
|
|
97
|
+
* applyMask()
|
|
98
|
+
* Aplica uma máscara a uma string
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* applyMask('59650000', '00.000-000') // -> 59.650-000
|
|
102
|
+
* applyMask('99877665544', '(00) 0 0000-0000') // -> (99) 8 7766-5544
|
|
103
|
+
*
|
|
104
|
+
* @param {String|Number} value Valor original
|
|
105
|
+
* @param {String} mask
|
|
106
|
+
* @returns {String}
|
|
107
|
+
*
|
|
108
|
+
*/
|
|
109
|
+
export declare function applyMask(value: string | number, mask: string): string;
|
|
110
|
+
/**
|
|
111
|
+
* randomLetter()
|
|
112
|
+
* Pega uma letra maiúscula aleatoriamente
|
|
113
|
+
*
|
|
114
|
+
* @example
|
|
115
|
+
* randomLetter() // -> A
|
|
116
|
+
* randomLetter() // -> S
|
|
117
|
+
*
|
|
118
|
+
* @returns {String}
|
|
119
|
+
*/
|
|
120
|
+
export declare function randomLetter(): string;
|
|
121
|
+
/**
|
|
122
|
+
* Opções do clearValue
|
|
123
|
+
*/
|
|
124
|
+
interface ClearValueOptions {
|
|
125
|
+
fillZerosAtLeft?: boolean;
|
|
126
|
+
trimAtRight?: boolean;
|
|
127
|
+
rejectEmpty?: boolean;
|
|
128
|
+
rejectHigherLength?: boolean;
|
|
129
|
+
rejectEqualSequence?: boolean;
|
|
130
|
+
}
|
|
131
|
+
export {};
|