@br-validators/core 1.9.0 → 1.10.0-data.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 +57 -7
- package/dist/aeroportos.js +1 -1
- package/dist/anp-combustiveis.js +13523 -13795
- package/dist/anp-combustiveis.js.map +1 -1
- package/dist/bancos.js +3 -3
- package/dist/bancos.js.map +1 -1
- package/dist/batch.d.ts +24 -3
- package/dist/batch.js +16 -15
- package/dist/brcode.js +6 -6
- package/dist/cbo.js +1 -1
- package/dist/cep.js +6 -3
- package/dist/{chunk-S4WEXFHC.js → chunk-2COBLRJZ.js} +3 -3
- package/dist/{chunk-S4WEXFHC.js.map → chunk-2COBLRJZ.js.map} +1 -1
- package/dist/{chunk-W524B2G5.js → chunk-2ONUMGUO.js} +6 -6
- package/dist/{chunk-W524B2G5.js.map → chunk-2ONUMGUO.js.map} +1 -1
- package/dist/{chunk-F6LVFAJT.js → chunk-4NS47CJG.js} +3 -3
- package/dist/{chunk-F6LVFAJT.js.map → chunk-4NS47CJG.js.map} +1 -1
- package/dist/{chunk-GREFQOOJ.js → chunk-56LI2WFN.js} +6 -6
- package/dist/{chunk-GREFQOOJ.js.map → chunk-56LI2WFN.js.map} +1 -1
- package/dist/chunk-5V2TNYC7.js +3 -0
- package/dist/{chunk-KLPONHBL.js.map → chunk-5V2TNYC7.js.map} +1 -1
- package/dist/{chunk-62P6SKG3.js → chunk-5V7RWZMP.js} +23 -21
- package/dist/chunk-5V7RWZMP.js.map +1 -0
- package/dist/{chunk-YYHS5WQN.js → chunk-6BWOYNQD.js} +2 -2
- package/dist/{chunk-YYHS5WQN.js.map → chunk-6BWOYNQD.js.map} +1 -1
- package/dist/{chunk-DQPSNERX.js → chunk-6CGSM6BR.js} +12 -11
- package/dist/chunk-6CGSM6BR.js.map +1 -0
- package/dist/{chunk-5M4S6ZMM.js → chunk-6JPPWIE6.js} +6 -6
- package/dist/{chunk-5M4S6ZMM.js.map → chunk-6JPPWIE6.js.map} +1 -1
- package/dist/chunk-6LCZGDCZ.js +27862 -0
- package/dist/chunk-6LCZGDCZ.js.map +1 -0
- package/dist/{chunk-MSYTS5K7.js → chunk-6WBUKUHD.js} +3 -3
- package/dist/{chunk-MSYTS5K7.js.map → chunk-6WBUKUHD.js.map} +1 -1
- package/dist/{chunk-LBR6N2CQ.js → chunk-73SUS6JB.js} +6 -6
- package/dist/{chunk-LBR6N2CQ.js.map → chunk-73SUS6JB.js.map} +1 -1
- package/dist/{chunk-DS6MOO5K.js → chunk-7XVCTDJE.js} +6 -65
- package/dist/chunk-7XVCTDJE.js.map +1 -0
- package/dist/{chunk-4HQ4J2J5.js → chunk-A255RZZ7.js} +3 -3
- package/dist/{chunk-4HQ4J2J5.js.map → chunk-A255RZZ7.js.map} +1 -1
- package/dist/chunk-AOBSYTR2.js +31 -0
- package/dist/chunk-AOBSYTR2.js.map +1 -0
- package/dist/{chunk-3FDHWX2H.js → chunk-BTRWDUZF.js} +3 -3
- package/dist/{chunk-3FDHWX2H.js.map → chunk-BTRWDUZF.js.map} +1 -1
- package/dist/{chunk-55IZCKNL.js → chunk-C4E2AE2A.js} +3 -3
- package/dist/{chunk-55IZCKNL.js.map → chunk-C4E2AE2A.js.map} +1 -1
- package/dist/{chunk-4ORSIPZU.js → chunk-CHCND76E.js} +6 -6
- package/dist/{chunk-4ORSIPZU.js.map → chunk-CHCND76E.js.map} +1 -1
- package/dist/{chunk-W5LOXC7J.js → chunk-DQQNXXGO.js} +12 -3
- package/dist/chunk-DQQNXXGO.js.map +1 -0
- package/dist/{chunk-56ZN3TBH.js → chunk-DXKHCIMV.js} +3 -3
- package/dist/{chunk-56ZN3TBH.js.map → chunk-DXKHCIMV.js.map} +1 -1
- package/dist/{chunk-MOND6K5Z.js → chunk-E533RFGN.js} +6 -6
- package/dist/{chunk-MOND6K5Z.js.map → chunk-E533RFGN.js.map} +1 -1
- package/dist/{chunk-GXCW6FM7.js → chunk-EWTOIHM7.js} +6 -6
- package/dist/{chunk-GXCW6FM7.js.map → chunk-EWTOIHM7.js.map} +1 -1
- package/dist/chunk-FA5ZM5UA.js +63 -0
- package/dist/chunk-FA5ZM5UA.js.map +1 -0
- package/dist/{chunk-N2MDJI4B.js → chunk-FEPV2XB5.js} +3 -3
- package/dist/{chunk-N2MDJI4B.js.map → chunk-FEPV2XB5.js.map} +1 -1
- package/dist/{chunk-7HEMXLDS.js → chunk-GQRHLW5W.js} +3 -4
- package/dist/chunk-GQRHLW5W.js.map +1 -0
- package/dist/{chunk-WOIO7FLJ.js → chunk-H725FTFS.js} +6 -6
- package/dist/{chunk-WOIO7FLJ.js.map → chunk-H725FTFS.js.map} +1 -1
- package/dist/{chunk-ZL5RDZJM.js → chunk-HEPUV3XR.js} +3 -4
- package/dist/chunk-HEPUV3XR.js.map +1 -0
- package/dist/{chunk-UBIQFNIP.js → chunk-HIY6R6UA.js} +6 -6
- package/dist/{chunk-UBIQFNIP.js.map → chunk-HIY6R6UA.js.map} +1 -1
- package/dist/{chunk-FIZWWQ64.js → chunk-IZ5ZOZKI.js} +6 -6
- package/dist/{chunk-FIZWWQ64.js.map → chunk-IZ5ZOZKI.js.map} +1 -1
- package/dist/{chunk-56A6XUJP.js → chunk-JCVDLFPG.js} +6 -6
- package/dist/{chunk-56A6XUJP.js.map → chunk-JCVDLFPG.js.map} +1 -1
- package/dist/chunk-JUQMINSZ.js +52 -0
- package/dist/chunk-JUQMINSZ.js.map +1 -0
- package/dist/{chunk-DL4TSGE5.js → chunk-JZOS2MO7.js} +3 -3
- package/dist/{chunk-DL4TSGE5.js.map → chunk-JZOS2MO7.js.map} +1 -1
- package/dist/{chunk-2BNGYQFQ.js → chunk-KCRWHMDY.js} +3 -3
- package/dist/{chunk-2BNGYQFQ.js.map → chunk-KCRWHMDY.js.map} +1 -1
- package/dist/{chunk-UNBIJPJU.js → chunk-L3WG36Y4.js} +3 -3
- package/dist/{chunk-UNBIJPJU.js.map → chunk-L3WG36Y4.js.map} +1 -1
- package/dist/{chunk-S6ZNVXSM.js → chunk-LFZAE7Y2.js} +9 -9
- package/dist/{chunk-S6ZNVXSM.js.map → chunk-LFZAE7Y2.js.map} +1 -1
- package/dist/{chunk-NQIKXTMI.js → chunk-LKDZEPWZ.js} +3 -3
- package/dist/{chunk-NQIKXTMI.js.map → chunk-LKDZEPWZ.js.map} +1 -1
- package/dist/chunk-LLJSXMO2.js +32 -0
- package/dist/chunk-LLJSXMO2.js.map +1 -0
- package/dist/{chunk-SRVFQ34Q.js → chunk-LSMFX4JD.js} +6 -6
- package/dist/{chunk-SRVFQ34Q.js.map → chunk-LSMFX4JD.js.map} +1 -1
- package/dist/{chunk-2RZXK6C3.js → chunk-MGFDTECS.js} +13 -32
- package/dist/chunk-MGFDTECS.js.map +1 -0
- package/dist/{chunk-CIOSYWV4.js → chunk-MWDNHKK3.js} +3 -3
- package/dist/{chunk-CIOSYWV4.js.map → chunk-MWDNHKK3.js.map} +1 -1
- package/dist/{chunk-6F7G6Z5B.js → chunk-NVQX4ODB.js} +6 -6
- package/dist/{chunk-6F7G6Z5B.js.map → chunk-NVQX4ODB.js.map} +1 -1
- package/dist/{chunk-KSDAKRG5.js → chunk-OGVBMB7Z.js} +16 -11
- package/dist/chunk-OGVBMB7Z.js.map +1 -0
- package/dist/{chunk-5IYHOWQU.js → chunk-OTKEKB3W.js} +99 -13
- package/dist/chunk-OTKEKB3W.js.map +1 -0
- package/dist/{chunk-HZ4UGWFE.js → chunk-OZHEHUBV.js} +3 -3
- package/dist/{chunk-HZ4UGWFE.js.map → chunk-OZHEHUBV.js.map} +1 -1
- package/dist/{chunk-JNAZI3HU.js → chunk-PBZMBJEX.js} +12 -11
- package/dist/chunk-PBZMBJEX.js.map +1 -0
- package/dist/{chunk-SCBXZLZ5.js → chunk-PHXIWJFQ.js} +20 -15
- package/dist/{chunk-SCBXZLZ5.js.map → chunk-PHXIWJFQ.js.map} +1 -1
- package/dist/{chunk-KVJL4MTV.js → chunk-PRSHGHAS.js} +10 -9
- package/dist/chunk-PRSHGHAS.js.map +1 -0
- package/dist/{chunk-TMHKYUPU.js → chunk-R3R3OIH7.js} +6 -6
- package/dist/{chunk-TMHKYUPU.js.map → chunk-R3R3OIH7.js.map} +1 -1
- package/dist/{chunk-RKL64IOG.js → chunk-TO3DSIJY.js} +8 -8
- package/dist/{chunk-RKL64IOG.js.map → chunk-TO3DSIJY.js.map} +1 -1
- package/dist/{chunk-BDYNBRT7.js → chunk-UG2YICWH.js} +3 -3
- package/dist/{chunk-BDYNBRT7.js.map → chunk-UG2YICWH.js.map} +1 -1
- package/dist/{chunk-X5TJG22D.js → chunk-VHG4CIYB.js} +6 -6
- package/dist/{chunk-X5TJG22D.js.map → chunk-VHG4CIYB.js.map} +1 -1
- package/dist/{chunk-BLSDFC3C.js → chunk-XYNX7PUL.js} +22 -4
- package/dist/chunk-XYNX7PUL.js.map +1 -0
- package/dist/{chunk-N6CALNFU.js → chunk-YC4GZZJP.js} +3 -3
- package/dist/{chunk-N6CALNFU.js.map → chunk-YC4GZZJP.js.map} +1 -1
- package/dist/{chunk-MOMQLTSD.js → chunk-YFLJB247.js} +11 -11
- package/dist/{chunk-MOMQLTSD.js.map → chunk-YFLJB247.js.map} +1 -1
- package/dist/{chunk-IBXICIOY.js → chunk-YGFTNDAQ.js} +6 -6
- package/dist/{chunk-IBXICIOY.js.map → chunk-YGFTNDAQ.js.map} +1 -1
- package/dist/chunk-YQN6RNJN.js +30 -0
- package/dist/chunk-YQN6RNJN.js.map +1 -0
- package/dist/{chunk-GFRG6ZPY.js → chunk-ZKPOHCVZ.js} +6 -6
- package/dist/{chunk-GFRG6ZPY.js.map → chunk-ZKPOHCVZ.js.map} +1 -1
- package/dist/cnaes.js +1 -1
- package/dist/cnh.js +6 -3
- package/dist/cnpj-motivos.js +1 -1
- package/dist/cnpj.js +3 -3
- package/dist/compare.d.ts +2 -2
- package/dist/compare.js +18 -17
- package/dist/cpf.js +2 -3
- package/dist/csosn.d.ts +54 -0
- package/dist/csosn.js +96 -0
- package/dist/csosn.js.map +1 -0
- package/dist/data-catalog.js +43 -41
- package/dist/data-catalog.js.map +1 -1
- package/dist/detect.js +15 -14
- package/dist/diff.d.ts +2 -2
- package/dist/diff.js +18 -17
- package/dist/esocial.d.ts +29 -1
- package/dist/esocial.js +1720 -2
- package/dist/esocial.js.map +1 -1
- package/dist/generate.js +25 -24
- package/dist/ibge.js +2 -27860
- package/dist/ibge.js.map +1 -1
- package/dist/incoterms.js +1 -1
- package/dist/{index-CttohJuk.d.ts → index-CmpOAd8U.d.ts} +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +41 -40
- package/dist/index.js.map +1 -1
- package/dist/iss-municipal.d.ts +71 -3
- package/dist/iss-municipal.js +45366 -235
- package/dist/iss-municipal.js.map +1 -1
- package/dist/mask.js +24 -23
- 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/{pix-B8_PfK2D.d.ts → pix-DhAb6Iho.d.ts} +3 -1
- package/dist/pix.d.ts +1 -1
- package/dist/pix.js +8 -7
- package/dist/placa.js +6 -3
- package/dist/pncp-reference.js +1 -1
- package/dist/portos.js +1 -1
- package/dist/ptax.d.ts +12 -4
- package/dist/ptax.js +8367 -252
- package/dist/ptax.js.map +1 -1
- package/dist/renavam.js +6 -3
- package/dist/sanitize.d.ts +1 -1
- package/dist/sanitize.js +16 -12
- package/dist/selic.js +17 -17
- package/dist/selic.js.map +1 -1
- package/dist/telefone.js +3 -3
- package/dist/titulo-eleitor.js +6 -3
- package/dist/transparencia-snapshots.js +2 -2
- package/dist/transparencia-snapshots.js.map +1 -1
- package/dist/tse-municipios.js +1 -1
- package/dist/{types-CTLx5zMu.d.ts → types-DLuN-sEJ.d.ts} +1 -1
- package/package.json +5 -1
- package/dist/chunk-2RZXK6C3.js.map +0 -1
- package/dist/chunk-5IYHOWQU.js.map +0 -1
- package/dist/chunk-62P6SKG3.js.map +0 -1
- package/dist/chunk-7HEMXLDS.js.map +0 -1
- package/dist/chunk-BLSDFC3C.js.map +0 -1
- package/dist/chunk-DQPSNERX.js.map +0 -1
- package/dist/chunk-DS6MOO5K.js.map +0 -1
- package/dist/chunk-JNAZI3HU.js.map +0 -1
- package/dist/chunk-KLPONHBL.js +0 -3
- package/dist/chunk-KSDAKRG5.js.map +0 -1
- package/dist/chunk-KVJL4MTV.js.map +0 -1
- package/dist/chunk-RUQDVHR7.js +0 -14
- package/dist/chunk-RUQDVHR7.js.map +0 -1
- package/dist/chunk-VBFKN3NR.js +0 -14
- package/dist/chunk-VBFKN3NR.js.map +0 -1
- package/dist/chunk-W5LOXC7J.js.map +0 -1
- package/dist/chunk-YUAMWVIU.js +0 -30
- package/dist/chunk-YUAMWVIU.js.map +0 -1
- package/dist/chunk-ZL5RDZJM.js.map +0 -1
package/dist/renavam.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import './chunk-G24G7WR5.js';
|
|
2
|
-
export { formatRenavam } from './chunk-
|
|
3
|
-
export { RENAVAM_BASE_LENGTH, RENAVAM_DV_WEIGHTS, RENAVAM_GOLDEN_DASH_INPUT, RENAVAM_GOLDEN_DV_ZERO, RENAVAM_GOLDEN_LEADING_ZEROS, RENAVAM_GOLDEN_PRIMARY, RENAVAM_GOLDEN_SECONDARY, RENAVAM_LENGTH, RENAVAM_OFFICIAL_SOURCE_URL, RENAVAM_SENATRAN_CONSULTA_URL, isValidRenavam, validateRenavam } from './chunk-
|
|
4
|
-
export { stripRenavam } from './chunk-
|
|
2
|
+
export { formatRenavam } from './chunk-YC4GZZJP.js';
|
|
3
|
+
export { RENAVAM_BASE_LENGTH, RENAVAM_DV_WEIGHTS, RENAVAM_GOLDEN_DASH_INPUT, RENAVAM_GOLDEN_DV_ZERO, RENAVAM_GOLDEN_LEADING_ZEROS, RENAVAM_GOLDEN_PRIMARY, RENAVAM_GOLDEN_SECONDARY, RENAVAM_LENGTH, RENAVAM_OFFICIAL_SOURCE_URL, RENAVAM_SENATRAN_CONSULTA_URL, isValidRenavam, validateRenavam } from './chunk-4NS47CJG.js';
|
|
4
|
+
export { stripRenavam } from './chunk-6BWOYNQD.js';
|
|
5
5
|
import './chunk-4SNBZFS5.js';
|
|
6
|
+
import './chunk-JUQMINSZ.js';
|
|
7
|
+
import './chunk-FA5ZM5UA.js';
|
|
6
8
|
import './chunk-UCJPSJN5.js';
|
|
9
|
+
import './chunk-LLJSXMO2.js';
|
|
7
10
|
import './chunk-EB3G4IG6.js';
|
|
8
11
|
import './chunk-OTZHMJYE.js';
|
|
9
12
|
import './chunk-BVMY4IWB.js';
|
package/dist/sanitize.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { S as SanitizableDocumentType, a as SanitizeOptions, b as SanitizeResult, s as sanitize } from './index-
|
|
1
|
+
export { S as SanitizableDocumentType, a as SanitizeOptions, b as SanitizeResult, s as sanitize } from './index-CmpOAd8U.js';
|
|
2
2
|
import './validation-result-D4Wrxl7j.js';
|
|
3
3
|
|
|
4
4
|
type FixResult = {
|
package/dist/sanitize.js
CHANGED
|
@@ -1,30 +1,34 @@
|
|
|
1
|
-
export { sanitize } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { sanitize } from './chunk-OGVBMB7Z.js';
|
|
2
|
+
import './chunk-XYNX7PUL.js';
|
|
3
3
|
import './chunk-GVK6IMBF.js';
|
|
4
4
|
import './chunk-6F3A3NT4.js';
|
|
5
|
-
import './chunk-
|
|
5
|
+
import './chunk-4NS47CJG.js';
|
|
6
6
|
import './chunk-A4QBLVVO.js';
|
|
7
|
-
import './chunk-
|
|
8
|
-
import './chunk-
|
|
7
|
+
import './chunk-OZHEHUBV.js';
|
|
8
|
+
import './chunk-6WBUKUHD.js';
|
|
9
|
+
import './chunk-UG2YICWH.js';
|
|
9
10
|
import './chunk-XRT44FMY.js';
|
|
10
11
|
import './chunk-HORKZQIH.js';
|
|
11
|
-
import './chunk-BDYNBRT7.js';
|
|
12
12
|
import './chunk-OHBSYBG7.js';
|
|
13
13
|
import './chunk-FGOPYU2L.js';
|
|
14
|
-
import './chunk-
|
|
14
|
+
import './chunk-ZKPOHCVZ.js';
|
|
15
15
|
import './chunk-OFAU4VTU.js';
|
|
16
|
-
import './chunk-
|
|
16
|
+
import './chunk-C4E2AE2A.js';
|
|
17
17
|
import './chunk-RY2BSDOR.js';
|
|
18
|
-
import './chunk-
|
|
19
|
-
import './chunk-
|
|
18
|
+
import './chunk-JZOS2MO7.js';
|
|
19
|
+
import './chunk-6BWOYNQD.js';
|
|
20
20
|
import './chunk-4SNBZFS5.js';
|
|
21
|
+
import './chunk-JUQMINSZ.js';
|
|
21
22
|
import './chunk-W64OQYC4.js';
|
|
22
23
|
import './chunk-JOBIJQGE.js';
|
|
23
24
|
import './chunk-UB2ZUHQZ.js';
|
|
24
25
|
import './chunk-7U64V3YD.js';
|
|
25
|
-
import './chunk-
|
|
26
|
+
import './chunk-7XVCTDJE.js';
|
|
27
|
+
import './chunk-DQQNXXGO.js';
|
|
28
|
+
import './chunk-FA5ZM5UA.js';
|
|
26
29
|
import './chunk-UCJPSJN5.js';
|
|
27
|
-
import './chunk-
|
|
30
|
+
import './chunk-MGFDTECS.js';
|
|
31
|
+
import './chunk-LLJSXMO2.js';
|
|
28
32
|
import './chunk-EB3G4IG6.js';
|
|
29
33
|
import './chunk-OTZHMJYE.js';
|
|
30
34
|
import './chunk-PU5TKJZI.js';
|
package/dist/selic.js
CHANGED
|
@@ -1,24 +1,8 @@
|
|
|
1
1
|
import { parseIsoDateString, addUtcDays, formatIsoDate, isWeekendUtc, isFeriadoNacional } from './chunk-MQG2IR7F.js';
|
|
2
|
-
import { metadata_default } from './chunk-
|
|
2
|
+
import { metadata_default } from './chunk-TO3DSIJY.js';
|
|
3
3
|
|
|
4
4
|
// src/selic/data/selic.json
|
|
5
5
|
var selic_default = [
|
|
6
|
-
{
|
|
7
|
-
data: "2026-03-29",
|
|
8
|
-
valor: 14.75
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
data: "2026-03-30",
|
|
12
|
-
valor: 14.75
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
data: "2026-03-31",
|
|
16
|
-
valor: 14.75
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
data: "2026-04-01",
|
|
20
|
-
valor: 14.75
|
|
21
|
-
},
|
|
22
6
|
{
|
|
23
7
|
data: "2026-04-02",
|
|
24
8
|
valor: 14.75
|
|
@@ -362,6 +346,22 @@ var selic_default = [
|
|
|
362
346
|
{
|
|
363
347
|
data: "2026-06-26",
|
|
364
348
|
valor: 14.25
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
data: "2026-06-27",
|
|
352
|
+
valor: 14.25
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
data: "2026-06-28",
|
|
356
|
+
valor: 14.25
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
data: "2026-06-29",
|
|
360
|
+
valor: 14.25
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
data: "2026-06-30",
|
|
364
|
+
valor: 14.25
|
|
365
365
|
}
|
|
366
366
|
];
|
|
367
367
|
|
package/dist/selic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/selic/data/selic.json","../src/selic/constants.ts","../src/selic/staleness.ts","../src/selic/lookup.ts","../src/selic/version.ts"],"names":[],"mappings":"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","file":"selic.js","sourcesContent":["[\n {\n \"data\": \"2026-03-29\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-03-30\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-03-31\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-01\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-02\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-03\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-04\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-05\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-06\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-07\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-08\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-09\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-10\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-11\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-12\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-13\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-14\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-15\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-16\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-17\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-18\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-19\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-20\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-21\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-22\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-23\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-24\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-25\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-26\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-27\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-28\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-29\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-30\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-01\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-02\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-03\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-04\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-05\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-06\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-07\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-08\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-09\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-10\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-11\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-12\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-13\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-14\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-15\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-16\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-17\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-18\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-19\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-20\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-21\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-22\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-23\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-24\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-25\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-26\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-27\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-28\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-29\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-30\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-31\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-01\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-02\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-03\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-04\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-05\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-06\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-07\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-08\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-09\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-10\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-11\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-12\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-13\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-14\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-15\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-16\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-17\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-18\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-19\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-20\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-21\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-22\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-23\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-24\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-25\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-26\",\n \"valor\": 14.25\n }\n]\n","/**\n * Bacen SGS série 432 — Meta Selic constants.\n * @see https://dadosabertos.bcb.gov.br/dataset/432-taxa-de-juros---meta-selic-definida-pelo-copom\n */\n\nexport const BCB_SELIC_DATASET_URL =\n 'https://dadosabertos.bcb.gov.br/dataset/432-taxa-de-juros---meta-selic-definida-pelo-copom';\n\nexport const BCB_SELIC_SGS_API_URL =\n 'https://api.bcb.gov.br/dados/serie/bcdata.sgs.432/dados?formato=json';\n\nexport const BCB_SELIC_SGS_CONSULTA_URL =\n 'https://www3.bcb.gov.br/sgspub/consultarvalores/consultarValoresSeries.do?method=consultarGraficoPorId&hdOidSeriesSelecionadas=432';\n\nexport const BCB_SELIC_COPOM_URL = 'https://www.bcb.gov.br/controleinflacao/copom';\n\nexport const SELIC_SGS_SERIE = 432;\n\nexport const SELIC_EMBED_CALENDAR_DAYS = 90;\n\nexport const SELIC_STALE_WARNING =\n 'Embedded data. For real-time use @br-validators/adapters-selic';\n\n/** Golden meta Selic 14,25% a.a. on 2026-06-18 (COPOM). */\nexport const SELIC_GOLDEN_DATA_COPOM = '2026-06-18';\n\nexport const SELIC_GOLDEN_VALOR_COPOM = 14.25;\n","/**\n * SELIC embed staleness — business-day age vs Brazil local today.\n * @see docs/OFFICIAL-SOURCES.md#selic-meta-sgs-432\n */\n\nimport { isFeriadoNacional } from '../feriados/calendar.js';\nimport {\n addUtcDays,\n formatIsoDate,\n isWeekendUtc,\n parseIsoDateString,\n} from '../feriados/date-utils.js';\nimport { SELIC_STALE_WARNING } from './constants.js';\nimport type { SelicLookupOptions, SelicMetaObservacao, SelicMetaResult } from './types.js';\n\nexport function isDiaUtil(isoDate: string): boolean {\n const parts = parseIsoDateString(isoDate);\n if (parts === null) {\n return false;\n }\n return !isWeekendUtc(parts) && !isFeriadoNacional(isoDate);\n}\n\nexport function getBrazilTodayIso(now: Date = new Date()): string {\n return new Intl.DateTimeFormat('en-CA', { timeZone: 'America/Sao_Paulo' }).format(now);\n}\n\nexport function subtractBusinessDays(fromIso: string, businessDays: number): string {\n if (businessDays < 1) {\n return fromIso;\n }\n\n const start = parseIsoDateString(fromIso);\n if (start === null) {\n return '';\n }\n\n let cursor = start;\n let remaining = businessDays;\n const maxIterations = businessDays * 4 + 14;\n\n for (let iteration = 0; iteration < maxIterations && remaining > 0; iteration += 1) {\n cursor = addUtcDays(cursor, -1);\n const iso = formatIsoDate(cursor);\n if (isDiaUtil(iso)) {\n remaining -= 1;\n }\n }\n\n return formatIsoDate(cursor);\n}\n\nexport function isSelicMetaStale(dataReferencia: string, asOfDate: string): boolean {\n const reference = parseIsoDateString(dataReferencia);\n const asOf = parseIsoDateString(asOfDate);\n if (reference === null || asOf === null) {\n return false;\n }\n\n const previousBusinessDay = subtractBusinessDays(asOfDate, 1);\n return dataReferencia < previousBusinessDay;\n}\n\nexport function buildSelicMetaResult(\n observacao: SelicMetaObservacao,\n options?: SelicLookupOptions,\n): SelicMetaResult {\n const asOfDate = options?.asOfDate ?? getBrazilTodayIso();\n const dataReferencia = observacao.data;\n const isStale = isSelicMetaStale(dataReferencia, asOfDate);\n\n return {\n ...observacao,\n dataReferencia,\n isStale,\n ...(isStale ? { warning: SELIC_STALE_WARNING } : {}),\n };\n}\n","/**\n * Bacen SELIC meta (SGS 432) — offline embedded daily series.\n * @see https://api.bcb.gov.br/dados/serie/bcdata.sgs.432/dados?formato=json\n */\n\nimport selicData from './data/selic.json';\nimport { buildSelicMetaResult } from './staleness.js';\nimport type {\n SelicHistoricoRange,\n SelicLookupOptions,\n SelicMetaObservacao,\n SelicMetaResult,\n} from './types.js';\n\nconst observacoes: readonly SelicMetaObservacao[] = selicData;\n\nfunction normalizeData(data: string): string {\n const trimmed = data.trim();\n const isoMatch = /^(\\d{4})-(\\d{2})-(\\d{2})$/u.exec(trimmed);\n if (isoMatch !== null) {\n return `${isoMatch[1]}-${isoMatch[2]}-${isoMatch[3]}`;\n }\n\n const bacenMatch = /^(\\d{2})-(\\d{2})-(\\d{4})$/u.exec(trimmed);\n if (bacenMatch !== null) {\n return `${bacenMatch[3]}-${bacenMatch[1]}-${bacenMatch[2]}`;\n }\n\n const slashMatch = /^(\\d{2})\\/(\\d{2})\\/(\\d{4})$/u.exec(trimmed);\n if (slashMatch !== null) {\n return `${slashMatch[3]}-${slashMatch[2]}-${slashMatch[1]}`;\n }\n\n return '';\n}\n\nfunction compareByDateDesc(left: SelicMetaObservacao, right: SelicMetaObservacao): number {\n return right.data.localeCompare(left.data);\n}\n\nfunction compareByDateAsc(left: SelicMetaObservacao, right: SelicMetaObservacao): number {\n return left.data.localeCompare(right.data);\n}\n\nexport function getSelicList(): readonly SelicMetaObservacao[] {\n return observacoes;\n}\n\nexport function pickLatestSelicMeta(\n items: readonly SelicMetaObservacao[],\n): SelicMetaObservacao | undefined {\n if (items.length === 0) {\n return undefined;\n }\n return [...items].sort(compareByDateDesc)[0];\n}\n\nfunction resolveSelicObservacao(data?: string): SelicMetaObservacao | undefined {\n if (data === undefined) {\n return pickLatestSelicMeta(observacoes);\n }\n\n const normalizedData = normalizeData(data);\n if (normalizedData.length === 0) {\n return undefined;\n }\n\n return observacoes.find((entry) => entry.data === normalizedData);\n}\n\nexport function getSelicMeta(options?: SelicLookupOptions): SelicMetaResult | undefined {\n const observacao = resolveSelicObservacao();\n if (observacao === undefined) {\n return undefined;\n }\n return buildSelicMetaResult(observacao, options);\n}\n\nexport function getSelicMetaPorData(\n isoDate: string,\n options?: SelicLookupOptions,\n): SelicMetaResult | undefined {\n const observacao = resolveSelicObservacao(isoDate);\n if (observacao === undefined) {\n return undefined;\n }\n return buildSelicMetaResult(observacao, options);\n}\n\nexport function getSelicHistorico(range: SelicHistoricoRange): readonly SelicMetaObservacao[] {\n const from = range.from === undefined ? '' : normalizeData(range.from);\n const to = range.to === undefined ? '' : normalizeData(range.to);\n\n if ((range.from !== undefined && from.length === 0) || (range.to !== undefined && to.length === 0)) {\n return [];\n }\n\n if (from.length > 0 && to.length > 0 && from > to) {\n return [];\n }\n\n return observacoes\n .filter((entry) => {\n if (from.length > 0 && entry.data < from) {\n return false;\n }\n if (to.length > 0 && entry.data > to) {\n return false;\n }\n return true;\n })\n .sort(compareByDateAsc);\n}\n","import selicMetadata from './data/metadata.json';\nimport type { SelicDataVersion } from './types.js';\n\nexport const SELIC_DATA_VERSION: SelicDataVersion = selicMetadata as SelicDataVersion;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/selic/data/selic.json","../src/selic/constants.ts","../src/selic/staleness.ts","../src/selic/lookup.ts","../src/selic/version.ts"],"names":[],"mappings":"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","file":"selic.js","sourcesContent":["[\n {\n \"data\": \"2026-04-02\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-03\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-04\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-05\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-06\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-07\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-08\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-09\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-10\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-11\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-12\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-13\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-14\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-15\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-16\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-17\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-18\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-19\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-20\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-21\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-22\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-23\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-24\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-25\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-26\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-27\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-28\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-29\",\n \"valor\": 14.75\n },\n {\n \"data\": \"2026-04-30\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-01\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-02\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-03\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-04\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-05\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-06\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-07\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-08\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-09\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-10\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-11\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-12\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-13\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-14\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-15\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-16\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-17\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-18\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-19\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-20\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-21\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-22\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-23\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-24\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-25\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-26\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-27\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-28\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-29\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-30\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-05-31\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-01\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-02\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-03\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-04\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-05\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-06\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-07\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-08\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-09\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-10\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-11\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-12\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-13\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-14\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-15\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-16\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-17\",\n \"valor\": 14.5\n },\n {\n \"data\": \"2026-06-18\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-19\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-20\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-21\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-22\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-23\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-24\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-25\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-26\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-27\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-28\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-29\",\n \"valor\": 14.25\n },\n {\n \"data\": \"2026-06-30\",\n \"valor\": 14.25\n }\n]\n","/**\n * Bacen SGS série 432 — Meta Selic constants.\n * @see https://dadosabertos.bcb.gov.br/dataset/432-taxa-de-juros---meta-selic-definida-pelo-copom\n */\n\nexport const BCB_SELIC_DATASET_URL =\n 'https://dadosabertos.bcb.gov.br/dataset/432-taxa-de-juros---meta-selic-definida-pelo-copom';\n\nexport const BCB_SELIC_SGS_API_URL =\n 'https://api.bcb.gov.br/dados/serie/bcdata.sgs.432/dados?formato=json';\n\nexport const BCB_SELIC_SGS_CONSULTA_URL =\n 'https://www3.bcb.gov.br/sgspub/consultarvalores/consultarValoresSeries.do?method=consultarGraficoPorId&hdOidSeriesSelecionadas=432';\n\nexport const BCB_SELIC_COPOM_URL = 'https://www.bcb.gov.br/controleinflacao/copom';\n\nexport const SELIC_SGS_SERIE = 432;\n\nexport const SELIC_EMBED_CALENDAR_DAYS = 90;\n\nexport const SELIC_STALE_WARNING =\n 'Embedded data. For real-time use @br-validators/adapters-selic';\n\n/** Golden meta Selic 14,25% a.a. on 2026-06-18 (COPOM). */\nexport const SELIC_GOLDEN_DATA_COPOM = '2026-06-18';\n\nexport const SELIC_GOLDEN_VALOR_COPOM = 14.25;\n","/**\n * SELIC embed staleness — business-day age vs Brazil local today.\n * @see docs/OFFICIAL-SOURCES.md#selic-meta-sgs-432\n */\n\nimport { isFeriadoNacional } from '../feriados/calendar.js';\nimport {\n addUtcDays,\n formatIsoDate,\n isWeekendUtc,\n parseIsoDateString,\n} from '../feriados/date-utils.js';\nimport { SELIC_STALE_WARNING } from './constants.js';\nimport type { SelicLookupOptions, SelicMetaObservacao, SelicMetaResult } from './types.js';\n\nexport function isDiaUtil(isoDate: string): boolean {\n const parts = parseIsoDateString(isoDate);\n if (parts === null) {\n return false;\n }\n return !isWeekendUtc(parts) && !isFeriadoNacional(isoDate);\n}\n\nexport function getBrazilTodayIso(now: Date = new Date()): string {\n return new Intl.DateTimeFormat('en-CA', { timeZone: 'America/Sao_Paulo' }).format(now);\n}\n\nexport function subtractBusinessDays(fromIso: string, businessDays: number): string {\n if (businessDays < 1) {\n return fromIso;\n }\n\n const start = parseIsoDateString(fromIso);\n if (start === null) {\n return '';\n }\n\n let cursor = start;\n let remaining = businessDays;\n const maxIterations = businessDays * 4 + 14;\n\n for (let iteration = 0; iteration < maxIterations && remaining > 0; iteration += 1) {\n cursor = addUtcDays(cursor, -1);\n const iso = formatIsoDate(cursor);\n if (isDiaUtil(iso)) {\n remaining -= 1;\n }\n }\n\n return formatIsoDate(cursor);\n}\n\nexport function isSelicMetaStale(dataReferencia: string, asOfDate: string): boolean {\n const reference = parseIsoDateString(dataReferencia);\n const asOf = parseIsoDateString(asOfDate);\n if (reference === null || asOf === null) {\n return false;\n }\n\n const previousBusinessDay = subtractBusinessDays(asOfDate, 1);\n return dataReferencia < previousBusinessDay;\n}\n\nexport function buildSelicMetaResult(\n observacao: SelicMetaObservacao,\n options?: SelicLookupOptions,\n): SelicMetaResult {\n const asOfDate = options?.asOfDate ?? getBrazilTodayIso();\n const dataReferencia = observacao.data;\n const isStale = isSelicMetaStale(dataReferencia, asOfDate);\n\n return {\n ...observacao,\n dataReferencia,\n isStale,\n ...(isStale ? { warning: SELIC_STALE_WARNING } : {}),\n };\n}\n","/**\n * Bacen SELIC meta (SGS 432) — offline embedded daily series.\n * @see https://api.bcb.gov.br/dados/serie/bcdata.sgs.432/dados?formato=json\n */\n\nimport selicData from './data/selic.json';\nimport { buildSelicMetaResult } from './staleness.js';\nimport type {\n SelicHistoricoRange,\n SelicLookupOptions,\n SelicMetaObservacao,\n SelicMetaResult,\n} from './types.js';\n\nconst observacoes: readonly SelicMetaObservacao[] = selicData;\n\nfunction normalizeData(data: string): string {\n const trimmed = data.trim();\n const isoMatch = /^(\\d{4})-(\\d{2})-(\\d{2})$/u.exec(trimmed);\n if (isoMatch !== null) {\n return `${isoMatch[1]}-${isoMatch[2]}-${isoMatch[3]}`;\n }\n\n const bacenMatch = /^(\\d{2})-(\\d{2})-(\\d{4})$/u.exec(trimmed);\n if (bacenMatch !== null) {\n return `${bacenMatch[3]}-${bacenMatch[1]}-${bacenMatch[2]}`;\n }\n\n const slashMatch = /^(\\d{2})\\/(\\d{2})\\/(\\d{4})$/u.exec(trimmed);\n if (slashMatch !== null) {\n return `${slashMatch[3]}-${slashMatch[2]}-${slashMatch[1]}`;\n }\n\n return '';\n}\n\nfunction compareByDateDesc(left: SelicMetaObservacao, right: SelicMetaObservacao): number {\n return right.data.localeCompare(left.data);\n}\n\nfunction compareByDateAsc(left: SelicMetaObservacao, right: SelicMetaObservacao): number {\n return left.data.localeCompare(right.data);\n}\n\nexport function getSelicList(): readonly SelicMetaObservacao[] {\n return observacoes;\n}\n\nexport function pickLatestSelicMeta(\n items: readonly SelicMetaObservacao[],\n): SelicMetaObservacao | undefined {\n if (items.length === 0) {\n return undefined;\n }\n return [...items].sort(compareByDateDesc)[0];\n}\n\nfunction resolveSelicObservacao(data?: string): SelicMetaObservacao | undefined {\n if (data === undefined) {\n return pickLatestSelicMeta(observacoes);\n }\n\n const normalizedData = normalizeData(data);\n if (normalizedData.length === 0) {\n return undefined;\n }\n\n return observacoes.find((entry) => entry.data === normalizedData);\n}\n\nexport function getSelicMeta(options?: SelicLookupOptions): SelicMetaResult | undefined {\n const observacao = resolveSelicObservacao();\n if (observacao === undefined) {\n return undefined;\n }\n return buildSelicMetaResult(observacao, options);\n}\n\nexport function getSelicMetaPorData(\n isoDate: string,\n options?: SelicLookupOptions,\n): SelicMetaResult | undefined {\n const observacao = resolveSelicObservacao(isoDate);\n if (observacao === undefined) {\n return undefined;\n }\n return buildSelicMetaResult(observacao, options);\n}\n\nexport function getSelicHistorico(range: SelicHistoricoRange): readonly SelicMetaObservacao[] {\n const from = range.from === undefined ? '' : normalizeData(range.from);\n const to = range.to === undefined ? '' : normalizeData(range.to);\n\n if ((range.from !== undefined && from.length === 0) || (range.to !== undefined && to.length === 0)) {\n return [];\n }\n\n if (from.length > 0 && to.length > 0 && from > to) {\n return [];\n }\n\n return observacoes\n .filter((entry) => {\n if (from.length > 0 && entry.data < from) {\n return false;\n }\n if (to.length > 0 && entry.data > to) {\n return false;\n }\n return true;\n })\n .sort(compareByDateAsc);\n}\n","import selicMetadata from './data/metadata.json';\nimport type { SelicDataVersion } from './types.js';\n\nexport const SELIC_DATA_VERSION: SelicDataVersion = selicMetadata as SelicDataVersion;\n"]}
|
package/dist/telefone.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './chunk-ZH4RJNG7.js';
|
|
2
|
-
export { formatTelefone } from './chunk-
|
|
3
|
-
export { ANATEL_DDDS, ANATEL_DDD_SET, TELEFONE_ANATEL_DDD_PANEL_URL, TELEFONE_DDD_DATA_VERSION, TELEFONE_GOLDEN_CELULAR, TELEFONE_GOLDEN_CELULAR_MASKED, TELEFONE_GOLDEN_FIXO, TELEFONE_GOLDEN_FIXO_MASKED, TELEFONE_OFFICIAL_SOURCE_URL, extractTelefoneDigits, getDddInfo, isValidTelefone, normalizeTelefoneDigits, stripTelefone, validateTelefone } from './chunk-
|
|
4
|
-
import './chunk-
|
|
2
|
+
export { formatTelefone } from './chunk-2COBLRJZ.js';
|
|
3
|
+
export { ANATEL_DDDS, ANATEL_DDD_SET, TELEFONE_ANATEL_DDD_PANEL_URL, TELEFONE_DDD_DATA_VERSION, TELEFONE_GOLDEN_CELULAR, TELEFONE_GOLDEN_CELULAR_MASKED, TELEFONE_GOLDEN_FIXO, TELEFONE_GOLDEN_FIXO_MASKED, TELEFONE_OFFICIAL_SOURCE_URL, extractTelefoneDigits, getDddInfo, isValidTelefone, normalizeTelefoneDigits, stripTelefone, validateTelefone } from './chunk-OZHEHUBV.js';
|
|
4
|
+
import './chunk-ZKPOHCVZ.js';
|
|
5
5
|
import './chunk-BVMY4IWB.js';
|
|
6
6
|
//# sourceMappingURL=telefone.js.map
|
|
7
7
|
//# sourceMappingURL=telefone.js.map
|
package/dist/titulo-eleitor.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import './chunk-7ULDLG4C.js';
|
|
2
|
-
export { formatTituloEleitor } from './chunk-
|
|
3
|
-
export { TITULO_ELEITOR_ALGORITHM_REF_URL, TITULO_ELEITOR_ALGORITHM_WEIGHTS_REF_URL, TITULO_ELEITOR_DV1_WEIGHTS_8, TITULO_ELEITOR_DV1_WEIGHTS_9, TITULO_ELEITOR_DV2_WEIGHTS, TITULO_ELEITOR_ETITULO_URL, TITULO_ELEITOR_EXTERIOR_UF_CODE, TITULO_ELEITOR_GOLDEN_EXTERIOR, TITULO_ELEITOR_GOLDEN_MASKED_INPUT, TITULO_ELEITOR_GOLDEN_PRIMARY, TITULO_ELEITOR_GOLDEN_SP_EXTENDED, TITULO_ELEITOR_GOLDEN_SP_SPECIAL, TITULO_ELEITOR_LENGTH, TITULO_ELEITOR_LENGTH_EXTENDED, TITULO_ELEITOR_NORMATIVE_SECONDARY_URL, TITULO_ELEITOR_NUMERIC_PATTERN_12, TITULO_ELEITOR_NUMERIC_PATTERN_13, TITULO_ELEITOR_OFFICIAL_SOURCE_URL, TITULO_ELEITOR_SEQUENTIAL_LENGTH, TITULO_ELEITOR_SEQUENTIAL_LENGTH_EXTENDED, TITULO_ELEITOR_SPECIAL_UF_CODES, TITULO_ELEITOR_TSE_PORTAL_URL, TITULO_ELEITOR_UF_BY_CODE, isValidTituloEleitor, validateTituloEleitor } from './chunk-
|
|
4
|
-
export { stripTituloEleitor } from './chunk-
|
|
2
|
+
export { formatTituloEleitor } from './chunk-A255RZZ7.js';
|
|
3
|
+
export { TITULO_ELEITOR_ALGORITHM_REF_URL, TITULO_ELEITOR_ALGORITHM_WEIGHTS_REF_URL, TITULO_ELEITOR_DV1_WEIGHTS_8, TITULO_ELEITOR_DV1_WEIGHTS_9, TITULO_ELEITOR_DV2_WEIGHTS, TITULO_ELEITOR_ETITULO_URL, TITULO_ELEITOR_EXTERIOR_UF_CODE, TITULO_ELEITOR_GOLDEN_EXTERIOR, TITULO_ELEITOR_GOLDEN_MASKED_INPUT, TITULO_ELEITOR_GOLDEN_PRIMARY, TITULO_ELEITOR_GOLDEN_SP_EXTENDED, TITULO_ELEITOR_GOLDEN_SP_SPECIAL, TITULO_ELEITOR_LENGTH, TITULO_ELEITOR_LENGTH_EXTENDED, TITULO_ELEITOR_NORMATIVE_SECONDARY_URL, TITULO_ELEITOR_NUMERIC_PATTERN_12, TITULO_ELEITOR_NUMERIC_PATTERN_13, TITULO_ELEITOR_OFFICIAL_SOURCE_URL, TITULO_ELEITOR_SEQUENTIAL_LENGTH, TITULO_ELEITOR_SEQUENTIAL_LENGTH_EXTENDED, TITULO_ELEITOR_SPECIAL_UF_CODES, TITULO_ELEITOR_TSE_PORTAL_URL, TITULO_ELEITOR_UF_BY_CODE, isValidTituloEleitor, validateTituloEleitor } from './chunk-6WBUKUHD.js';
|
|
4
|
+
export { stripTituloEleitor } from './chunk-6BWOYNQD.js';
|
|
5
5
|
import './chunk-4SNBZFS5.js';
|
|
6
|
+
import './chunk-JUQMINSZ.js';
|
|
7
|
+
import './chunk-FA5ZM5UA.js';
|
|
6
8
|
import './chunk-UCJPSJN5.js';
|
|
9
|
+
import './chunk-LLJSXMO2.js';
|
|
7
10
|
import './chunk-EB3G4IG6.js';
|
|
8
11
|
import './chunk-OTZHMJYE.js';
|
|
9
12
|
import './chunk-BVMY4IWB.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { metadata_default } from './chunk-
|
|
1
|
+
import { metadata_default } from './chunk-NVQX4ODB.js';
|
|
2
2
|
import { stripCpf } from './chunk-UCJPSJN5.js';
|
|
3
3
|
import { stripCnpj } from './chunk-EB3G4IG6.js';
|
|
4
4
|
|
|
5
5
|
// src/transparencia-snapshots/data/endpoints.json
|
|
6
6
|
var endpoints_default = {
|
|
7
|
-
capturadoEm: "2026-06-
|
|
7
|
+
capturadoEm: "2026-06-30T07:23:18.315Z",
|
|
8
8
|
swaggerOk: true,
|
|
9
9
|
openapiOk: true,
|
|
10
10
|
cadastroUrl: "https://portaldatransparencia.gov.br/",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/transparencia-snapshots/data/endpoints.json","../src/transparencia-snapshots/lookup.ts","../src/transparencia-snapshots/normalize.ts","../src/transparencia-snapshots/constants.ts","../src/transparencia-snapshots/version.ts"],"names":[],"mappings":"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","file":"transparencia-snapshots.js","sourcesContent":["{\n \"capturadoEm\": \"2026-06-
|
|
1
|
+
{"version":3,"sources":["../src/transparencia-snapshots/data/endpoints.json","../src/transparencia-snapshots/lookup.ts","../src/transparencia-snapshots/normalize.ts","../src/transparencia-snapshots/constants.ts","../src/transparencia-snapshots/version.ts"],"names":[],"mappings":"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","file":"transparencia-snapshots.js","sourcesContent":["{\n \"capturadoEm\": \"2026-06-30T07:23:18.315Z\",\n \"swaggerOk\": true,\n \"openapiOk\": true,\n \"cadastroUrl\": \"https://portaldatransparencia.gov.br/\",\n \"adapterPackage\": \"@br-validators/adapters-transparencia\",\n \"endpoints\": [\n {\n \"id\": \"ceis\",\n \"path\": \"/api-de-dados/ceis\",\n \"domain\": \"sanctions\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Cadastro de Empresas Inidôneas e Suspensas — paginated query by CNPJ/CPF\"\n },\n {\n \"id\": \"cnep\",\n \"path\": \"/api-de-dados/cnep\",\n \"domain\": \"sanctions\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Cadastro Nacional de Empresas Punidas — paginated query by CNPJ/CPF\"\n },\n {\n \"id\": \"ceaf\",\n \"path\": \"/api-de-dados/ceaf\",\n \"domain\": \"sanctions\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Cadastro de Expulsões da Administração Federal — paginated query\"\n },\n {\n \"id\": \"peps\",\n \"path\": \"/api-de-dados/peps\",\n \"domain\": \"pep\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Pessoas Expostas Politicamente — paginated query; no open bulk export in v1\"\n },\n {\n \"id\": \"bolsa-familia\",\n \"path\": \"/api-de-dados/bolsa-familia-beneficios\",\n \"domain\": \"social-programs\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Bolsa Família benefits — query by CPF/NIS; adapter only\"\n },\n {\n \"id\": \"bpc\",\n \"path\": \"/api-de-dados/beneficios-por-pessoa\",\n \"domain\": \"social-programs\",\n \"delivery\": \"query-adapter\",\n \"description\": \"BPC and related benefits — query by CPF/NIS; adapter only\"\n },\n {\n \"id\": \"auxilio-emergencial\",\n \"path\": \"/api-de-dados/auxilio-emergencial\",\n \"domain\": \"social-programs\",\n \"delivery\": \"query-adapter\",\n \"description\": \"Auxílio Emergencial — historical query by CPF/NIS; adapter only\"\n },\n {\n \"id\": \"despesas\",\n \"path\": \"/api-de-dados/despesas\",\n \"domain\": \"budget\",\n \"delivery\": \"out-of-scope\",\n \"description\": \"Federal spending — high volume; out of scope for core embed v1\"\n }\n ]\n}\n","/**\n * Portal da Transparência endpoint registry — offline metadata (no live API in core).\n * @see docs/OFFICIAL-SOURCES.md#portal-transparencia\n */\n\nimport registryData from './data/endpoints.json';\nimport type { TransparenciaEndpoint, TransparenciaSnapshotsRegistry } from './types.js';\n\nconst registry = registryData as TransparenciaSnapshotsRegistry;\nconst endpoints: readonly TransparenciaEndpoint[] = registry.endpoints;\n\nexport function getTransparenciaRegistry(): TransparenciaSnapshotsRegistry {\n return registry;\n}\n\nexport function getTransparenciaEndpoints(): readonly TransparenciaEndpoint[] {\n return endpoints;\n}\n\nexport function getTransparenciaEndpointPorId(id: string): TransparenciaEndpoint | undefined {\n const normalized = id.trim().toLowerCase();\n if (normalized.length === 0) {\n return undefined;\n }\n return endpoints.find((endpoint) => endpoint.id === normalized);\n}\n\nexport function getTransparenciaEndpointsPorDominio(domain: string): readonly TransparenciaEndpoint[] {\n const normalized = domain.trim().toLowerCase();\n if (normalized.length === 0) {\n return [];\n }\n return endpoints.filter((endpoint) => endpoint.domain === normalized);\n}\n\nexport function getTransparenciaQueryAdapterEndpoints(): readonly TransparenciaEndpoint[] {\n return endpoints.filter((endpoint) => endpoint.delivery === 'query-adapter');\n}\n","/**\n * Normalize identifiers for Transparência adapter queries — delegates to core strip helpers.\n * @see docs/ADAPTERS-TRANSPARENCIA-RFC.md\n */\n\nimport { stripCnpj } from '../strip/cnpj.js';\nimport { stripCpf } from '../strip/cpf.js';\n\nexport function normalizeTransparenciaCpf(input: string): string {\n return stripCpf(input);\n}\n\nexport function normalizeTransparenciaCnpj(input: string): string {\n return stripCnpj(input);\n}\n","export const TRANSPARENCIA_SWAGGER_URL =\n 'https://api.portaldatransparencia.gov.br/swagger-ui/index.html';\n\nexport const TRANSPARENCIA_OPENAPI_URL = 'https://api.portaldatransparencia.gov.br/v3/api-docs';\n\nexport const TRANSPARENCIA_CADASTRO_URL = 'https://portaldatransparencia.gov.br/';\n\nexport const TRANSPARENCIA_ADAPTER_PACKAGE = '@br-validators/adapters-transparencia';\n\nexport const TRANSPARENCIA_GOLDEN_CEIS_PATH = '/api-de-dados/ceis';\n","import transparenciaMetadata from './data/metadata.json';\nimport type { TransparenciaSnapshotsDataVersion } from './types.js';\n\nexport const TRANSPARENCIA_SNAPSHOTS_DATA_VERSION: TransparenciaSnapshotsDataVersion =\n transparenciaMetadata as TransparenciaSnapshotsDataVersion;\n"]}
|
package/dist/tse-municipios.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { U as UfCode } from './validation-result-D4Wrxl7j.js';
|
|
2
|
-
import { S as SanitizableDocumentType } from './index-
|
|
2
|
+
import { S as SanitizableDocumentType } from './index-CmpOAd8U.js';
|
|
3
3
|
|
|
4
4
|
/** Document types supported by compare, batch, and diff platform APIs. */
|
|
5
5
|
type PlatformDocumentType = SanitizableDocumentType | 'pix' | 'brcode';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@br-validators/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0-data.2",
|
|
4
4
|
"description": "The Brazilian document validation library for TypeScript — CPF, CNPJ (alphanumeric), NF-e, PIX, boleto, IE (27 UFs), offline IBGE/ANP/NCM/CST/LC116 reference data, and 15+ more. Zero deps, fully typed, never throws.",
|
|
5
5
|
"homepage": "https://www.npmjs.com/package/@br-validators/core",
|
|
6
6
|
"license": "MIT",
|
|
@@ -274,6 +274,10 @@
|
|
|
274
274
|
"types": "./dist/cst.d.ts",
|
|
275
275
|
"import": "./dist/cst.js"
|
|
276
276
|
},
|
|
277
|
+
"./csosn": {
|
|
278
|
+
"types": "./dist/csosn.d.ts",
|
|
279
|
+
"import": "./dist/csosn.js"
|
|
280
|
+
},
|
|
277
281
|
"./lc116": {
|
|
278
282
|
"types": "./dist/lc116.d.ts",
|
|
279
283
|
"import": "./dist/lc116.js"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/core/cnpj/constants.ts","../src/core/cnpj/ascii-value.ts","../src/core/cnpj/alphanumeric.ts","../src/core/cnpj/detect.ts","../src/core/cnpj/numeric.ts","../src/core/cnpj/index.ts"],"names":[],"mappings":"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","file":"chunk-2RZXK6C3.js","sourcesContent":["/**\n * CNPJ constants — modulo 11 weights from RFB FAQ Q14.\n * @see https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/publicacoes/perguntas-e-respostas/cnpj/cnpj-alfanumerico.pdf\n */\nexport const CNPJ_LENGTH = 14;\nexport const CNPJ_BASE_LENGTH = 12;\n\nexport const CNPJ_DV1_WEIGHTS = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2] as const;\nexport const CNPJ_DV2_WEIGHTS = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2] as const;\n\nexport const CNPJ_ALPHANUMERIC_PATTERN = /^[A-Z0-9]{12}[0-9]{2}$/;\nexport const CNPJ_NUMERIC_PATTERN = /^[0-9]{14}$/;\n\nexport const CNPJ_OFFICIAL_SOURCE_URL =\n 'https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/publicacoes/perguntas-e-respostas/cnpj/cnpj-alfanumerico.pdf';\n\n/** RFB Q14 golden vector */\nexport const CNPJ_GOLDEN_ALPHANUMERIC = '12ABC34501DE35';\n\n/** Valid numeric CNPJ for regression tests (modulo 11) */\nexport const CNPJ_GOLDEN_NUMERIC = '11222333000181';\nexport const CNPJ_GOLDEN_NUMERIC_MASKED = '11.222.333/0001-81';\nexport const CNPJ_GOLDEN_ALPHANUMERIC_MASKED = '12.ABC.345/01DE-35';\n\nexport const CNPJ_MASK_PATTERN = /^(.{2})(.{3})(.{3})(.{4})(.{2})$/;\n","/**\n * Character value for CNPJ modulo 11 — ASCII decimal minus 48 (RFB Q14).\n * @see https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/publicacoes/perguntas-e-respostas/cnpj/cnpj-alfanumerico.pdf\n */\nexport function cnpjCharValue(char: string): number {\n return char.charCodeAt(0) - 48;\n}\n","import { CNPJ_ALPHANUMERIC_PATTERN, CNPJ_BASE_LENGTH, CNPJ_DV1_WEIGHTS, CNPJ_DV2_WEIGHTS, CNPJ_LENGTH } from './constants.js';\nimport { cnpjCharValue } from './ascii-value.js';\nimport { computeCheckDigit } from './modulo11.js';\n\nfunction hasRepeatedChars(value: string): boolean {\n const first = value[0];\n for (let i = 1; i < value.length; i++) {\n if (value[i] !== first) {\n return false;\n }\n }\n return true;\n}\n\nfunction isValidStructure(canonical: string): boolean {\n return canonical.length === CNPJ_LENGTH && CNPJ_ALPHANUMERIC_PATTERN.test(canonical);\n}\n\n/**\n * Alphanumeric CNPJ — ASCII-48 modulo 11 (RFB Q14).\n * Golden vector: 12ABC34501DE35\n */\nexport function isValidCnpjAlphanumeric(input: string): boolean {\n const canonical = input.toUpperCase();\n if (!isValidStructure(canonical)) {\n return false;\n }\n if (hasRepeatedChars(canonical)) {\n return false;\n }\n\n const base = canonical.slice(0, CNPJ_BASE_LENGTH);\n const dv1Expected = String(computeCheckDigit(base, CNPJ_DV1_WEIGHTS, cnpjCharValue));\n const dv2Expected = String(\n computeCheckDigit(base + dv1Expected, CNPJ_DV2_WEIGHTS, cnpjCharValue),\n );\n\n return canonical.slice(CNPJ_BASE_LENGTH) === dv1Expected + dv2Expected;\n}\n","import { CNPJ_ALPHANUMERIC_PATTERN, CNPJ_NUMERIC_PATTERN } from './constants.js';\nimport type { DocumentFormat } from '../../types/validation-result.js';\n\nexport function detectCnpjFormat(stripped: string): DocumentFormat | 'unknown' {\n const upper = stripped.toUpperCase();\n if (CNPJ_NUMERIC_PATTERN.test(upper)) {\n return 'numeric';\n }\n if (CNPJ_ALPHANUMERIC_PATTERN.test(upper)) {\n return 'alphanumeric';\n }\n return 'unknown';\n}\n\nexport function containsLetter(value: string): boolean {\n return /[A-Za-z]/.test(value);\n}\n","import { CNPJ_BASE_LENGTH, CNPJ_DV1_WEIGHTS, CNPJ_DV2_WEIGHTS, CNPJ_NUMERIC_PATTERN } from './constants.js';\nimport { computeCheckDigit } from './modulo11.js';\n\nfunction digitValue(char: string): number {\n return Number(char);\n}\n\nfunction hasRepeatedDigits(value: string): boolean {\n const first = value[0];\n for (let i = 1; i < value.length; i++) {\n if (value[i] !== first) {\n return false;\n }\n }\n return true;\n}\n\n/**\n * Numeric CNPJ — traditional modulo 11 on digits (RFB Q6–Q7 coexistence).\n */\nexport function isValidCnpjNumeric(input: string): boolean {\n const canonical = input.replace(/\\D/g, '');\n if (!CNPJ_NUMERIC_PATTERN.test(canonical)) {\n return false;\n }\n if (hasRepeatedDigits(canonical)) {\n return false;\n }\n\n const base = canonical.slice(0, CNPJ_BASE_LENGTH);\n const dv1Expected = String(computeCheckDigit(base, CNPJ_DV1_WEIGHTS, digitValue));\n const dv2Expected = String(\n computeCheckDigit(base + dv1Expected, CNPJ_DV2_WEIGHTS, digitValue),\n );\n\n return canonical.slice(CNPJ_BASE_LENGTH) === dv1Expected + dv2Expected;\n}\n","import { stripCnpj } from '../../strip/cnpj.js';\nimport type { Cnpj, DocumentFormat, ValidationResult } from '../../types/validation-result.js';\nimport { brandCnpj } from '../../types/validation-result.js';\nimport { isValidCnpjAlphanumeric } from './alphanumeric.js';\nimport { CNPJ_LENGTH } from './constants.js';\nimport { containsLetter, detectCnpjFormat } from './detect.js';\nimport { isValidCnpjNumeric } from './numeric.js';\n\nexport { detectCnpjFormat, containsLetter } from './detect.js';\nexport { isValidCnpjAlphanumeric } from './alphanumeric.js';\nexport { isValidCnpjNumeric } from './numeric.js';\nexport {\n CNPJ_GOLDEN_ALPHANUMERIC,\n CNPJ_GOLDEN_ALPHANUMERIC_MASKED,\n CNPJ_GOLDEN_NUMERIC,\n CNPJ_GOLDEN_NUMERIC_MASKED,\n CNPJ_OFFICIAL_SOURCE_URL,\n} from './constants.js';\n\ntype FailedResult = Extract<ValidationResult, { ok: false }>;\n\nfunction failure(code: FailedResult['code'], message: string): FailedResult {\n return { ok: false, code, message };\n}\n\nfunction validateStructure(\n input: string,\n stripped: string,\n): FailedResult | { format: DocumentFormat } {\n if (stripped.length === 0) {\n return failure('EMPTY_INPUT', 'CNPJ input is empty');\n }\n\n const withoutMask = input.replace(/[.\\-/]/g, '');\n if (/[^A-Za-z0-9]/.test(withoutMask)) {\n return failure('INVALID_CHARACTER', 'CNPJ contains invalid characters');\n }\n\n if (stripped.length !== CNPJ_LENGTH) {\n return failure('INVALID_LENGTH', `CNPJ must have ${CNPJ_LENGTH} characters after normalization`);\n }\n\n const format = detectCnpjFormat(stripped);\n if (format === 'unknown') {\n return failure('UNSUPPORTED_FORMAT', 'CNPJ format is not numeric or alphanumeric');\n }\n\n return { format };\n}\n\nexport function isValidCnpj(input: string): boolean {\n return validateCnpj(input).ok;\n}\n\nexport function validateCnpj(input: string): ValidationResult<Cnpj> {\n const stripped = stripCnpj(input);\n const structural = validateStructure(input, stripped);\n if ('ok' in structural) {\n return structural;\n }\n\n const { format } = structural;\n\n if (format === 'numeric' || !containsLetter(stripped)) {\n if (isValidCnpjNumeric(stripped)) {\n return { ok: true, value: brandCnpj(stripped), format: 'numeric' };\n }\n if (format === 'numeric') {\n if (/^(\\d)\\1{13}$/.test(stripped)) {\n return failure('KNOWN_INVALID_PATTERN', 'CNPJ with all identical digits is invalid');\n }\n return failure('INVALID_CHECK_DIGIT', 'CNPJ check digits are invalid');\n }\n }\n\n if (isValidCnpjAlphanumeric(stripped)) {\n return { ok: true, value: brandCnpj(stripped), format: 'alphanumeric' };\n }\n\n return failure('INVALID_CHECK_DIGIT', 'CNPJ check digits are invalid');\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/platform/validate-dispatch.ts","../src/batch/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AA+BO,SAAS,mBAAA,CACd,KAAA,EACA,IAAA,EACA,OAAA,GAA2B,EAAC,EACJ;AACxB,EAAA,IAAI,IAAA,KAAS,oBAAA,IAAwB,CAAC,OAAA,CAAQ,EAAA,EAAI;AAChD,IAAA,OAAO;AAAA,MACL,EAAA,EAAI,KAAA;AAAA,MACJ,IAAA,EAAM,oBAAA;AAAA,MACN,OAAA,EAAS;AAAA,KACX;AAAA,EACF;AAEA,EAAA,IAAI,IAAA,KAAS,IAAA,IAAQ,CAAC,OAAA,CAAQ,EAAA,EAAI;AAChC,IAAA,OAAO;AAAA,MACL,EAAA,EAAI,KAAA;AAAA,MACJ,IAAA,EAAM,oBAAA;AAAA,MACN,OAAA,EAAS;AAAA,KACX;AAAA,EACF;AAEA,EAAA,QAAQ,IAAA;AAAM,IACZ,KAAK,KAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,YAAY,KAAK,CAAA;AAChC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,MAAA,EAAQ;AACX,MAAA,MAAM,MAAA,GAAS,aAAa,KAAK,CAAA;AACjC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,KAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,YAAY,KAAK,CAAA;AAChC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,OAAA,EAAS;AACZ,MAAA,MAAM,MAAA,GAAS,cAAc,KAAK,CAAA;AAClC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,WAAA,EAAa;AAChB,MAAA,MAAM,MAAA,GAAS,iBAAiB,KAAK,CAAA;AACrC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,UAAA,EAAY;AACf,MAAA,MAAM,MAAA,GAAS,iBAAiB,KAAK,CAAA;AACrC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,KAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,YAAY,KAAK,CAAA;AAChC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,SAAA,EAAW;AACd,MAAA,MAAM,MAAA,GAAS,gBAAgB,KAAK,CAAA;AACpC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,gBAAA,EAAkB;AACrB,MAAA,MAAM,MAAA,GAAS,sBAAsB,KAAK,CAAA;AAC1C,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,mBAAA,EAAqB;AACxB,MAAA,MAAM,MAAA,GAAS,yBAAyB,KAAK,CAAA;AAC7C,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,IAAA,EAAM;AACT,MAAA,MAAM,SAAS,UAAA,CAAW,KAAA,EAAO,EAAE,EAAA,EAAI,OAAA,CAAQ,IAAgB,CAAA;AAC/D,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,WAAA,EAAa;AAChB,MAAA,MAAM,MAAA,GAAS,iBAAiB,KAAK,CAAA;AACrC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,QAAA,EAAU;AACb,MAAA,MAAM,MAAA,GAAS,eAAe,KAAK,CAAA;AACnC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,gBAAA,EAAkB;AACrB,MAAA,MAAM,MAAA,GAAS,sBAAsB,KAAK,CAAA;AAC1C,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,KAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,YAAY,KAAK,CAAA;AAChC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,oBAAA,EAAsB;AACzB,MAAA,MAAM,SAAS,yBAAA,CAA0B,KAAA,EAAO,EAAE,EAAA,EAAI,OAAA,CAAQ,IAAc,CAAA;AAC5E,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,mCAAA,EAAqC;AACxC,MAAA,MAAM,MAAA,GAAS,kBAAkB,KAAK,CAAA;AACtC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,KAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,eAAe,KAAK,CAAA;AACnC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,KAAK,QAAA,EAAU;AACb,MAAA,MAAM,MAAA,GAAS,eAAe,KAAK,CAAA;AACnC,MAAA,OAAO,MAAA,CAAO,KAAK,EAAE,EAAA,EAAI,MAAM,KAAA,EAAO,MAAA,CAAO,OAAM,GAAI,MAAA;AAAA,IACzD;AAAA,IACA,SAAS;AACP,MAAA,MAAM,WAAA,GAAqB,IAAA;AAC3B,MAAA,OAAO;AAAA,QACL,EAAA,EAAI,KAAA;AAAA,QACJ,IAAA,EAAM,oBAAA;AAAA,QACN,OAAA,EAAS,CAAA,kBAAA,EAAqB,MAAA,CAAO,WAAW,CAAC,CAAA;AAAA,OACnD;AAAA,IACF;AAAA;AAEJ;;;ACzGO,SAAS,KAAA,CACd,MAAA,EACA,IAAA,EACA,OAAA,GAA2B,EAAC,EACf;AACb,EAAA,MAAM,QAA2B,EAAC;AAClC,EAAA,MAAM,UAA+B,EAAC;AAEtC,EAAA,MAAA,CAAO,OAAA,CAAQ,CAAC,KAAA,EAAO,KAAA,KAAU;AAC/B,IAAA,MAAM,MAAA,GAAS,mBAAA,CAAoB,KAAA,EAAO,IAAA,EAAM,OAAO,CAAA;AACvD,IAAA,IAAI,OAAO,EAAA,EAAI;AACb,MAAA,KAAA,CAAM,KAAK,EAAE,KAAA,EAAO,OAAO,KAAA,EAAO,MAAA,CAAO,OAAO,CAAA;AAAA,IAClD,CAAA,MAAO;AACL,MAAA,OAAA,CAAQ,IAAA,CAAK,EAAE,KAAA,EAAO,KAAA,EAAO,IAAA,EAAM,OAAO,IAAA,EAAM,OAAA,EAAS,MAAA,CAAO,OAAA,EAAS,CAAA;AAAA,IAC3E;AAAA,EACF,CAAC,CAAA;AAED,EAAA,OAAO;AAAA,IACL,KAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA,EAAS;AAAA,MACP,OAAO,MAAA,CAAO,MAAA;AAAA,MACd,OAAO,KAAA,CAAM,MAAA;AAAA,MACb,SAAS,OAAA,CAAQ;AAAA;AACnB,GACF;AACF","file":"chunk-5IYHOWQU.js","sourcesContent":["import { validateBrCode } from '../core/brcode/index.js';\nimport { validateBoleto } from '../core/boleto/index.js';\nimport { validateCartaoCredito } from '../core/cartao-credito/index.js';\nimport { validateEan } from '../core/ean/index.js';\nimport { validateCep } from '../core/cep/index.js';\nimport { validateCnh } from '../core/cnh/index.js';\nimport { validateCnpj } from '../core/cnpj/index.js';\nimport { validateCpf } from '../core/cpf/index.js';\nimport { validateInscricaoEstadual } from '../core/inscricao-estadual/index.js';\nimport { validateIeSpRural } from '../core/inscricao-estadual/sp-rural.js';\nimport { validateNfeChave } from '../core/nfe-chave/index.js';\nimport { validatePisPasep } from '../core/pis-pasep/index.js';\nimport { validatePlaca } from '../core/placa/index.js';\nimport { validatePixKey } from '../core/pix/index.js';\nimport { validateRenavam } from '../core/renavam/index.js';\nimport { validateTelefone } from '../core/telefone/index.js';\nimport { validateProcessoJudicial } from '../core/processo-judicial/index.js';\nimport { validateRg } from '../core/rg/index.js';\nimport type { RgUfCode } from '../types/validation-result.js';\nimport { validateTituloEleitor } from '../core/titulo-eleitor/index.js';\nimport type { UfCode, ValidationErrorCode } from '../types/validation-result.js';\nimport type { PlatformDocumentType, PlatformOptions } from './types.js';\n\nexport type ValidateDispatchSuccess = { ok: true; value: string };\nexport type ValidateDispatchFailure = {\n ok: false;\n code: ValidationErrorCode;\n message: string;\n};\nexport type ValidateDispatchResult = ValidateDispatchSuccess | ValidateDispatchFailure;\n\nexport function validateForPlatform(\n input: string,\n type: PlatformDocumentType,\n options: PlatformOptions = {},\n): ValidateDispatchResult {\n if (type === 'inscricao-estadual' && !options.uf) {\n return {\n ok: false,\n code: 'UNSUPPORTED_FORMAT',\n message: 'UF is required for inscricao-estadual validation',\n };\n }\n\n if (type === 'rg' && !options.uf) {\n return {\n ok: false,\n code: 'UNSUPPORTED_FORMAT',\n message: 'UF is required for RG validation',\n };\n }\n\n switch (type) {\n case 'cpf': {\n const result = validateCpf(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnpj': {\n const result = validateCnpj(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cep': {\n const result = validateCep(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'placa': {\n const result = validatePlaca(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'pis-pasep': {\n const result = validatePisPasep(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'telefone': {\n const result = validateTelefone(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnh': {\n const result = validateCnh(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'renavam': {\n const result = validateRenavam(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'titulo-eleitor': {\n const result = validateTituloEleitor(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'processo-judicial': {\n const result = validateProcessoJudicial(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'rg': {\n const result = validateRg(input, { uf: options.uf as RgUfCode });\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'nfe-chave': {\n const result = validateNfeChave(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'boleto': {\n const result = validateBoleto(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cartao-credito': {\n const result = validateCartaoCredito(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'ean': {\n const result = validateEan(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual': {\n const result = validateInscricaoEstadual(input, { uf: options.uf as UfCode });\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual-produtor-rural': {\n const result = validateIeSpRural(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'pix': {\n const result = validatePixKey(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'brcode': {\n const result = validateBrCode(input);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n default: {\n const _exhaustive: never = type;\n return {\n ok: false,\n code: 'UNSUPPORTED_FORMAT',\n message: `Unsupported type: ${String(_exhaustive)}`,\n };\n }\n }\n}\n","/**\n * Batch validation — maps `validate*` per row, never throws (BR-BATCH-001).\n * @see docs/OFFICIAL-SOURCES.md\n */\nimport { validateForPlatform } from '../platform/validate-dispatch.js';\nimport type { PlatformDocumentType, PlatformOptions } from '../platform/types.js';\nimport type { ValidationErrorCode } from '../types/validation-result.js';\n\nexport type BatchValidEntry = {\n index: number;\n input: string;\n value: string;\n};\n\nexport type BatchInvalidEntry = {\n index: number;\n input: string;\n code: ValidationErrorCode;\n message: string;\n};\n\nexport type BatchSummary = {\n total: number;\n valid: number;\n invalid: number;\n};\n\nexport type BatchResult = {\n valid: BatchValidEntry[];\n invalid: BatchInvalidEntry[];\n summary: BatchSummary;\n};\n\nexport function batch(\n inputs: readonly string[],\n type: PlatformDocumentType,\n options: PlatformOptions = {},\n): BatchResult {\n const valid: BatchValidEntry[] = [];\n const invalid: BatchInvalidEntry[] = [];\n\n inputs.forEach((input, index) => {\n const result = validateForPlatform(input, type, options);\n if (result.ok) {\n valid.push({ index, input, value: result.value });\n } else {\n invalid.push({ index, input, code: result.code, message: result.message });\n }\n });\n\n return {\n valid,\n invalid,\n summary: {\n total: inputs.length,\n valid: valid.length,\n invalid: invalid.length,\n },\n };\n}\n"]}
|