npu-validator-library
Version:
Uma biblioteca para validação de números CNJ
38 lines (37 loc) • 1.67 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CNJValidator = void 0;
var CNJValidator;
(function (CNJValidator) {
function validate(numeroCNJ) {
var cleanCNJ = numeroCNJ.replace(/[.\-_]/g, '');
if (cleanCNJ.length !== 20) {
return { valid: false, error: 'Erro! O número CNJ deve ter 20 caracteres após remover os caracteres inválidos.' };
}
var numeroIdentificador = cleanCNJ.substring(0, 7);
var digitoVerificador = cleanCNJ.substring(7, 9);
var anoProcesso = cleanCNJ.substring(9, 13);
var codigoJustica = cleanCNJ.substring(13, 14);
var tribunal = cleanCNJ.substring(14, 16);
var comarca = cleanCNJ.substring(16, 20);
var operacaoDV = Number(numeroIdentificador) % 97;
var operacao1 = Number("".concat(operacaoDV).concat(anoProcesso).concat(codigoJustica).concat(tribunal)) % 97;
var operacao2 = Number("".concat(operacao1).concat(comarca).concat(digitoVerificador)) % 97;
if (operacao2 !== 1) {
return { valid: false, error: 'Erro! O número CNJ informado não é válido.' };
}
return {
valid: true,
processo: {
numeroCNJ: cleanCNJ,
numeroIdentificador: numeroIdentificador,
digitoVerificador: digitoVerificador,
anoProcesso: anoProcesso,
codigoJustica: codigoJustica,
tribunal: tribunal,
comarca: comarca,
},
};
}
CNJValidator.validate = validate;
})(CNJValidator || (exports.CNJValidator = CNJValidator = {}));