@sinete/nfe 0.3.0 → 0.4.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.
- package/dist/build/build.d.ts +8 -1
- package/dist/build/build.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -14
- package/dist/index.js.map +5 -5
- package/dist/ports.d.ts +18 -0
- package/dist/ports.d.ts.map +1 -1
- package/dist/rtc.d.ts.map +1 -1
- package/dist/versao-gerada.d.ts +1 -1
- package/package.json +1 -1
- package/src/build/build.ts +20 -6
- package/src/index.ts +7 -1
- package/src/ports.ts +19 -0
- package/src/rtc.ts +50 -9
- package/src/versao-gerada.ts +1 -1
package/dist/build/build.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { EntradaDeVigencia } from '@sinete/schemas';
|
|
|
9
9
|
import type { TNFe_infNFe } from '@sinete/schemas/nfe/PL_010f';
|
|
10
10
|
import type { RoundingMode } from '../decimal.js';
|
|
11
11
|
import type { DadosNfe, ResponsavelTecnico } from '../model.js';
|
|
12
|
-
import type { CalculadoraIbsCbs } from '../ports.js';
|
|
12
|
+
import type { AliquotaIbsCbsInformada, CalculadoraIbsCbs } from '../ports.js';
|
|
13
13
|
import type { Instante } from '../time.js';
|
|
14
14
|
import type { NfceSupl, QrCodeNfceOpcoes } from './nfce.js';
|
|
15
15
|
import type { Familia } from './values.js';
|
|
@@ -87,6 +87,13 @@ export interface NfeMontada {
|
|
|
87
87
|
readonly infNFe: TNFe_infNFe;
|
|
88
88
|
/** `<NFe xmlns="...">` com o `infNFe` canônico, sem assinatura, já validado contra o schema. */
|
|
89
89
|
readonly xml: string;
|
|
90
|
+
/**
|
|
91
|
+
* Alíquotas do IBS/CBS que a calculadora usou vindas de quem integra (`comAliquotasInformadas`), e não da tabela
|
|
92
|
+
* oficial do pacote, por item. Ausente quando todas foram oficiais. A montagem não recusa por isso: é o caminho para
|
|
93
|
+
* emitir com uma alíquota já publicada antes de o pacote trazê-la. Guarde junto com a nota e alerte quem opera; em
|
|
94
|
+
* produção, a alíquota informada é responsabilidade de quem a informou.
|
|
95
|
+
*/
|
|
96
|
+
readonly aliquotasInformadas?: readonly AliquotaIbsCbsInformada[];
|
|
90
97
|
}
|
|
91
98
|
export type ResultadoMontagemNfe = {
|
|
92
99
|
readonly ok: true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/build/build.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAWzF,OAAO,KAAK,EAAe,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEtE,OAAO,KAAK,EACV,WAAW,EAQZ,MAAM,6BAA6B,CAAC;AAOrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAIlD,OAAO,KAAK,EACV,QAAQ,EASR,kBAAkB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,iBAAiB,EAAoB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/build/build.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export type { CodigoOcorrenciaNfe } from './issues.js';
|
|
|
19
19
|
export { CODIGOS_OCORRENCIA_NFE } from './issues.js';
|
|
20
20
|
export type { ClassificacaoIbsCbs, Cobranca, Contingencia, Crt, CstPisCofinsOutras, DadosNfe, Desoneracao, DesoneracaoSt, Destinatario, DetalhePagamento, DocumentoPessoa, Emitente, Endereco, EnderecoExterior, FinNFe, IbsCbsItem, Icms, Icms00, Icms02, Icms10, Icms15, Icms20, Icms30, Icms40, Icms51, Icms53, Icms60, Icms61, Icms70, Icms90, IcmsFcp, IcmsPartilha, IcmsProprio, IcmsRepasseSt, IcmsSn101, IcmsSn102, IcmsSn201, IcmsSn202, IcmsSn500, IcmsSn900, IcmsSt, IcmsStRetido, IcmsUfDest, ImpostoImportacao, ImpostosItem, IndIEDest, InformacoesAdicionais, Ipi, IpiNaoTributado, IpiTributado, Issqn, Item, Local, ModBC, ModBCST, ModFrete, Origem, Pagamento, PisCofins, PisCofinsSt, Produto, ProdutoEspecifico, Referenciada, RefNfp, ResponsavelTecnico, TCIBS_NFe, TMonofasia, Transportador, Transporte, TTribNFe, Volume, } from './model.js';
|
|
21
21
|
export { MotivoDesoneracaoIcms, TipoPagamento } from './model.js';
|
|
22
|
-
export type { CalculadoraIbsCbs, PedidoIbsCbsItem, PedidoIbsCbsNota, RespostaIbsCbs } from './ports.js';
|
|
22
|
+
export type { AliquotaIbsCbsInformada, CalculadoraIbsCbs, PedidoIbsCbsItem, PedidoIbsCbsNota, RespostaIbsCbs, } from './ports.js';
|
|
23
23
|
export { rotuloDoCaminho } from './rotulo.js';
|
|
24
24
|
export type { CalculadoraIbsCbsOpcoes, GrupoIbsCbs } from './rtc.js';
|
|
25
25
|
export { calculadoraIbsCbs, carregarDatasetEmbarcado, localDaOperacao } from './rtc.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,YAAY,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EACV,mBAAmB,EACnB,QAAQ,EACR,YAAY,EACZ,GAAG,EACH,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,IAAI,EACJ,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,OAAO,EACP,YAAY,EACZ,WAAW,EACX,aAAa,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,EACN,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,qBAAqB,EACrB,GAAG,EACH,eAAe,EACf,YAAY,EACZ,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,aAAa,EACb,UAAU,EACV,QAAQ,EACR,MAAM,GACP,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAClE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -398,13 +398,26 @@ function grupoDoLeiaute(g, indDoacao) {
|
|
|
398
398
|
}
|
|
399
399
|
};
|
|
400
400
|
}
|
|
401
|
-
function ocorrenciaDoMotor(e, itens) {
|
|
401
|
+
function ocorrenciaDoMotor(e, itens, semAliquota) {
|
|
402
402
|
if (e instanceof ErroClassificacao || e instanceof ErroRegimeNaoSuportado) {
|
|
403
403
|
const path = e.item !== undefined ? caminho(e.item) : caminho(itens[0]?.nItem ?? 1);
|
|
404
404
|
return { caminho: path, code: e.code, mensagem: e.message, origem: "entrada" };
|
|
405
405
|
}
|
|
406
|
-
if (e instanceof ErroAliquotaDesconhecida)
|
|
407
|
-
|
|
406
|
+
if (e instanceof ErroAliquotaDesconhecida) {
|
|
407
|
+
const n = semAliquota() ?? itens[0]?.nItem ?? 1;
|
|
408
|
+
return { caminho: caminho(n), code: e.code, mensagem: e.message, origem: "montagem" };
|
|
409
|
+
}
|
|
410
|
+
return;
|
|
411
|
+
}
|
|
412
|
+
function primeiroItemSemAliquota(op, calc) {
|
|
413
|
+
for (const it of [...op.itens].sort((a, b) => a.n - b.n)) {
|
|
414
|
+
try {
|
|
415
|
+
calc({ ...op, itens: [it] });
|
|
416
|
+
} catch (e) {
|
|
417
|
+
if (e instanceof ErroAliquotaDesconhecida)
|
|
418
|
+
return it.n;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
408
421
|
return;
|
|
409
422
|
}
|
|
410
423
|
var embarcado;
|
|
@@ -485,16 +498,17 @@ function calcularCom(dataset, rates, options, {
|
|
|
485
498
|
itens: classificados
|
|
486
499
|
};
|
|
487
500
|
const time = contextoDeTempo({ emissao: relogioFixo(nota.emissao), fatoGerador: relogioFixo(nota.fatoGerador) });
|
|
501
|
+
const calc = (o) => calcular(o, {
|
|
502
|
+
dataset,
|
|
503
|
+
aliquotas: rates,
|
|
504
|
+
tempo: time,
|
|
505
|
+
...options.deslocamentoMin === undefined ? {} : { deslocamentoMin: options.deslocamentoMin }
|
|
506
|
+
});
|
|
488
507
|
let roc;
|
|
489
508
|
try {
|
|
490
|
-
roc =
|
|
491
|
-
dataset,
|
|
492
|
-
aliquotas: rates,
|
|
493
|
-
tempo: time,
|
|
494
|
-
...options.deslocamentoMin === undefined ? {} : { deslocamentoMin: options.deslocamentoMin }
|
|
495
|
-
});
|
|
509
|
+
roc = calc(op);
|
|
496
510
|
} catch (e) {
|
|
497
|
-
const issue = ocorrenciaDoMotor(e, itens);
|
|
511
|
+
const issue = ocorrenciaDoMotor(e, itens, () => primeiroItemSemAliquota(op, calc));
|
|
498
512
|
if (issue === undefined)
|
|
499
513
|
throw e;
|
|
500
514
|
return { itens: [], ocorrencias: [issue] };
|
|
@@ -538,11 +552,13 @@ function calcularCom(dataset, rates, options, {
|
|
|
538
552
|
}
|
|
539
553
|
}
|
|
540
554
|
const porItem = new Map(itens.map((it) => [it.nItem, it]));
|
|
555
|
+
const informadas = roc.itens.flatMap((r) => r.aliquotas.filter((a) => a.situacao === "informada").map((a) => ({ nItem: r.nItem, tributo: a.tributo, valor: a.valor, motivo: a.motivo ?? "" })));
|
|
541
556
|
return {
|
|
542
557
|
itens: roc.itens.map((r) => ({
|
|
543
558
|
nItem: r.nItem,
|
|
544
559
|
IBSCBS: grupoDoLeiaute(r.IBSCBS, porItem.get(r.nItem)?.indDoacao)
|
|
545
560
|
})),
|
|
561
|
+
...informadas.length === 0 ? {} : { aliquotasInformadas: informadas },
|
|
546
562
|
...issues.length === 0 ? {} : { ocorrencias: issues }
|
|
547
563
|
};
|
|
548
564
|
}
|
|
@@ -578,7 +594,7 @@ function formatarDh(data, deslocamentoMin) {
|
|
|
578
594
|
}
|
|
579
595
|
|
|
580
596
|
// packages/nfe/src/versao-gerada.ts
|
|
581
|
-
var VERSAO_PACOTE = "0.
|
|
597
|
+
var VERSAO_PACOTE = "0.4.0";
|
|
582
598
|
|
|
583
599
|
// packages/nfe/src/build/destinatario.ts
|
|
584
600
|
import { ufPorSigla } from "@sinete/core";
|
|
@@ -2785,6 +2801,7 @@ async function montarNfe(entrada, opcoes) {
|
|
|
2785
2801
|
primeiro.det.prod.xProd = XPROD_HOMOLOGACAO_NFCE;
|
|
2786
2802
|
}
|
|
2787
2803
|
const classificados = entrada.itens.map((it, n) => ({ it, n })).filter(({ it }) => it.impostos.ibsCbs?.classificacao !== undefined);
|
|
2804
|
+
let aliquotasInformadas = [];
|
|
2788
2805
|
if (classificados.length > 0) {
|
|
2789
2806
|
const calculadora = opcoes.ibsCbs ?? calculadoraPadrao();
|
|
2790
2807
|
const reqs = classificados.map(({ it, n }) => {
|
|
@@ -2850,10 +2867,13 @@ async function montarNfe(entrada, opcoes) {
|
|
|
2850
2867
|
itens: reqs
|
|
2851
2868
|
});
|
|
2852
2869
|
issues.addAll(resp.ocorrencias ?? [], "montagem");
|
|
2870
|
+
aliquotasInformadas = resp.aliquotasInformadas ?? [];
|
|
2871
|
+
const explicou = (resp.ocorrencias?.length ?? 0) > 0;
|
|
2853
2872
|
for (const { n } of classificados) {
|
|
2854
2873
|
const g = resp.itens.find((x) => x.nItem === n + 1);
|
|
2855
2874
|
if (g === undefined) {
|
|
2856
|
-
|
|
2875
|
+
if (!explicou)
|
|
2876
|
+
issues.montagem(`itens[${n}].impostos.ibsCbs`, "ibscbs_calculo", "a calculadora não devolveu o grupo IBSCBS do item");
|
|
2857
2877
|
continue;
|
|
2858
2878
|
}
|
|
2859
2879
|
itens[n].det.imposto.IBSCBS = g.IBSCBS;
|
|
@@ -3242,7 +3262,8 @@ async function montarNfe(entrada, opcoes) {
|
|
|
3242
3262
|
...supl === undefined ? {} : { nfce: supl },
|
|
3243
3263
|
pl: pl.vigencia,
|
|
3244
3264
|
infNFe: inf,
|
|
3245
|
-
xml
|
|
3265
|
+
xml,
|
|
3266
|
+
...aliquotasInformadas.length === 0 ? {} : { aliquotasInformadas }
|
|
3246
3267
|
}
|
|
3247
3268
|
};
|
|
3248
3269
|
}
|
|
@@ -4574,5 +4595,5 @@ export {
|
|
|
4574
4595
|
urlsNfce
|
|
4575
4596
|
};
|
|
4576
4597
|
|
|
4577
|
-
//# debugId=
|
|
4598
|
+
//# debugId=74A78D3EACEECD4D64756E2164756E21
|
|
4578
4599
|
//# sourceMappingURL=index.js.map
|