validation-br 1.5.2 → 2.0.0-next-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/.prettierrc +9 -0
- package/dist/jest.config.d.ts +8 -0
- package/dist/jest.config.d.ts.map +1 -0
- package/dist/jest.config.js +154 -0
- package/dist/jest.config.js.map +1 -0
- package/dist/test/_helpers/array_random.spec.d.ts +2 -0
- package/dist/test/_helpers/array_random.spec.d.ts.map +1 -0
- package/dist/test/_helpers/array_random.spec.js +13 -0
- package/dist/test/_helpers/array_random.spec.js.map +1 -0
- package/dist/test/_helpers/crc.spec.d.ts +2 -0
- package/dist/test/_helpers/crc.spec.d.ts.map +1 -0
- package/dist/test/_helpers/crc.spec.js +11 -0
- package/dist/test/_helpers/crc.spec.js.map +1 -0
- package/dist/test/carplate.spec.d.ts +2 -0
- package/dist/test/carplate.spec.d.ts.map +1 -0
- package/dist/test/carplate.spec.js +141 -0
- package/dist/test/carplate.spec.js.map +1 -0
- package/dist/test/cnh.spec.d.ts +2 -0
- package/dist/test/cnh.spec.d.ts.map +1 -0
- package/dist/test/cnh.spec.js +60 -0
- package/dist/test/cnh.spec.js.map +1 -0
- package/dist/test/cnpj.spec.d.ts +2 -0
- package/dist/test/cnpj.spec.d.ts.map +1 -0
- package/dist/test/cnpj.spec.js +105 -0
- package/dist/test/cnpj.spec.js.map +1 -0
- package/dist/test/cpf.spec.d.ts +2 -0
- package/dist/test/cpf.spec.d.ts.map +1 -0
- package/dist/test/cpf.spec.js +66 -0
- package/dist/test/cpf.spec.js.map +1 -0
- package/dist/test/index.test.d.ts +2 -0
- package/dist/test/index.test.d.ts.map +1 -0
- package/dist/test/index.test.js +77 -0
- package/dist/test/index.test.js.map +1 -0
- package/dist/test/judicial-process.spec.d.ts +2 -0
- package/dist/test/judicial-process.spec.d.ts.map +1 -0
- package/dist/test/judicial-process.spec.js +101 -0
- package/dist/test/judicial-process.spec.js.map +1 -0
- package/dist/test/nup17.spec.d.ts +2 -0
- package/dist/test/nup17.spec.d.ts.map +1 -0
- package/dist/test/nup17.spec.js +70 -0
- package/dist/test/nup17.spec.js.map +1 -0
- package/dist/test/phone.spec.d.ts +2 -0
- package/dist/test/phone.spec.d.ts.map +1 -0
- package/dist/test/phone.spec.js +67 -0
- package/dist/test/phone.spec.js.map +1 -0
- package/dist/test/pis-pasep.spec.d.ts +2 -0
- package/dist/test/pis-pasep.spec.d.ts.map +1 -0
- package/dist/test/pis-pasep.spec.js +65 -0
- package/dist/test/pis-pasep.spec.js.map +1 -0
- package/dist/test/pix-copy-paste.spec.d.ts +2 -0
- package/dist/test/pix-copy-paste.spec.d.ts.map +1 -0
- package/dist/test/pix-copy-paste.spec.js +31 -0
- package/dist/test/pix-copy-paste.spec.js.map +1 -0
- package/dist/test/pix-key.spec.d.ts +2 -0
- package/dist/test/pix-key.spec.d.ts.map +1 -0
- package/dist/test/pix-key.spec.js +36 -0
- package/dist/test/pix-key.spec.js.map +1 -0
- package/dist/test/postal-track-code.test.d.ts +2 -0
- package/dist/test/postal-track-code.test.d.ts.map +1 -0
- package/dist/test/postal-track-code.test.js +75 -0
- package/dist/test/postal-track-code.test.js.map +1 -0
- package/dist/test/renavam.spec.d.ts +2 -0
- package/dist/test/renavam.spec.d.ts.map +1 -0
- package/dist/test/renavam.spec.js +63 -0
- package/dist/test/renavam.spec.js.map +1 -0
- package/dist/test/tituloEleitor.spec.d.ts +2 -0
- package/dist/test/tituloEleitor.spec.d.ts.map +1 -0
- package/dist/test/tituloEleitor.spec.js +68 -0
- package/dist/test/tituloEleitor.spec.js.map +1 -0
- package/dist/test/utils-applyMask.test.d.ts +2 -0
- package/dist/test/utils-applyMask.test.d.ts.map +1 -0
- package/dist/test/utils-applyMask.test.js +18 -0
- package/dist/test/utils-applyMask.test.js.map +1 -0
- package/dist/test/utils-checkRepeatedSequence.test.d.ts +2 -0
- package/dist/test/utils-checkRepeatedSequence.test.d.ts.map +1 -0
- package/dist/test/utils-checkRepeatedSequence.test.js +18 -0
- package/dist/test/utils-checkRepeatedSequence.test.js.map +1 -0
- package/dist/test/utils-clearValue.test.d.ts +2 -0
- package/dist/test/utils-clearValue.test.d.ts.map +1 -0
- package/dist/test/utils-clearValue.test.js +74 -0
- package/dist/test/utils-clearValue.test.js.map +1 -0
- package/dist/test/utils-fakeNumber.test.d.ts +2 -0
- package/dist/test/utils-fakeNumber.test.d.ts.map +1 -0
- package/dist/test/utils-fakeNumber.test.js +24 -0
- package/dist/test/utils-fakeNumber.test.js.map +1 -0
- package/dist/test/utils-insertAtPosition.test.d.ts +2 -0
- package/dist/test/utils-insertAtPosition.test.d.ts.map +1 -0
- package/dist/test/utils-insertAtPosition.test.js +16 -0
- package/dist/test/utils-insertAtPosition.test.js.map +1 -0
- package/dist/test/utils-randomLetter.test.d.ts +2 -0
- package/dist/test/utils-randomLetter.test.d.ts.map +1 -0
- package/dist/test/utils-randomLetter.test.js +14 -0
- package/dist/test/utils-randomLetter.test.js.map +1 -0
- package/dist/test/utils-removeFromPosition.test.d.ts +2 -0
- package/dist/test/utils-removeFromPosition.test.d.ts.map +1 -0
- package/dist/test/utils-removeFromPosition.test.js +16 -0
- package/dist/test/utils-removeFromPosition.test.js.map +1 -0
- package/dist/test/utils-sumElementsByMultipliers.test.d.ts +2 -0
- package/dist/test/utils-sumElementsByMultipliers.test.d.ts.map +1 -0
- package/dist/test/utils-sumElementsByMultipliers.test.js +23 -0
- package/dist/test/utils-sumElementsByMultipliers.test.js.map +1 -0
- package/dist/test/utils-sumToDV.test.d.ts +2 -0
- package/dist/test/utils-sumToDV.test.d.ts.map +1 -0
- package/dist/test/utils-sumToDV.test.js +17 -0
- package/dist/test/utils-sumToDV.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/eslint.config.mjs +11 -0
- package/jest.config.ts +210 -0
- package/package.json +3 -3
- package/readme.md +3 -2
- package/test/_helpers/array_random.spec.ts +12 -0
- package/test/_helpers/crc.spec.ts +13 -0
- package/test/carplate.spec.ts +161 -0
- package/test/cnh.spec.ts +71 -0
- package/test/cnpj.spec.ts +127 -0
- package/test/cpf.spec.ts +76 -0
- package/test/index.test.ts +112 -0
- package/test/judicial-process.spec.ts +131 -0
- package/test/nup17.spec.ts +79 -0
- package/test/phone.spec.ts +75 -0
- package/test/pis-pasep.spec.ts +73 -0
- package/test/pix-copy-paste.spec.ts +37 -0
- package/test/pix-key.spec.ts +41 -0
- package/test/postal-track-code.test.ts +83 -0
- package/test/renavam.spec.ts +71 -0
- package/test/tituloEleitor.spec.ts +72 -0
- package/test/utils-applyMask.test.ts +17 -0
- package/test/utils-checkRepeatedSequence.test.ts +17 -0
- package/test/utils-clearValue.test.ts +85 -0
- package/test/utils-fakeNumber.test.ts +28 -0
- package/test/utils-insertAtPosition.test.ts +15 -0
- package/test/utils-randomLetter.test.ts +14 -0
- package/test/utils-removeFromPosition.test.ts +15 -0
- package/test/utils-sumElementsByMultipliers.test.ts +24 -0
- package/test/utils-sumToDV.test.ts +16 -0
- package/todo.md +18 -0
- package/tsconfig.json +103 -23
- package/.github/workflows/test.yml +0 -39
- package/.prettierrc.js +0 -7
- package/dist/cnh.d.ts +0 -91
- package/dist/cnh.js +0 -139
- package/dist/cnh.js.map +0 -1
- package/dist/cnh.test.d.ts +0 -1
- package/dist/cnpj.d.ts +0 -114
- package/dist/cnpj.js +0 -180
- package/dist/cnpj.js.map +0 -1
- package/dist/cnpj.test.d.ts +0 -1
- package/dist/cpf.d.ts +0 -99
- package/dist/cpf.js +0 -147
- package/dist/cpf.js.map +0 -1
- package/dist/cpf.test.d.ts +0 -1
- package/dist/data/ValidationBRError.d.ts +0 -6
- package/dist/data/ValidationBRError.js +0 -10
- package/dist/data/ValidationBRError.js.map +0 -1
- package/dist/index.d.ts +0 -21
- package/dist/index.js +0 -42
- package/dist/index.js.map +0 -1
- package/dist/index.test.d.ts +0 -1
- package/dist/judicialProcess.d.ts +0 -126
- package/dist/judicialProcess.js +0 -190
- package/dist/judicialProcess.js.map +0 -1
- package/dist/judicialProcess.test.d.ts +0 -1
- package/dist/nup17.d.ts +0 -102
- package/dist/nup17.js +0 -155
- package/dist/nup17.js.map +0 -1
- package/dist/nup17.test.d.ts +0 -1
- package/dist/pisPasep.d.ts +0 -81
- package/dist/pisPasep.js +0 -126
- package/dist/pisPasep.js.map +0 -1
- package/dist/pisPasep.test.d.ts +0 -1
- package/dist/postalCode.d.ts +0 -83
- package/dist/postalCode.js +0 -136
- package/dist/postalCode.js.map +0 -1
- package/dist/postalCode.test.d.ts +0 -1
- package/dist/renavam.d.ts +0 -75
- package/dist/renavam.js +0 -122
- package/dist/renavam.js.map +0 -1
- package/dist/renavam.test.d.ts +0 -1
- package/dist/tituloEleitor.d.ts +0 -93
- package/dist/tituloEleitor.js +0 -143
- package/dist/tituloEleitor.js.map +0 -1
- package/dist/tituloEleitor.test.d.ts +0 -1
- package/dist/utils-applyMask.test.d.ts +0 -1
- package/dist/utils-checkRepeatedSequence.test.d.ts +0 -1
- package/dist/utils-clearValue.test.d.ts +0 -1
- package/dist/utils-fakeNumber.test.d.ts +0 -1
- package/dist/utils-insertAtPosition.test.d.ts +0 -1
- package/dist/utils-invalidListGenerator.test.d.ts +0 -1
- package/dist/utils-randomLetter.test.d.ts +0 -1
- package/dist/utils-removeFromPosition.test.d.ts +0 -1
- package/dist/utils-sumElementsByMultipliers.test.d.ts +0 -1
- package/dist/utils-sumToDV.test.d.ts +0 -1
- package/dist/utils.d.ts +0 -131
- package/dist/utils.js +0 -190
- package/dist/utils.js.map +0 -1
- package/eslint.config.js +0 -82
- package/jest.config.js +0 -11
package/dist/judicialProcess.js
DELETED
|
@@ -1,190 +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.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
86
|
-
exports._getSubCourt = _getSubCourt;
|
|
87
|
-
const ValidationBRError_1 = __importDefault(require("./data/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, utils_1.clearValue)(value, 20, {
|
|
139
|
-
fillZerosAtLeft: true,
|
|
140
|
-
rejectEmpty: true,
|
|
141
|
-
rejectHigherLength: true,
|
|
142
|
-
});
|
|
143
|
-
const processWithoutDV = (0, utils_1.removeFromPosition)(judicialProcess, 7, 9);
|
|
144
|
-
if (processWithoutDV.substring(11, 12) === '0') {
|
|
145
|
-
throw new Error('Código do Órgão Judiciário não pode ser "0"');
|
|
146
|
-
}
|
|
147
|
-
if ((0, exports.dv)(processWithoutDV) !== judicialProcess.substring(7, 9)) {
|
|
148
|
-
throw ValidationBRError_1.default.INVALID_DV;
|
|
149
|
-
}
|
|
150
|
-
return true;
|
|
151
|
-
};
|
|
152
|
-
exports.validateOrFail = validateOrFail;
|
|
153
|
-
/**
|
|
154
|
-
* validate()
|
|
155
|
-
* Valida se um número é válido
|
|
156
|
-
*
|
|
157
|
-
* @param {String} value Número a ser validado
|
|
158
|
-
* @returns {Boolean}
|
|
159
|
-
*/
|
|
160
|
-
const validate = (value) => {
|
|
161
|
-
try {
|
|
162
|
-
return (0, exports.validateOrFail)(value);
|
|
163
|
-
}
|
|
164
|
-
catch (error) {
|
|
165
|
-
return false;
|
|
166
|
-
}
|
|
167
|
-
};
|
|
168
|
-
exports.validate = validate;
|
|
169
|
-
// ////////////////////////////////////////////
|
|
170
|
-
//
|
|
171
|
-
// Funções auxiliares
|
|
172
|
-
//
|
|
173
|
-
// ////////////////////////////////////////////
|
|
174
|
-
/**
|
|
175
|
-
* Gera um número fake da sub corte de acordo com as regras:
|
|
176
|
-
* - Precisa ser uma string numérica de 2 dígitos.
|
|
177
|
-
* - Não pode ser '0'. CAso seja zero, mude para '01'.
|
|
178
|
-
*
|
|
179
|
-
* A função aceita um parâmetro para viabilizar os testes. Caso
|
|
180
|
-
* não seja definido, será gerado aleatoriamente.
|
|
181
|
-
*
|
|
182
|
-
* @param
|
|
183
|
-
*
|
|
184
|
-
*/
|
|
185
|
-
function _getSubCourt(courte = undefined) {
|
|
186
|
-
courte = courte !== null && courte !== void 0 ? courte : (0, utils_1.fakeNumber)(2, true).toString();
|
|
187
|
-
return +courte === 0 ? '01' : courte;
|
|
188
|
-
}
|
|
189
|
-
exports.default = exports.validate;
|
|
190
|
-
//# sourceMappingURL=judicialProcess.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"judicialProcess.js","sourceRoot":"","sources":["../src/judicialProcess.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/nup17.d.ts
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* isFederalProtocol()
|
|
3
|
-
* Calcula se é um número válido de protocolo do Governo Federal Brasileiro
|
|
4
|
-
*
|
|
5
|
-
* @doc
|
|
6
|
-
* O Número Unificado de Protocolo de processos do Governo Federal, também conhecido
|
|
7
|
-
* como NUP17, deve ter 17 caracteres, incluindo o dígito verificador de 2 caracteres.
|
|
8
|
-
*
|
|
9
|
-
* 1) Partes do número
|
|
10
|
-
*
|
|
11
|
-
* - Os caracteres 1 a 5 são um código do órgão que gerou o protocolo.
|
|
12
|
-
*
|
|
13
|
-
* - Os caracteres 6 a 11 são o número sequencial do protocolo, sendo que
|
|
14
|
-
* cada órgão emissor tem sua própria sequência e esta é reiniciada a cada ano.
|
|
15
|
-
*
|
|
16
|
-
* - Os caracteres 12 a 15 são referentes ao ano de protocolo
|
|
17
|
-
*
|
|
18
|
-
* - Os caracteres 16 a 17 são referentes ao Dígito Verificador
|
|
19
|
-
*
|
|
20
|
-
* 1.2) Exemplo
|
|
21
|
-
* ---------------------------------------------------------------
|
|
22
|
-
* | Código do órgão | Número Sequencial | Ano | D V
|
|
23
|
-
* 2 3 0 3 7 . 0 0 1 4 6 2 / 2 0 2 1 - 6 5
|
|
24
|
-
*
|
|
25
|
-
* 2) Cálculo do primeiro DV.
|
|
26
|
-
*
|
|
27
|
-
* - Soma-se o produto das algarismos 1 a 15 pelos números
|
|
28
|
-
* 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
29
|
-
*
|
|
30
|
-
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1
|
|
31
|
-
* x x x x x x x x x x x x x x x
|
|
32
|
-
* 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
33
|
-
* = 32 +45 +0 +39 +84 +0 +0 +9 +32 +42 +12 +10 +0 +6 +2 = 313
|
|
34
|
-
*
|
|
35
|
-
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
36
|
-
* 313 / 11 tem resto 5. 11 - 5 = 6. DV1 é 6.
|
|
37
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
38
|
-
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas
|
|
39
|
-
*
|
|
40
|
-
* 3) Cálculo do segundo DV.
|
|
41
|
-
*
|
|
42
|
-
* - Acrescenta o valor do DV1 ao número e faz o somatório dos produtos pelos números
|
|
43
|
-
* 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
44
|
-
*
|
|
45
|
-
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1 6
|
|
46
|
-
* x x x x x x x x x x x x x x x x
|
|
47
|
-
* 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
48
|
-
* = 34 +48 +0 +42 +91 +0 +0 +10 +36 +48 +14 +12 +0 +8 +3 +12 = 358
|
|
49
|
-
*
|
|
50
|
-
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
51
|
-
* 358 / 11 tem resto 6. 11 - 6 = 1. DV1 é 5.
|
|
52
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
53
|
-
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas.
|
|
54
|
-
*
|
|
55
|
-
* = DV = 65
|
|
56
|
-
*
|
|
57
|
-
* Fonte: https://www.gov.br/compras/pt-br/acesso-a-informacao/legislacao/portarias/portaria-interministerial-no-11-de-25-de-novembro-de-2019
|
|
58
|
-
*
|
|
59
|
-
* @param {String} value Título eleitoral
|
|
60
|
-
* @returns {Boolean}
|
|
61
|
-
*/
|
|
62
|
-
/**
|
|
63
|
-
* dv()
|
|
64
|
-
* Calcula o dígito verificador
|
|
65
|
-
*
|
|
66
|
-
* @param {String} value
|
|
67
|
-
* @returns {String}
|
|
68
|
-
*/
|
|
69
|
-
export declare const dv: (value: string) => string;
|
|
70
|
-
/**
|
|
71
|
-
* Aplica uma máscara ao número informado
|
|
72
|
-
*
|
|
73
|
-
* @param {String} value Número de Processo
|
|
74
|
-
* @returns {String} Valor com a máscara
|
|
75
|
-
*/
|
|
76
|
-
export declare const mask: (value: string) => string;
|
|
77
|
-
/**
|
|
78
|
-
* fake()
|
|
79
|
-
* Gera um número válido
|
|
80
|
-
*
|
|
81
|
-
* @param {Boolean} withMask Define se o número deve ser gerado com ou sem máscara
|
|
82
|
-
* @returns {String}
|
|
83
|
-
*/
|
|
84
|
-
export declare const fake: (withMask?: boolean) => string;
|
|
85
|
-
/**
|
|
86
|
-
* validateOrFail()
|
|
87
|
-
* Valida se um número é válido e
|
|
88
|
-
* retorna uma exceção se não estiver
|
|
89
|
-
*
|
|
90
|
-
* @param {String} value Número a ser validado
|
|
91
|
-
* @returns {Boolean}
|
|
92
|
-
*/
|
|
93
|
-
export declare const validateOrFail: (value: string) => boolean;
|
|
94
|
-
/**
|
|
95
|
-
* validate()
|
|
96
|
-
* Valida se um número é válido
|
|
97
|
-
*
|
|
98
|
-
* @param {String} value Número a ser validado
|
|
99
|
-
* @returns {Boolean}
|
|
100
|
-
*/
|
|
101
|
-
export declare const validate: (value: string) => boolean;
|
|
102
|
-
export default validate;
|
package/dist/nup17.js
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* isFederalProtocol()
|
|
4
|
-
* Calcula se é um número válido de protocolo do Governo Federal Brasileiro
|
|
5
|
-
*
|
|
6
|
-
* @doc
|
|
7
|
-
* O Número Unificado de Protocolo de processos do Governo Federal, também conhecido
|
|
8
|
-
* como NUP17, deve ter 17 caracteres, incluindo o dígito verificador de 2 caracteres.
|
|
9
|
-
*
|
|
10
|
-
* 1) Partes do número
|
|
11
|
-
*
|
|
12
|
-
* - Os caracteres 1 a 5 são um código do órgão que gerou o protocolo.
|
|
13
|
-
*
|
|
14
|
-
* - Os caracteres 6 a 11 são o número sequencial do protocolo, sendo que
|
|
15
|
-
* cada órgão emissor tem sua própria sequência e esta é reiniciada a cada ano.
|
|
16
|
-
*
|
|
17
|
-
* - Os caracteres 12 a 15 são referentes ao ano de protocolo
|
|
18
|
-
*
|
|
19
|
-
* - Os caracteres 16 a 17 são referentes ao Dígito Verificador
|
|
20
|
-
*
|
|
21
|
-
* 1.2) Exemplo
|
|
22
|
-
* ---------------------------------------------------------------
|
|
23
|
-
* | Código do órgão | Número Sequencial | Ano | D V
|
|
24
|
-
* 2 3 0 3 7 . 0 0 1 4 6 2 / 2 0 2 1 - 6 5
|
|
25
|
-
*
|
|
26
|
-
* 2) Cálculo do primeiro DV.
|
|
27
|
-
*
|
|
28
|
-
* - Soma-se o produto das algarismos 1 a 15 pelos números
|
|
29
|
-
* 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
30
|
-
*
|
|
31
|
-
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1
|
|
32
|
-
* x x x x x x x x x x x x x x x
|
|
33
|
-
* 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
34
|
-
* = 32 +45 +0 +39 +84 +0 +0 +9 +32 +42 +12 +10 +0 +6 +2 = 313
|
|
35
|
-
*
|
|
36
|
-
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
37
|
-
* 313 / 11 tem resto 5. 11 - 5 = 6. DV1 é 6.
|
|
38
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
39
|
-
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas
|
|
40
|
-
*
|
|
41
|
-
* 3) Cálculo do segundo DV.
|
|
42
|
-
*
|
|
43
|
-
* - Acrescenta o valor do DV1 ao número e faz o somatório dos produtos pelos números
|
|
44
|
-
* 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
45
|
-
*
|
|
46
|
-
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1 6
|
|
47
|
-
* x x x x x x x x x x x x x x x x
|
|
48
|
-
* 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
49
|
-
* = 34 +48 +0 +42 +91 +0 +0 +10 +36 +48 +14 +12 +0 +8 +3 +12 = 358
|
|
50
|
-
*
|
|
51
|
-
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
52
|
-
* 358 / 11 tem resto 6. 11 - 6 = 1. DV1 é 5.
|
|
53
|
-
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
54
|
-
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas.
|
|
55
|
-
*
|
|
56
|
-
* = DV = 65
|
|
57
|
-
*
|
|
58
|
-
* Fonte: https://www.gov.br/compras/pt-br/acesso-a-informacao/legislacao/portarias/portaria-interministerial-no-11-de-25-de-novembro-de-2019
|
|
59
|
-
*
|
|
60
|
-
* @param {String} value Título eleitoral
|
|
61
|
-
* @returns {Boolean}
|
|
62
|
-
*/
|
|
63
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
64
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
65
|
-
};
|
|
66
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
67
|
-
exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
68
|
-
const ValidationBRError_1 = __importDefault(require("./data/ValidationBRError"));
|
|
69
|
-
const utils_1 = require("./utils");
|
|
70
|
-
/**
|
|
71
|
-
* dv()
|
|
72
|
-
* Calcula o dígito verificador
|
|
73
|
-
*
|
|
74
|
-
* @param {String} value
|
|
75
|
-
* @returns {String}
|
|
76
|
-
*/
|
|
77
|
-
const dv = (value) => {
|
|
78
|
-
const nup = (0, utils_1.clearValue)(value, 15, { rejectEmpty: true, trimAtRight: true });
|
|
79
|
-
const nupReverse = nup.split('').reverse().join('');
|
|
80
|
-
const sum1 = (0, utils_1.sumElementsByMultipliers)(nupReverse, [...Array(15)].map((_, i) => i + 2));
|
|
81
|
-
const dv1 = _specificSumToDV(sum1);
|
|
82
|
-
const sum2 = (0, utils_1.sumElementsByMultipliers)(dv1 + nupReverse, [...Array(16)].map((_, i) => i + 2));
|
|
83
|
-
const dv2 = _specificSumToDV(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, '00000.000000/0000-00');
|
|
94
|
-
exports.mask = mask;
|
|
95
|
-
/**
|
|
96
|
-
* fake()
|
|
97
|
-
* Gera um número válido
|
|
98
|
-
*
|
|
99
|
-
* @param {Boolean} withMask Define se o número deve ser gerado com ou sem máscara
|
|
100
|
-
* @returns {String}
|
|
101
|
-
*/
|
|
102
|
-
const fake = (withMask = false) => {
|
|
103
|
-
const num = (0, utils_1.fakeNumber)(15, true);
|
|
104
|
-
const nup = `${num}${(0, exports.dv)(String(num))}`;
|
|
105
|
-
if (withMask)
|
|
106
|
-
return (0, exports.mask)(nup);
|
|
107
|
-
return nup;
|
|
108
|
-
};
|
|
109
|
-
exports.fake = fake;
|
|
110
|
-
/**
|
|
111
|
-
* validateOrFail()
|
|
112
|
-
* Valida se um número é válido e
|
|
113
|
-
* retorna uma exceção se não estiver
|
|
114
|
-
*
|
|
115
|
-
* @param {String} value Número a ser validado
|
|
116
|
-
* @returns {Boolean}
|
|
117
|
-
*/
|
|
118
|
-
const validateOrFail = (value) => {
|
|
119
|
-
const nup = (0, utils_1.clearValue)(value, 17, {
|
|
120
|
-
rejectEmpty: true,
|
|
121
|
-
rejectHigherLength: true,
|
|
122
|
-
});
|
|
123
|
-
if ((0, exports.dv)(nup) !== nup.substring(15, 17)) {
|
|
124
|
-
throw ValidationBRError_1.default.INVALID_DV;
|
|
125
|
-
}
|
|
126
|
-
return true;
|
|
127
|
-
};
|
|
128
|
-
exports.validateOrFail = validateOrFail;
|
|
129
|
-
/**
|
|
130
|
-
* validate()
|
|
131
|
-
* Valida se um número é válido
|
|
132
|
-
*
|
|
133
|
-
* @param {String} value Número a ser validado
|
|
134
|
-
* @returns {Boolean}
|
|
135
|
-
*/
|
|
136
|
-
const validate = (value) => {
|
|
137
|
-
try {
|
|
138
|
-
return (0, exports.validateOrFail)(value);
|
|
139
|
-
}
|
|
140
|
-
catch (error) {
|
|
141
|
-
return false;
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
exports.validate = validate;
|
|
145
|
-
exports.default = exports.validate;
|
|
146
|
-
function _specificSumToDV(sum) {
|
|
147
|
-
const rest = 11 - (sum % 11);
|
|
148
|
-
const exceptions = [
|
|
149
|
-
{ rest: 11, dv: 1 },
|
|
150
|
-
{ rest: 10, dv: 0 },
|
|
151
|
-
];
|
|
152
|
-
const inExceptions = exceptions.find((item) => item.rest === rest);
|
|
153
|
-
return !inExceptions ? rest : inExceptions.dv;
|
|
154
|
-
}
|
|
155
|
-
//# sourceMappingURL=nup17.js.map
|
package/dist/nup17.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nup17.js","sourceRoot":"","sources":["../src/nup17.ts"],"names":[],"mappings":"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"}
|
package/dist/nup17.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/pisPasep.d.ts
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* isPIS()
|
|
3
|
-
* Calcula se um código de PIS/PASEP/NIS/NIT no formato 268.27649.96-0 é válido. Não
|
|
4
|
-
* valida o formato, portanto, 26827649960 é equivalente a 268.27649.96-0 para efeitos
|
|
5
|
-
* desta validação.
|
|
6
|
-
*
|
|
7
|
-
* @doc
|
|
8
|
-
* - O número de PIS 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 é dividido por 11 e o resultado é subtraído de 11
|
|
30
|
-
* 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
|
|
31
|
-
* Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
|
|
32
|
-
* Caso retorne 1, o resto será 0
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* Fonte: http://www.macoratti.net/alg_pis.htm
|
|
38
|
-
*
|
|
39
|
-
* @param {String} value Objeto postal no formato 268.27649.96-0
|
|
40
|
-
* @returns {Boolean}
|
|
41
|
-
*/
|
|
42
|
-
/**
|
|
43
|
-
* dv()
|
|
44
|
-
* Calcula o dígito verificador
|
|
45
|
-
*
|
|
46
|
-
* @param {Number|String} value
|
|
47
|
-
* @returns {String}
|
|
48
|
-
*/
|
|
49
|
-
export declare const dv: (value: string | number) => string;
|
|
50
|
-
/**
|
|
51
|
-
* Aplica uma máscara ao número informado
|
|
52
|
-
*
|
|
53
|
-
* @param {String} value Número de Processo
|
|
54
|
-
* @returns {String} Valor com a máscara
|
|
55
|
-
*/
|
|
56
|
-
export declare const mask: (value: string | number) => string;
|
|
57
|
-
/**
|
|
58
|
-
* fake()
|
|
59
|
-
* Gera um número válido
|
|
60
|
-
*
|
|
61
|
-
* @returns {String}
|
|
62
|
-
*/
|
|
63
|
-
export declare const fake: (withMask?: boolean) => string;
|
|
64
|
-
/**
|
|
65
|
-
* validateOrFail()
|
|
66
|
-
* Valida se um número é válido e
|
|
67
|
-
* retorna uma exceção se não estiver
|
|
68
|
-
*
|
|
69
|
-
* @param {String|Number} value Número a ser validado
|
|
70
|
-
* @returns {Boolean}
|
|
71
|
-
*/
|
|
72
|
-
export declare const validateOrFail: (value: string | number) => boolean;
|
|
73
|
-
/**
|
|
74
|
-
* validate()
|
|
75
|
-
* Valida se um número é válido
|
|
76
|
-
*
|
|
77
|
-
* @param {String|Number} value Número a ser validado
|
|
78
|
-
* @returns {Boolean}
|
|
79
|
-
*/
|
|
80
|
-
export declare const validate: (value: string | number) => boolean;
|
|
81
|
-
export default validate;
|
package/dist/pisPasep.js
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* isPIS()
|
|
4
|
-
* Calcula se um código de PIS/PASEP/NIS/NIT no formato 268.27649.96-0 é válido. Não
|
|
5
|
-
* valida o formato, portanto, 26827649960 é equivalente a 268.27649.96-0 para efeitos
|
|
6
|
-
* desta validação.
|
|
7
|
-
*
|
|
8
|
-
* @doc
|
|
9
|
-
* - O número de PIS deve possuir 11 caracteres
|
|
10
|
-
*
|
|
11
|
-
* - Os caracteres de 1 a 10 são a numeração documento
|
|
12
|
-
*
|
|
13
|
-
* - O caractere 11 é o dígito verificador.
|
|
14
|
-
*
|
|
15
|
-
* 1) Partes do número
|
|
16
|
-
* _______________________________________________
|
|
17
|
-
* | Número | D V |
|
|
18
|
-
* | 2 6 8 . 2 7 6 4 9 . 9 6 - 0 |
|
|
19
|
-
* |_________________________________________|_____|
|
|
20
|
-
*
|
|
21
|
-
* 2) Cálculo do DV.
|
|
22
|
-
*
|
|
23
|
-
* - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
24
|
-
*
|
|
25
|
-
* 2 6 8 2 7 6 4 9 9 6
|
|
26
|
-
* x x x x x x x x x x
|
|
27
|
-
* 3 2 9 8 7 6 5 4 3 2
|
|
28
|
-
* = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
|
|
29
|
-
*
|
|
30
|
-
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
31
|
-
* 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
|
|
32
|
-
* Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
|
|
33
|
-
* Caso retorne 1, o resto será 0
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* Fonte: http://www.macoratti.net/alg_pis.htm
|
|
39
|
-
*
|
|
40
|
-
* @param {String} value Objeto postal no formato 268.27649.96-0
|
|
41
|
-
* @returns {Boolean}
|
|
42
|
-
*/
|
|
43
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
44
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
45
|
-
};
|
|
46
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
47
|
-
exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
48
|
-
const ValidationBRError_1 = __importDefault(require("./data/ValidationBRError"));
|
|
49
|
-
const utils_1 = require("./utils");
|
|
50
|
-
/**
|
|
51
|
-
* dv()
|
|
52
|
-
* Calcula o dígito verificador
|
|
53
|
-
*
|
|
54
|
-
* @param {Number|String} value
|
|
55
|
-
* @returns {String}
|
|
56
|
-
*/
|
|
57
|
-
const dv = (value) => {
|
|
58
|
-
const pis = (0, utils_1.clearValue)(value, 10, {
|
|
59
|
-
trimAtRight: true,
|
|
60
|
-
rejectEmpty: true,
|
|
61
|
-
});
|
|
62
|
-
const sum = (0, utils_1.sumElementsByMultipliers)(pis, [3, 2, 9, 8, 7, 6, 5, 4, 3, 2]);
|
|
63
|
-
return String((0, utils_1.sumToDV)(sum));
|
|
64
|
-
};
|
|
65
|
-
exports.dv = dv;
|
|
66
|
-
/**
|
|
67
|
-
* Aplica uma máscara ao número informado
|
|
68
|
-
*
|
|
69
|
-
* @param {String} value Número de Processo
|
|
70
|
-
* @returns {String} Valor com a máscara
|
|
71
|
-
*/
|
|
72
|
-
const mask = (value) => (0, utils_1.applyMask)(value, '000.00000.00-0');
|
|
73
|
-
exports.mask = mask;
|
|
74
|
-
/**
|
|
75
|
-
* fake()
|
|
76
|
-
* Gera um número válido
|
|
77
|
-
*
|
|
78
|
-
* @returns {String}
|
|
79
|
-
*/
|
|
80
|
-
const fake = (withMask = false) => {
|
|
81
|
-
const num = (0, utils_1.fakeNumber)(10, true);
|
|
82
|
-
const pis = `${num}${(0, exports.dv)(num)}`;
|
|
83
|
-
if (withMask)
|
|
84
|
-
return (0, exports.mask)(pis);
|
|
85
|
-
return pis;
|
|
86
|
-
};
|
|
87
|
-
exports.fake = fake;
|
|
88
|
-
/**
|
|
89
|
-
* validateOrFail()
|
|
90
|
-
* Valida se um número é válido e
|
|
91
|
-
* retorna uma exceção se não estiver
|
|
92
|
-
*
|
|
93
|
-
* @param {String|Number} value Número a ser validado
|
|
94
|
-
* @returns {Boolean}
|
|
95
|
-
*/
|
|
96
|
-
const validateOrFail = (value) => {
|
|
97
|
-
const pis = (0, utils_1.clearValue)(value, 11, {
|
|
98
|
-
fillZerosAtLeft: true,
|
|
99
|
-
rejectEmpty: true,
|
|
100
|
-
rejectHigherLength: true,
|
|
101
|
-
rejectEqualSequence: true,
|
|
102
|
-
});
|
|
103
|
-
if ((0, exports.dv)(pis) !== pis.substring(10, 11)) {
|
|
104
|
-
throw ValidationBRError_1.default.INVALID_DV;
|
|
105
|
-
}
|
|
106
|
-
return true;
|
|
107
|
-
};
|
|
108
|
-
exports.validateOrFail = validateOrFail;
|
|
109
|
-
/**
|
|
110
|
-
* validate()
|
|
111
|
-
* Valida se um número é válido
|
|
112
|
-
*
|
|
113
|
-
* @param {String|Number} value Número a ser validado
|
|
114
|
-
* @returns {Boolean}
|
|
115
|
-
*/
|
|
116
|
-
const validate = (value) => {
|
|
117
|
-
try {
|
|
118
|
-
return (0, exports.validateOrFail)(value);
|
|
119
|
-
}
|
|
120
|
-
catch (error) {
|
|
121
|
-
return false;
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
exports.validate = validate;
|
|
125
|
-
exports.default = exports.validate;
|
|
126
|
-
//# sourceMappingURL=pisPasep.js.map
|
package/dist/pisPasep.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pisPasep.js","sourceRoot":"","sources":["../src/pisPasep.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;;;;;;AAEH,iFAAwD;AACxD,mCAA8F;AAE9F;;;;;;GAMG;AACI,MAAM,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QAChC,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;KAClB,CAAC,CAAA;IAEF,MAAM,GAAG,GAAG,IAAA,gCAAwB,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAEzE,OAAO,MAAM,CAAC,IAAA,eAAO,EAAC,GAAG,CAAC,CAAC,CAAA;AAC7B,CAAC,CAAA;AATY,QAAA,EAAE,MASd;AAED;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;AAA7E,QAAA,IAAI,QAAyE;AAE1F;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAEhC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,IAAA,UAAE,EAAC,GAAG,CAAC,EAAE,CAAA;IAE9B,IAAI,QAAQ;QAAE,OAAO,IAAA,YAAI,EAAC,GAAG,CAAC,CAAA;IAC9B,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAPY,QAAA,IAAI,QAOhB;AAED;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,KAAK,EAAE,EAAE,EAAE;QAChC,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,IAAI,IAAA,UAAE,EAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QACtC,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/pisPasep.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|