@br-validators/core 1.1.0 → 1.5.0

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.
Files changed (167) hide show
  1. package/README.md +67 -3
  2. package/dist/aeroportos.d.ts +46 -0
  3. package/dist/aeroportos.js +4316 -0
  4. package/dist/aeroportos.js.map +1 -0
  5. package/dist/bancos.js +1 -1
  6. package/dist/batch.js +19 -18
  7. package/dist/brcode.js +5 -5
  8. package/dist/cbo.d.ts +41 -0
  9. package/dist/cbo.js +10832 -0
  10. package/dist/cbo.js.map +1 -0
  11. package/dist/cep.d.ts +38 -1
  12. package/dist/cep.js +4 -3
  13. package/dist/cest.d.ts +44 -0
  14. package/dist/cest.js +8253 -0
  15. package/dist/cest.js.map +1 -0
  16. package/dist/cfop.d.ts +41 -0
  17. package/dist/cfop.js +2812 -0
  18. package/dist/cfop.js.map +1 -0
  19. package/dist/chunk-475HS4CJ.js +30 -0
  20. package/dist/chunk-475HS4CJ.js.map +1 -0
  21. package/dist/chunk-5CBVZIQC.js +30 -0
  22. package/dist/chunk-5CBVZIQC.js.map +1 -0
  23. package/dist/{chunk-LAEUXOF6.js → chunk-5EJAENH5.js} +3 -3
  24. package/dist/{chunk-LAEUXOF6.js.map → chunk-5EJAENH5.js.map} +1 -1
  25. package/dist/chunk-6EF7GQRS.js +30 -0
  26. package/dist/chunk-6EF7GQRS.js.map +1 -0
  27. package/dist/{chunk-PCP77SLS.js → chunk-6UEXR2MQ.js} +13 -13
  28. package/dist/{chunk-PCP77SLS.js.map → chunk-6UEXR2MQ.js.map} +1 -1
  29. package/dist/chunk-7JCJGLA3.js +30 -0
  30. package/dist/chunk-7JCJGLA3.js.map +1 -0
  31. package/dist/chunk-DQUMIETC.js +30 -0
  32. package/dist/chunk-DQUMIETC.js.map +1 -0
  33. package/dist/chunk-EKOSTVIA.js +30 -0
  34. package/dist/chunk-EKOSTVIA.js.map +1 -0
  35. package/dist/{chunk-TJCE4TVX.js → chunk-EN7PVDYB.js} +4 -4
  36. package/dist/{chunk-TJCE4TVX.js.map → chunk-EN7PVDYB.js.map} +1 -1
  37. package/dist/{chunk-VWVQWN2G.js → chunk-EQV33L7H.js} +3 -3
  38. package/dist/{chunk-VWVQWN2G.js.map → chunk-EQV33L7H.js.map} +1 -1
  39. package/dist/chunk-F7IEPT22.js +30 -0
  40. package/dist/chunk-F7IEPT22.js.map +1 -0
  41. package/dist/chunk-FUYDR7JI.js +44 -0
  42. package/dist/chunk-FUYDR7JI.js.map +1 -0
  43. package/dist/{chunk-5V6N4JWQ.js → chunk-GWAYWBHN.js} +5 -5
  44. package/dist/{chunk-5V6N4JWQ.js.map → chunk-GWAYWBHN.js.map} +1 -1
  45. package/dist/chunk-ILKF7HP7.js +31 -0
  46. package/dist/chunk-ILKF7HP7.js.map +1 -0
  47. package/dist/{chunk-IYOPXJLY.js → chunk-JSNXKBZA.js} +3 -3
  48. package/dist/{chunk-IYOPXJLY.js.map → chunk-JSNXKBZA.js.map} +1 -1
  49. package/dist/{chunk-P2KNN6ZR.js → chunk-KGCLQ7QX.js} +3 -3
  50. package/dist/{chunk-P2KNN6ZR.js.map → chunk-KGCLQ7QX.js.map} +1 -1
  51. package/dist/{chunk-H3MLGGFI.js → chunk-KLONQL76.js} +5 -5
  52. package/dist/{chunk-H3MLGGFI.js.map → chunk-KLONQL76.js.map} +1 -1
  53. package/dist/{chunk-63G7QO73.js → chunk-L7PF4KD6.js} +3 -3
  54. package/dist/{chunk-63G7QO73.js.map → chunk-L7PF4KD6.js.map} +1 -1
  55. package/dist/{chunk-PNPESCSP.js → chunk-MAM4U3UR.js} +3 -3
  56. package/dist/{chunk-PNPESCSP.js.map → chunk-MAM4U3UR.js.map} +1 -1
  57. package/dist/{chunk-V7UJ55KW.js → chunk-MZDCVTN6.js} +3 -3
  58. package/dist/{chunk-V7UJ55KW.js.map → chunk-MZDCVTN6.js.map} +1 -1
  59. package/dist/{chunk-I66ZRSEN.js → chunk-NT3TNF3R.js} +3 -3
  60. package/dist/{chunk-I66ZRSEN.js.map → chunk-NT3TNF3R.js.map} +1 -1
  61. package/dist/chunk-NTVB7R3A.js +30 -0
  62. package/dist/chunk-NTVB7R3A.js.map +1 -0
  63. package/dist/{chunk-N5CER3QZ.js → chunk-NXS343IJ.js} +14 -14
  64. package/dist/{chunk-N5CER3QZ.js.map → chunk-NXS343IJ.js.map} +1 -1
  65. package/dist/{chunk-EVULAGR5.js → chunk-O3T7PUBI.js} +3 -3
  66. package/dist/{chunk-EVULAGR5.js.map → chunk-O3T7PUBI.js.map} +1 -1
  67. package/dist/chunk-O4AO4YWC.js +30 -0
  68. package/dist/chunk-O4AO4YWC.js.map +1 -0
  69. package/dist/{chunk-EFEE6CMO.js → chunk-OOUEURR7.js} +3 -3
  70. package/dist/{chunk-EFEE6CMO.js.map → chunk-OOUEURR7.js.map} +1 -1
  71. package/dist/chunk-P6TOL5VY.js +147973 -0
  72. package/dist/chunk-P6TOL5VY.js.map +1 -0
  73. package/dist/{chunk-BA3FAVK4.js → chunk-Q5QBTTNC.js} +25 -25
  74. package/dist/{chunk-BA3FAVK4.js.map → chunk-Q5QBTTNC.js.map} +1 -1
  75. package/dist/{chunk-ASQ2XIN2.js → chunk-QU4HTXM5.js} +12 -12
  76. package/dist/{chunk-ASQ2XIN2.js.map → chunk-QU4HTXM5.js.map} +1 -1
  77. package/dist/{chunk-KTEQPYYN.js → chunk-RRVGW333.js} +6 -6
  78. package/dist/{chunk-KTEQPYYN.js.map → chunk-RRVGW333.js.map} +1 -1
  79. package/dist/chunk-RWO34ORS.js +33 -0
  80. package/dist/chunk-RWO34ORS.js.map +1 -0
  81. package/dist/chunk-SC6YCHT7.js +30 -0
  82. package/dist/chunk-SC6YCHT7.js.map +1 -0
  83. package/dist/{chunk-MESOO5GZ.js → chunk-SDEJD2J7.js} +3 -3
  84. package/dist/{chunk-MESOO5GZ.js.map → chunk-SDEJD2J7.js.map} +1 -1
  85. package/dist/chunk-UGW266DF.js +30 -0
  86. package/dist/chunk-UGW266DF.js.map +1 -0
  87. package/dist/{chunk-YNVMVDFN.js → chunk-VKG7UEN5.js} +3 -3
  88. package/dist/{chunk-YNVMVDFN.js.map → chunk-VKG7UEN5.js.map} +1 -1
  89. package/dist/{chunk-LRUZVPLR.js → chunk-VWS4AWCI.js} +3 -3
  90. package/dist/{chunk-LRUZVPLR.js.map → chunk-VWS4AWCI.js.map} +1 -1
  91. package/dist/{chunk-XADVBV73.js → chunk-WH6W3NUA.js} +6 -6
  92. package/dist/{chunk-XADVBV73.js.map → chunk-WH6W3NUA.js.map} +1 -1
  93. package/dist/{chunk-UCNPXHIJ.js → chunk-WSUAPD5M.js} +6 -6
  94. package/dist/{chunk-UCNPXHIJ.js.map → chunk-WSUAPD5M.js.map} +1 -1
  95. package/dist/{chunk-JCWQDTZB.js → chunk-X7XQRG4X.js} +3 -3
  96. package/dist/{chunk-JCWQDTZB.js.map → chunk-X7XQRG4X.js.map} +1 -1
  97. package/dist/{chunk-CSVGWTCG.js → chunk-XHDRWM46.js} +3 -3
  98. package/dist/{chunk-CSVGWTCG.js.map → chunk-XHDRWM46.js.map} +1 -1
  99. package/dist/chunk-XQ6MMGV2.js +30 -0
  100. package/dist/chunk-XQ6MMGV2.js.map +1 -0
  101. package/dist/{chunk-FOP5LO7W.js → chunk-YNUYQKUW.js} +15 -15
  102. package/dist/{chunk-FOP5LO7W.js.map → chunk-YNUYQKUW.js.map} +1 -1
  103. package/dist/chunk-YOL43ZNQ.js +35 -0
  104. package/dist/chunk-YOL43ZNQ.js.map +1 -0
  105. package/dist/chunk-ZWAYSR5K.js +30 -0
  106. package/dist/chunk-ZWAYSR5K.js.map +1 -0
  107. package/dist/{chunk-MKYCKCZ6.js → chunk-ZYWBWXTJ.js} +13 -13
  108. package/dist/{chunk-MKYCKCZ6.js.map → chunk-ZYWBWXTJ.js.map} +1 -1
  109. package/dist/cnaes.d.ts +41 -0
  110. package/dist/cnaes.js +5384 -0
  111. package/dist/cnaes.js.map +1 -0
  112. package/dist/cnh.js +4 -4
  113. package/dist/compare.js +21 -20
  114. package/dist/cpf.js +4 -4
  115. package/dist/data-catalog.js +38 -4
  116. package/dist/data-catalog.js.map +1 -1
  117. package/dist/detect.js +18 -17
  118. package/dist/diff.js +21 -20
  119. package/dist/feriados.d.ts +73 -0
  120. package/dist/feriados.js +243 -0
  121. package/dist/feriados.js.map +1 -0
  122. package/dist/generate.js +29 -28
  123. package/dist/ibge.js +1 -1
  124. package/dist/incoterms.d.ts +36 -0
  125. package/dist/incoterms.js +87 -0
  126. package/dist/incoterms.js.map +1 -0
  127. package/dist/index.d.ts +1 -1
  128. package/dist/index.js +49 -48
  129. package/dist/index.js.map +1 -1
  130. package/dist/inscricao-estadual-produtor-rural.js +1 -1
  131. package/dist/mask.js +28 -27
  132. package/dist/moedas.d.ts +42 -0
  133. package/dist/moedas.js +977 -0
  134. package/dist/moedas.js.map +1 -0
  135. package/dist/natureza-juridica.d.ts +37 -0
  136. package/dist/natureza-juridica.js +398 -0
  137. package/dist/natureza-juridica.js.map +1 -0
  138. package/dist/nbs.d.ts +40 -0
  139. package/dist/nbs.js +3728 -0
  140. package/dist/nbs.js.map +1 -0
  141. package/dist/ncm.d.ts +41 -0
  142. package/dist/ncm.js +42116 -0
  143. package/dist/ncm.js.map +1 -0
  144. package/dist/paises-bacen.d.ts +35 -0
  145. package/dist/paises-bacen.js +1044 -0
  146. package/dist/paises-bacen.js.map +1 -0
  147. package/dist/pix.js +5 -5
  148. package/dist/placa.js +1 -1
  149. package/dist/pncp-reference.d.ts +56 -0
  150. package/dist/pncp-reference.js +1560 -0
  151. package/dist/pncp-reference.js.map +1 -0
  152. package/dist/portos.d.ts +48 -0
  153. package/dist/portos.js +12094 -0
  154. package/dist/portos.js.map +1 -0
  155. package/dist/renavam.js +4 -4
  156. package/dist/sanitize.js +16 -15
  157. package/dist/telefone.js +3 -3
  158. package/dist/titulo-eleitor.js +4 -4
  159. package/dist/transparencia-snapshots.d.ts +61 -0
  160. package/dist/transparencia-snapshots.js +119 -0
  161. package/dist/transparencia-snapshots.js.map +1 -0
  162. package/dist/tse-municipios.d.ts +39 -0
  163. package/dist/tse-municipios.js +33469 -0
  164. package/dist/tse-municipios.js.map +1 -0
  165. package/package.json +81 -1
  166. package/dist/chunk-TE6NSONR.js +0 -43
  167. package/dist/chunk-TE6NSONR.js.map +0 -1
