@sinete/nfe 0.1.0 → 0.3.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 (90) hide show
  1. package/README.md +55 -50
  2. package/dist/build/build.d.ts +23 -23
  3. package/dist/build/build.d.ts.map +1 -1
  4. package/dist/build/destinatario.d.ts +2 -2
  5. package/dist/build/ibscbs.d.ts.map +1 -1
  6. package/dist/build/nfce.d.ts +5 -5
  7. package/dist/build/nfce.d.ts.map +1 -1
  8. package/dist/build/pl.d.ts +4 -4
  9. package/dist/build/pl.d.ts.map +1 -1
  10. package/dist/build/rejeicoes.d.ts +7 -7
  11. package/dist/build/rejeicoes.d.ts.map +1 -1
  12. package/dist/build/textos.d.ts +26 -0
  13. package/dist/build/textos.d.ts.map +1 -0
  14. package/dist/build/values.d.ts +8 -8
  15. package/dist/build/values.d.ts.map +1 -1
  16. package/dist/decimal.d.ts +2 -2
  17. package/dist/decimal.d.ts.map +1 -1
  18. package/dist/format.d.ts +19 -19
  19. package/dist/format.d.ts.map +1 -1
  20. package/dist/ibs-cbs.d.ts +10 -5
  21. package/dist/ibs-cbs.d.ts.map +1 -1
  22. package/dist/ibs-cbs.js +35 -35
  23. package/dist/ibs-cbs.js.map +3 -3
  24. package/dist/index.d.ts +18 -18
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +796 -588
  27. package/dist/index.js.map +27 -26
  28. package/dist/issues.d.ts +10 -10
  29. package/dist/issues.d.ts.map +1 -1
  30. package/dist/model.d.ts +4 -4
  31. package/dist/ports.d.ts +15 -15
  32. package/dist/ports.d.ts.map +1 -1
  33. package/dist/rotulo.d.ts +2 -2
  34. package/dist/rotulo.d.ts.map +1 -1
  35. package/dist/rtc.d.ts +23 -23
  36. package/dist/rtc.d.ts.map +1 -1
  37. package/dist/services/client.d.ts +44 -40
  38. package/dist/services/client.d.ts.map +1 -1
  39. package/dist/services/gzip.d.ts +1 -1
  40. package/dist/services/gzip.d.ts.map +1 -1
  41. package/dist/services/index.d.ts +4 -4
  42. package/dist/services/index.d.ts.map +1 -1
  43. package/dist/services/outcome.d.ts +3 -3
  44. package/dist/services/outcome.d.ts.map +1 -1
  45. package/dist/services/proc.d.ts +6 -6
  46. package/dist/services/proc.d.ts.map +1 -1
  47. package/dist/services/recuperar.d.ts +8 -7
  48. package/dist/services/recuperar.d.ts.map +1 -1
  49. package/dist/services/resolver.d.ts +12 -11
  50. package/dist/services/resolver.d.ts.map +1 -1
  51. package/dist/services/soap.d.ts +8 -8
  52. package/dist/services/soap.d.ts.map +1 -1
  53. package/dist/time.d.ts +4 -4
  54. package/dist/time.d.ts.map +1 -1
  55. package/dist/versao-gerada.d.ts +1 -1
  56. package/package.json +9 -9
  57. package/src/build/build.ts +213 -203
  58. package/src/build/destinatario.ts +8 -8
  59. package/src/build/ibscbs.ts +10 -6
  60. package/src/build/icms.ts +6 -6
  61. package/src/build/nfce.ts +19 -19
  62. package/src/build/pl.ts +12 -12
  63. package/src/build/rejeicoes.ts +13 -13
  64. package/src/build/textos.ts +228 -0
  65. package/src/build/values.ts +14 -14
  66. package/src/data/arredondamento.json +1 -1
  67. package/src/data/cstat.json +6 -6
  68. package/src/data/fusos.json +1 -1
  69. package/src/data/nfce-urls.json +2 -2
  70. package/src/data/produtor-rural.json +1 -1
  71. package/src/data/resp-tec.json +1 -1
  72. package/src/decimal.ts +10 -9
  73. package/src/format.ts +29 -28
  74. package/src/ibs-cbs.ts +79 -74
  75. package/src/index.ts +29 -27
  76. package/src/issues.ts +11 -11
  77. package/src/model.ts +4 -4
  78. package/src/ports.ts +15 -15
  79. package/src/rotulo.ts +4 -4
  80. package/src/rtc.ts +91 -91
  81. package/src/services/client.ts +248 -217
  82. package/src/services/gzip.ts +7 -7
  83. package/src/services/index.ts +12 -10
  84. package/src/services/outcome.ts +9 -9
  85. package/src/services/proc.ts +50 -49
  86. package/src/services/recuperar.ts +29 -25
  87. package/src/services/resolver.ts +25 -23
  88. package/src/services/soap.ts +35 -35
  89. package/src/time.ts +6 -6
  90. package/src/versao-gerada.ts +1 -1
