@br-validators/core 1.7.0 → 1.8.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/README.md +32 -9
- package/dist/aeroportos.d.ts +1 -1
- package/dist/anp-combustiveis.d.ts +1 -1
- package/dist/bancos.d.ts +1 -1
- package/dist/batch.d.ts +3 -3
- package/dist/batch.js +27 -25
- package/dist/boleto.d.ts +2 -2
- package/dist/boleto.js +5 -5
- package/dist/brcode.d.ts +2 -2
- package/dist/brcode.js +8 -8
- package/dist/cartao-credito.d.ts +2 -2
- package/dist/cartao-credito.js +3 -3
- package/dist/cbo.d.ts +1 -1
- package/dist/cep.d.ts +3 -3
- package/dist/cep.js +4 -4
- package/dist/cest.d.ts +1 -1
- package/dist/cfop.d.ts +1 -1
- package/dist/{chunk-FL4UUTAC.js → chunk-26HMLR4Y.js} +3 -3
- package/dist/{chunk-FL4UUTAC.js.map → chunk-26HMLR4Y.js.map} +1 -1
- package/dist/{chunk-LPGSPM53.js → chunk-2EYJMAE2.js} +3 -3
- package/dist/{chunk-LPGSPM53.js.map → chunk-2EYJMAE2.js.map} +1 -1
- package/dist/{chunk-NWXFSSGF.js → chunk-2HD6TA3O.js} +3 -3
- package/dist/{chunk-NWXFSSGF.js.map → chunk-2HD6TA3O.js.map} +1 -1
- package/dist/chunk-2NSBFMTP.js +125 -0
- package/dist/chunk-2NSBFMTP.js.map +1 -0
- package/dist/{chunk-VDCITFZG.js → chunk-2ZWBFVYY.js} +3 -3
- package/dist/{chunk-VDCITFZG.js.map → chunk-2ZWBFVYY.js.map} +1 -1
- package/dist/{chunk-EGDZGSHA.js → chunk-3EVLQVBC.js} +3 -3
- package/dist/{chunk-EGDZGSHA.js.map → chunk-3EVLQVBC.js.map} +1 -1
- package/dist/{chunk-A2JXKXPS.js → chunk-3ZIXLRXZ.js} +4 -3
- package/dist/chunk-3ZIXLRXZ.js.map +1 -0
- package/dist/{chunk-MXWI7LLA.js → chunk-47PZ7WGA.js} +23 -19
- package/dist/chunk-47PZ7WGA.js.map +1 -0
- package/dist/{chunk-3OTYX7QX.js → chunk-4T2ZBJFM.js} +3 -3
- package/dist/{chunk-3OTYX7QX.js.map → chunk-4T2ZBJFM.js.map} +1 -1
- package/dist/{chunk-4GMBZLAS.js → chunk-5I6WYO5R.js} +3 -3
- package/dist/{chunk-4GMBZLAS.js.map → chunk-5I6WYO5R.js.map} +1 -1
- package/dist/{chunk-ZZN5JNVJ.js → chunk-7EMUKPPG.js} +8 -8
- package/dist/{chunk-ZZN5JNVJ.js.map → chunk-7EMUKPPG.js.map} +1 -1
- package/dist/{chunk-ULNZHOMA.js → chunk-AG3VELYX.js} +5 -14
- package/dist/chunk-AG3VELYX.js.map +1 -0
- package/dist/chunk-BG72VA7O.js +33 -0
- package/dist/chunk-BG72VA7O.js.map +1 -0
- package/dist/{chunk-4TOP3CZQ.js → chunk-BNM3RSDY.js} +24 -19
- package/dist/chunk-BNM3RSDY.js.map +1 -0
- package/dist/{chunk-RNT4GCP3.js → chunk-BSNVQQTV.js} +25 -20
- package/dist/chunk-BSNVQQTV.js.map +1 -0
- package/dist/chunk-BSSRVJ2C.js +14 -0
- package/dist/chunk-BSSRVJ2C.js.map +1 -0
- package/dist/{chunk-YEVKV2NP.js → chunk-DAX5PVBJ.js} +10 -8
- package/dist/chunk-DAX5PVBJ.js.map +1 -0
- package/dist/{chunk-43FQHKCC.js → chunk-DMUWIPJR.js} +3 -3
- package/dist/{chunk-43FQHKCC.js.map → chunk-DMUWIPJR.js.map} +1 -1
- package/dist/{chunk-G557DGIX.js → chunk-E2BVDZKJ.js} +3 -3
- package/dist/{chunk-G557DGIX.js.map → chunk-E2BVDZKJ.js.map} +1 -1
- package/dist/{chunk-UXH6EHK6.js → chunk-EDJC6HIP.js} +3 -3
- package/dist/{chunk-UXH6EHK6.js.map → chunk-EDJC6HIP.js.map} +1 -1
- package/dist/{chunk-4NFEM2SU.js → chunk-EMZCVV5Y.js} +9 -3
- package/dist/chunk-EMZCVV5Y.js.map +1 -0
- package/dist/chunk-FI2JE6AS.js +15 -0
- package/dist/chunk-FI2JE6AS.js.map +1 -0
- package/dist/{chunk-EOXFX7MM.js → chunk-G4YT6X7N.js} +3 -3
- package/dist/{chunk-EOXFX7MM.js.map → chunk-G4YT6X7N.js.map} +1 -1
- package/dist/chunk-G65WTGYO.js +31 -0
- package/dist/chunk-G65WTGYO.js.map +1 -0
- package/dist/chunk-HIWHBRFG.js +30 -0
- package/dist/chunk-HIWHBRFG.js.map +1 -0
- package/dist/{chunk-SCCMKFSR.js → chunk-J3QGK6MX.js} +33 -33
- package/dist/{chunk-SCCMKFSR.js.map → chunk-J3QGK6MX.js.map} +1 -1
- package/dist/{chunk-P3EJRH4P.js → chunk-LXB5FIAQ.js} +4 -4
- package/dist/{chunk-P3EJRH4P.js.map → chunk-LXB5FIAQ.js.map} +1 -1
- package/dist/{chunk-B4LJI7EP.js → chunk-M3RBXFYG.js} +39 -20
- package/dist/chunk-M3RBXFYG.js.map +1 -0
- package/dist/{chunk-3DLNIUBY.js → chunk-M6VUQK73.js} +5 -5
- package/dist/{chunk-3DLNIUBY.js.map → chunk-M6VUQK73.js.map} +1 -1
- package/dist/{chunk-2M4RVHRO.js → chunk-MLUDCL3P.js} +3 -3
- package/dist/{chunk-2M4RVHRO.js.map → chunk-MLUDCL3P.js.map} +1 -1
- package/dist/{chunk-GVQMJ45R.js → chunk-MZZNNXAB.js} +27 -21
- package/dist/chunk-MZZNNXAB.js.map +1 -0
- package/dist/{chunk-DVA6QQUF.js → chunk-O3HZW2GM.js} +3 -3
- package/dist/{chunk-DVA6QQUF.js.map → chunk-O3HZW2GM.js.map} +1 -1
- package/dist/{chunk-5S3IURHL.js → chunk-O7RJQUAJ.js} +3 -3
- package/dist/{chunk-5S3IURHL.js.map → chunk-O7RJQUAJ.js.map} +1 -1
- package/dist/{chunk-IJ2DAVSD.js → chunk-OM5ELPM6.js} +3 -3
- package/dist/{chunk-IJ2DAVSD.js.map → chunk-OM5ELPM6.js.map} +1 -1
- package/dist/chunk-OPFCKUFX.js +31 -0
- package/dist/chunk-OPFCKUFX.js.map +1 -0
- package/dist/{chunk-2JSOXG2M.js → chunk-P37C3MVF.js} +3 -3
- package/dist/{chunk-2JSOXG2M.js.map → chunk-P37C3MVF.js.map} +1 -1
- package/dist/chunk-P5BDKYBC.js +3 -0
- package/dist/chunk-P5BDKYBC.js.map +1 -0
- package/dist/{chunk-HCH6G5XY.js → chunk-PUTVO6HG.js} +3 -3
- package/dist/{chunk-HCH6G5XY.js.map → chunk-PUTVO6HG.js.map} +1 -1
- package/dist/{chunk-PN4XUBLV.js → chunk-Q2CFVQ2U.js} +3 -3
- package/dist/{chunk-PN4XUBLV.js.map → chunk-Q2CFVQ2U.js.map} +1 -1
- package/dist/{chunk-GAU2MGUQ.js → chunk-QKAXRXU5.js} +3 -3
- package/dist/{chunk-GAU2MGUQ.js.map → chunk-QKAXRXU5.js.map} +1 -1
- package/dist/{chunk-OWD47AWI.js → chunk-QZPKTG4A.js} +3 -3
- package/dist/{chunk-OWD47AWI.js.map → chunk-QZPKTG4A.js.map} +1 -1
- package/dist/{chunk-URNYB2CC.js → chunk-RNI5G42M.js} +4 -4
- package/dist/{chunk-URNYB2CC.js.map → chunk-RNI5G42M.js.map} +1 -1
- package/dist/{chunk-37IHHQKK.js → chunk-ROU5ZHN7.js} +4 -4
- package/dist/{chunk-37IHHQKK.js.map → chunk-ROU5ZHN7.js.map} +1 -1
- package/dist/{chunk-274K6AOM.js → chunk-RP5UWF2G.js} +3 -3
- package/dist/{chunk-274K6AOM.js.map → chunk-RP5UWF2G.js.map} +1 -1
- package/dist/{chunk-QSSKPIG5.js → chunk-SIMI5XYE.js} +3 -3
- package/dist/{chunk-QSSKPIG5.js.map → chunk-SIMI5XYE.js.map} +1 -1
- package/dist/{chunk-TTDHGQEC.js → chunk-SQO7BO3Y.js} +3 -3
- package/dist/{chunk-TTDHGQEC.js.map → chunk-SQO7BO3Y.js.map} +1 -1
- package/dist/{chunk-MXOYICSK.js → chunk-SXPLYH4N.js} +3 -3
- package/dist/{chunk-MXOYICSK.js.map → chunk-SXPLYH4N.js.map} +1 -1
- package/dist/{chunk-F7G4ISQB.js → chunk-UANHHEWY.js} +3 -3
- package/dist/{chunk-F7G4ISQB.js.map → chunk-UANHHEWY.js.map} +1 -1
- package/dist/{chunk-TAOFFAG3.js → chunk-UJXGDUKJ.js} +3 -3
- package/dist/{chunk-TAOFFAG3.js.map → chunk-UJXGDUKJ.js.map} +1 -1
- package/dist/chunk-VXHJLWMA.js +115 -0
- package/dist/chunk-VXHJLWMA.js.map +1 -0
- package/dist/chunk-W64OQYC4.js +13 -0
- package/dist/chunk-W64OQYC4.js.map +1 -0
- package/dist/{chunk-MNBNKSMF.js → chunk-WAVBQYPE.js} +4 -4
- package/dist/{chunk-MNBNKSMF.js.map → chunk-WAVBQYPE.js.map} +1 -1
- package/dist/{chunk-CYBWPBXJ.js → chunk-WE6RG6OC.js} +4 -4
- package/dist/{chunk-CYBWPBXJ.js.map → chunk-WE6RG6OC.js.map} +1 -1
- package/dist/{chunk-Z7KH65RZ.js → chunk-WKDCI3NI.js} +3 -3
- package/dist/{chunk-Z7KH65RZ.js.map → chunk-WKDCI3NI.js.map} +1 -1
- package/dist/chunk-XFKSJRWM.js +14 -0
- package/dist/chunk-XFKSJRWM.js.map +1 -0
- package/dist/chunk-XHHJTKSP.js +33 -0
- package/dist/chunk-XHHJTKSP.js.map +1 -0
- package/dist/chunk-XVT5QOAL.js +30 -0
- package/dist/chunk-XVT5QOAL.js.map +1 -0
- package/dist/{chunk-VE2XZSKP.js → chunk-YA7RWTAE.js} +3 -3
- package/dist/{chunk-VE2XZSKP.js.map → chunk-YA7RWTAE.js.map} +1 -1
- package/dist/chunk-YAHKWOSP.js +35 -0
- package/dist/chunk-YAHKWOSP.js.map +1 -0
- package/dist/{chunk-3ZALSJZT.js → chunk-YJBKWUCE.js} +4 -3
- package/dist/chunk-YJBKWUCE.js.map +1 -0
- package/dist/cnaes.d.ts +4 -2
- package/dist/cnaes.js +2 -1
- package/dist/cnaes.js.map +1 -1
- package/dist/cnh.d.ts +2 -2
- package/dist/cnh.js +4 -4
- package/dist/cnis.d.ts +50 -0
- package/dist/cnis.js +7 -0
- package/dist/cnis.js.map +1 -0
- package/dist/cnpj-motivos.d.ts +52 -0
- package/dist/cnpj-motivos.js +292 -0
- package/dist/cnpj-motivos.js.map +1 -0
- package/dist/cnpj.d.ts +2 -2
- package/dist/cnpj.js +4 -4
- package/dist/compare.d.ts +3 -3
- package/dist/compare.js +29 -27
- package/dist/cpf.d.ts +2 -2
- package/dist/cpf.js +4 -4
- package/dist/cst.d.ts +73 -0
- package/dist/cst.js +482 -0
- package/dist/cst.js.map +1 -0
- package/dist/data-catalog.d.ts +2 -2
- package/dist/data-catalog.js +42 -28
- package/dist/data-catalog.js.map +1 -1
- package/dist/detect.d.ts +2 -2
- package/dist/detect.js +25 -23
- package/dist/diff.d.ts +3 -3
- package/dist/diff.js +29 -27
- package/dist/ean.d.ts +43 -0
- package/dist/ean.js +6 -0
- package/dist/ean.js.map +1 -0
- package/dist/esocial.d.ts +45 -0
- package/dist/esocial.js +387 -0
- package/dist/esocial.js.map +1 -0
- package/dist/feriados.d.ts +1 -1
- package/dist/generate.d.ts +1 -1
- package/dist/generate.js +38 -36
- package/dist/ibge.d.ts +34 -2
- package/dist/ibge.js +109 -1
- package/dist/ibge.js.map +1 -1
- package/dist/ibpt.d.ts +74 -0
- package/dist/ibpt.js +166 -0
- package/dist/ibpt.js.map +1 -0
- package/dist/incoterms.d.ts +1 -1
- package/dist/{index-CJ5ACErT.d.ts → index-BmoilwS2.d.ts} +2 -2
- package/dist/index.d.ts +11 -9
- package/dist/index.js +70 -60
- package/dist/index.js.map +1 -1
- package/dist/{inscricao-estadual-produtor-rural-BNAyLQPY.d.ts → inscricao-estadual-produtor-rural-Hfq6jN1n.d.ts} +1 -1
- package/dist/inscricao-estadual-produtor-rural.d.ts +2 -2
- package/dist/inscricao-estadual-produtor-rural.js +3 -3
- package/dist/inscricao-estadual.d.ts +3 -3
- package/dist/inscricao-estadual.js +4 -4
- package/dist/lc116.d.ts +42 -0
- package/dist/lc116.js +866 -0
- package/dist/lc116.js.map +1 -0
- package/dist/mask.d.ts +3 -3
- package/dist/mask.js +41 -37
- package/dist/moedas.d.ts +1 -1
- package/dist/natureza-juridica.d.ts +1 -1
- package/dist/nbs.d.ts +1 -1
- package/dist/ncm.d.ts +1 -1
- package/dist/nfe-chave.d.ts +2 -2
- package/dist/nfe-chave.js +3 -3
- package/dist/paises-bacen.d.ts +1 -1
- package/dist/pis-pasep.d.ts +2 -2
- package/dist/pis-pasep.js +5 -3
- package/dist/{pix-QsM0lMas.d.ts → pix-BcPQzXRx.d.ts} +1 -1
- package/dist/pix.d.ts +2 -2
- package/dist/pix.js +8 -8
- package/dist/placa.d.ts +2 -2
- package/dist/placa.js +4 -4
- package/dist/pncp-reference.d.ts +1 -1
- package/dist/portos.d.ts +1 -1
- package/dist/processo-judicial.d.ts +2 -2
- package/dist/processo-judicial.js +3 -3
- package/dist/ptax.d.ts +53 -0
- package/dist/ptax.js +485 -0
- package/dist/ptax.js.map +1 -0
- package/dist/renavam.d.ts +2 -2
- package/dist/renavam.js +4 -4
- package/dist/rg.d.ts +2 -2
- package/dist/rg.js +2 -2
- package/dist/sanitize.d.ts +2 -2
- package/dist/sanitize.js +24 -22
- package/dist/simples-nacional.d.ts +67 -0
- package/dist/simples-nacional.js +178 -0
- package/dist/simples-nacional.js.map +1 -0
- package/dist/telefone.d.ts +3 -3
- package/dist/telefone.js +3 -3
- package/dist/titulo-eleitor.d.ts +2 -2
- package/dist/titulo-eleitor.js +4 -4
- package/dist/transparencia-snapshots.d.ts +1 -1
- package/dist/transparencia-snapshots.js +1 -1
- package/dist/tse-municipios.d.ts +1 -1
- package/dist/{types-CCKLomYy.d.ts → types-CnePu8im.d.ts} +1 -1
- package/dist/{types-CQvCmvGu.d.ts → types-DTtrW1Km.d.ts} +2 -2
- package/dist/{validation-result-hfVg2-Mc.d.ts → validation-result-Rb7C0_xj.d.ts} +30 -2
- package/package.json +47 -2
- package/dist/chunk-3ZALSJZT.js.map +0 -1
- package/dist/chunk-4NFEM2SU.js.map +0 -1
- package/dist/chunk-4TOP3CZQ.js.map +0 -1
- package/dist/chunk-A2JXKXPS.js.map +0 -1
- package/dist/chunk-B4LJI7EP.js.map +0 -1
- package/dist/chunk-GVQMJ45R.js.map +0 -1
- package/dist/chunk-MXWI7LLA.js.map +0 -1
- package/dist/chunk-RNT4GCP3.js.map +0 -1
- package/dist/chunk-ULNZHOMA.js.map +0 -1
- package/dist/chunk-WAYYRZ2L.js +0 -23
- package/dist/chunk-WAYYRZ2L.js.map +0 -1
- package/dist/chunk-YEVKV2NP.js.map +0 -1
package/dist/ibge.js
CHANGED
|
@@ -38,6 +38,11 @@ var IBGE_GOLDEN_MUNICIPIO_SP = 3550308;
|
|
|
38
38
|
var IBGE_GOLDEN_MUNICIPIO_SORRISO = 5107925;
|
|
39
39
|
var IBGE_GOLDEN_MUNICIPIO_BRASILIA = 5300108;
|
|
40
40
|
var IBGE_GOLDEN_ESTADO_SP = 35;
|
|
41
|
+
var IBGE_MUNICIPIO_CODIGOS_URL = "https://www.ibge.gov.br/explica/codigos-dos-municipios.php";
|
|
42
|
+
var NFE_MOC_ANEXO_I_URL = "https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=";
|
|
43
|
+
var CMUNFG_GOLDEN_BASE_SAO_PAULO = "355030";
|
|
44
|
+
var CMUNFG_GOLDEN_SAO_PAULO = 3550308;
|
|
45
|
+
var CMUNFG_GOLDEN_EXCEPTION_BOM_PRINCIPIO = 2201919;
|
|
41
46
|
|
|
42
47
|
// src/ibge/data/estados.json
|
|
43
48
|
var estados_default = [
|
|
@@ -28166,9 +28171,112 @@ function getMunicipioPorCodigo(codigo) {
|
|
|
28166
28171
|
return municipios.find((municipio) => municipio.codigo === codigo);
|
|
28167
28172
|
}
|
|
28168
28173
|
|
|
28174
|
+
// src/ibge/cmunfg-exceptions.ts
|
|
28175
|
+
var CMUNFG_DV_EXCEPTIONS = {
|
|
28176
|
+
"220191": 2201919,
|
|
28177
|
+
"220225": 2202251,
|
|
28178
|
+
"220198": 2201988,
|
|
28179
|
+
"261153": 2611533,
|
|
28180
|
+
"311783": 3117836,
|
|
28181
|
+
"315213": 3152131,
|
|
28182
|
+
"430587": 4305871,
|
|
28183
|
+
"520393": 5203939,
|
|
28184
|
+
"520396": 5203962
|
|
28185
|
+
};
|
|
28186
|
+
|
|
28187
|
+
// src/ibge/cmunfg.ts
|
|
28188
|
+
var CMUNFG_LENGTH = 7;
|
|
28189
|
+
var CMUNFG_BASE_LENGTH = 6;
|
|
28190
|
+
function digitsOnlyFromNumber(codigo) {
|
|
28191
|
+
if (!Number.isFinite(codigo) || !Number.isInteger(codigo) || codigo < 0) {
|
|
28192
|
+
return "";
|
|
28193
|
+
}
|
|
28194
|
+
return String(codigo);
|
|
28195
|
+
}
|
|
28196
|
+
function normalizeInputDigits(codigo) {
|
|
28197
|
+
if (typeof codigo === "number") {
|
|
28198
|
+
return digitsOnlyFromNumber(codigo);
|
|
28199
|
+
}
|
|
28200
|
+
return codigo.trim().replace(/\D/g, "");
|
|
28201
|
+
}
|
|
28202
|
+
function hasInvalidCharacters(code) {
|
|
28203
|
+
return !/^[\d.\-\s]+$/u.test(code.trim());
|
|
28204
|
+
}
|
|
28205
|
+
function sumDigitPair(doubled) {
|
|
28206
|
+
if (doubled > 9) {
|
|
28207
|
+
return Math.floor(doubled / 10) + doubled % 10;
|
|
28208
|
+
}
|
|
28209
|
+
return doubled;
|
|
28210
|
+
}
|
|
28211
|
+
function computeCmunFgCheckDigit(base6) {
|
|
28212
|
+
if (!/^\d{6}$/u.test(base6)) {
|
|
28213
|
+
return void 0;
|
|
28214
|
+
}
|
|
28215
|
+
let sum = 0;
|
|
28216
|
+
for (let index = 0; index < CMUNFG_BASE_LENGTH; index += 1) {
|
|
28217
|
+
const digit = Number.parseInt(base6.charAt(index), 10);
|
|
28218
|
+
const position = index + 1;
|
|
28219
|
+
if (position % 2 === 0) {
|
|
28220
|
+
sum += sumDigitPair(digit * 2);
|
|
28221
|
+
} else {
|
|
28222
|
+
sum += digit;
|
|
28223
|
+
}
|
|
28224
|
+
}
|
|
28225
|
+
return (10 - sum % 10) % 10;
|
|
28226
|
+
}
|
|
28227
|
+
function buildCmunFgFromBase6(base6) {
|
|
28228
|
+
const exception = CMUNFG_DV_EXCEPTIONS[base6];
|
|
28229
|
+
if (exception !== void 0) {
|
|
28230
|
+
return String(exception).padStart(CMUNFG_LENGTH, "0");
|
|
28231
|
+
}
|
|
28232
|
+
const checkDigit = computeCmunFgCheckDigit(base6);
|
|
28233
|
+
return `${base6}${String(checkDigit)}`;
|
|
28234
|
+
}
|
|
28235
|
+
function padCmunFg(digits) {
|
|
28236
|
+
return digits.padStart(CMUNFG_LENGTH, "0");
|
|
28237
|
+
}
|
|
28238
|
+
function toCmunFg(codigo) {
|
|
28239
|
+
const digits = normalizeInputDigits(codigo);
|
|
28240
|
+
if (digits.length === CMUNFG_BASE_LENGTH) {
|
|
28241
|
+
return buildCmunFgFromBase6(digits);
|
|
28242
|
+
}
|
|
28243
|
+
if (digits.length === CMUNFG_LENGTH) {
|
|
28244
|
+
const base6 = digits.slice(0, CMUNFG_BASE_LENGTH);
|
|
28245
|
+
const canonical = buildCmunFgFromBase6(base6);
|
|
28246
|
+
return padCmunFg(digits) === canonical ? canonical : void 0;
|
|
28247
|
+
}
|
|
28248
|
+
return void 0;
|
|
28249
|
+
}
|
|
28250
|
+
function parseCmunFg(code) {
|
|
28251
|
+
const trimmed = code.trim();
|
|
28252
|
+
if (trimmed.length === 0) {
|
|
28253
|
+
return { ok: false, reason: "EMPTY_INPUT" };
|
|
28254
|
+
}
|
|
28255
|
+
if (hasInvalidCharacters(trimmed)) {
|
|
28256
|
+
return { ok: false, reason: "INVALID_CHARS" };
|
|
28257
|
+
}
|
|
28258
|
+
const digits = trimmed.replace(/\D/g, "");
|
|
28259
|
+
if (digits.length !== CMUNFG_LENGTH) {
|
|
28260
|
+
return { ok: false, reason: "INVALID_LENGTH" };
|
|
28261
|
+
}
|
|
28262
|
+
const padded = padCmunFg(digits);
|
|
28263
|
+
const base6 = padded.slice(0, CMUNFG_BASE_LENGTH);
|
|
28264
|
+
const checkDigit = Number.parseInt(padded.charAt(CMUNFG_BASE_LENGTH), 10);
|
|
28265
|
+
const expected = buildCmunFgFromBase6(base6);
|
|
28266
|
+
if (expected !== padded) {
|
|
28267
|
+
return { ok: false, reason: "CHECK_DIGIT_MISMATCH" };
|
|
28268
|
+
}
|
|
28269
|
+
return {
|
|
28270
|
+
ok: true,
|
|
28271
|
+
codigo: Number.parseInt(padded, 10),
|
|
28272
|
+
base6,
|
|
28273
|
+
checkDigit
|
|
28274
|
+
};
|
|
28275
|
+
}
|
|
28276
|
+
|
|
28169
28277
|
// src/ibge/version.ts
|
|
28170
28278
|
var IBGE_DATA_VERSION = metadata_default;
|
|
28171
28279
|
|
|
28172
|
-
export { IBGE_DATA_VERSION, IBGE_ESTADOS_URL, IBGE_GOLDEN_ESTADO_SP, IBGE_GOLDEN_MUNICIPIO_BRASILIA, IBGE_GOLDEN_MUNICIPIO_SORRISO, IBGE_GOLDEN_MUNICIPIO_SP, IBGE_MUNICIPIOS_URL, IBGE_OFFICIAL_DOCS_URL, IBGE_UF_SIGLAS, getEstados, getMunicipioPorCodigo, getMunicipios };
|
|
28280
|
+
export { CMUNFG_GOLDEN_BASE_SAO_PAULO, CMUNFG_GOLDEN_EXCEPTION_BOM_PRINCIPIO, CMUNFG_GOLDEN_SAO_PAULO, IBGE_DATA_VERSION, IBGE_ESTADOS_URL, IBGE_GOLDEN_ESTADO_SP, IBGE_GOLDEN_MUNICIPIO_BRASILIA, IBGE_GOLDEN_MUNICIPIO_SORRISO, IBGE_GOLDEN_MUNICIPIO_SP, IBGE_MUNICIPIOS_URL, IBGE_MUNICIPIO_CODIGOS_URL, IBGE_OFFICIAL_DOCS_URL, IBGE_UF_SIGLAS, NFE_MOC_ANEXO_I_URL, computeCmunFgCheckDigit, getEstados, getMunicipioPorCodigo, getMunicipios, parseCmunFg, toCmunFg };
|
|
28173
28281
|
//# sourceMappingURL=ibge.js.map
|
|
28174
28282
|
//# sourceMappingURL=ibge.js.map
|