@autohubs/lib-cte 0.2.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 (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +96 -0
  3. package/dist/application/use-cases/ConsultarCTeUseCase.d.ts +16 -0
  4. package/dist/application/use-cases/ConsultarCTeUseCase.d.ts.map +1 -0
  5. package/dist/application/use-cases/ConsultarCTeUseCase.js +51 -0
  6. package/dist/application/use-cases/ConsultarCTeUseCase.js.map +1 -0
  7. package/dist/application/use-cases/DesacordoCTeUseCase.d.ts +45 -0
  8. package/dist/application/use-cases/DesacordoCTeUseCase.d.ts.map +1 -0
  9. package/dist/application/use-cases/DesacordoCTeUseCase.js +102 -0
  10. package/dist/application/use-cases/DesacordoCTeUseCase.js.map +1 -0
  11. package/dist/application/use-cases/DistribuicaoDFeUseCase.d.ts +24 -0
  12. package/dist/application/use-cases/DistribuicaoDFeUseCase.d.ts.map +1 -0
  13. package/dist/application/use-cases/DistribuicaoDFeUseCase.js +56 -0
  14. package/dist/application/use-cases/DistribuicaoDFeUseCase.js.map +1 -0
  15. package/dist/application/use-cases/StatusServicoUseCase.d.ts +16 -0
  16. package/dist/application/use-cases/StatusServicoUseCase.d.ts.map +1 -0
  17. package/dist/application/use-cases/StatusServicoUseCase.js +60 -0
  18. package/dist/application/use-cases/StatusServicoUseCase.js.map +1 -0
  19. package/dist/contracts/CertificateProvider.d.ts +2 -0
  20. package/dist/contracts/CertificateProvider.d.ts.map +1 -0
  21. package/dist/contracts/CertificateProvider.js +3 -0
  22. package/dist/contracts/CertificateProvider.js.map +1 -0
  23. package/dist/contracts/SefazTransport.d.ts +2 -0
  24. package/dist/contracts/SefazTransport.d.ts.map +1 -0
  25. package/dist/contracts/SefazTransport.js +3 -0
  26. package/dist/contracts/SefazTransport.js.map +1 -0
  27. package/dist/contracts/XmlSigner.d.ts +2 -0
  28. package/dist/contracts/XmlSigner.d.ts.map +1 -0
  29. package/dist/contracts/XmlSigner.js +3 -0
  30. package/dist/contracts/XmlSigner.js.map +1 -0
  31. package/dist/contracts/index.d.ts +5 -0
  32. package/dist/contracts/index.d.ts.map +1 -0
  33. package/dist/contracts/index.js +3 -0
  34. package/dist/contracts/index.js.map +1 -0
  35. package/dist/core/CTeCore.d.ts +42 -0
  36. package/dist/core/CTeCore.d.ts.map +1 -0
  37. package/dist/core/CTeCore.js +83 -0
  38. package/dist/core/CTeCore.js.map +1 -0
  39. package/dist/core/types.d.ts +16 -0
  40. package/dist/core/types.d.ts.map +1 -0
  41. package/dist/core/types.js +3 -0
  42. package/dist/core/types.js.map +1 -0
  43. package/dist/domain/entities/CTe.d.ts +43 -0
  44. package/dist/domain/entities/CTe.d.ts.map +1 -0
  45. package/dist/domain/entities/CTe.js +28 -0
  46. package/dist/domain/entities/CTe.js.map +1 -0
  47. package/dist/domain/entities/Carga.d.ts +12 -0
  48. package/dist/domain/entities/Carga.d.ts.map +1 -0
  49. package/dist/domain/entities/Carga.js +3 -0
  50. package/dist/domain/entities/Carga.js.map +1 -0
  51. package/dist/domain/entities/Destinatario.d.ts +21 -0
  52. package/dist/domain/entities/Destinatario.d.ts.map +1 -0
  53. package/dist/domain/entities/Destinatario.js +3 -0
  54. package/dist/domain/entities/Destinatario.js.map +1 -0
  55. package/dist/domain/entities/Emitente.d.ts +18 -0
  56. package/dist/domain/entities/Emitente.d.ts.map +1 -0
  57. package/dist/domain/entities/Emitente.js +3 -0
  58. package/dist/domain/entities/Emitente.js.map +1 -0
  59. package/dist/domain/entities/Remetente.d.ts +22 -0
  60. package/dist/domain/entities/Remetente.d.ts.map +1 -0
  61. package/dist/domain/entities/Remetente.js +3 -0
  62. package/dist/domain/entities/Remetente.js.map +1 -0
  63. package/dist/domain/entities/index.d.ts +7 -0
  64. package/dist/domain/entities/index.d.ts.map +1 -0
  65. package/dist/domain/entities/index.js +6 -0
  66. package/dist/domain/entities/index.js.map +1 -0
  67. package/dist/index.d.ts +16 -0
  68. package/dist/index.d.ts.map +1 -0
  69. package/dist/index.js +30 -0
  70. package/dist/index.js.map +1 -0
  71. package/dist/infra/sefaz/consulta-soap.d.ts +24 -0
  72. package/dist/infra/sefaz/consulta-soap.d.ts.map +1 -0
  73. package/dist/infra/sefaz/consulta-soap.js +56 -0
  74. package/dist/infra/sefaz/consulta-soap.js.map +1 -0
  75. package/dist/infra/sefaz/distribuicao-soap.d.ts +39 -0
  76. package/dist/infra/sefaz/distribuicao-soap.d.ts.map +1 -0
  77. package/dist/infra/sefaz/distribuicao-soap.js +92 -0
  78. package/dist/infra/sefaz/distribuicao-soap.js.map +1 -0
  79. package/dist/infra/sefaz/evento-soap.d.ts +48 -0
  80. package/dist/infra/sefaz/evento-soap.d.ts.map +1 -0
  81. package/dist/infra/sefaz/evento-soap.js +118 -0
  82. package/dist/infra/sefaz/evento-soap.js.map +1 -0
  83. package/dist/infra/sefaz/status-servico-soap.d.ts +24 -0
  84. package/dist/infra/sefaz/status-servico-soap.d.ts.map +1 -0
  85. package/dist/infra/sefaz/status-servico-soap.js +56 -0
  86. package/dist/infra/sefaz/status-servico-soap.js.map +1 -0
  87. package/dist/shared/constants/cte-an-urls.d.ts +7 -0
  88. package/dist/shared/constants/cte-an-urls.d.ts.map +1 -0
  89. package/dist/shared/constants/cte-an-urls.js +33 -0
  90. package/dist/shared/constants/cte-an-urls.js.map +1 -0
  91. package/dist/shared/constants/cte-urls.d.ts +76 -0
  92. package/dist/shared/constants/cte-urls.d.ts.map +1 -0
  93. package/dist/shared/constants/cte-urls.js +237 -0
  94. package/dist/shared/constants/cte-urls.js.map +1 -0
  95. package/dist/shared/errors/CTeError.d.ts +5 -0
  96. package/dist/shared/errors/CTeError.d.ts.map +1 -0
  97. package/dist/shared/errors/CTeError.js +12 -0
  98. package/dist/shared/errors/CTeError.js.map +1 -0
  99. package/dist/shared/errors/index.d.ts +3 -0
  100. package/dist/shared/errors/index.d.ts.map +1 -0
  101. package/dist/shared/errors/index.js +10 -0
  102. package/dist/shared/errors/index.js.map +1 -0
  103. package/dist/shared/helpers/evento-id.d.ts +6 -0
  104. package/dist/shared/helpers/evento-id.d.ts.map +1 -0
  105. package/dist/shared/helpers/evento-id.js +11 -0
  106. package/dist/shared/helpers/evento-id.js.map +1 -0
  107. package/package.json +55 -0
@@ -0,0 +1,237 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AUTORIZADOR_URLS = exports.UF_AUTORIZADOR = void 0;
4
+ exports.getCteUrl = getCteUrl;
5
+ exports.ibgeToUf = ibgeToUf;
6
+ exports.ufToIbge = ufToIbge;
7
+ const CTeError_1 = require("../../shared/errors/CTeError");
8
+ /**
9
+ * Mapeamento de UF para autorizador do CT-e. Cobre as 27 UFs — ver nivel de
10
+ * confianca de cada URL nos comentarios de `AUTORIZADOR_URLS` abaixo.
11
+ */
12
+ exports.UF_AUTORIZADOR = {
13
+ AC: 'SVRS',
14
+ AL: 'SVRS',
15
+ AM: 'SVRS',
16
+ AP: 'SVSP',
17
+ BA: 'SVRS',
18
+ CE: 'SVRS',
19
+ DF: 'SVRS',
20
+ ES: 'SVRS',
21
+ GO: 'SVRS',
22
+ MA: 'SVRS',
23
+ MG: 'MG',
24
+ MS: 'MS',
25
+ MT: 'MT',
26
+ PA: 'SVRS',
27
+ PB: 'SVRS',
28
+ PE: 'SVSP',
29
+ PI: 'SVRS',
30
+ PR: 'PR',
31
+ RJ: 'SVRS',
32
+ RN: 'SVRS',
33
+ RO: 'SVRS',
34
+ RR: 'SVSP',
35
+ RS: 'SVRS',
36
+ SC: 'SVRS',
37
+ SE: 'SVRS',
38
+ SP: 'SP',
39
+ TO: 'SVRS'
40
+ };
41
+ /**
42
+ * URLs dos webservices de CT-e (v4.00) por autorizador e ambiente.
43
+ *
44
+ * Nivel de confianca por autorizador (revisar periodicamente, hosts de SEFAZ
45
+ * mudam sem aviso):
46
+ * - SVRS: **confirmado por WSDL real** (`?wsdl` contra o host de homologacao,
47
+ * autenticado com certificado A1 real — os 3 servicos retornaram 200 com o
48
+ * WSDL). Producao confirmada contra a documentacao oficial do SVRS
49
+ * (dfe-portal.svrs.rs.gov.br/Cte/Servicos), mesmo padrao de path trocando
50
+ * so' o subdominio. Path e' `ws/{Servico}V4/{Servico}V4.asmx` — uma
51
+ * pesquisa anterior havia encontrado `ws/ctestatusservico/CteStatusServico.asmx`
52
+ * (sem "V4", casing diferente), que se mostrou **incorreto** (404) no teste
53
+ * real; corrigido nesta validacao.
54
+ * - SP, PR, MG: confirmados via fetch direto das paginas oficiais da SEFAZ
55
+ * (portal.fazenda.sp.gov.br, sped.fazenda.pr.gov.br,
56
+ * portalsped.fazenda.mg.gov.br) — maior nivel de confianca desta tabela.
57
+ * - MS: confirmado por busca (nao fetch direto da pagina, que redireciona
58
+ * para uma landing page sem o detalhe tecnico) — padrao consistente
59
+ * `ws/CTeXxxV4` em homologacao e producao. CTeRecepcaoEvento de producao
60
+ * nao apareceu explicitamente na busca; inferido por simetria com
61
+ * homologacao (mesmo padrao de path, so' troca o subdominio).
62
+ * - MT: **ATENCAO, confianca baixa**. A pagina oficial (sefaz.mt.gov.br)
63
+ * retornou CTeStatusServico/CTeConsultaProtocolo em `ctews/services/...`
64
+ * (sem sufixo de versao), mas uma busca separada encontrou
65
+ * `ctews2/services/CteRecepcaoEvento` para o mesmo autorizador — o sufixo
66
+ * "2" e a ausencia de "V4" no primeiro grupo sugerem que a pagina oficial
67
+ * pode estar desatualizada (referenciando ainda a v3, desativada em
68
+ * fev/2024) e que o path correto para v4 seja `ctews2` em todos os
69
+ * servicos. CONFIRMAR contra o WSDL real (`?wsdl`) antes de usar em
70
+ * producao. CTeRecepcaoEvento de homologacao nao foi encontrado; inferido
71
+ * por simetria com producao.
72
+ * - SVSP (AP, PE, RR): host nao encontrado — ver comentario abaixo.
73
+ */
74
+ exports.AUTORIZADOR_URLS = {
75
+ SVRS: {
76
+ homologacao: {
77
+ CTeStatusServico: 'https://cte-homologacao.svrs.rs.gov.br/ws/CTeStatusServicoV4/CTeStatusServicoV4.asmx',
78
+ CTeConsultaProtocolo: 'https://cte-homologacao.svrs.rs.gov.br/ws/CTeConsultaV4/CTeConsultaV4.asmx',
79
+ CTeRecepcaoEvento: 'https://cte-homologacao.svrs.rs.gov.br/ws/CTeRecepcaoEventoV4/CTeRecepcaoEventoV4.asmx'
80
+ },
81
+ producao: {
82
+ CTeStatusServico: 'https://cte.svrs.rs.gov.br/ws/CTeStatusServicoV4/CTeStatusServicoV4.asmx',
83
+ CTeConsultaProtocolo: 'https://cte.svrs.rs.gov.br/ws/CTeConsultaV4/CTeConsultaV4.asmx',
84
+ CTeRecepcaoEvento: 'https://cte.svrs.rs.gov.br/ws/CTeRecepcaoEventoV4/CTeRecepcaoEventoV4.asmx'
85
+ }
86
+ },
87
+ // Host do SVSP para CT-e ainda nao confirmado — a unica fonte encontrada
88
+ // confundia SVSP (ambiente virtual primario de AP/PE/RR) com SVC-SP
89
+ // (contingencia federal, servico diferente). Todas as URLs ficam vazias de
90
+ // proposito, para falhar de forma explicita via getCteUrl() em vez de
91
+ // apontar para um host possivelmente errado.
92
+ SVSP: {
93
+ homologacao: {
94
+ CTeStatusServico: '',
95
+ CTeConsultaProtocolo: '',
96
+ CTeRecepcaoEvento: ''
97
+ },
98
+ producao: {
99
+ CTeStatusServico: '',
100
+ CTeConsultaProtocolo: '',
101
+ CTeRecepcaoEvento: ''
102
+ }
103
+ },
104
+ MG: {
105
+ homologacao: {
106
+ CTeStatusServico: 'https://hcte.fazenda.mg.gov.br/cte/services/CTeStatusServicoV4',
107
+ CTeConsultaProtocolo: 'https://hcte.fazenda.mg.gov.br/cte/services/CTeConsultaV4',
108
+ CTeRecepcaoEvento: 'https://hcte.fazenda.mg.gov.br/cte/services/CTeRecepcaoEventoV4'
109
+ },
110
+ producao: {
111
+ CTeStatusServico: 'https://cte.fazenda.mg.gov.br/cte/services/CTeStatusServicoV4',
112
+ CTeConsultaProtocolo: 'https://cte.fazenda.mg.gov.br/cte/services/CTeConsultaV4',
113
+ CTeRecepcaoEvento: 'https://cte.fazenda.mg.gov.br/cte/services/CTeRecepcaoEventoV4'
114
+ }
115
+ },
116
+ MS: {
117
+ homologacao: {
118
+ CTeStatusServico: 'https://homologacao.cte.ms.gov.br/ws/CTeStatusServicoV4',
119
+ CTeConsultaProtocolo: 'https://homologacao.cte.ms.gov.br/ws/CTeConsultaV4',
120
+ CTeRecepcaoEvento: 'https://homologacao.cte.ms.gov.br/ws/CTeRecepcaoEventoV4'
121
+ },
122
+ producao: {
123
+ CTeStatusServico: 'https://producao.cte.ms.gov.br/ws/CTeStatusServicoV4',
124
+ CTeConsultaProtocolo: 'https://producao.cte.ms.gov.br/ws/CTeConsultaV4',
125
+ // Inferida por simetria com homologacao — nao apareceu explicitamente na fonte.
126
+ CTeRecepcaoEvento: 'https://producao.cte.ms.gov.br/ws/CTeRecepcaoEventoV4'
127
+ }
128
+ },
129
+ MT: {
130
+ homologacao: {
131
+ CTeStatusServico: 'https://homologacao.sefaz.mt.gov.br/ctews/services/CteStatusServico',
132
+ CTeConsultaProtocolo: 'https://homologacao.sefaz.mt.gov.br/ctews/services/CteConsulta',
133
+ // Nao encontrado para homologacao — inferido por simetria com producao
134
+ // (troca so' o host). Confianca BAIXA, ver comentario acima da tabela.
135
+ CTeRecepcaoEvento: 'https://homologacao.sefaz.mt.gov.br/ctews2/services/CteRecepcaoEvento'
136
+ },
137
+ producao: {
138
+ CTeStatusServico: 'https://cte.sefaz.mt.gov.br/ctews/services/CteStatusServico',
139
+ CTeConsultaProtocolo: 'https://cte.sefaz.mt.gov.br/ctews/services/CteConsulta',
140
+ CTeRecepcaoEvento: 'https://cte.sefaz.mt.gov.br/ctews2/services/CteRecepcaoEvento'
141
+ }
142
+ },
143
+ PR: {
144
+ homologacao: {
145
+ CTeStatusServico: 'https://homologacao.cte.fazenda.pr.gov.br/cte4/CTeStatusServicoV4',
146
+ CTeConsultaProtocolo: 'https://homologacao.cte.fazenda.pr.gov.br/cte4/CTeConsultaV4',
147
+ CTeRecepcaoEvento: 'https://homologacao.cte.fazenda.pr.gov.br/cte4/CTeRecepcaoEventoV4'
148
+ },
149
+ producao: {
150
+ CTeStatusServico: 'https://cte.fazenda.pr.gov.br/cte4/CTeStatusServicoV4',
151
+ CTeConsultaProtocolo: 'https://cte.fazenda.pr.gov.br/cte4/CTeConsultaV4',
152
+ CTeRecepcaoEvento: 'https://cte.fazenda.pr.gov.br/cte4/CTeRecepcaoEventoV4'
153
+ }
154
+ },
155
+ SP: {
156
+ homologacao: {
157
+ CTeStatusServico: 'https://homologacao.nfe.fazenda.sp.gov.br/CTeWS/WS/CTeStatusServicoV4.asmx',
158
+ CTeConsultaProtocolo: 'https://homologacao.nfe.fazenda.sp.gov.br/CTeWS/WS/CTeConsultaV4.asmx',
159
+ CTeRecepcaoEvento: 'https://homologacao.nfe.fazenda.sp.gov.br/CTeWS/WS/CTeRecepcaoEventoV4.asmx'
160
+ },
161
+ producao: {
162
+ CTeStatusServico: 'https://nfe.fazenda.sp.gov.br/CTeWS/WS/CTeStatusServicoV4.asmx',
163
+ CTeConsultaProtocolo: 'https://nfe.fazenda.sp.gov.br/CTeWS/WS/CTeConsultaV4.asmx',
164
+ CTeRecepcaoEvento: 'https://nfe.fazenda.sp.gov.br/CTeWS/WS/CTeRecepcaoEventoV4.asmx'
165
+ }
166
+ }
167
+ };
168
+ /**
169
+ * Mapeamento reverso: codigo IBGE da UF → sigla da UF.
170
+ * Tabela completa (todas as 27 UFs) — nao depende da cobertura de webservices.
171
+ */
172
+ const IBGE_TO_UF = {
173
+ '12': 'AC',
174
+ '27': 'AL',
175
+ '13': 'AM',
176
+ '16': 'AP',
177
+ '29': 'BA',
178
+ '23': 'CE',
179
+ '53': 'DF',
180
+ '32': 'ES',
181
+ '52': 'GO',
182
+ '21': 'MA',
183
+ '31': 'MG',
184
+ '50': 'MS',
185
+ '51': 'MT',
186
+ '15': 'PA',
187
+ '25': 'PB',
188
+ '26': 'PE',
189
+ '22': 'PI',
190
+ '41': 'PR',
191
+ '33': 'RJ',
192
+ '24': 'RN',
193
+ '11': 'RO',
194
+ '14': 'RR',
195
+ '43': 'RS',
196
+ '42': 'SC',
197
+ '28': 'SE',
198
+ '35': 'SP',
199
+ '17': 'TO'
200
+ };
201
+ /**
202
+ * Retorna a URL do webservice de CT-e para a UF, ambiente e servico informados.
203
+ * Lanca CTeError se a UF ou o servico ainda nao tiverem URL confirmada.
204
+ */
205
+ function getCteUrl(uf, environment, service) {
206
+ const autorizador = exports.UF_AUTORIZADOR[uf];
207
+ if (!autorizador) {
208
+ throw new CTeError_1.CTeError(`UF nao configurada para CT-e: ${uf} (nenhum autorizador de webservice mapeado para esta UF)`);
209
+ }
210
+ const url = exports.AUTORIZADOR_URLS[autorizador][environment][service];
211
+ if (!url) {
212
+ throw new CTeError_1.CTeError(`Servico ${service} nao configurado para o autorizador ${autorizador} em ${environment}`);
213
+ }
214
+ return url;
215
+ }
216
+ /**
217
+ * Converte codigo IBGE (2 digitos) para sigla da UF.
218
+ */
219
+ function ibgeToUf(codigoIbge) {
220
+ const uf = IBGE_TO_UF[codigoIbge];
221
+ if (!uf) {
222
+ throw new CTeError_1.CTeError(`Codigo IBGE de UF desconhecido: ${codigoIbge}`);
223
+ }
224
+ return uf;
225
+ }
226
+ const UF_TO_IBGE = Object.fromEntries(Object.entries(IBGE_TO_UF).map(([codigo, uf]) => [uf, codigo]));
227
+ /**
228
+ * Converte sigla da UF para codigo IBGE (2 digitos).
229
+ */
230
+ function ufToIbge(uf) {
231
+ const codigo = UF_TO_IBGE[uf];
232
+ if (!codigo) {
233
+ throw new CTeError_1.CTeError(`UF desconhecida: ${uf}`);
234
+ }
235
+ return codigo;
236
+ }
237
+ //# sourceMappingURL=cte-urls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cte-urls.js","sourceRoot":"","sources":["../../../src/shared/constants/cte-urls.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { DFeError } from '@brasil-fiscal/core';
2
+ export declare class CTeError extends DFeError {
3
+ constructor(message: string, cause?: Error);
4
+ }
5
+ //# sourceMappingURL=CTeError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CTeError.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/CTeError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,qBAAa,QAAS,SAAQ,QAAQ;gBACxB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI3C"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CTeError = void 0;
4
+ const core_1 = require("@brasil-fiscal/core");
5
+ class CTeError extends core_1.DFeError {
6
+ constructor(message, cause) {
7
+ super(message, cause);
8
+ this.name = 'CTeError';
9
+ }
10
+ }
11
+ exports.CTeError = CTeError;
12
+ //# sourceMappingURL=CTeError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CTeError.js","sourceRoot":"","sources":["../../../src/shared/errors/CTeError.ts"],"names":[],"mappings":";;;AAAA,8CAA+C;AAE/C,MAAa,QAAS,SAAQ,eAAQ;IACpC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AALD,4BAKC"}
@@ -0,0 +1,3 @@
1
+ export { CTeError } from './CTeError';
2
+ export { DFeError, CertificateError, SefazRejectError } from '@brasil-fiscal/core';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SefazRejectError = exports.CertificateError = exports.DFeError = exports.CTeError = void 0;
4
+ var CTeError_1 = require("./CTeError");
5
+ Object.defineProperty(exports, "CTeError", { enumerable: true, get: function () { return CTeError_1.CTeError; } });
6
+ var core_1 = require("@brasil-fiscal/core");
7
+ Object.defineProperty(exports, "DFeError", { enumerable: true, get: function () { return core_1.DFeError; } });
8
+ Object.defineProperty(exports, "CertificateError", { enumerable: true, get: function () { return core_1.CertificateError; } });
9
+ Object.defineProperty(exports, "SefazRejectError", { enumerable: true, get: function () { return core_1.SefazRejectError; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/errors/index.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,4CAAmF;AAA1E,gGAAA,QAAQ,OAAA;AAAE,wGAAA,gBAAgB,OAAA;AAAE,wGAAA,gBAAgB,OAAA"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Monta o atributo Id de um evento de CT-e: "ID" + tpEvento(6) + chCTe(44) +
3
+ * nSeqEvento(2). Mesmo padrao usado pelos eventos de NFe/MDFe.
4
+ */
5
+ export declare function buildEventoId(tpEvento: string, chCTe: string, nSeqEvento: number): string;
6
+ //# sourceMappingURL=evento-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evento-id.d.ts","sourceRoot":"","sources":["../../../src/shared/helpers/evento-id.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzF"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildEventoId = buildEventoId;
4
+ /**
5
+ * Monta o atributo Id de um evento de CT-e: "ID" + tpEvento(6) + chCTe(44) +
6
+ * nSeqEvento(2). Mesmo padrao usado pelos eventos de NFe/MDFe.
7
+ */
8
+ function buildEventoId(tpEvento, chCTe, nSeqEvento) {
9
+ return `ID${tpEvento}${chCTe}${String(nSeqEvento).padStart(2, '0')}`;
10
+ }
11
+ //# sourceMappingURL=evento-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evento-id.js","sourceRoot":"","sources":["../../../src/shared/helpers/evento-id.ts"],"names":[],"mappings":";;AAIA,sCAEC;AAND;;;GAGG;AACH,SAAgB,aAAa,CAAC,QAAgB,EAAE,KAAa,EAAE,UAAkB;IAC/E,OAAO,KAAK,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACvE,CAAC"}
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@autohubs/lib-cte",
3
+ "version": "0.2.0",
4
+ "description": "Fork de @brasil-fiscal/cte com use cases de consulta (status do servico, consulta por chave, desacordo, distribuicao de DF-e por NSU) para CTe (Conhecimento de Transporte Eletronico) em TypeScript.",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "scripts": {
11
+ "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
12
+ "lint": "eslint .",
13
+ "format": "prettier --write .",
14
+ "test": "tsx --test 'tests/**/*.spec.ts'",
15
+ "prepublishOnly": "npm run build",
16
+ "publish:npm": "npm publish --access public --registry=https://registry.npmjs.org",
17
+ "publish:github": "npm publish --registry=https://npm.pkg.github.com",
18
+ "publish:all": "npm run publish:npm && npm run publish:github"
19
+ },
20
+ "keywords": [
21
+ "cte",
22
+ "conhecimento-transporte",
23
+ "sefaz",
24
+ "fiscal",
25
+ "brasil",
26
+ "typescript"
27
+ ],
28
+ "author": {
29
+ "name": "Raphael Serafim",
30
+ "url": "https://raphaelvserafim.com/"
31
+ },
32
+ "license": "MIT",
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "git+https://github.com/MaxTecnology/cte.git"
36
+ },
37
+ "engines": {
38
+ "node": ">=18.0.0"
39
+ },
40
+ "type": "commonjs",
41
+ "devDependencies": {
42
+ "@types/node": "^25.6.0",
43
+ "@typescript-eslint/eslint-plugin": "^8.58.2",
44
+ "@typescript-eslint/parser": "^8.58.2",
45
+ "eslint": "^10.2.1",
46
+ "eslint-config-prettier": "^10.1.8",
47
+ "prettier": "^3.8.3",
48
+ "tsc-alias": "^1.8.16",
49
+ "tsx": "^4.21.0",
50
+ "typescript": "^6.0.3"
51
+ },
52
+ "dependencies": {
53
+ "@brasil-fiscal/core": "^1.0.0"
54
+ }
55
+ }