@@ -0,0 +1,35 @@
1
+ // src/feriados/data/metadata.json
2
+ var metadata_default = {
3
+ id: "feriados",
4
+ nome: "Feriados Nacionais Federais",
5
+ fonte: "Lei 662/1949 + Portaria MGI (calend\xE1rio federal)",
6
+ endpoints: [
7
+ "https://www.planalto.gov.br/ccivil_03/leis/l0662.htm",
8
+ "https://www.planalto.gov.br/ccivil_03/leis/l10607.htm",
9
+ "https://www.planalto.gov.br/ccivil_03/leis/l6802.htm",
10
+ "https://www.planalto.gov.br/ccivil_03/_ato2023-2026/2023/lei/L14759.htm",
11
+ "https://www.gov.br/gestao/pt-br/assuntos/noticias/2025/dezembro/confira-o-calendario-oficial-de-feriados-nacionais-e-pontos-facultativos-em-2026"
12
+ ],
13
+ capturadoEm: "2026-06-23",
14
+ atualizadoEm: "2026-06-23T00:00:00.000Z",
15
+ contagens: {
16
+ feriadosNacionaisFixos: 9,
17
+ feriadosNacionaisMoveis: 1,
18
+ pontosFacultativosFederais: 9
19
+ },
20
+ alteracoes: {
21
+ adicionados: 0,
22
+ removidos: 0,
23
+ alterados: 0,
24
+ comparadoCom: null
25
+ },
26
+ verificacao: {
27
+ agendamento: "semanal",
28
+ workflow: "data-refresh-bot.yml"
29
+ },
30
+ documentacao: "docs/OFFICIAL-SOURCES.md#feriados-nacionais"
31
+ };
32
+
33
+ export { metadata_default };
34
+ //# sourceMappingURL=chunk-YOL43ZNQ.js.map
35
+ //# sourceMappingURL=chunk-YOL43ZNQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/feriados/data/metadata.json"],"names":[],"mappings":";AAAA,IAAA,gBAAA,GAAA;AAAA,EACE,EAAA,EAAM,UAAA;AAAA,EACN,IAAA,EAAQ,6BAAA;AAAA,EACR,KAAA,EAAS,qDAAA;AAAA,EACT,SAAA,EAAa;AAAA,IACX,sDAAA;AAAA,IACA,uDAAA;AAAA,IACA,sDAAA;AAAA,IACA,yEAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA,WAAA,EAAe,YAAA;AAAA,EACf,YAAA,EAAgB,0BAAA;AAAA,EAChB,SAAA,EAAa;AAAA,IACX,sBAAA,EAA0B,CAAA;AAAA,IAC1B,uBAAA,EAA2B,CAAA;AAAA,IAC3B,0BAAA,EAA8B;AAAA,GAChC;AAAA,EACA,UAAA,EAAc;AAAA,IACZ,WAAA,EAAe,CAAA;AAAA,IACf,SAAA,EAAa,CAAA;AAAA,IACb,SAAA,EAAa,CAAA;AAAA,IACb,YAAA,EAAgB;AAAA,GAClB;AAAA,EACA,WAAA,EAAe;AAAA,IACb,WAAA,EAAe,SAAA;AAAA,IACf,QAAA,EAAY;AAAA,GACd;AAAA,EACA,YAAA,EAAgB;AAClB","file":"chunk-YOL43ZNQ.js","sourcesContent":["{\n \"id\": \"feriados\",\n \"nome\": \"Feriados Nacionais Federais\",\n \"fonte\": \"Lei 662/1949 + Portaria MGI (calendário federal)\",\n \"endpoints\": [\n \"https://www.planalto.gov.br/ccivil_03/leis/l0662.htm\",\n \"https://www.planalto.gov.br/ccivil_03/leis/l10607.htm\",\n \"https://www.planalto.gov.br/ccivil_03/leis/l6802.htm\",\n \"https://www.planalto.gov.br/ccivil_03/_ato2023-2026/2023/lei/L14759.htm\",\n \"https://www.gov.br/gestao/pt-br/assuntos/noticias/2025/dezembro/confira-o-calendario-oficial-de-feriados-nacionais-e-pontos-facultativos-em-2026\"\n ],\n \"capturadoEm\": \"2026-06-23\",\n \"atualizadoEm\": \"2026-06-23T00:00:00.000Z\",\n \"contagens\": {\n \"feriadosNacionaisFixos\": 9,\n \"feriadosNacionaisMoveis\": 1,\n \"pontosFacultativosFederais\": 9\n },\n \"alteracoes\": {\n \"adicionados\": 0,\n \"removidos\": 0,\n \"alterados\": 0,\n \"comparadoCom\": null\n },\n \"verificacao\": {\n \"agendamento\": \"semanal\",\n \"workflow\": \"data-refresh-bot.yml\"\n },\n \"documentacao\": \"docs/OFFICIAL-SOURCES.md#feriados-nacionais\"\n}\n"]}
@@ -0,0 +1,30 @@
1
+ // src/portos/data/metadata.json
2
+ var metadata_default = {
3
+ id: "portos",
4
+ nome: "ANTAQ port installations",
5
+ fonte: "ANTAQ \u2014 Instala\xE7\xF5es Portu\xE1rias Outorgadas (Portos.xlsx)",
6
+ endpoints: [
7
+ "https://www.gov.br/antaq/pt-br/central-de-conteudos/Instalaesporturias06052025.zip"
8
+ ],
9
+ capturadoEm: "2026-06-23",
10
+ atualizadoEm: "2026-06-23T19:08:23.577Z",
11
+ contagens: {
12
+ portos: 1094
13
+ },
14
+ alteracoes: {
15
+ adicionados: 0,
16
+ removidos: 0,
17
+ alterados: 0,
18
+ comparadoCom: "2026-06-23"
19
+ },
20
+ verificacao: {
21
+ agendamento: "semanal",
22
+ workflow: "data-refresh-bot.yml",
23
+ ultimaExecucao: "2026-06-23T19:08:23.577Z"
24
+ },
25
+ documentacao: "docs/OFFICIAL-SOURCES.md#portos"
26
+ };
27
+
28
+ export { metadata_default };
29
+ //# sourceMappingURL=chunk-ZWAYSR5K.js.map
30
+ //# sourceMappingURL=chunk-ZWAYSR5K.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/portos/data/metadata.json"],"names":[],"mappings":";AAAA,IAAA,gBAAA,GAAA;AAAA,EACE,EAAA,EAAM,QAAA;AAAA,EACN,IAAA,EAAQ,0BAAA;AAAA,EACR,KAAA,EAAS,uEAAA;AAAA,EACT,SAAA,EAAa;AAAA,IACX;AAAA,GACF;AAAA,EACA,WAAA,EAAe,YAAA;AAAA,EACf,YAAA,EAAgB,0BAAA;AAAA,EAChB,SAAA,EAAa;AAAA,IACX,MAAA,EAAU;AAAA,GACZ;AAAA,EACA,UAAA,EAAc;AAAA,IACZ,WAAA,EAAe,CAAA;AAAA,IACf,SAAA,EAAa,CAAA;AAAA,IACb,SAAA,EAAa,CAAA;AAAA,IACb,YAAA,EAAgB;AAAA,GAClB;AAAA,EACA,WAAA,EAAe;AAAA,IACb,WAAA,EAAe,SAAA;AAAA,IACf,QAAA,EAAY,sBAAA;AAAA,IACZ,cAAA,EAAkB;AAAA,GACpB;AAAA,EACA,YAAA,EAAgB;AAClB","file":"chunk-ZWAYSR5K.js","sourcesContent":["{\n \"id\": \"portos\",\n \"nome\": \"ANTAQ port installations\",\n \"fonte\": \"ANTAQ — Instalações Portuárias Outorgadas (Portos.xlsx)\",\n \"endpoints\": [\n \"https://www.gov.br/antaq/pt-br/central-de-conteudos/Instalaesporturias06052025.zip\"\n ],\n \"capturadoEm\": \"2026-06-23\",\n \"atualizadoEm\": \"2026-06-23T19:08:23.577Z\",\n \"contagens\": {\n \"portos\": 1094\n },\n \"alteracoes\": {\n \"adicionados\": 0,\n \"removidos\": 0,\n \"alterados\": 0,\n \"comparadoCom\": \"2026-06-23\"\n },\n \"verificacao\": {\n \"agendamento\": \"semanal\",\n \"workflow\": \"data-refresh-bot.yml\",\n \"ultimaExecucao\": \"2026-06-23T19:08:23.577Z\"\n },\n \"documentacao\": \"docs/OFFICIAL-SOURCES.md#portos\"\n}\n"]}
@@ -1,18 +1,18 @@
1
- import { applyFixes } from './chunk-5V6N4JWQ.js';
2
- import { validateRenavam } from './chunk-I66ZRSEN.js';
3
- import { validateTelefone } from './chunk-EFEE6CMO.js';
4
- import { validateTituloEleitor } from './chunk-CSVGWTCG.js';
5
- import { validateInscricaoEstadual } from './chunk-665E36SC.js';
6
- import { validateIeSpRural } from './chunk-CDNOUZEI.js';
7
- import { validateNfeChave } from './chunk-AO6UTQ4A.js';
1
+ import { applyFixes } from './chunk-GWAYWBHN.js';
2
+ import { validateRenavam } from './chunk-NT3TNF3R.js';
3
+ import { validateTituloEleitor } from './chunk-XHDRWM46.js';
8
4
  import { validatePisPasep } from './chunk-JLCQ7MGC.js';