@@ -3,15 +3,15 @@
3
3
  * assinado entra byte a byte como foi assinado e o protocolo entra como fatia da resposta recebida: nada é reparseado
4
4
  * para gerar saída nem reserializado (invariante do repositório, ADR 0003).
5
5
  */
6
- import type { XmlDocument, XmlElement } from '@sinete/core/xml';
6
+ import type { DocumentoXml, ElementoXml } from '@sinete/core/xml';
7
7
  /** Namespace dos documentos da NF-e. */
8
8
  export declare const NFE_NS = "http://www.portalfiscal.inf.br/nfe";
9
9
  /**
10
10
  * Recorta o elemento da fonte, acrescentando na tag de abertura só as declarações de namespace que ele usa e que
11
- * estão em ancestrais fora do recorte. O default entra apenas quando difere de `parentDefaultNs` (o default do
11
+ * estão em ancestrais fora do recorte. O default entra apenas quando difere de `nsPadraoDoPai` (o default do
12
12
  * envelope onde a fatia vai morar).
13
13
  */
14
- export declare function sliceElement(doc: XmlDocument, el: XmlElement, parentDefaultNs?: string): string;
14
+ export declare function recortarElemento(documento: DocumentoXml, el: ElementoXml, nsPadraoDoPai?: string): string;
15
15
  /** Documento assinado já conferido: a string como veio (sem a declaração XML) e o que se lê dela. */
