UNPKG

cnj-validate

Version:

Biblioteca TypeScript para validação e análise de números de processos em conformidade com o CNJ (Conselho Nacional de Justiça) do Brasil

84 lines 3.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SEGMENTS = void 0; exports.getSegment = getSegment; exports.isValidSegmentCode = isValidSegmentCode; exports.getAllSegments = getAllSegments; const segment_1 = require("../types/segment"); /** * Mapeamento completo de segmentos do Poder Judiciário */ exports.SEGMENTS = { [segment_1.SegmentCode.STF]: { number: segment_1.SegmentCode.STF, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.STF], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.STF], }, [segment_1.SegmentCode.CNJ]: { number: segment_1.SegmentCode.CNJ, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.CNJ], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.CNJ], }, [segment_1.SegmentCode.STJ]: { number: segment_1.SegmentCode.STJ, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.STJ], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.STJ], }, [segment_1.SegmentCode.TRF]: { number: segment_1.SegmentCode.TRF, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.TRF], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.TRF], }, [segment_1.SegmentCode.TRT]: { number: segment_1.SegmentCode.TRT, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.TRT], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.TRT], }, [segment_1.SegmentCode.TRE]: { number: segment_1.SegmentCode.TRE, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.TRE], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.TRE], }, [segment_1.SegmentCode.STM]: { number: segment_1.SegmentCode.STM, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.STM], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.STM], }, [segment_1.SegmentCode.TJ]: { number: segment_1.SegmentCode.TJ, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.TJ], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.TJ], }, [segment_1.SegmentCode.TJM]: { number: segment_1.SegmentCode.TJM, name: segment_1.SEGMENT_NAMES[segment_1.SegmentCode.TJM], short: segment_1.SEGMENT_SHORTS[segment_1.SegmentCode.TJM], }, }; /** * Obtém informações de um segmento pelo código */ function getSegment(segmentCode) { const code = typeof segmentCode === 'string' ? parseInt(segmentCode, 10) : segmentCode; if (isNaN(code) || code < 1 || code > 9) { return null; } return exports.SEGMENTS[code] || null; } /** * Valida se um código de segmento é válido */ function isValidSegmentCode(code) { const numCode = typeof code === 'string' ? parseInt(code, 10) : code; return (!isNaN(numCode) && numCode >= 1 && numCode <= 9 && exports.SEGMENTS[numCode] !== undefined); } /** * Lista todos os segmentos disponíveis */ function getAllSegments() { return Object.keys(exports.SEGMENTS).map((key) => exports.SEGMENTS[parseInt(key, 10)]); } //# sourceMappingURL=segments.js.map