9
5
  import { validatePlaca } from './chunk-3LMDBXU6.js';
6
+ import { validateTelefone } from './chunk-OOUEURR7.js';
7
+ import { validateInscricaoEstadual } from './chunk-665E36SC.js';
8
+ import { validateNfeChave } from './chunk-AO6UTQ4A.js';
9
+ import { validateIeSpRural } from './chunk-CDNOUZEI.js';
10
+ import { validateCnh } from './chunk-VKG7UEN5.js';
10
11
  import { validateBoleto } from './chunk-AU6TW3GH.js';
11
- import { validateCpf } from './chunk-63G7QO73.js';
12
- import { validateCartaoCredito } from './chunk-ANWQBKGN.js';
13
- import { validateCep } from './chunk-TE6NSONR.js';
14
- import { validateCnh } from './chunk-YNVMVDFN.js';
15
12
  import { validateCnpj } from './chunk-FBARVLLP.js';
13
+ import { validateCpf } from './chunk-L7PF4KD6.js';
14
+ import { validateCartaoCredito } from './chunk-ANWQBKGN.js';
15
+ import { validateCep } from './chunk-P6TOL5VY.js';
16
16
 
17
17
  // src/sanitize/index.ts
18
18
  function sanitize(raw, type, options = {}) {
@@ -96,5 +96,5 @@ function validateFixed(value, type, uf) {
96
96
  }
97
97
 
98
98
  export { sanitize };
99
- //# sourceMappingURL=chunk-MKYCKCZ6.js.map
100
- //# sourceMappingURL=chunk-MKYCKCZ6.js.map
99
+ //# sourceMappingURL=chunk-ZYWBWXTJ.js.map
100
+ //# sourceMappingURL=chunk-ZYWBWXTJ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/sanitize/index.ts"],"names":[],"mappings":"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","file":"chunk-MKYCKCZ6.js","sourcesContent":["/**\n * ETL-style document sanitization — applies fixes then validates (BR-SANITIZE-001).\n * @see docs/VALIDATION-RULES.md\n */\nimport { validateBoleto } from '../core/boleto/index.js';\nimport { validateCartaoCredito } from '../core/cartao-credito/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 { validateRenavam } from '../core/renavam/index.js';\nimport { validateTelefone } from '../core/telefone/index.js';\nimport { validateTituloEleitor } from '../core/titulo-eleitor/index.js';\nimport type { UfCode, ValidationErrorCode } from '../types/validation-result.js';\nimport { applyFixes } from './fixes.js';\n\nexport type SanitizableDocumentType =\n | 'cpf'\n | 'cnpj'\n | 'cep'\n | 'placa'\n | 'pis-pasep'\n | 'telefone'\n | 'cnh'\n | 'renavam'\n | 'titulo-eleitor'\n | 'nfe-chave'\n | 'boleto'\n | 'cartao-credito'\n | 'inscricao-estadual'\n | 'inscricao-estadual-produtor-rural';\n\nexport type SanitizeOptions = {\n uf?: UfCode;\n};\n\nexport type SanitizeSuccess = {\n ok: true;\n value: string;\n fixes: string[];\n};\n\nexport type SanitizeFailure = {\n ok: false;\n code: ValidationErrorCode;\n message: string;\n};\n\nexport type SanitizeResult = SanitizeSuccess | SanitizeFailure;\n\nexport type { FixResult } from './fixes.js';\n\ntype ValidateFixedResult =\n | { ok: true; value: string }\n | { ok: false; code: ValidationErrorCode; message: string };\n\nexport function sanitize(\n raw: string,\n type: SanitizableDocumentType,\n options: SanitizeOptions = {},\n): SanitizeResult {\n const { value: fixed, fixes } = applyFixes(raw, type);\n\n if (type === 'inscricao-estadual' && !options.uf) {\n return {\n ok: false,\n code: 'UNSUPPORTED_FORMAT',\n message: 'UF is required for inscricao-estadual sanitization',\n };\n }\n\n const validation = validateFixed(fixed, type, options.uf);\n if (!validation.ok) {\n return { ok: false, code: validation.code, message: validation.message };\n }\n\n return { ok: true, value: validation.value, fixes };\n}\n\nfunction validateFixed(value: string, type: SanitizableDocumentType, uf?: UfCode): ValidateFixedResult {\n switch (type) {\n case 'cpf': {\n const result = validateCpf(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnpj': {\n const result = validateCnpj(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cep': {\n const result = validateCep(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'placa': {\n const result = validatePlaca(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'pis-pasep': {\n const result = validatePisPasep(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'telefone': {\n const result = validateTelefone(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnh': {\n const result = validateCnh(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'renavam': {\n const result = validateRenavam(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'titulo-eleitor': {\n const result = validateTituloEleitor(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'nfe-chave': {\n const result = validateNfeChave(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'boleto': {\n const result = validateBoleto(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cartao-credito': {\n const result = validateCartaoCredito(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual': {\n const result = validateInscricaoEstadual(value, { uf: uf as UfCode });\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual-produtor-rural': {\n const result = validateIeSpRural(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n default: {\n const _exhaustive: never = type;\n return { ok: false, code: 'UNSUPPORTED_FORMAT', message: `Unsupported type: ${String(_exhaustive)}` };\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/sanitize/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA6DO,SAAS,QAAA,CACd,GAAA,EACA,IAAA,EACA,OAAA,GAA2B,EAAC,EACZ;AAChB,EAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAO,OAAM,GAAI,UAAA,CAAW,KAAK,IAAI,CAAA;AAEpD,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,MAAM,UAAA,GAAa,aAAA,CAAc,KAAA,EAAO,IAAA,EAAM,QAAQ,EAAE,CAAA;AACxD,EAAA,IAAI,CAAC,WAAW,EAAA,EAAI;AAClB,IAAA,OAAO,EAAE,IAAI,KAAA,EAAO,IAAA,EAAM,WAAW,IAAA,EAAM,OAAA,EAAS,WAAW,OAAA,EAAQ;AAAA,EACzE;AAEA,EAAA,OAAO,EAAE,EAAA,EAAI,IAAA,EAAM,KAAA,EAAO,UAAA,CAAW,OAAO,KAAA,EAAM;AACpD;AAEA,SAAS,aAAA,CAAc,KAAA,EAAe,IAAA,EAA+B,EAAA,EAAkC;AACrG,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,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,oBAAA,EAAsB;AACzB,MAAA,MAAM,MAAA,GAAS,yBAAA,CAA0B,KAAA,EAAO,EAAE,IAAkB,CAAA;AACpE,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,SAAS;AACP,MAAA,MAAM,WAAA,GAAqB,IAAA;AAC3B,MAAA,OAAO,EAAE,EAAA,EAAI,KAAA,EAAO,IAAA,EAAM,oBAAA,EAAsB,SAAS,CAAA,kBAAA,EAAqB,MAAA,CAAO,WAAW,CAAC,CAAA,CAAA,EAAG;AAAA,IACtG;AAAA;AAEJ","file":"chunk-ZYWBWXTJ.js","sourcesContent":["/**\n * ETL-style document sanitization — applies fixes then validates (BR-SANITIZE-001).\n * @see docs/VALIDATION-RULES.md\n */\nimport { validateBoleto } from '../core/boleto/index.js';\nimport { validateCartaoCredito } from '../core/cartao-credito/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 { validateRenavam } from '../core/renavam/index.js';\nimport { validateTelefone } from '../core/telefone/index.js';\nimport { validateTituloEleitor } from '../core/titulo-eleitor/index.js';\nimport type { UfCode, ValidationErrorCode } from '../types/validation-result.js';\nimport { applyFixes } from './fixes.js';\n\nexport type SanitizableDocumentType =\n | 'cpf'\n | 'cnpj'\n | 'cep'\n | 'placa'\n | 'pis-pasep'\n | 'telefone'\n | 'cnh'\n | 'renavam'\n | 'titulo-eleitor'\n | 'nfe-chave'\n | 'boleto'\n | 'cartao-credito'\n | 'inscricao-estadual'\n | 'inscricao-estadual-produtor-rural';\n\nexport type SanitizeOptions = {\n uf?: UfCode;\n};\n\nexport type SanitizeSuccess = {\n ok: true;\n value: string;\n fixes: string[];\n};\n\nexport type SanitizeFailure = {\n ok: false;\n code: ValidationErrorCode;\n message: string;\n};\n\nexport type SanitizeResult = SanitizeSuccess | SanitizeFailure;\n\nexport type { FixResult } from './fixes.js';\n\ntype ValidateFixedResult =\n | { ok: true; value: string }\n | { ok: false; code: ValidationErrorCode; message: string };\n\nexport function sanitize(\n raw: string,\n type: SanitizableDocumentType,\n options: SanitizeOptions = {},\n): SanitizeResult {\n const { value: fixed, fixes } = applyFixes(raw, type);\n\n if (type === 'inscricao-estadual' && !options.uf) {\n return {\n ok: false,\n code: 'UNSUPPORTED_FORMAT',\n message: 'UF is required for inscricao-estadual sanitization',\n };\n }\n\n const validation = validateFixed(fixed, type, options.uf);\n if (!validation.ok) {\n return { ok: false, code: validation.code, message: validation.message };\n }\n\n return { ok: true, value: validation.value, fixes };\n}\n\nfunction validateFixed(value: string, type: SanitizableDocumentType, uf?: UfCode): ValidateFixedResult {\n switch (type) {\n case 'cpf': {\n const result = validateCpf(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnpj': {\n const result = validateCnpj(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cep': {\n const result = validateCep(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'placa': {\n const result = validatePlaca(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'pis-pasep': {\n const result = validatePisPasep(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'telefone': {\n const result = validateTelefone(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cnh': {\n const result = validateCnh(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'renavam': {\n const result = validateRenavam(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'titulo-eleitor': {\n const result = validateTituloEleitor(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'nfe-chave': {\n const result = validateNfeChave(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'boleto': {\n const result = validateBoleto(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'cartao-credito': {\n const result = validateCartaoCredito(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual': {\n const result = validateInscricaoEstadual(value, { uf: uf as UfCode });\n return result.ok ? { ok: true, value: result.value } : result;\n }\n case 'inscricao-estadual-produtor-rural': {\n const result = validateIeSpRural(value);\n return result.ok ? { ok: true, value: result.value } : result;\n }\n default: {\n const _exhaustive: never = type;\n return { ok: false, code: 'UNSUPPORTED_FORMAT', message: `Unsupported type: ${String(_exhaustive)}` };\n }\n }\n}\n"]}
@@ -0,0 +1,41 @@
1
+ import { b as DatasetChanges, c as DatasetVerification } from './types-CBIZxgfG.js';
2
+
3
+ interface Cnae {
4
+ codigo: string;
5
+ descricao: string;
6
+ }
7
+ interface CnaesDataVersion {
8
+ id: 'cnaes';
9
+ nome: string;
10
+ fonte: string;
11
+ endpoints: string[];
12
+ capturadoEm: string;
13
+ atualizadoEm: string;
14
+ contagens: {
15
+ cnaes: number;
16
+ };
17
+ alteracoes: DatasetChanges;
18
+ verificacao: DatasetVerification;
19
+ documentacao: string;
20
+ }
21
+
22
+ /**
23
+ * IBGE CNAE 2.3 subclass lookup — offline embedded data from official IBGE API.
24
+ * @see https://servicodados.ibge.gov.br/api/docs/cnae
25
+ */
26
+
27
+ declare function getCnaes(): readonly Cnae[];
28
+ declare function getCnaePorCodigo(codigo: string): Cnae | undefined;
29
+ declare function searchCnaes(query: string, options?: {
30
+ limit?: number;
31
+ }): readonly Cnae[];
32
+
33
+ declare const CNAES_SUBCLASSES_URL = "https://servicodados.ibge.gov.br/api/v2/cnae/subclasses";
34
+ declare const CNAES_GOLDEN_DESENVOLVIMENTO_PROGRAMAS = "6201501";
35
+ declare const CNAES_GOLDEN_WEB_DESIGN = "6201502";
36
+ declare const CNAES_MIN_SUBCLASSES = 1200;
37
+ declare const CNAES_MAX_SUBCLASSES = 1500;
38
+
39
+ declare const CNAES_DATA_VERSION: CnaesDataVersion;
40
+
41
+ export { CNAES_DATA_VERSION, CNAES_GOLDEN_DESENVOLVIMENTO_PROGRAMAS, CNAES_GOLDEN_WEB_DESIGN, CNAES_MAX_SUBCLASSES, CNAES_MIN_SUBCLASSES, CNAES_SUBCLASSES_URL, type Cnae, type CnaesDataVersion, getCnaePorCodigo, getCnaes, searchCnaes };