@br-validators/core 1.8.0 → 1.8.2
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 +10 -5
- package/dist/aeroportos.js +1 -1
- package/dist/bancos.js +8 -1
- package/dist/bancos.js.map +1 -1
- package/dist/batch.js +3 -3
- package/dist/cbo.js +1 -1
- package/dist/cest.js +1 -1
- package/dist/cfop.js +1 -1
- package/dist/{chunk-BBYLFHZZ.js → chunk-2NPRTAOL.js} +6 -6
- package/dist/{chunk-BBYLFHZZ.js.map → chunk-2NPRTAOL.js.map} +1 -1
- package/dist/{chunk-DAX5PVBJ.js → chunk-2VB24TH4.js} +3 -3
- package/dist/{chunk-DAX5PVBJ.js.map → chunk-2VB24TH4.js.map} +1 -1
- package/dist/{chunk-XHHJTKSP.js → chunk-2ZPIOQVY.js} +8 -8
- package/dist/{chunk-XHHJTKSP.js.map → chunk-2ZPIOQVY.js.map} +1 -1
- package/dist/{chunk-MAJPROT7.js → chunk-4MFEP2QY.js} +6 -6
- package/dist/{chunk-MAJPROT7.js.map → chunk-4MFEP2QY.js.map} +1 -1
- package/dist/{chunk-M3RBXFYG.js → chunk-5FFAZ5LR.js} +3 -3
- package/dist/{chunk-M3RBXFYG.js.map → chunk-5FFAZ5LR.js.map} +1 -1
- package/dist/{chunk-BSNVQQTV.js → chunk-5WC4ARY4.js} +3 -3
- package/dist/{chunk-BSNVQQTV.js.map → chunk-5WC4ARY4.js.map} +1 -1
- package/dist/{chunk-47PZ7WGA.js → chunk-6IN5S7AG.js} +3 -3
- package/dist/{chunk-47PZ7WGA.js.map → chunk-6IN5S7AG.js.map} +1 -1
- package/dist/{chunk-26HMLR4Y.js → chunk-6QJCIP4H.js} +3 -3
- package/dist/{chunk-26HMLR4Y.js.map → chunk-6QJCIP4H.js.map} +1 -1
- package/dist/{chunk-3ZIXLRXZ.js → chunk-7PXHV4CF.js} +3 -3
- package/dist/{chunk-3ZIXLRXZ.js.map → chunk-7PXHV4CF.js.map} +1 -1
- package/dist/{chunk-UGSA7FSW.js → chunk-7T7EDXBM.js} +6 -6
- package/dist/{chunk-UGSA7FSW.js.map → chunk-7T7EDXBM.js.map} +1 -1
- package/dist/{chunk-DH7N2ZS6.js → chunk-A2TSYANY.js} +6 -6
- package/dist/{chunk-DH7N2ZS6.js.map → chunk-A2TSYANY.js.map} +1 -1
- package/dist/{chunk-YAHKWOSP.js → chunk-BPGBJFTV.js} +4 -4
- package/dist/{chunk-YAHKWOSP.js.map → chunk-BPGBJFTV.js.map} +1 -1
- package/dist/{chunk-HSLV626U.js → chunk-EIOSTGMX.js} +6 -6
- package/dist/{chunk-HSLV626U.js.map → chunk-EIOSTGMX.js.map} +1 -1
- package/dist/{chunk-OPFCKUFX.js → chunk-FWFQVUTG.js} +13 -10
- package/dist/chunk-FWFQVUTG.js.map +1 -0
- package/dist/{chunk-J3QGK6MX.js → chunk-GIZG6VWS.js} +4 -4
- package/dist/{chunk-J3QGK6MX.js.map → chunk-GIZG6VWS.js.map} +1 -1
- package/dist/{chunk-YJBKWUCE.js → chunk-HOGF5ANH.js} +3 -3
- package/dist/{chunk-YJBKWUCE.js.map → chunk-HOGF5ANH.js.map} +1 -1
- package/dist/{chunk-DFPIMLGD.js → chunk-JVPKZS3T.js} +6 -6
- package/dist/{chunk-DFPIMLGD.js.map → chunk-JVPKZS3T.js.map} +1 -1
- package/dist/{chunk-6PODNJTJ.js → chunk-JVVIUZHB.js} +5 -5
- package/dist/{chunk-6PODNJTJ.js.map → chunk-JVVIUZHB.js.map} +1 -1
- package/dist/{chunk-HIWHBRFG.js → chunk-M6XGWU5R.js} +5 -5
- package/dist/{chunk-HIWHBRFG.js.map → chunk-M6XGWU5R.js.map} +1 -1
- package/dist/{chunk-MZZNNXAB.js → chunk-NMY4ECGY.js} +4 -4
- package/dist/{chunk-MZZNNXAB.js.map → chunk-NMY4ECGY.js.map} +1 -1
- package/dist/{chunk-CQQDYYFS.js → chunk-OTYQ3MKK.js} +6 -6
- package/dist/{chunk-CQQDYYFS.js.map → chunk-OTYQ3MKK.js.map} +1 -1
- package/dist/{chunk-2FQOQMS6.js → chunk-STY67B46.js} +5 -5
- package/dist/{chunk-2FQOQMS6.js.map → chunk-STY67B46.js.map} +1 -1
- package/dist/{chunk-AF5FGAI3.js → chunk-SXX5IAUM.js} +5 -5
- package/dist/{chunk-AF5FGAI3.js.map → chunk-SXX5IAUM.js.map} +1 -1
- package/dist/{chunk-GFYWUMYH.js → chunk-T2MWL5GJ.js} +6 -6
- package/dist/{chunk-GFYWUMYH.js.map → chunk-T2MWL5GJ.js.map} +1 -1
- package/dist/{chunk-BNM3RSDY.js → chunk-TKRWMI3K.js} +4 -4
- package/dist/{chunk-BNM3RSDY.js.map → chunk-TKRWMI3K.js.map} +1 -1
- package/dist/{chunk-BBKNHH72.js → chunk-UJFRPQ3J.js} +6 -6
- package/dist/{chunk-BBKNHH72.js.map → chunk-UJFRPQ3J.js.map} +1 -1
- package/dist/{chunk-RRG2HJMY.js → chunk-UOPDOBQ2.js} +5 -5
- package/dist/{chunk-RRG2HJMY.js.map → chunk-UOPDOBQ2.js.map} +1 -1
- package/dist/{chunk-JOEHEKVE.js → chunk-UZX4MG3Y.js} +7 -7
- package/dist/{chunk-JOEHEKVE.js.map → chunk-UZX4MG3Y.js.map} +1 -1
- package/dist/{chunk-2HD6TA3O.js → chunk-WB5NMR4B.js} +3 -3
- package/dist/{chunk-2HD6TA3O.js.map → chunk-WB5NMR4B.js.map} +1 -1
- package/dist/{chunk-FR6Y743Q.js → chunk-YAQUDINU.js} +6 -6
- package/dist/{chunk-FR6Y743Q.js.map → chunk-YAQUDINU.js.map} +1 -1
- package/dist/{chunk-XVT5QOAL.js → chunk-YUAMWVIU.js} +4 -4
- package/dist/{chunk-XVT5QOAL.js.map → chunk-YUAMWVIU.js.map} +1 -1
- package/dist/{chunk-KTP26VPJ.js → chunk-ZO3YFOJX.js} +6 -6
- package/dist/{chunk-KTP26VPJ.js.map → chunk-ZO3YFOJX.js.map} +1 -1
- package/dist/{chunk-EJX4OM7K.js → chunk-ZR3HSPZZ.js} +5 -5
- package/dist/{chunk-EJX4OM7K.js.map → chunk-ZR3HSPZZ.js.map} +1 -1
- package/dist/{chunk-BMIYI2TC.js → chunk-ZR5W6J3D.js} +6 -6
- package/dist/{chunk-BMIYI2TC.js.map → chunk-ZR5W6J3D.js.map} +1 -1
- package/dist/cnaes.js +1 -1
- package/dist/cnpj-motivos.js +1 -1
- package/dist/compare.js +5 -5
- package/dist/cst.js +1 -1
- package/dist/data-catalog.js +23 -23
- package/dist/detect.js +3 -3
- package/dist/diff.js +5 -5
- package/dist/esocial.js +1 -1
- package/dist/generate.js +4 -4
- package/dist/ibge.js +1 -1
- package/dist/ibpt.js +114 -23
- package/dist/ibpt.js.map +1 -1
- package/dist/incoterms.js +1 -1
- package/dist/index.js +12 -12
- package/dist/mask.js +4 -4
- package/dist/moedas.js +1 -1
- package/dist/natureza-juridica.js +1 -1
- package/dist/nbs.js +1 -1
- package/dist/ncm.js +1 -1
- package/dist/paises-bacen.js +1 -1
- package/dist/pncp-reference.js +1 -1
- package/dist/portos.js +1 -1
- package/dist/ptax.js +101 -1
- package/dist/ptax.js.map +1 -1
- package/dist/sanitize.js +4 -4
- package/dist/telefone.js +3 -3
- package/dist/transparencia-snapshots.js +2 -2
- package/dist/transparencia-snapshots.js.map +1 -1
- package/dist/tse-municipios.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-OPFCKUFX.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @br-validators/core
|
|
2
2
|
|
|
3
3
|
> **The** Brazilian document validation library for TypeScript.
|
|
4
|
-
> Validate, format, and generate CPF, CNPJ (including the new alphanumeric format), NF-e, BR Code PIX, boleto, IE (all 27 states), ANP fuel prices, and
|
|
4
|
+
> Validate, format, and generate CPF, CNPJ (including the new alphanumeric format), NF-e, BR Code PIX, boleto, IE (all 27 states), EAN barcodes, CNIS/NIT, ANP fuel prices, and 20+ more — zero dependencies, fully typed, never throws.
|
|
5
5
|
|
|
6
6
|
[](https://www.npmjs.com/package/@br-validators/core)
|
|
7
7
|
[](https://www.npmjs.com/package/@br-validators/core)
|
|
@@ -27,11 +27,11 @@ Every Brazilian SaaS eventually reinvents CPF validation — usually wrong.
|
|
|
27
27
|
(Receita Federal, Bacen, CONTRAN, TSE, SEFAZ, FEBRABAN, Anatel) so you don't have to.
|
|
28
28
|
|
|
29
29
|
- ✅ **CNPJ alfanumérico** — new RFB format (effective July 2026), ready now
|
|
30
|
-
- ✅ **
|
|
30
|
+
- ✅ **21+ document types** — CPF, CNPJ, CEP, NF-e chave, processo judicial CNJ, BR Code PIX, boleto (cobrança + arrecadação), CNH, RENAVAM, placa, PIS/PASEP, CNIS/NIT, EAN-8/EAN-13, PIX key, cartão de crédito, IE (27 UFs), IE produtor rural, título de eleitor, telefone, + platform APIs above
|
|
31
31
|
- ✅ **Zero runtime dependencies** — pure TypeScript logic, no HTTP calls
|
|
32
32
|
- ✅ **Never throws** — every function returns `{ ok: true, value } | { ok: false, message, code }`
|
|
33
33
|
- ✅ **Tree-shakeable** — subpath imports per document type
|
|
34
|
-
- ✅ **Reference data** — IBGE, Bacen banks, DDD lookup, national holidays, CNAE, CFOP, NCM, CBO, natureza jurídica, NBS, CEST, eSocial categorias, moedas, PTAX cotações, países Bacen, Incoterms, portos, aeroportos, **ANP fuel prices (LPC)** — embedded offline with daily freshness ([DATA-FRESHNESS.md](../../docs/DATA-FRESHNESS.md); ANP weekly)
|
|
34
|
+
- ✅ **Reference data** — IBGE (municipalities + NF-e `cMunFG`), Bacen banks, DDD lookup, national holidays, CNAE, CFOP, CST, LC 116, NCM, IBPT tax burden, Simples Nacional, CBO, natureza jurídica, NBS, CEST, eSocial categorias, CNPJ motivos, moedas, PTAX cotações, países Bacen, Incoterms, portos, aeroportos, **ANP fuel prices (LPC)** — embedded offline with daily freshness ([DATA-FRESHNESS.md](../../docs/DATA-FRESHNESS.md); ANP weekly)
|
|
35
35
|
- ✅ **ESM only**, Node ≥ 18, works in browser, Bun, Deno
|
|
36
36
|
|
|
37
37
|
---
|
|
@@ -247,6 +247,8 @@ br-validators generate inscricao-estadual-produtor-rural --masked --seed 42
|
|
|
247
247
|
| RG (per-UF identity card) | `@br-validators/core/rg` | `br-validators rg … --uf SP` | `/rg` |
|
|
248
248
|
| Placa (Mercosul + legada) | `@br-validators/core/placa` | `br-validators placa …` | `/placa` |
|
|
249
249
|
| PIS / PASEP / NIS | `@br-validators/core/pis-pasep` | `br-validators pis-pasep …` | `/pis` |
|
|
250
|
+
| CNIS / NIT (worker ID) | `@br-validators/core/cnis` | `br-validators cnis …` | `/cnis` |
|
|
251
|
+
| EAN-8 / EAN-13 (barcode) | `@br-validators/core/ean` | `br-validators ean …` | `/ean` |
|
|
250
252
|
| PIX key | `@br-validators/core/pix` | `br-validators pix …` | `/pix` |
|
|
251
253
|
| BR Code (PIX QR payload + builder) | `@br-validators/core/brcode` | `br-validators brcode …` | `/brcode` |
|
|
252
254
|
| Boleto cobrança (Situação 1 + 2) | `@br-validators/core/boleto` | `br-validators boleto …` | `/boleto` |
|
|
@@ -270,7 +272,7 @@ Embedded JSON from official `.gov.br` sources — **no runtime HTTP**. Each modu
|
|
|
270
272
|
|
|
271
273
|
| Dataset | Subpath | CLI | Playground | Key APIs | Official source |
|
|
272
274
|
|---------|---------|-----|------------|----------|-----------------|
|
|
273
|
-
| IBGE states + municipalities | `@br-validators/core/ibge` | `ibge lookup` · `list` | `/data/ibge` | `getEstados`, `getMunicipios`, `getMunicipioPorCodigo` | [IBGE localidades API](https://servicodados.ibge.gov.br/api/docs/localidades) |
|
|
275
|
+
| IBGE states + municipalities + NF-e cMunFG | `@br-validators/core/ibge` | `ibge lookup` · `list` | `/data/ibge` | `getEstados`, `getMunicipios`, `getMunicipioPorCodigo`, `toCmunFg`, `parseCmunFg` | [IBGE localidades API](https://servicodados.ibge.gov.br/api/docs/localidades) |
|
|
274
276
|
| Bacen STR banks (COMPE / ISPB) | `@br-validators/core/bancos` | `bancos lookup` · `list` | `/data/bancos` | `getBancos`, `getBancoPorCodigo`, `getBancoPorIspb` | [Bacen Participantes STR](https://www.bcb.gov.br/content/estabilidadefinanceira/str1/ParticipantesSTR.csv) |
|
|
275
277
|
| ANAC public aerodromos | `@br-validators/core/aeroportos` | `aeroportos lookup` | `/data/logistics` | `getAeroportos`, `getAeroportoPorIata`, `getAeroportoPorIcao`, `getAeroportosPorMunicipio` | [ANAC aeródromos públicos CSV](https://www.anac.gov.br/acesso-a-informacao/dados-abertos/areas-de-atuacao/aerodromos/lista-de-aerodromos-publicos/aerodromospublicosv1.csv/@@download/file/aerodromospublicosv1.csv) |
|
|
276
278
|
| ANTAQ port installations | `@br-validators/core/portos` | `portos lookup` | `/data/logistics` | `getPortoPorCodigo`, `searchPortos`, `getPortosPorMunicipio` | [ANTAQ instalações portuárias zip](https://www.gov.br/antaq/pt-br/central-de-conteudos/Instalaesporturias06052025.zip) |
|
|
@@ -284,6 +286,9 @@ Embedded JSON from official `.gov.br` sources — **no runtime HTTP**. Each modu
|
|
|
284
286
|
| LC 116 ISS services | `@br-validators/core/lc116` | — | `/data/fiscal` | `getLc116PorCodigo`, `searchLc116` | [LC 116/2003 Planalto](https://www.planalto.gov.br/ccivil_03/leis/lcp/lcp116.htm) |
|
|
285
287
|
| eSocial worker categories | `@br-validators/core/esocial` | — | `/data/fiscal` | `getEsocialCategoriaPorCodigo`, `searchEsocialCategorias` | [eSocial S-1.3 Tabelas](https://www.gov.br/esocial/pt-br/documentacao-tecnica/leiautes-esocial-versao-s-1-3-nt-06-2026/tabelas.html) |
|
|
286
288
|
| NCM Mercosur nomenclature | `@br-validators/core/ncm` | `ncm lookup` · `search` | `/data/fiscal` | `getNcmPorCodigo`, `searchNcm` | [Siscomex NCM JSON](https://portalunico.siscomex.gov.br/classif/api/publico/nomenclatura/download/json) |
|
|
289
|
+
| IBPT approximate NCM tax burden | `@br-validators/core/ibpt` | — | `/data/fiscal` | `getIbptCargaPorNcmUf`, `computeIbptCargaTotal` | [IBPT Lei 12.741/2012](https://www.planalto.gov.br/ccivil_03/_ato2011-2014/2012/lei/l12741.htm) |
|
|
290
|
+
| Simples Nacional annex tables | `@br-validators/core/simples-nacional` | — | `/data/fiscal` | `getSimplesAnexo`, `getSimplesFaixa`, `computeSimplesAliquotaEfetiva` | [LC 123/2006 Planalto](https://www.planalto.gov.br/ccivil_03/_ato2007-2010/2006/lei/l123.htm) |
|
|
291
|
+
| CNPJ motivos situação cadastral | `@br-validators/core/cnpj-motivos` | — | `/data/fiscal` | `getMotivosSituacaoCadastral`, `getMotivoSituacaoCadastralPorCodigo` | [RFB Motivos.zip](https://dadosabertos.rfb.gov.br/CNPJ/dados_abertos_cnpj/) |
|
|
287
292
|
| Natureza jurídica (CNPJ) | `@br-validators/core/natureza-juridica` | `natureza-juridica lookup` | `/data/fiscal` | `getNaturezaJuridicaPorCodigo` | [RFB Naturezas.zip](https://dadosabertos.rfb.gov.br/CNPJ/dados_abertos_cnpj/) |
|
|
288
293
|
| NBS (NFSe Nacional) | `@br-validators/core/nbs` | `nbs lookup` | `/data/fiscal` | `getNbsPorCodigo`, `searchNbs` | [NFSe Anexo B NBS2 xlsx](https://www.gov.br/nfse/pt-br/biblioteca/documentacao-tecnica/documentacao-atual/anexo_b-nbs2-lista_servico_nacional-snnfse.xlsx) |
|
|
289
294
|
| CEST (substituição tributária) | `@br-validators/core/cest` | `cest lookup` | `/data/fiscal` | `getCestPorCodigo`, `getCestPorNcm`, `searchCest` | [CONFAZ ICMS 142/2018](https://www.confaz.fazenda.gov.br/legislacao/convenios/2018/CV142_18) |
|
|
@@ -343,7 +348,7 @@ Freshness table (auto-updated daily; ANP weekly): [docs/DATA-FRESHNESS.md](https
|
|
|
343
348
|
|
|
344
349
|
## Current release
|
|
345
350
|
|
|
346
|
-
**v1.
|
|
351
|
+
**v1.8.2** — all six `@br-validators/*` packages ship the same semver. IBPT fetch fix, ANP in daily data bot, embedded refresh (Bacen STR, PTAX, IBPT 26.1.K). v1.8.0 added ten core subpaths. [CHANGELOG](https://github.com/AlexandreZanata/br-validators/blob/main/CHANGELOG.md#182---2026-06-25)
|
|
347
352
|
|
|
348
353
|
---
|
|
349
354
|
|
package/dist/aeroportos.js
CHANGED
package/dist/bancos.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { metadata_default } from './chunk-
|
|
1
|
+
import { metadata_default } from './chunk-UZX4MG3Y.js';
|
|
2
2
|
|
|
3
3
|
// src/bancos/data/bancos.json
|
|
4
4
|
var bancos_default = [
|
|
@@ -93,6 +93,13 @@ var bancos_default = [
|
|
|
93
93
|
nomeReduzido: "BCO BANESTES S.A.",
|
|
94
94
|
participaCompe: true
|
|
95
95
|
},
|
|
96
|
+
{
|
|
97
|
+
codigo: "023",
|
|
98
|
+
ispb: "53720128",
|
|
99
|
+
nome: "CONTA SIMPLES SOCIEDADE DE CR\xC9DITO DIRETO S.A.",
|
|
100
|
+
nomeReduzido: "CONTA SIMPLES SCD S.A.",
|
|
101
|
+
participaCompe: false
|
|
102
|
+
},
|
|
96
103
|
{
|
|
97
104
|
codigo: "024",
|
|
98
105
|
ispb: "10866788",
|