16
16
  export interface DocumentoAssinado {
17
17
  /** O texto que vai no envelope, byte a byte o assinado (só a declaração XML inicial removida). */
@@ -20,11 +20,11 @@ export interface DocumentoAssinado {
20
20
  readonly id: string;
21
21
  /** DigestValue da assinatura (base64). */
22
22
  readonly digestValue: string;
23
- readonly doc: XmlDocument;
23
+ readonly documento: DocumentoXml;
24
24
  }
25
25
  /**
26
26
  * Confere que `xml` é um documento `raiz` assinado (no namespace da NF-e, com `Signature` referenciando o filho
27
- * `elemento`) e devolve a string sem a declaração XML. Lança `ConfigError` para qualquer outra coisa: o serviço nunca
27
+ * `elemento`) e devolve a string sem a declaração XML. Lança `ErroDeConfiguracao` para qualquer outra coisa: o serviço nunca
28
28
  * "conserta" o documento de quem chama.
29
29
  */
30
30
  export declare function documentoAssinado(xml: string, raiz: string, elemento: string): DocumentoAssinado;
@@ -33,7 +33,7 @@ export declare function documentoAssinado(xml: string, raiz: string, elemento: s
33
33
  * pronta para `consultar`, `resolverEnvioSemResposta` e a retomada, que recusam raiz sem `xmlns` próprio. O `NFe` dentro
34
34
  * do proc herda os namespaces do envelope; eles são declarados na raiz da fatia. O C14N inclusivo do `infNFe` já os
35
35
  * enxergava em escopo, então o digest e a assinatura são os mesmos dentro e fora do proc. Nada mais muda nos bytes.
36
- * Lança `ConfigError` quando não há NF-e assinada (proc de outro documento, NFe sem assinatura, XML malformado).
36
+ * Lança `ErroDeConfiguracao` quando não há NF-e assinada (proc de outro documento, NFe sem assinatura, XML malformado).
37
37
  */
38
38
  export declare function nfeAssinadaDoProc(xml: string): string;
39
39
  /** `<raiz xmlns versao>` + partes + `</raiz>`, sem tocar nas partes. */
@@ -1 +1 @@
1
- {"version":3,"file":"proc.d.ts","sourceRoot":"","sources":["../../src/services/proc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAWhE,wCAAwC;AACxC,eAAO,MAAM,MAAM,uCAAuC,CAAC;AAI3D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,eAAe,GAAE,MAAe,GAAG,MAAM,CAmCvG;AAkBD,qGAAqG;AACrG,MAAM,WAAW,iBAAiB;IAChC,kGAAkG;IAClG,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAuBhG;AAOD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAwBrD;AAED,wEAAwE;AACxE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAExF"}
1
+ {"version":3,"file":"proc.d.ts","sourceRoot":"","sources":["../../src/services/proc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAWlE,wCAAwC;AACxC,eAAO,MAAM,MAAM,uCAAuC,CAAC;AAI3D;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,aAAa,GAAE,MAAe,GAAG,MAAM,CAmCjH;AAkBD,qGAAqG;AACrG,MAAM,WAAW,iBAAiB;IAChC,kGAAkG;IAClG,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAwBhG;AAOD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAwBrD;AAED,wEAAwE;AACxE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAExF"}
@@ -8,21 +8,22 @@
8
8
  * função lê o evento de lá e só o dá como registrado quando o retorno dele diz 135, 136 ou 155 para a mesma chave e o
9
9
  * mesmo tipo.
10
10
  */
11
- import type { ConsultaOutcome, EventoRegistrado, NfeClient } from './client.js';
11
+ import type { ClienteNfe, EnvioOpcoes, EventoRegistrado, ResultadoConsulta } from './client.js';
12
12
  /** Resultado da recuperação: o evento registrado, com a consulta que o prova, ou só a consulta. */
13
13
  export type RecuperacaoEvento = {
14
14
  readonly registrado: true;
15
15
  readonly evento: EventoRegistrado;
16
- readonly consulta: ConsultaOutcome;
16
+ readonly consulta: ResultadoConsulta;
17
17
  } | {
18
18
  readonly registrado: false;
19
- readonly consulta: ConsultaOutcome;
19
+ readonly consulta: ResultadoConsulta;
20
20
  };
21
21
  /**
22
22
  * Consulta a chave e devolve o evento `tpEvento` que a SEFAZ registrou para ela (o de maior `nSeqEvento`, quando há
23
- * vários, como na CC-e). Serve depois de um pedido de evento sem resposta ou respondido com 573 ou 580: nunca conclua
24
- * que o evento existe só pelo `cStat` do pedido. `registrado: false` quer dizer que a consulta não mostrou o evento
25
- * (ou não decidiu: veja `consulta`); não quer dizer que o evento não existe.
23
+ * vários, como na CC-e; com `nSeqEvento`, só o dessa sequência). Serve depois de um pedido de evento sem resposta ou
24
+ * respondido com 573 ou 580: nunca conclua que o evento existe só pelo `cStat` do pedido. `registrado: false` quer
25
+ * dizer que a consulta não mostrou o evento (ou não decidiu: veja `consulta`); não quer dizer que o evento não existe.
26
+ * `opcoes.signal` cancela a consulta.
26
27
  */
27
- export declare function recuperarEventoRegistrado(client: NfeClient, chave: string, tpEvento: string): Promise<RecuperacaoEvento>;
28
+ export declare function recuperarEventoRegistrado(cliente: ClienteNfe, chave: string, tpEvento: string, nSeqEvento?: number, opcoes?: EnvioOpcoes): Promise<RecuperacaoEvento>;
28
29
  //# sourceMappingURL=recuperar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"recuperar.d.ts","sourceRoot":"","sources":["../../src/services/recuperar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIhF,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAA;CAAE,GACpG;IAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAA;CAAE,CAAC;AAkDvE;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,iBAAiB,CAAC,CAU5B"}
1
+ {"version":3,"file":"recuperar.d.ts","sourceRoot":"","sources":["../../src/services/recuperar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIhG,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACtG;IAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAkDzE;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAW5B"}
@@ -25,8 +25,8 @@
25
25
  * Fontes: MOC 7.0 Anexo I (RV 204 "Duplicidade de NF-e", RV 539 "Duplicidade de NF-e com diferença na Chave de
26
26
  * Acesso [chNFe: ...]") e serviço de consulta protocolo (cStat 217; 561, 562 e 613 quando a numeração tem outra NF-e).
27
27
  */
28
- import type { Rejected } from '@sinete/core';
29
- import type { AutorizacaoOutcome, ConsultaOutcome, NfeClient } from './client.js';
28
+ import type { Recusado } from '@sinete/core';
29
+ import type { ClienteNfe, EnvioOpcoes, ResultadoAutorizacao, ResultadoConsulta } from './client.js';
30
30
  /**
31
31
  * O que o `digVal` do protocolo diz dos bytes assinados: `confere` (é o DigestValue deles), `sem-digval` (o protocolo
32
32
  * não o traz) ou `difere` (a SEFAZ registrou outro conteúdo com a mesma chave).
@@ -35,15 +35,15 @@ export type ConteudoDoProtocolo = 'confere' | 'sem-digval' | 'difere';
35
35
  /** O que fazer com uma NF-e cujo envio ficou sem resposta ou voltou como duplicidade. */
36
36
  export type ResolucaoEnvio =
37
37
  /**
38
- * A chave está decidida: autorizada (ou cancelada) com o mesmo conteúdo, e `outcome` traz o protocolo e o `nfeProc`;
39
- * ou denegada, com qualquer conteúdo (a denegação é da chave), e `outcome` traz o protocolo, com o `nfeProc` só
38
+ * A chave está decidida: autorizada (ou cancelada) com o mesmo conteúdo, e `resultado` traz o protocolo e o `nfeProc`;
39
+ * ou denegada, com qualquer conteúdo (a denegação é da chave), e `resultado` traz o protocolo, com o `nfeProc` só
40
40
  * quando `conteudo` é `confere`.
41
41
  */
42
42
  {
43
43
  readonly acao: 'concluida';
44
44
  readonly situacao: 'autorizada' | 'cancelada' | 'denegada';
45
45
  readonly conteudo: ConteudoDoProtocolo;
46
- readonly outcome: AutorizacaoOutcome;
46
+ readonly resultado: ResultadoAutorizacao;
47
47
  }
48
48
  /** A NF-e não consta na SEFAZ (217): reenvie `nfeAssinada`, os mesmos bytes. */
49
49
  | {
@@ -57,8 +57,8 @@ export type ResolucaoEnvio =
57
57
  | {
58
58
  readonly acao: 'divergente';
59
59
  readonly chNFe?: string;
60
- readonly consulta?: ConsultaOutcome;
61
- readonly motivo: Rejected | ConsultaOutcome;
60
+ readonly consulta?: ResultadoConsulta;
61
+ readonly motivo: Recusado | ResultadoConsulta;
62
62
  }
63
63
  /**
64
64
  * A chave está autorizada (ou cancelada), mas o protocolo não traz `digVal`: nada prova que o conteúdo autorizado é o
@@ -68,7 +68,7 @@ export type ResolucaoEnvio =
68
68
  | {
69
69
  readonly acao: 'sem-prova';
70
70
  readonly situacao: 'autorizada' | 'cancelada';
71
- readonly consulta: ConsultaOutcome;
71
+ readonly consulta: ResultadoConsulta;
72
72
  }
73
73
  /**
74
74
  * A consulta não decidiu (serviço paralisado, consumo indevido, rejeição de schema, situação sem protocolo): tente de
@@ -76,13 +76,14 @@ export type ResolucaoEnvio =
76
76
  */
77
77
  | {
78
78
  readonly acao: 'indefinida';
79
- readonly outcome: ConsultaOutcome;
79
+ readonly resultado: ResultadoConsulta;
80
80
  };
81
81
  /** Chave de acesso que a SEFAZ informa no `xMotivo` da rejeição 539 (`[chNFe:...]`), se houver. */
82
82
  export declare function chaveDaDuplicidade(xMotivo: string): string | undefined;
83
83
  /**
84
84
  * Resolve um envio de autorização sem resposta, ou cuja resposta foi 204 ou 539, consultando a chave da NF-e
85
- * assinada. `anterior` é o desfecho do envio, quando houve um.
85
+ * assinada. `anterior` é o desfecho do envio, quando houve um. `opcoes.signal` cancela a consulta (lança o
86
+ * `ErroTransporte` com `code: 'cancelado'`).
86
87
  */
87
- export declare function resolverEnvioSemResposta(client: NfeClient, nfeAssinada: string, anterior?: AutorizacaoOutcome): Promise<ResolucaoEnvio>;
88
+ export declare function resolverEnvioSemResposta(cliente: ClienteNfe, nfeAssinada: string, anterior?: ResultadoAutorizacao, opcoes?: EnvioOpcoes): Promise<ResolucaoEnvio>;
88
89
  //# sourceMappingURL=resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/services/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,SAAS,EAAgB,MAAM,aAAa,CAAC;AAIhG;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEtE,yFAAyF;AACzF,MAAM,MAAM,cAAc;AACxB;;;;GAIG;AACD;IACE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;CACtC;AACH,gFAAgF;GAC9E;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAAE;AAC7D;;;GAGG;GACD;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,CAAC;CAC7C;AACH;;;;GAIG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAA;CAAE;AACnH;;;GAGG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAKvE,mGAAmG;AACnG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAiCzB"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/services/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAgB,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIlH;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEtE,yFAAyF;AACzF,MAAM,MAAM,cAAc;AACxB;;;;GAIG;AACD;IACE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;CAC1C;AACH,gFAAgF;GAC9E;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAAE;AAC7D;;;GAGG;GACD;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,iBAAiB,CAAC;CAC/C;AACH;;;;GAIG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE;AACrH;;;GAGG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAK3E,mGAAmG;AACnG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,oBAAoB,EAC/B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAiCzB"}
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Chamada SOAP 1.2 a um web service da NF-e 4.00: monta o corpo com o namespace do WSDL (dado em `data/servicos.json`),
3
- * envia pelo `Transport` injetado e devolve o elemento de retorno como fatia da resposta, com a árvore para leitura.
3
+ * envia pelo `Transporte` injetado e devolve o elemento de retorno como fatia da resposta, com a árvore para leitura.
4
4
  */
5
5
  import type { Logger } from '@sinete/core';
6
- import type { XmlDocument, XmlElement } from '@sinete/core/xml';
7
- import type { EndpointRef, NfeServico, Transport } from '@sinete/transport';
6
+ import type { DocumentoXml, ElementoXml } from '@sinete/core/xml';
7
+ import type { EndpointResolvido, NfeServico, Transporte } from '@sinete/transport';
8
8
  interface ServicoInfo {
9
9
  readonly namespace: string;
10
10
  readonly operacao: string;
@@ -22,13 +22,13 @@ export declare function servicoInfo(servico: NfeServico): ServicoInfo;
22
22
  export declare function soapBodyFor(servico: NfeServico, mensagem: string, autorizador?: string): string;
23
23
  /** Resposta de um serviço: o documento inteiro (para fatiar) e o elemento de retorno. */
24
24
  export interface RespostaSoap {
25
- readonly doc: XmlDocument;
26
- readonly ret: XmlElement;
25
+ readonly doc: DocumentoXml;
26
+ readonly ret: ElementoXml;
27
27
  readonly status: number;
28
28
  }
29
29
  export interface ChamadaSoap {
30
- readonly transport: Transport;
31
- readonly endpoint: EndpointRef;
30
+ readonly transport: Transporte;
31
+ readonly endpoint: EndpointResolvido;
32
32
  readonly servico: NfeServico;
33
33
  readonly mensagem: string;
34
34
  /** Nome local do elemento de retorno (`retEnviNFe`, `retConsSitNFe`...). */
@@ -37,7 +37,7 @@ export interface ChamadaSoap {
37
37
  readonly signal?: AbortSignal;
38
38
  readonly logger: Logger;
39
39
  }
40
- /** Envia e devolve o elemento de retorno. Fault SOAP, retorno ausente ou XML malformado viram `ProtocolError`. */
40
+ /** Envia e devolve o elemento de retorno. Fault SOAP, retorno ausente ou XML malformado viram `ErroRespostaInvalida`. */
41
41
  export declare function chamar(c: ChamadaSoap): Promise<RespostaSoap>;
42
42
  export {};
43
43
  //# sourceMappingURL=soap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"soap.d.ts","sourceRoot":"","sources":["../../src/services/soap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAK5E,UAAU,WAAW;IACnB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAID,+CAA+C;AAC/C,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW,CAI5D;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAM/F;AAED,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,kHAAkH;AAClH,wBAAsB,MAAM,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAsDlE"}
1
+ {"version":3,"file":"soap.d.ts","sourceRoot":"","sources":["../../src/services/soap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAKnF,UAAU,WAAW;IACnB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAID,+CAA+C;AAC/C,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW,CAI5D;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAM/F;AAED,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,yHAAyH;AACzH,wBAAsB,MAAM,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAsDlE"}
package/dist/time.d.ts CHANGED
@@ -2,11 +2,11 @@
2
2
  * Fuso do emitente e formatação dos instantes do leiaute (`TDateTimeUTC`, `AAAA-MM-DDThh:mm:ss±hh:mm`). O fuso vem da
3
3
  * tabela `data/fusos.json` pela UF, ou do chamador; nunca do fuso da máquina.
4
4
  */
5
- import type { Clock, Uf } from '@sinete/core';
5
+ import type { Relogio, Uf } from '@sinete/core';
6
6
  /** Instante no tempo, como os relógios do `@sinete/core` o devolvem (o tipo `Date`, sem tocar no global). */
7
- export type Instante = ReturnType<Clock['now']>;
7
+ export type Instante = ReturnType<Relogio['agora']>;
8
8
  /** Deslocamento do horário legal da UF em minutos (`-180` para Brasília). */
9
- export declare function offsetDaUf(uf: Uf): number;
9
+ export declare function deslocamentoDaUf(uf: Uf): number;
10
10
  /** `TDateTimeUTC` do instante no deslocamento dado. */
11
- export declare function formatDh(date: Instante, offsetMinutes: number): string;
11
+ export declare function formatarDh(data: Instante, deslocamentoMin: number): string;
12
12
  //# sourceMappingURL=time.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAI9C,6GAA6G;AAC7G,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AAIhD,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAEzC;AAED,uDAAuD;AACvD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAEtE"}
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAIhD,6GAA6G;AAC7G,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAIpD,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAE/C;AAED,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAE1E"}
@@ -1,3 +1,3 @@
1
1
  /** Versão de `@sinete/nfe`, para o padrão de `verProc`/`verAplic` (`formatarVerProc` do @sinete/core). */
2
- export declare const VERSAO_PACOTE = "0.1.0";
2
+ export declare const VERSAO_PACOTE = "0.3.0";
3
3
  //# sourceMappingURL=versao-gerada.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sinete/nfe",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "NF-e modelo 55: modelo de entrada tipado, montagem com totais em decimal exato, validação antes de assinar, autorização, consultas, eventos, inutilização, contingência SVC e Distribuição DF-e",
5
5
  "keywords": [
6
6
  "nfe",
@@ -44,16 +44,16 @@
44
44
  "build": "bun ../../scripts/build.ts ."
45
45
  },
46
46
  "dependencies": {
47
- "@sinete/core": "^0.1.0",
48
- "@sinete/ibs-cbs": "^0.1.0",
49
- "@sinete/ibs-cbs-dados": "^2026.9.1",
50
- "@sinete/rejeicoes": "^0.1.0",
51
- "@sinete/schemas": "^0.1.0",
52
- "@sinete/transport": "^0.1.0",
53
- "@sinete/validators": "^0.1.0"
47
+ "@sinete/core": "^0.3.0",
48
+ "@sinete/ibs-cbs": "^0.2.1",
49
+ "@sinete/ibs-cbs-dados": ">=2026.9.3",
50
+ "@sinete/rejeicoes": "^0.3.0",
51
+ "@sinete/schemas": "^0.2.1",
52
+ "@sinete/transport": "^0.2.1",
53
+ "@sinete/validators": "^0.2.1"
54
54
  },
55
55
  "devDependencies": {
56
- "@sinete/sefaz-sim": "^0.1.0"
56
+ "@sinete/sefaz-sim": "^0.2.1"
57
57
  },
58
58
  "publishConfig": {
59
59
  "access": "public"