validation-br 1.6.3-b → 1.6.3-c

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/dist/cpf.d.ts DELETED
@@ -1,106 +0,0 @@
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
- /**
100
- * Retorna String sem máscara
101
- *
102
- * @param {String|Number} value Valor a remover máscara
103
- * @returns {String}
104
- */
105
- export declare const normalize: (value: string | number) => string;
106
- export default validate;
package/dist/cpf.js DELETED
@@ -1,157 +0,0 @@
1
- "use strict";
2
- /**
3
- * isCPF()
4
- * Calcula se um CPF é válido
5
- *
6
- * @doc
7
- * CPF deve possuir 11 dígitos.
8
- *
9
- * - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
10
- *
11
- * - O caractere 9 refere-se à região fiscal emissora do documento
12
- * 1 – DF, GO, MS, MT e TO
13
- * 2 – AC, AM, AP, PA, RO e RR
14
- * 3 – CE, MA e PI
15
- * 4 – AL, PB, PE, RN
16
- * 5 – BA e SE
17
- * 6 – MG
18
- * 7 – ES e RJ
19
- * 8 – SP
20
- * 9 – PR e SC
21
- * 0 – RS
22
- *
23
- * - Os caracteres 10 e 11 são dígitos verificadores.
24
- *
25
- * 1) Partes do número
26
- * ------------------------------------------------
27
- * | Número | R | DV |
28
- * 2 8 0 . 0 1 2 . 3 8 9 - 3 8
29
- *
30
- * 2) Cálculo do primeiro DV.
31
- *
32
- * - Soma-se o produto das algarismos 1 a 9 pelos números 10, 9, 8, 7, 6, 5, 4, 3, 2
33
- *
34
- * 2 8 0 0 1 2 3 8 9
35
- * x x x x x x x x x
36
- * 10 9 8 7 6 5 4 3 2
37
- * = 20 +72 +0 +0 +6 +10 +12 +24 +18 = 162
38
- *
39
- * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
40
- * 162 / 11 tem resto 8. 11 - 8 = 3. DV1 é 3.
41
- * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
42
- *
43
- * 3) Cálculo do segundo DV.
44
- *
45
- * - Soma-se o produto das algarismos 1 a 10 pelos números 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
46
- *
47
- * 2 8 0 0 1 2 3 8 9 3
48
- * x x x x x x x x x x
49
- * 11 10 9 8 7 6 5 4 3 2
50
- * = 22 +80 +0 +0 +7 +12 +15 +32 +27 = 201
51
- *
52
- * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
53
- * 201 / 11 tem resto 3. 11 - 3 = 8. DV2 é 8.
54
- * Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
55
- *
56
- * Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-cpf/
57
- *
58
- * @param {String} value Título eleitoral
59
- * @returns {Boolean}
60
- */
61
- var __importDefault = (this && this.__importDefault) || function (mod) {
62
- return (mod && mod.__esModule) ? mod : { "default": mod };
63
- };
64
- Object.defineProperty(exports, "__esModule", { value: true });
65
- exports.normalize = exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
66
- const ValidationBRError_1 = __importDefault(require("./_exceptions/ValidationBRError"));
67
- const utils_1 = require("./utils");
68
- /**
69
- * dv()
70
- * Calcula o dígito verificador
71
- *
72
- * @param {Number|String} value
73
- * @returns {String}
74
- */
75
- const dv = (value) => {
76
- const cpf = (0, utils_1.clearValue)(value, 9, {
77
- trimAtRight: true,
78
- rejectEmpty: true,
79
- });
80
- const sum1 = (0, utils_1.sumElementsByMultipliers)(cpf, [10, 9, 8, 7, 6, 5, 4, 3, 2]);
81
- const dv1 = (0, utils_1.sumToDV)(sum1);
82
- const sum2 = (0, utils_1.sumElementsByMultipliers)(cpf + dv1, [11, 10, 9, 8, 7, 6, 5, 4, 3, 2]);
83
- const dv2 = (0, utils_1.sumToDV)(sum2);
84
- return `${dv1}${dv2}`;
85
- };
86
- exports.dv = dv;
87
- /**
88
- * Aplica uma máscara ao número informado
89
- *
90
- * @param {String} value Número de Processo
91
- * @returns {String} Valor com a máscara
92
- */
93
- const mask = (value) => (0, utils_1.applyMask)(value, '000.000.000-00');
94
- exports.mask = mask;
95
- /**
96
- * fake()
97
- * Gera um número válido
98
- *
99
- * @returns {String}
100
- */
101
- const fake = (withMask = false) => {
102
- const num = (0, utils_1.fakeNumber)(9, true);
103
- const cpf = `${num}${(0, exports.dv)(num)}`;
104
- if (withMask)
105
- return (0, exports.mask)(cpf);
106
- return cpf;
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 cpf = (0, exports.normalize)(value);
119
- if ((0, exports.dv)(cpf) !== cpf.substring(9, 11)) {
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, 11, {
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=cpf.js.map
package/dist/cpf.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cpf.js","sourceRoot":"","sources":["../../src/cpf.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;;;;;;AAEH,wFAAgE;AAChE,mCAA+F;AAE/F;;;;;;GAMG;AACI,MAAM,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,CAAC,EAAE;QAC/B,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAA,gCAAwB,EAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;IAE1B,MAAM,IAAI,GAAG,IAAA,gCAAwB,EAAC,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;IAE1B,OAAO,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;AACxB,CAAC,CAAC;AAbW,QAAA,EAAE,MAab;AAEF;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAA9E,QAAA,IAAI,QAA0E;AAE3F;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,IAAA,UAAE,EAAC,GAAG,CAAC,EAAE,CAAC;IAE/B,IAAI,QAAQ;QAAE,OAAO,IAAA,YAAI,EAAC,GAAG,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAPW,QAAA,IAAI,QAOf;AAEF;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,GAAG,GAAG,IAAA,iBAAS,EAAC,KAAK,CAAC,CAAC;IAE7B,IAAI,IAAA,UAAE,EAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,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"}
package/dist/index.d.ts DELETED
@@ -1,21 +0,0 @@
1
- export declare const isCNH: (value: string | number) => boolean;
2
- export declare const isCNPJ: (value: string | number) => boolean;
3
- export declare const isCPF: (value: string | number) => boolean;
4
- export declare const isJudicialProcess: (value: string) => boolean;
5
- export declare const isPIS: (value: string) => boolean;
6
- export declare const isPostalCode: (value: string) => boolean;
7
- export declare const isRenavam: (value: string) => boolean;
8
- export declare const isTituloEleitor: (value: string | number) => boolean;
9
- export declare const isNUP17: (value: string) => boolean;
10
- declare const _default: {
11
- isCNH: (value: string | number) => boolean;
12
- isCNPJ: (value: string | number) => boolean;
13
- isCPF: (value: string | number) => boolean;
14
- isJudicialProcess: (value: string) => boolean;
15
- isPIS: (value: string) => boolean;
16
- isPostalCode: (value: string) => boolean;
17
- isRenavam: (value: string) => boolean;
18
- isTituloEleitor: (value: string | number) => boolean;
19
- isNUP17: (value: string) => boolean;
20
- };
21
- export default _default;
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,+BAAwC;AACxC,iCAA0C;AAC1C,+BAAwC;AACxC,uDAAgE;AAChE,mCAA4C;AAC5C,yCAAkD;AAClD,6CAAsD;AACtD,uCAAgD;AAChD,mDAA4D;AAErD,MAAM,KAAK,GAAG,CAAC,KAAsB,EAAW,EAAE,CAAC,IAAA,cAAG,EAAC,KAAK,CAAC,CAAC;AAAxD,QAAA,KAAK,SAAmD;AAC9D,MAAM,MAAM,GAAG,CAAC,KAAsB,EAAW,EAAE,CAAC,IAAA,eAAI,EAAC,KAAK,CAAC,CAAC;AAA1D,QAAA,MAAM,UAAoD;AAChE,MAAM,KAAK,GAAG,CAAC,KAAsB,EAAW,EAAE,CAAC,IAAA,cAAG,EAAC,KAAK,CAAC,CAAC;AAAxD,QAAA,KAAK,SAAmD;AAC9D,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,IAAA,0BAAe,EAAC,KAAK,CAAC,CAAC;AAAvE,QAAA,iBAAiB,qBAAsD;AAC7E,MAAM,KAAK,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC;AAApD,QAAA,KAAK,SAA+C;AAC1D,MAAM,YAAY,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,IAAA,qBAAU,EAAC,KAAK,CAAC,CAAC;AAA7D,QAAA,YAAY,gBAAiD;AACnE,MAAM,SAAS,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,IAAA,kBAAO,EAAC,KAAK,CAAC,CAAC;AAAvD,QAAA,SAAS,aAA8C;AAC7D,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAW,EAAE,CAAC,IAAA,wBAAa,EAAC,KAAK,CAAC,CAAC;AAA5E,QAAA,eAAe,mBAA6D;AAClF,MAAM,OAAO,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,CAAC;AAAnD,QAAA,OAAO,WAA4C;AAEhE,kBAAe;IACb,KAAK,EAAL,aAAK;IACL,MAAM,EAAN,cAAM;IACN,KAAK,EAAL,aAAK;IACL,iBAAiB,EAAjB,yBAAiB;IACjB,KAAK,EAAL,aAAK;IACL,YAAY,EAAZ,oBAAY;IACZ,SAAS,EAAT,iBAAS;IACT,eAAe,EAAf,uBAAe;IACf,OAAO,EAAP,eAAO;CACR,CAAC"}
@@ -1,133 +0,0 @@
1
- /**
2
- * judicialProcess
3
- * Valida, mascara e cria números de processos judiciais
4
- *
5
- * @link
6
- * https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
7
- * http://ghiorzi.org/DVnew.htm#f
8
- *
9
- * @doc
10
- * Os números de processos judiciais são usados a partir de 2010 para unificar a
11
- * numeração de processos no Brasil e são usados em todos os tribunais.
12
- *
13
- * O número do processo, sem os caracteres especiais, devem possuir até 20 números
14
- * e deve seguir o padrão abaixo:
15
- *
16
- * 1) Partes do número
17
- * 0002080-25.2012.5.15.0049
18
- * NNNNNNN-DD.AAAA.J.TR.OOOO
19
- * |______|__|____|_|__|____|
20
- * | | | | | |----> Unidade de origem do processo com 4 caracteres
21
- * | | | | |--------> TR=Tribunal do segmento do poder judiciário com 2 caracteres
22
- * | | | |----------> J=Órgão do poder Judiciário com 1 caractere
23
- * | | |-------------> Ano do ajuizamento do processo com 4 caracteres
24
- * | |-----------------> Dígito verificador com 2 caracteres
25
- * |----------------------> Número sequencial do Processo, por unidade de
26
- * origem, reiniciado anualmente com 7 caracteres
27
- *
28
- * Órgãos do Poder Judiciário
29
- * 1 - Supremo Tribunal Federal
30
- * 2 - Conselho Nacional de Justiça
31
- * 3 - Superior Tribunal de Justiça
32
- * 4 - Justiça Federal
33
- * 5 - Justiça do Trabalho
34
- * 6 - Justiça Eleitoral
35
- * 7 - Justiça Militar da União
36
- * 8 - Justiça dos Estados e do Distrito Federal e Territórios
37
- * 9 - Justiça Militar Estadual
38
- *
39
- *
40
- * 2) Dígito Verificador
41
- *
42
- * O algoritmo usado para o cálculo do DV chama-se Módulo 97 de Base 10 (ISO 7064).
43
- *
44
- * Nota: O número do processo possui 20 caracteres e ultrapassa o tamanho máximo
45
- * do inteiro em javascript, impedindo que façamos o cálculo diretamente, desta
46
- * forma, será nacessária uma fatoração para que o resultado seja o correto.
47
- *
48
- * 2.1) Cálculo do DV
49
- * - Caso o DV seja conhecido, ele precisa ser removido do número e colocado
50
- * como "00" ao final. Caso não esteja incluso no número, adicione '00' ao final.
51
- *
52
- * Ex.: O processo "00020802520125150049", cujo dv é "25", será calculado como
53
- * "000208020125150049" e receberá "00" ao final. O número usado para o cálculo
54
- * do DV será "00020802012515004900"
55
- *
56
- * 2.2) Etapas de Cálculo
57
- *
58
- * 00020802012515004900
59
- * ↓↓
60
- * DV ao final como "00"
61
- *
62
- * - Aplicamos o MOD 97 aos caracteres de 0 a 7 para calcular a primeira parte
63
- * part1 = 0002080 % 97 = 43
64
- *
65
- * - Concatenamos part1 ao ano, órgão do poder judiciário e tribunal e aplicamos o MOD 97
66
- * para obtermos o valor da part2
67
- * part2 = ( part1 +''+ 2012 +''+ 5 +''+ 15 ) % 97 = 26
68
- *
69
- * - Concatemos part2 ao código do órgão de origem e ao "00" do final e aplicamos
70
- * o MOD 97 ao resultado
71
- * part3 = ( part2 + '0049' + '00') % 97 = 73
72
- *
73
- * - Subtraímos o resultado de 98
74
- * dv = 98 - 73 = 25
75
- *
76
- * O Dígito verificador é 25 e deve ser aplicado após o 7º caractere do número do processo
77
- *
78
- * Fonte: https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
79
- */
80
- /**
81
- *
82
- *
83
- */
84
- export declare const dv: (value: string) => string;
85
- /**
86
- * Aplica uma máscara ao número informado
87
- *
88
- * @param {String} value Número de Processo
89
- * @returns {String} Valor com a máscara
90
- */
91
- export declare const mask: (value: string | number) => string;
92
- /**
93
- *
94
- *
95
- */
96
- export declare const fake: (withMask?: boolean) => string;
97
- /**
98
- * validateOrFail()
99
- * Valida se um número é válido e
100
- * retorna uma exceção se não estiver
101
- *
102
- * @param {String} value Número a ser validado
103
- * @returns {Boolean}
104
- */
105
- export declare const validateOrFail: (value: string) => boolean;
106
- /**
107
- * validate()
108
- * Valida se um número é válido
109
- *
110
- * @param {String} value Número a ser validado
111
- * @returns {Boolean}
112
- */
113
- export declare const validate: (value: string) => boolean;
114
- /**
115
- * Gera um número fake da sub corte de acordo com as regras:
116
- * - Precisa ser uma string numérica de 2 dígitos.
117
- * - Não pode ser '0'. CAso seja zero, mude para '01'.
118
- *
119
- * A função aceita um parâmetro para viabilizar os testes. Caso
120
- * não seja definido, será gerado aleatoriamente.
121
- *
122
- * @param
123
- *
124
- */
125
- export declare function _getSubCourt(courte?: string | undefined): string;
126
- /**
127
- * Retorna String sem máscara
128
- *
129
- * @param {String|Number} value Valor a remover máscara
130
- * @returns {String}
131
- */
132
- export declare const normalize: (value: string | number) => string;
133
- export default validate;
@@ -1,200 +0,0 @@
1
- "use strict";
2
- /**
3
- * judicialProcess
4
- * Valida, mascara e cria números de processos judiciais
5
- *
6
- * @link
7
- * https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
8
- * http://ghiorzi.org/DVnew.htm#f
9
- *
10
- * @doc
11
- * Os números de processos judiciais são usados a partir de 2010 para unificar a
12
- * numeração de processos no Brasil e são usados em todos os tribunais.
13
- *
14
- * O número do processo, sem os caracteres especiais, devem possuir até 20 números
15
- * e deve seguir o padrão abaixo:
16
- *
17
- * 1) Partes do número
18
- * 0002080-25.2012.5.15.0049
19
- * NNNNNNN-DD.AAAA.J.TR.OOOO
20
- * |______|__|____|_|__|____|
21
- * | | | | | |----> Unidade de origem do processo com 4 caracteres
22
- * | | | | |--------> TR=Tribunal do segmento do poder judiciário com 2 caracteres
23
- * | | | |----------> J=Órgão do poder Judiciário com 1 caractere
24
- * | | |-------------> Ano do ajuizamento do processo com 4 caracteres
25
- * | |-----------------> Dígito verificador com 2 caracteres
26
- * |----------------------> Número sequencial do Processo, por unidade de
27
- * origem, reiniciado anualmente com 7 caracteres
28
- *
29
- * Órgãos do Poder Judiciário
30
- * 1 - Supremo Tribunal Federal
31
- * 2 - Conselho Nacional de Justiça
32
- * 3 - Superior Tribunal de Justiça
33
- * 4 - Justiça Federal
34
- * 5 - Justiça do Trabalho
35
- * 6 - Justiça Eleitoral
36
- * 7 - Justiça Militar da União
37
- * 8 - Justiça dos Estados e do Distrito Federal e Territórios
38
- * 9 - Justiça Militar Estadual
39
- *
40
- *
41
- * 2) Dígito Verificador
42
- *
43
- * O algoritmo usado para o cálculo do DV chama-se Módulo 97 de Base 10 (ISO 7064).
44
- *
45
- * Nota: O número do processo possui 20 caracteres e ultrapassa o tamanho máximo
46
- * do inteiro em javascript, impedindo que façamos o cálculo diretamente, desta
47
- * forma, será nacessária uma fatoração para que o resultado seja o correto.
48
- *
49
- * 2.1) Cálculo do DV
50
- * - Caso o DV seja conhecido, ele precisa ser removido do número e colocado
51
- * como "00" ao final. Caso não esteja incluso no número, adicione '00' ao final.
52
- *
53
- * Ex.: O processo "00020802520125150049", cujo dv é "25", será calculado como
54
- * "000208020125150049" e receberá "00" ao final. O número usado para o cálculo
55
- * do DV será "00020802012515004900"
56
- *
57
- * 2.2) Etapas de Cálculo
58
- *
59
- * 00020802012515004900
60
- * ↓↓
61
- * DV ao final como "00"
62
- *
63
- * - Aplicamos o MOD 97 aos caracteres de 0 a 7 para calcular a primeira parte
64
- * part1 = 0002080 % 97 = 43
65
- *
66
- * - Concatenamos part1 ao ano, órgão do poder judiciário e tribunal e aplicamos o MOD 97
67
- * para obtermos o valor da part2
68
- * part2 = ( part1 +''+ 2012 +''+ 5 +''+ 15 ) % 97 = 26
69
- *
70
- * - Concatemos part2 ao código do órgão de origem e ao "00" do final e aplicamos
71
- * o MOD 97 ao resultado
72
- * part3 = ( part2 + '0049' + '00') % 97 = 73
73
- *
74
- * - Subtraímos o resultado de 98
75
- * dv = 98 - 73 = 25
76
- *
77
- * O Dígito verificador é 25 e deve ser aplicado após o 7º caractere do número do processo
78
- *
79
- * Fonte: https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
80
- */
81
- var __importDefault = (this && this.__importDefault) || function (mod) {
82
- return (mod && mod.__esModule) ? mod : { "default": mod };
83
- };
84
- Object.defineProperty(exports, "__esModule", { value: true });
85
- exports.normalize = exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
86
- exports._getSubCourt = _getSubCourt;
87
- const ValidationBRError_1 = __importDefault(require("./_exceptions/ValidationBRError"));
88
- const utils_1 = require("./utils");
89
- /**
90
- *
91
- *
92
- */
93
- const dv = (value) => {
94
- const judicialProcess = (0, utils_1.clearValue)(value, 18, { trimAtRight: true, rejectEmpty: true });
95
- const num = judicialProcess.substring(0, 7);
96
- const yearAndCourt = judicialProcess.substring(7, 14);
97
- const origin = judicialProcess.substring(14, 18);
98
- return String(98 - (Number(`${Number(`${Number(num) % 97}${yearAndCourt}`) % 97}${origin}00`) % 97)).padStart(2, '0');
99
- };
100
- exports.dv = dv;
101
- /**
102
- * Aplica uma máscara ao número informado
103
- *
104
- * @param {String} value Número de Processo
105
- * @returns {String} Valor com a máscara
106
- */
107
- const mask = (value) => (0, utils_1.applyMask)(value, '0000000-00.0000.0.00.0000');
108
- exports.mask = mask;
109
- /**
110
- *
111
- *
112
- */
113
- const fake = (withMask = false) => {
114
- const num = (0, utils_1.fakeNumber)(7, true);
115
- const year = new Date().getFullYear() - +(0, utils_1.fakeNumber)(1);
116
- let courte1 = (0, utils_1.fakeNumber)(1, true); // Não pode ser '0'
117
- courte1 = courte1 === '0' ? '1' : courte1;
118
- const courte2 = _getSubCourt();
119
- const courte = `${courte1}${courte2}`;
120
- const origin = (0, utils_1.fakeNumber)(4, true);
121
- const judicialProcess = `${num}${year}${courte}${origin}`;
122
- const digits = (0, exports.dv)(judicialProcess);
123
- const finalNumber = (0, utils_1.insertAtPosition)(judicialProcess, digits, 7);
124
- if (withMask)
125
- return (0, exports.mask)(finalNumber);
126
- return finalNumber;
127
- };
128
- exports.fake = fake;
129
- /**
130
- * validateOrFail()
131
- * Valida se um número é válido e
132
- * retorna uma exceção se não estiver
133
- *
134
- * @param {String} value Número a ser validado
135
- * @returns {Boolean}
136
- */
137
- const validateOrFail = (value) => {
138
- const judicialProcess = (0, exports.normalize)(value);
139
- const processWithoutDV = (0, utils_1.removeFromPosition)(judicialProcess, 7, 9);
140
- if (processWithoutDV.substring(11, 12) === '0') {
141
- throw new Error('Código do Órgão Judiciário não pode ser "0"');
142
- }
143
- if ((0, exports.dv)(processWithoutDV) !== judicialProcess.substring(7, 9)) {
144
- throw ValidationBRError_1.default.INVALID_DV;
145
- }
146
- return true;
147
- };
148
- exports.validateOrFail = validateOrFail;
149
- /**
150
- * validate()
151
- * Valida se um número é válido
152
- *
153
- * @param {String} value Número a ser validado
154
- * @returns {Boolean}
155
- */
156
- const validate = (value) => {
157
- try {
158
- return (0, exports.validateOrFail)(value);
159
- }
160
- catch (error) {
161
- return false;
162
- }
163
- };
164
- exports.validate = validate;
165
- // ////////////////////////////////////////////
166
- //
167
- // Funções auxiliares
168
- //
169
- // ////////////////////////////////////////////
170
- /**
171
- * Gera um número fake da sub corte de acordo com as regras:
172
- * - Precisa ser uma string numérica de 2 dígitos.
173
- * - Não pode ser '0'. CAso seja zero, mude para '01'.
174
- *
175
- * A função aceita um parâmetro para viabilizar os testes. Caso
176
- * não seja definido, será gerado aleatoriamente.
177
- *
178
- * @param
179
- *
180
- */
181
- function _getSubCourt(courte = undefined) {
182
- courte = courte !== null && courte !== void 0 ? courte : (0, utils_1.fakeNumber)(2, true).toString();
183
- return +courte === 0 ? '01' : courte;
184
- }
185
- /**
186
- * Retorna String sem máscara
187
- *
188
- * @param {String|Number} value Valor a remover máscara
189
- * @returns {String}
190
- */
191
- const normalize = (value) => {
192
- return (0, utils_1.clearValue)(value, 20, {
193
- fillZerosAtLeft: true,
194
- rejectEmpty: true,
195
- rejectHigherLength: true,
196
- });
197
- };
198
- exports.normalize = normalize;
199
- exports.default = exports.validate;
200
- //# sourceMappingURL=judicialProcess.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"judicialProcess.js","sourceRoot":"","sources":["../../src/judicialProcess.ts"],"names":[],"mappings":"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"}