validation-br 1.4.5 → 1.5.2
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 -138
- package/dist/cnh.js.map +1 -1
- package/dist/cnh.test.d.ts +1 -1
- package/dist/cnpj.d.ts +114 -82
- package/dist/cnpj.js +179 -129
- 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 -146
- 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 -41
- package/dist/index.test.d.ts +1 -1
- package/dist/judicialProcess.d.ts +126 -126
- package/dist/judicialProcess.js +189 -189
- 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 -154
- 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 -125
- 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 -135
- 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 -121
- 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 -142
- 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 +189 -190
- package/dist/utils.js.map +1 -1
- package/{.eslintrc.js → eslint.config.js} +39 -39
- package/jest.config.js +1 -6
- package/package.json +5 -25
- package/readme.md +11 -2
- package/.eslintcache +0 -1
- package/.eslintignore +0 -2
package/dist/renavam.js
CHANGED
|
@@ -1,122 +1,122 @@
|
|
|
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.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
42
|
-
const ValidationBRError_1 = __importDefault(require("./data/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, utils_1.clearValue)(value, 11, {
|
|
94
|
-
fillZerosAtLeft: true,
|
|
95
|
-
rejectEmpty: true,
|
|
96
|
-
rejectHigherLength: true,
|
|
97
|
-
rejectEqualSequence: true,
|
|
98
|
-
});
|
|
99
|
-
if ((0, exports.dv)(renavam) !== renavam.substring(10, 11)) {
|
|
100
|
-
throw ValidationBRError_1.default.INVALID_DV;
|
|
101
|
-
}
|
|
102
|
-
return true;
|
|
103
|
-
};
|
|
104
|
-
exports.validateOrFail = validateOrFail;
|
|
105
|
-
/**
|
|
106
|
-
* validate()
|
|
107
|
-
* Valida se um número é válido
|
|
108
|
-
*
|
|
109
|
-
* @param {String|Number} value Número a ser validado
|
|
110
|
-
* @returns {Boolean}
|
|
111
|
-
*/
|
|
112
|
-
const validate = (value) => {
|
|
113
|
-
try {
|
|
114
|
-
return (0, exports.validateOrFail)(value);
|
|
115
|
-
}
|
|
116
|
-
catch (error) {
|
|
117
|
-
return false;
|
|
118
|
-
}
|
|
119
|
-
};
|
|
120
|
-
exports.validate = validate;
|
|
121
|
-
exports.default = exports.validate;
|
|
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.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
42
|
+
const ValidationBRError_1 = __importDefault(require("./data/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, utils_1.clearValue)(value, 11, {
|
|
94
|
+
fillZerosAtLeft: true,
|
|
95
|
+
rejectEmpty: true,
|
|
96
|
+
rejectHigherLength: true,
|
|
97
|
+
rejectEqualSequence: true,
|
|
98
|
+
});
|
|
99
|
+
if ((0, exports.dv)(renavam) !== renavam.substring(10, 11)) {
|
|
100
|
+
throw ValidationBRError_1.default.INVALID_DV;
|
|
101
|
+
}
|
|
102
|
+
return true;
|
|
103
|
+
};
|
|
104
|
+
exports.validateOrFail = validateOrFail;
|
|
105
|
+
/**
|
|
106
|
+
* validate()
|
|
107
|
+
* Valida se um número é válido
|
|
108
|
+
*
|
|
109
|
+
* @param {String|Number} value Número a ser validado
|
|
110
|
+
* @returns {Boolean}
|
|
111
|
+
*/
|
|
112
|
+
const validate = (value) => {
|
|
113
|
+
try {
|
|
114
|
+
return (0, exports.validateOrFail)(value);
|
|
115
|
+
}
|
|
116
|
+
catch (error) {
|
|
117
|
+
return false;
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
exports.validate = validate;
|
|
121
|
+
exports.default = exports.validate;
|
|
122
122
|
//# sourceMappingURL=renavam.js.map
|
package/dist/renavam.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renavam.js","sourceRoot":"","sources":["../src/renavam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;;;;;;AAEH,iFAAwD;AACxD,mCAAqF;AAErF;;;;;;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,CAAA;IAEF,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,CAAA;IACnF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAA;IAE3C,OAAO,GAAG,GAAG,EAAE,CAAA;AACjB,CAAC,CAAA;AAXY,QAAA,EAAE,MAWd;AAED;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,cAAc,CAAC,CAAA;AAA3E,QAAA,IAAI,QAAuE;AAExF;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,KAAK,GAAG,IAAA,kBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAElC,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,EAAE,CAAA;IAEtC,IAAI,QAAQ;QAAE,OAAO,IAAA,YAAI,EAAC,OAAO,CAAC,CAAA;IAElC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AARY,QAAA,IAAI,QAQhB;AAED;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QACpC,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,IAAI,IAAA,UAAE,EAAC,OAAO,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"renavam.js","sourceRoot":"","sources":["../src/renavam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;;;;;;AAEH,iFAAwD;AACxD,mCAAqF;AAErF;;;;;;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,CAAA;IAEF,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,CAAA;IACnF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAA;IAE3C,OAAO,GAAG,GAAG,EAAE,CAAA;AACjB,CAAC,CAAA;AAXY,QAAA,EAAE,MAWd;AAED;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,cAAc,CAAC,CAAA;AAA3E,QAAA,IAAI,QAAuE;AAExF;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,KAAK,GAAG,IAAA,kBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAElC,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,EAAE,CAAA;IAEtC,IAAI,QAAQ;QAAE,OAAO,IAAA,YAAI,EAAC,OAAO,CAAC,CAAA;IAElC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AARY,QAAA,IAAI,QAQhB;AAED;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QACpC,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,IAAI,IAAA,UAAE,EAAC,OAAO,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,2BAAiB,CAAC,UAAU,CAAA;IACpC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAbY,QAAA,cAAc,kBAa1B;AAED;;;;;;GAMG;AACI,MAAM,QAAQ,GAAG,CAAC,KAAsB,EAAW,EAAE;IAC1D,IAAI,CAAC;QACH,OAAO,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AANY,QAAA,QAAQ,YAMpB;AAED,kBAAe,gBAAQ,CAAA"}
|
package/dist/renavam.test.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
package/dist/tituloEleitor.d.ts
CHANGED
|
@@ -1,93 +1,93 @@
|
|
|
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
|
-
export default validate;
|
|
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
|
+
export default validate;
|