@senior-gestao-empresarial/erpx-components 4.16.0 → 4.17.1-develop-5b4a01dc

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 (60) hide show
  1. package/bundles/senior-gestao-empresarial-erpx-components.umd.js +2223 -498
  2. package/bundles/senior-gestao-empresarial-erpx-components.umd.js.map +1 -1
  3. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js +2 -2
  4. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js.map +1 -1
  5. package/components/tributos/erp-tributos.component.d.ts +1 -0
  6. package/components/tributos/erp-tributos.types.d.ts +3 -0
  7. package/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.d.ts +1 -1
  8. package/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.d.ts +5 -1
  9. package/components/tributos/rules/status/registries/purchase-order-status-rules.registry.d.ts +5 -1
  10. package/components/tributos/rules/status/rules/tax-rate-status-rule.d.ts +5 -0
  11. package/components/tributos/rules/status/rules/taxable-base-status-rule.d.ts +5 -0
  12. package/components/tributos/rules/types/schemas/incoming-invoice.schema.d.ts +30 -0
  13. package/components/tributos/rules/types/schemas/purchase-order.schema.d.ts +3 -0
  14. package/esm2015/components/tributos/erp-tributos.component.js +53 -5
  15. package/esm2015/components/tributos/erp-tributos.types.js +4 -1
  16. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/incoming-invoice-calculation-rules.registry.js +421 -1
  17. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/purchase-order-calculation-rules.registry.js +43 -1
  18. package/esm2015/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +4 -1
  19. package/esm2015/components/tributos/rules/calculation/rules/tax-rate-calculation-rule.js +37 -1
  20. package/esm2015/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.js +39 -2
  21. package/esm2015/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.js +312 -4
  22. package/esm2015/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +48 -4
  23. package/esm2015/components/tributos/rules/status/rules/tax-rate-status-rule.js +61 -0
  24. package/esm2015/components/tributos/rules/status/rules/taxable-base-status-rule.js +65 -0
  25. package/esm2015/components/tributos/rules/types/schemas/incoming-invoice.schema.js +211 -1
  26. package/esm2015/components/tributos/rules/types/schemas/purchase-order.schema.js +22 -1
  27. package/esm2015/components/tributos/rules/validation/registries/incoming-invoice-validation-rules.registry.js +421 -1
  28. package/esm2015/components/tributos/rules/validation/registries/purchase-order-validation-rules.registry.js +43 -1
  29. package/esm2015/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +70 -14
  30. package/esm2015/components/tributos/rules/validation/rules/required/tax-rate-required-validation-rule.js +64 -2
  31. package/esm2015/components/tributos/rules/validation/rules/required/taxable-base-required-validation-rule.js +61 -1
  32. package/esm2015/components/tributos/tax-reform-utilities.js +4 -1
  33. package/esm2015/senior-gestao-empresarial-erpx-components.js +45 -43
  34. package/esm5/components/tributos/erp-tributos.component.js +202 -155
  35. package/esm5/components/tributos/erp-tributos.types.js +4 -1
  36. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/incoming-invoice-calculation-rules.registry.js +421 -1
  37. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/purchase-order-calculation-rules.registry.js +43 -1
  38. package/esm5/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +4 -1
  39. package/esm5/components/tributos/rules/calculation/rules/tax-rate-calculation-rule.js +45 -1
  40. package/esm5/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.js +45 -2
  41. package/esm5/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.js +312 -4
  42. package/esm5/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +49 -4
  43. package/esm5/components/tributos/rules/status/rules/tax-rate-status-rule.js +68 -0
  44. package/esm5/components/tributos/rules/status/rules/taxable-base-status-rule.js +72 -0
  45. package/esm5/components/tributos/rules/types/schemas/incoming-invoice.schema.js +211 -1
  46. package/esm5/components/tributos/rules/types/schemas/purchase-order.schema.js +22 -1
  47. package/esm5/components/tributos/rules/validation/registries/incoming-invoice-validation-rules.registry.js +421 -1
  48. package/esm5/components/tributos/rules/validation/registries/purchase-order-validation-rules.registry.js +43 -1
  49. package/esm5/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +74 -14
  50. package/esm5/components/tributos/rules/validation/rules/required/tax-rate-required-validation-rule.js +68 -2
  51. package/esm5/components/tributos/rules/validation/rules/required/taxable-base-required-validation-rule.js +65 -1
  52. package/esm5/components/tributos/tax-reform-utilities.js +4 -1
  53. package/esm5/senior-gestao-empresarial-erpx-components.js +45 -43
  54. package/fesm2015/senior-gestao-empresarial-erpx-components.js +1898 -215
  55. package/fesm2015/senior-gestao-empresarial-erpx-components.js.map +1 -1
  56. package/fesm5/senior-gestao-empresarial-erpx-components.js +2180 -457
  57. package/fesm5/senior-gestao-empresarial-erpx-components.js.map +1 -1
  58. package/package.json +1 -1
  59. package/senior-gestao-empresarial-erpx-components.d.ts +44 -42
  60. package/senior-gestao-empresarial-erpx-components.metadata.json +1 -1
@@ -568,6 +568,7 @@ var EnumGrupoTributo;
568
568
  var EnumTipoTributo;
569
569
  (function (EnumTipoTributo) {
570
570
  EnumTipoTributo["CBS"] = "CBS";
571
+ EnumTipoTributo["CBS_A_APROPRIAR"] = "CBS_A_APROPRIAR";
571
572
  EnumTipoTributo["CBS_DIFERIDO"] = "CBS_DIFERIDO";
572
573
  EnumTipoTributo["CBS_CREDITO_PRESUMIDO"] = "CBS_CREDITO_PRESUMIDO";
573
574
  EnumTipoTributo["CBS_TRIBUTACAO_REGULAR"] = "CBS_TRIBUTACAO_REGULAR";
@@ -575,10 +576,12 @@ var EnumTipoTributo;
575
576
  EnumTipoTributo["CBS_ESTORNO_CREDITO"] = "CBS_ESTORNO_CREDITO";
576
577
  EnumTipoTributo["CBS_AJUSTE"] = "CBS_AJUSTE";
577
578
  EnumTipoTributo["IBS_ESTADUAL"] = "IBS_ESTADUAL";
579
+ EnumTipoTributo["IBS_ESTADUAL_A_APROPRIAR"] = "IBS_ESTADUAL_A_APROPRIAR";
578
580
  EnumTipoTributo["IBS_ESTADUAL_DIFERIDO"] = "IBS_ESTADUAL_DIFERIDO";
579
581
  EnumTipoTributo["IBS_ESTADUAL_TRIBUTACAO_REGULAR"] = "IBS_ESTADUAL_TRIBUTACAO_REGULAR";
580
582
  EnumTipoTributo["IBS_ESTADUAL_GOVERNAMENTAL"] = "IBS_ESTADUAL_GOVERNAMENTAL";
581
583
  EnumTipoTributo["IBS_MUNICIPAL"] = "IBS_MUNICIPAL";
584
+ EnumTipoTributo["IBS_MUNICIPAL_A_APROPRIAR"] = "IBS_MUNICIPAL_A_APROPRIAR";
582
585
  EnumTipoTributo["IBS_MUNICIPAL_DIFERIDO"] = "IBS_MUNICIPAL_DIFERIDO";
583
586
  EnumTipoTributo["IBS_MUNICIPAL_TRIBUTACAO_REGULAR"] = "IBS_MUNICIPAL_TRIBUTACAO_REGULAR";
584
587
  EnumTipoTributo["IBS_MUNICIPAL_GOVERNAMENTAL"] = "IBS_MUNICIPAL_GOVERNAMENTAL";
@@ -796,15 +799,18 @@ const mapEnumTipoTributoToEnumTipImpCst = (taxType) => {
796
799
  const isTaxFromTaxReform = (tax) => {
797
800
  return (tax === EnumTipoTributo.IS ||
798
801
  tax === EnumTipoTributo.CBS ||
802
+ tax === EnumTipoTributo.CBS_A_APROPRIAR ||
799
803
  tax === EnumTipoTributo.CBS_CREDITO_PRESUMIDO ||
800
804
  tax === EnumTipoTributo.CBS_DIFERIDO ||
801
805
  tax === EnumTipoTributo.CBS_TRIBUTACAO_REGULAR ||
802
806
  tax === EnumTipoTributo.CBS_GOVERNAMENTAL ||
803
807
  tax === EnumTipoTributo.IBS_ESTADUAL ||
808
+ tax === EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR ||
804
809
  tax === EnumTipoTributo.IBS_ESTADUAL_DIFERIDO ||
805
810
  tax === EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR ||
806
811
  tax === EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL ||
807
812
  tax === EnumTipoTributo.IBS_MUNICIPAL ||
813
+ tax === EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR ||
808
814
  tax === EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO ||
809
815
  tax === EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR ||
810
816
  tax === EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL ||
@@ -1378,6 +1384,9 @@ let TaxAmountCalculationRule = class TaxAmountCalculationRule {
1378
1384
  }
1379
1385
  }
1380
1386
  break;
1387
+ case EnumTipoTributo.CBS_A_APROPRIAR:
1388
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
1389
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
1381
1390
  case EnumTipoTributo.CBS_DIFERIDO:
1382
1391
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
1383
1392
  case EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO:
@@ -1757,6 +1766,42 @@ TaxClassificationCalculationRule = __decorate([
1757
1766
  let TaxRateCalculationRule = class TaxRateCalculationRule {
1758
1767
  apply({ context: { document }, group, item: { name: taxType, formGroup } }) {
1759
1768
  switch (taxType) {
1769
+ case EnumTipoTributo.CBS_A_APROPRIAR:
1770
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
1771
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
1772
+ {
1773
+ switch (document) {
1774
+ case 'Incoming Invoice':
1775
+ case 'Purchase Order':
1776
+ {
1777
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
1778
+ combineLatest([
1779
+ baseTaxFormGroup
1780
+ .get('aliquotaEfetiva')
1781
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
1782
+ baseTaxFormGroup
1783
+ .get('aliquota')
1784
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('aliquota').value), distinctUntilChanged())
1785
+ ])
1786
+ .pipe(skip(1), map(([effectiveTaxRate, taxRate]) => [
1787
+ new BigNumber(effectiveTaxRate),
1788
+ new BigNumber(taxRate)
1789
+ ]), map(([effectiveTaxRate, taxRate]) => effectiveTaxRate.isNaN()
1790
+ ? taxRate
1791
+ : effectiveTaxRate), filter((taxRate) => taxRate !==
1792
+ formGroup.get('aliquota').value))
1793
+ .subscribe((taxRate) => {
1794
+ formGroup
1795
+ .get('aliquota')
1796
+ .setValue(taxRate);
1797
+ });
1798
+ }
1799
+ break;
1800
+ default:
1801
+ throw new Error(`Regra TaxRateCalculationRule não implementada para o imposto ${taxType}, documento ${document}.`);
1802
+ }
1803
+ }
1804
+ break;
1760
1805
  case EnumTipoTributo.CBS_GOVERNAMENTAL:
1761
1806
  case EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL:
1762
1807
  case EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL:
@@ -1813,7 +1858,7 @@ let TaxableBaseCalculationRule = class TaxableBaseCalculationRule {
1813
1858
  constructor(taxAmountCalculator) {
1814
1859
  this.taxAmountCalculator = taxAmountCalculator;
1815
1860
  }
1816
- apply({ context: { document }, groups, group, item: { name: taxType, formGroup, formField } }) {
1861
+ apply({ context: { document }, groups, group, item: { name: taxType, formGroup } }) {
1817
1862
  switch (taxType) {
1818
1863
  case EnumTipoTributo.CBS_DIFERIDO:
1819
1864
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
@@ -1916,6 +1961,43 @@ let TaxableBaseCalculationRule = class TaxableBaseCalculationRule {
1916
1961
  }
1917
1962
  }
1918
1963
  break;
1964
+ case EnumTipoTributo.CBS_A_APROPRIAR:
1965
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
1966
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
1967
+ {
1968
+ switch (document) {
1969
+ case 'Incoming Invoice':
1970
+ case 'Purchase Order':
1971
+ {
1972
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
1973
+ combineLatest([
1974
+ baseTaxFormGroup
1975
+ .get('baseCalculo')
1976
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged())
1977
+ ])
1978
+ .pipe(skip(1), map(([baseTaxTaxableBase]) => [
1979
+ new BigNumber(baseTaxTaxableBase)
1980
+ ]), map(([baseTaxTaxableBase]) => {
1981
+ if (baseTaxTaxableBase.isNaN())
1982
+ return null;
1983
+ return baseTaxTaxableBase
1984
+ .decimalPlaces(2)
1985
+ .toNumber();
1986
+ }), filter((taxableBase) => taxableBase !==
1987
+ formGroup.get('baseCalculo')
1988
+ .value))
1989
+ .subscribe((taxableBase) => {
1990
+ formGroup
1991
+ .get('baseCalculo')
1992
+ .setValue(taxableBase);
1993
+ });
1994
+ }
1995
+ break;
1996
+ default:
1997
+ throw new Error(`Regra TaxableBaseCalculationRule não implementada para o imposto ${taxType}, documento ${document}.`);
1998
+ }
1999
+ }
2000
+ break;
1919
2001
  case EnumTipoTributo.CBS_GOVERNAMENTAL:
1920
2002
  case EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL:
1921
2003
  case EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL:
@@ -2178,6 +2260,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2178
2260
  rule: this.manualTaxCalculationRule
2179
2261
  }
2180
2262
  ],
2263
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
2264
+ {
2265
+ field: EnumCampoTributo.BaseCalculo,
2266
+ rule: this.taxableBaseCalculationRule
2267
+ },
2268
+ {
2269
+ field: EnumCampoTributo.Aliquota,
2270
+ rule: this.taxRateCalculationRule
2271
+ },
2272
+ {
2273
+ field: EnumCampoTributo.Valor,
2274
+ rule: this.taxAmountCalculationRule
2275
+ }
2276
+ ],
2181
2277
  [EnumTipoTributo.CBS_DIFERIDO]: [
2182
2278
  {
2183
2279
  field: EnumCampoTributo.BaseCalculo,
@@ -2248,6 +2344,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2248
2344
  rule: this.manualTaxCalculationRule
2249
2345
  }
2250
2346
  ],
2347
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
2348
+ {
2349
+ field: EnumCampoTributo.BaseCalculo,
2350
+ rule: this.taxableBaseCalculationRule
2351
+ },
2352
+ {
2353
+ field: EnumCampoTributo.Aliquota,
2354
+ rule: this.taxRateCalculationRule
2355
+ },
2356
+ {
2357
+ field: EnumCampoTributo.Valor,
2358
+ rule: this.taxAmountCalculationRule
2359
+ }
2360
+ ],
2251
2361
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
2252
2362
  {
2253
2363
  field: EnumCampoTributo.BaseCalculo,
@@ -2312,6 +2422,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2312
2422
  rule: this.manualTaxCalculationRule
2313
2423
  }
2314
2424
  ],
2425
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
2426
+ {
2427
+ field: EnumCampoTributo.BaseCalculo,
2428
+ rule: this.taxableBaseCalculationRule
2429
+ },
2430
+ {
2431
+ field: EnumCampoTributo.Aliquota,
2432
+ rule: this.taxRateCalculationRule
2433
+ },
2434
+ {
2435
+ field: EnumCampoTributo.Valor,
2436
+ rule: this.taxAmountCalculationRule
2437
+ }
2438
+ ],
2315
2439
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
2316
2440
  {
2317
2441
  field: EnumCampoTributo.BaseCalculo,
@@ -2430,6 +2554,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2430
2554
  rule: this.manualTaxCalculationRule
2431
2555
  }
2432
2556
  ],
2557
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
2558
+ {
2559
+ field: EnumCampoTributo.BaseCalculo,
2560
+ rule: this.taxableBaseCalculationRule
2561
+ },
2562
+ {
2563
+ field: EnumCampoTributo.Aliquota,
2564
+ rule: this.taxRateCalculationRule
2565
+ },
2566
+ {
2567
+ field: EnumCampoTributo.Valor,
2568
+ rule: this.taxAmountCalculationRule
2569
+ }
2570
+ ],
2433
2571
  [EnumTipoTributo.CBS_DIFERIDO]: [
2434
2572
  {
2435
2573
  field: EnumCampoTributo.BaseCalculo,
@@ -2500,6 +2638,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2500
2638
  rule: this.manualTaxCalculationRule
2501
2639
  }
2502
2640
  ],
2641
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
2642
+ {
2643
+ field: EnumCampoTributo.BaseCalculo,
2644
+ rule: this.taxableBaseCalculationRule
2645
+ },
2646
+ {
2647
+ field: EnumCampoTributo.Aliquota,
2648
+ rule: this.taxRateCalculationRule
2649
+ },
2650
+ {
2651
+ field: EnumCampoTributo.Valor,
2652
+ rule: this.taxAmountCalculationRule
2653
+ }
2654
+ ],
2503
2655
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
2504
2656
  {
2505
2657
  field: EnumCampoTributo.BaseCalculo,
@@ -2564,6 +2716,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2564
2716
  rule: this.manualTaxCalculationRule
2565
2717
  }
2566
2718
  ],
2719
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
2720
+ {
2721
+ field: EnumCampoTributo.BaseCalculo,
2722
+ rule: this.taxableBaseCalculationRule
2723
+ },
2724
+ {
2725
+ field: EnumCampoTributo.Aliquota,
2726
+ rule: this.taxRateCalculationRule
2727
+ },
2728
+ {
2729
+ field: EnumCampoTributo.Valor,
2730
+ rule: this.taxAmountCalculationRule
2731
+ }
2732
+ ],
2567
2733
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
2568
2734
  {
2569
2735
  field: EnumCampoTributo.BaseCalculo,
@@ -2682,37 +2848,7 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2682
2848
  rule: this.manualTaxCalculationRule
2683
2849
  }
2684
2850
  ],
2685
- [EnumTipoTributo.CBS_DIFERIDO]: [
2686
- {
2687
- field: EnumCampoTributo.BaseCalculo,
2688
- rule: this.taxableBaseCalculationRule
2689
- },
2690
- {
2691
- field: EnumCampoTributo.Valor,
2692
- rule: this.taxAmountCalculationRule
2693
- }
2694
- ],
2695
- [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
2696
- {
2697
- field: EnumCampoTributo.Valor,
2698
- rule: this.taxAmountCalculationRule
2699
- }
2700
- ],
2701
- [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
2702
- {
2703
- field: EnumCampoTributo.BaseCalculo,
2704
- rule: this.taxableBaseCalculationRule
2705
- },
2706
- {
2707
- field: EnumCampoTributo.Valor,
2708
- rule: this.taxAmountCalculationRule
2709
- },
2710
- {
2711
- field: EnumCampoTributo.ClassificacaoTributaria,
2712
- rule: this.taxClassificationCalculationRule
2713
- }
2714
- ],
2715
- [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
2851
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
2716
2852
  {
2717
2853
  field: EnumCampoTributo.BaseCalculo,
2718
2854
  rule: this.taxableBaseCalculationRule
@@ -2726,43 +2862,23 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2726
2862
  rule: this.taxAmountCalculationRule
2727
2863
  }
2728
2864
  ],
2729
- [EnumTipoTributo.IBS_ESTADUAL]: [
2730
- {
2731
- field: EnumCampoTributo.AliquotaEfetiva,
2732
- rule: this.effectiveTaxRateCalculationRule
2733
- },
2865
+ [EnumTipoTributo.CBS_DIFERIDO]: [
2734
2866
  {
2735
- field: EnumCampoTributo.ValorBruto,
2736
- rule: this.grossAmountCalculationRule
2867
+ field: EnumCampoTributo.BaseCalculo,
2868
+ rule: this.taxableBaseCalculationRule
2737
2869
  },
2738
2870
  {
2739
2871
  field: EnumCampoTributo.Valor,
2740
2872
  rule: this.taxAmountCalculationRule
2741
- },
2742
- {
2743
- field: EnumCampoTributo.ClassificacaoTributaria,
2744
- rule: this.taxClassificationCalculationRule
2745
- },
2746
- {
2747
- field: EnumCampoTributo.TipoCalculoImposto,
2748
- rule: this.taxCalculationTypeCalculationRule
2749
- },
2750
- {
2751
- field: EnumCampoTributo.ImpostoManual,
2752
- rule: this.manualTaxCalculationRule
2753
2873
  }
2754
2874
  ],
2755
- [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
2756
- {
2757
- field: EnumCampoTributo.BaseCalculo,
2758
- rule: this.taxableBaseCalculationRule
2759
- },
2875
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
2760
2876
  {
2761
2877
  field: EnumCampoTributo.Valor,
2762
2878
  rule: this.taxAmountCalculationRule
2763
2879
  }
2764
2880
  ],
2765
- [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
2881
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
2766
2882
  {
2767
2883
  field: EnumCampoTributo.BaseCalculo,
2768
2884
  rule: this.taxableBaseCalculationRule
@@ -2776,7 +2892,7 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2776
2892
  rule: this.taxClassificationCalculationRule
2777
2893
  }
2778
2894
  ],
2779
- [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
2895
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
2780
2896
  {
2781
2897
  field: EnumCampoTributo.BaseCalculo,
2782
2898
  rule: this.taxableBaseCalculationRule
@@ -2790,7 +2906,7 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2790
2906
  rule: this.taxAmountCalculationRule
2791
2907
  }
2792
2908
  ],
2793
- [EnumTipoTributo.IBS_MUNICIPAL]: [
2909
+ [EnumTipoTributo.IBS_ESTADUAL]: [
2794
2910
  {
2795
2911
  field: EnumCampoTributo.AliquotaEfetiva,
2796
2912
  rule: this.effectiveTaxRateCalculationRule
@@ -2816,17 +2932,7 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2816
2932
  rule: this.manualTaxCalculationRule
2817
2933
  }
2818
2934
  ],
2819
- [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
2820
- {
2821
- field: EnumCampoTributo.BaseCalculo,
2822
- rule: this.taxableBaseCalculationRule
2823
- },
2824
- {
2825
- field: EnumCampoTributo.Valor,
2826
- rule: this.taxAmountCalculationRule
2827
- }
2828
- ],
2829
- [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
2935
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
2830
2936
  {
2831
2937
  field: EnumCampoTributo.BaseCalculo,
2832
2938
  rule: this.taxableBaseCalculationRule
@@ -2840,7 +2946,7 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2840
2946
  rule: this.taxAmountCalculationRule
2841
2947
  }
2842
2948
  ],
2843
- [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
2949
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
2844
2950
  {
2845
2951
  field: EnumCampoTributo.BaseCalculo,
2846
2952
  rule: this.taxableBaseCalculationRule
@@ -2848,27 +2954,13 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2848
2954
  {
2849
2955
  field: EnumCampoTributo.Valor,
2850
2956
  rule: this.taxAmountCalculationRule
2851
- },
2852
- {
2853
- field: EnumCampoTributo.ClassificacaoTributaria,
2854
- rule: this.taxClassificationCalculationRule
2855
2957
  }
2856
2958
  ],
2857
- [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
2959
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
2858
2960
  {
2859
2961
  field: EnumCampoTributo.BaseCalculo,
2860
2962
  rule: this.taxableBaseCalculationRule
2861
2963
  },
2862
- {
2863
- field: EnumCampoTributo.Valor,
2864
- rule: this.taxAmountCalculationRule
2865
- },
2866
- {
2867
- field: EnumCampoTributo.AplicarValorLiquidoDocumento,
2868
- rule: this.applyNetValueToDocumentCalculationRule
2869
- }
2870
- ],
2871
- [EnumTipoTributo.IS]: [
2872
2964
  {
2873
2965
  field: EnumCampoTributo.Valor,
2874
2966
  rule: this.taxAmountCalculationRule
@@ -2878,37 +2970,21 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2878
2970
  rule: this.taxClassificationCalculationRule
2879
2971
  }
2880
2972
  ],
2881
- [EnumTipoTributo.CBS_ESTORNO_CREDITO]: [
2973
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
2882
2974
  {
2883
- field: EnumCampoTributo.SituacaoTributaria,
2884
- rule: this.taxSituationCalculationRule
2975
+ field: EnumCampoTributo.BaseCalculo,
2976
+ rule: this.taxableBaseCalculationRule
2885
2977
  },
2886
2978
  {
2887
- field: EnumCampoTributo.ClassificacaoTributaria,
2888
- rule: this.taxClassificationCalculationRule
2979
+ field: EnumCampoTributo.Aliquota,
2980
+ rule: this.taxRateCalculationRule
2889
2981
  },
2890
2982
  {
2891
2983
  field: EnumCampoTributo.Valor,
2892
2984
  rule: this.taxAmountCalculationRule
2893
2985
  }
2894
2986
  ],
2895
- [EnumTipoTributo.IBS_ESTORNO_CREDITO]: [
2896
- {
2897
- field: EnumCampoTributo.SituacaoTributaria,
2898
- rule: this.taxSituationCalculationRule
2899
- },
2900
- {
2901
- field: EnumCampoTributo.ClassificacaoTributaria,
2902
- rule: this.taxClassificationCalculationRule
2903
- },
2904
- {
2905
- field: EnumCampoTributo.Valor,
2906
- rule: this.taxAmountCalculationRule
2907
- }
2908
- ]
2909
- },
2910
- 'Third Party Return': {
2911
- [EnumTipoTributo.CBS]: [
2987
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
2912
2988
  {
2913
2989
  field: EnumCampoTributo.AliquotaEfetiva,
2914
2990
  rule: this.effectiveTaxRateCalculationRule
@@ -2934,6 +3010,152 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
2934
3010
  rule: this.manualTaxCalculationRule
2935
3011
  }
2936
3012
  ],
3013
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
3014
+ {
3015
+ field: EnumCampoTributo.BaseCalculo,
3016
+ rule: this.taxableBaseCalculationRule
3017
+ },
3018
+ {
3019
+ field: EnumCampoTributo.Aliquota,
3020
+ rule: this.taxRateCalculationRule
3021
+ },
3022
+ {
3023
+ field: EnumCampoTributo.Valor,
3024
+ rule: this.taxAmountCalculationRule
3025
+ }
3026
+ ],
3027
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
3028
+ {
3029
+ field: EnumCampoTributo.BaseCalculo,
3030
+ rule: this.taxableBaseCalculationRule
3031
+ },
3032
+ {
3033
+ field: EnumCampoTributo.Valor,
3034
+ rule: this.taxAmountCalculationRule
3035
+ }
3036
+ ],
3037
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
3038
+ {
3039
+ field: EnumCampoTributo.BaseCalculo,
3040
+ rule: this.taxableBaseCalculationRule
3041
+ },
3042
+ {
3043
+ field: EnumCampoTributo.Aliquota,
3044
+ rule: this.taxRateCalculationRule
3045
+ },
3046
+ {
3047
+ field: EnumCampoTributo.Valor,
3048
+ rule: this.taxAmountCalculationRule
3049
+ }
3050
+ ],
3051
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
3052
+ {
3053
+ field: EnumCampoTributo.BaseCalculo,
3054
+ rule: this.taxableBaseCalculationRule
3055
+ },
3056
+ {
3057
+ field: EnumCampoTributo.Valor,
3058
+ rule: this.taxAmountCalculationRule
3059
+ },
3060
+ {
3061
+ field: EnumCampoTributo.ClassificacaoTributaria,
3062
+ rule: this.taxClassificationCalculationRule
3063
+ }
3064
+ ],
3065
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
3066
+ {
3067
+ field: EnumCampoTributo.BaseCalculo,
3068
+ rule: this.taxableBaseCalculationRule
3069
+ },
3070
+ {
3071
+ field: EnumCampoTributo.Valor,
3072
+ rule: this.taxAmountCalculationRule
3073
+ },
3074
+ {
3075
+ field: EnumCampoTributo.AplicarValorLiquidoDocumento,
3076
+ rule: this.applyNetValueToDocumentCalculationRule
3077
+ }
3078
+ ],
3079
+ [EnumTipoTributo.IS]: [
3080
+ {
3081
+ field: EnumCampoTributo.Valor,
3082
+ rule: this.taxAmountCalculationRule
3083
+ },
3084
+ {
3085
+ field: EnumCampoTributo.ClassificacaoTributaria,
3086
+ rule: this.taxClassificationCalculationRule
3087
+ }
3088
+ ],
3089
+ [EnumTipoTributo.CBS_ESTORNO_CREDITO]: [
3090
+ {
3091
+ field: EnumCampoTributo.SituacaoTributaria,
3092
+ rule: this.taxSituationCalculationRule
3093
+ },
3094
+ {
3095
+ field: EnumCampoTributo.ClassificacaoTributaria,
3096
+ rule: this.taxClassificationCalculationRule
3097
+ },
3098
+ {
3099
+ field: EnumCampoTributo.Valor,
3100
+ rule: this.taxAmountCalculationRule
3101
+ }
3102
+ ],
3103
+ [EnumTipoTributo.IBS_ESTORNO_CREDITO]: [
3104
+ {
3105
+ field: EnumCampoTributo.SituacaoTributaria,
3106
+ rule: this.taxSituationCalculationRule
3107
+ },
3108
+ {
3109
+ field: EnumCampoTributo.ClassificacaoTributaria,
3110
+ rule: this.taxClassificationCalculationRule
3111
+ },
3112
+ {
3113
+ field: EnumCampoTributo.Valor,
3114
+ rule: this.taxAmountCalculationRule
3115
+ }
3116
+ ]
3117
+ },
3118
+ 'Third Party Return': {
3119
+ [EnumTipoTributo.CBS]: [
3120
+ {
3121
+ field: EnumCampoTributo.AliquotaEfetiva,
3122
+ rule: this.effectiveTaxRateCalculationRule
3123
+ },
3124
+ {
3125
+ field: EnumCampoTributo.ValorBruto,
3126
+ rule: this.grossAmountCalculationRule
3127
+ },
3128
+ {
3129
+ field: EnumCampoTributo.Valor,
3130
+ rule: this.taxAmountCalculationRule
3131
+ },
3132
+ {
3133
+ field: EnumCampoTributo.ClassificacaoTributaria,
3134
+ rule: this.taxClassificationCalculationRule
3135
+ },
3136
+ {
3137
+ field: EnumCampoTributo.TipoCalculoImposto,
3138
+ rule: this.taxCalculationTypeCalculationRule
3139
+ },
3140
+ {
3141
+ field: EnumCampoTributo.ImpostoManual,
3142
+ rule: this.manualTaxCalculationRule
3143
+ }
3144
+ ],
3145
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
3146
+ {
3147
+ field: EnumCampoTributo.BaseCalculo,
3148
+ rule: this.taxableBaseCalculationRule
3149
+ },
3150
+ {
3151
+ field: EnumCampoTributo.Aliquota,
3152
+ rule: this.taxRateCalculationRule
3153
+ },
3154
+ {
3155
+ field: EnumCampoTributo.Valor,
3156
+ rule: this.taxAmountCalculationRule
3157
+ }
3158
+ ],
2937
3159
  [EnumTipoTributo.CBS_DIFERIDO]: [
2938
3160
  {
2939
3161
  field: EnumCampoTributo.BaseCalculo,
@@ -3004,6 +3226,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3004
3226
  rule: this.manualTaxCalculationRule
3005
3227
  }
3006
3228
  ],
3229
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
3230
+ {
3231
+ field: EnumCampoTributo.BaseCalculo,
3232
+ rule: this.taxableBaseCalculationRule
3233
+ },
3234
+ {
3235
+ field: EnumCampoTributo.Aliquota,
3236
+ rule: this.taxRateCalculationRule
3237
+ },
3238
+ {
3239
+ field: EnumCampoTributo.Valor,
3240
+ rule: this.taxAmountCalculationRule
3241
+ }
3242
+ ],
3007
3243
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
3008
3244
  {
3009
3245
  field: EnumCampoTributo.BaseCalculo,
@@ -3068,6 +3304,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3068
3304
  rule: this.manualTaxCalculationRule
3069
3305
  }
3070
3306
  ],
3307
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
3308
+ {
3309
+ field: EnumCampoTributo.BaseCalculo,
3310
+ rule: this.taxableBaseCalculationRule
3311
+ },
3312
+ {
3313
+ field: EnumCampoTributo.Aliquota,
3314
+ rule: this.taxRateCalculationRule
3315
+ },
3316
+ {
3317
+ field: EnumCampoTributo.Valor,
3318
+ rule: this.taxAmountCalculationRule
3319
+ }
3320
+ ],
3071
3321
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
3072
3322
  {
3073
3323
  field: EnumCampoTributo.BaseCalculo,
@@ -3186,6 +3436,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3186
3436
  rule: this.manualTaxCalculationRule
3187
3437
  }
3188
3438
  ],
3439
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
3440
+ {
3441
+ field: EnumCampoTributo.BaseCalculo,
3442
+ rule: this.taxableBaseCalculationRule
3443
+ },
3444
+ {
3445
+ field: EnumCampoTributo.Aliquota,
3446
+ rule: this.taxRateCalculationRule
3447
+ },
3448
+ {
3449
+ field: EnumCampoTributo.Valor,
3450
+ rule: this.taxAmountCalculationRule
3451
+ }
3452
+ ],
3189
3453
  [EnumTipoTributo.CBS_DIFERIDO]: [
3190
3454
  {
3191
3455
  field: EnumCampoTributo.BaseCalculo,
@@ -3256,6 +3520,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3256
3520
  rule: this.manualTaxCalculationRule
3257
3521
  }
3258
3522
  ],
3523
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
3524
+ {
3525
+ field: EnumCampoTributo.BaseCalculo,
3526
+ rule: this.taxableBaseCalculationRule
3527
+ },
3528
+ {
3529
+ field: EnumCampoTributo.Aliquota,
3530
+ rule: this.taxRateCalculationRule
3531
+ },
3532
+ {
3533
+ field: EnumCampoTributo.Valor,
3534
+ rule: this.taxAmountCalculationRule
3535
+ }
3536
+ ],
3259
3537
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
3260
3538
  {
3261
3539
  field: EnumCampoTributo.BaseCalculo,
@@ -3320,6 +3598,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3320
3598
  rule: this.manualTaxCalculationRule
3321
3599
  }
3322
3600
  ],
3601
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
3602
+ {
3603
+ field: EnumCampoTributo.BaseCalculo,
3604
+ rule: this.taxableBaseCalculationRule
3605
+ },
3606
+ {
3607
+ field: EnumCampoTributo.Aliquota,
3608
+ rule: this.taxRateCalculationRule
3609
+ },
3610
+ {
3611
+ field: EnumCampoTributo.Valor,
3612
+ rule: this.taxAmountCalculationRule
3613
+ }
3614
+ ],
3323
3615
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
3324
3616
  {
3325
3617
  field: EnumCampoTributo.BaseCalculo,
@@ -3438,6 +3730,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3438
3730
  rule: this.manualTaxCalculationRule
3439
3731
  }
3440
3732
  ],
3733
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
3734
+ {
3735
+ field: EnumCampoTributo.BaseCalculo,
3736
+ rule: this.taxableBaseCalculationRule
3737
+ },
3738
+ {
3739
+ field: EnumCampoTributo.Aliquota,
3740
+ rule: this.taxRateCalculationRule
3741
+ },
3742
+ {
3743
+ field: EnumCampoTributo.Valor,
3744
+ rule: this.taxAmountCalculationRule
3745
+ }
3746
+ ],
3441
3747
  [EnumTipoTributo.CBS_DIFERIDO]: [
3442
3748
  {
3443
3749
  field: EnumCampoTributo.BaseCalculo,
@@ -3508,6 +3814,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3508
3814
  rule: this.manualTaxCalculationRule
3509
3815
  }
3510
3816
  ],
3817
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
3818
+ {
3819
+ field: EnumCampoTributo.BaseCalculo,
3820
+ rule: this.taxableBaseCalculationRule
3821
+ },
3822
+ {
3823
+ field: EnumCampoTributo.Aliquota,
3824
+ rule: this.taxRateCalculationRule
3825
+ },
3826
+ {
3827
+ field: EnumCampoTributo.Valor,
3828
+ rule: this.taxAmountCalculationRule
3829
+ }
3830
+ ],
3511
3831
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
3512
3832
  {
3513
3833
  field: EnumCampoTributo.BaseCalculo,
@@ -3572,6 +3892,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3572
3892
  rule: this.manualTaxCalculationRule
3573
3893
  }
3574
3894
  ],
3895
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
3896
+ {
3897
+ field: EnumCampoTributo.BaseCalculo,
3898
+ rule: this.taxableBaseCalculationRule
3899
+ },
3900
+ {
3901
+ field: EnumCampoTributo.Aliquota,
3902
+ rule: this.taxRateCalculationRule
3903
+ },
3904
+ {
3905
+ field: EnumCampoTributo.Valor,
3906
+ rule: this.taxAmountCalculationRule
3907
+ }
3908
+ ],
3575
3909
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
3576
3910
  {
3577
3911
  field: EnumCampoTributo.BaseCalculo,
@@ -3690,6 +4024,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3690
4024
  rule: this.manualTaxCalculationRule
3691
4025
  }
3692
4026
  ],
4027
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
4028
+ {
4029
+ field: EnumCampoTributo.BaseCalculo,
4030
+ rule: this.taxableBaseCalculationRule
4031
+ },
4032
+ {
4033
+ field: EnumCampoTributo.Aliquota,
4034
+ rule: this.taxRateCalculationRule
4035
+ },
4036
+ {
4037
+ field: EnumCampoTributo.Valor,
4038
+ rule: this.taxAmountCalculationRule
4039
+ }
4040
+ ],
3693
4041
  [EnumTipoTributo.CBS_DIFERIDO]: [
3694
4042
  {
3695
4043
  field: EnumCampoTributo.BaseCalculo,
@@ -3760,6 +4108,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3760
4108
  rule: this.manualTaxCalculationRule
3761
4109
  }
3762
4110
  ],
4111
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
4112
+ {
4113
+ field: EnumCampoTributo.BaseCalculo,
4114
+ rule: this.taxableBaseCalculationRule
4115
+ },
4116
+ {
4117
+ field: EnumCampoTributo.Aliquota,
4118
+ rule: this.taxRateCalculationRule
4119
+ },
4120
+ {
4121
+ field: EnumCampoTributo.Valor,
4122
+ rule: this.taxAmountCalculationRule
4123
+ }
4124
+ ],
3763
4125
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
3764
4126
  {
3765
4127
  field: EnumCampoTributo.BaseCalculo,
@@ -3824,6 +4186,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3824
4186
  rule: this.manualTaxCalculationRule
3825
4187
  }
3826
4188
  ],
4189
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
4190
+ {
4191
+ field: EnumCampoTributo.BaseCalculo,
4192
+ rule: this.taxableBaseCalculationRule
4193
+ },
4194
+ {
4195
+ field: EnumCampoTributo.Aliquota,
4196
+ rule: this.taxRateCalculationRule
4197
+ },
4198
+ {
4199
+ field: EnumCampoTributo.Valor,
4200
+ rule: this.taxAmountCalculationRule
4201
+ }
4202
+ ],
3827
4203
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
3828
4204
  {
3829
4205
  field: EnumCampoTributo.BaseCalculo,
@@ -3942,6 +4318,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
3942
4318
  rule: this.manualTaxCalculationRule
3943
4319
  }
3944
4320
  ],
4321
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
4322
+ {
4323
+ field: EnumCampoTributo.BaseCalculo,
4324
+ rule: this.taxableBaseCalculationRule
4325
+ },
4326
+ {
4327
+ field: EnumCampoTributo.Aliquota,
4328
+ rule: this.taxRateCalculationRule
4329
+ },
4330
+ {
4331
+ field: EnumCampoTributo.Valor,
4332
+ rule: this.taxAmountCalculationRule
4333
+ }
4334
+ ],
3945
4335
  [EnumTipoTributo.CBS_DIFERIDO]: [
3946
4336
  {
3947
4337
  field: EnumCampoTributo.BaseCalculo,
@@ -4012,6 +4402,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4012
4402
  rule: this.manualTaxCalculationRule
4013
4403
  }
4014
4404
  ],
4405
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
4406
+ {
4407
+ field: EnumCampoTributo.BaseCalculo,
4408
+ rule: this.taxableBaseCalculationRule
4409
+ },
4410
+ {
4411
+ field: EnumCampoTributo.Aliquota,
4412
+ rule: this.taxRateCalculationRule
4413
+ },
4414
+ {
4415
+ field: EnumCampoTributo.Valor,
4416
+ rule: this.taxAmountCalculationRule
4417
+ }
4418
+ ],
4015
4419
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
4016
4420
  {
4017
4421
  field: EnumCampoTributo.BaseCalculo,
@@ -4076,6 +4480,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4076
4480
  rule: this.manualTaxCalculationRule
4077
4481
  }
4078
4482
  ],
4483
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
4484
+ {
4485
+ field: EnumCampoTributo.BaseCalculo,
4486
+ rule: this.taxableBaseCalculationRule
4487
+ },
4488
+ {
4489
+ field: EnumCampoTributo.Aliquota,
4490
+ rule: this.taxRateCalculationRule
4491
+ },
4492
+ {
4493
+ field: EnumCampoTributo.Valor,
4494
+ rule: this.taxAmountCalculationRule
4495
+ }
4496
+ ],
4079
4497
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
4080
4498
  {
4081
4499
  field: EnumCampoTributo.BaseCalculo,
@@ -4194,6 +4612,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4194
4612
  rule: this.manualTaxCalculationRule
4195
4613
  }
4196
4614
  ],
4615
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
4616
+ {
4617
+ field: EnumCampoTributo.BaseCalculo,
4618
+ rule: this.taxableBaseCalculationRule
4619
+ },
4620
+ {
4621
+ field: EnumCampoTributo.Aliquota,
4622
+ rule: this.taxRateCalculationRule
4623
+ },
4624
+ {
4625
+ field: EnumCampoTributo.Valor,
4626
+ rule: this.taxAmountCalculationRule
4627
+ }
4628
+ ],
4197
4629
  [EnumTipoTributo.CBS_DIFERIDO]: [
4198
4630
  {
4199
4631
  field: EnumCampoTributo.BaseCalculo,
@@ -4264,6 +4696,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4264
4696
  rule: this.manualTaxCalculationRule
4265
4697
  }
4266
4698
  ],
4699
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
4700
+ {
4701
+ field: EnumCampoTributo.BaseCalculo,
4702
+ rule: this.taxableBaseCalculationRule
4703
+ },
4704
+ {
4705
+ field: EnumCampoTributo.Aliquota,
4706
+ rule: this.taxRateCalculationRule
4707
+ },
4708
+ {
4709
+ field: EnumCampoTributo.Valor,
4710
+ rule: this.taxAmountCalculationRule
4711
+ }
4712
+ ],
4267
4713
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
4268
4714
  {
4269
4715
  field: EnumCampoTributo.BaseCalculo,
@@ -4328,6 +4774,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4328
4774
  rule: this.manualTaxCalculationRule
4329
4775
  }
4330
4776
  ],
4777
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
4778
+ {
4779
+ field: EnumCampoTributo.BaseCalculo,
4780
+ rule: this.taxableBaseCalculationRule
4781
+ },
4782
+ {
4783
+ field: EnumCampoTributo.Aliquota,
4784
+ rule: this.taxRateCalculationRule
4785
+ },
4786
+ {
4787
+ field: EnumCampoTributo.Valor,
4788
+ rule: this.taxAmountCalculationRule
4789
+ }
4790
+ ],
4331
4791
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
4332
4792
  {
4333
4793
  field: EnumCampoTributo.BaseCalculo,
@@ -4446,6 +4906,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4446
4906
  rule: this.manualTaxCalculationRule
4447
4907
  }
4448
4908
  ],
4909
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
4910
+ {
4911
+ field: EnumCampoTributo.BaseCalculo,
4912
+ rule: this.taxableBaseCalculationRule
4913
+ },
4914
+ {
4915
+ field: EnumCampoTributo.Aliquota,
4916
+ rule: this.taxRateCalculationRule
4917
+ },
4918
+ {
4919
+ field: EnumCampoTributo.Valor,
4920
+ rule: this.taxAmountCalculationRule
4921
+ }
4922
+ ],
4449
4923
  [EnumTipoTributo.CBS_DIFERIDO]: [
4450
4924
  {
4451
4925
  field: EnumCampoTributo.BaseCalculo,
@@ -4516,6 +4990,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4516
4990
  rule: this.manualTaxCalculationRule
4517
4991
  }
4518
4992
  ],
4993
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
4994
+ {
4995
+ field: EnumCampoTributo.BaseCalculo,
4996
+ rule: this.taxableBaseCalculationRule
4997
+ },
4998
+ {
4999
+ field: EnumCampoTributo.Aliquota,
5000
+ rule: this.taxRateCalculationRule
5001
+ },
5002
+ {
5003
+ field: EnumCampoTributo.Valor,
5004
+ rule: this.taxAmountCalculationRule
5005
+ }
5006
+ ],
4519
5007
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
4520
5008
  {
4521
5009
  field: EnumCampoTributo.BaseCalculo,
@@ -4580,6 +5068,20 @@ let IncomingInvoiceCalculationRulesRegistry = class IncomingInvoiceCalculationRu
4580
5068
  rule: this.manualTaxCalculationRule
4581
5069
  }
4582
5070
  ],
5071
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
5072
+ {
5073
+ field: EnumCampoTributo.BaseCalculo,
5074
+ rule: this.taxableBaseCalculationRule
5075
+ },
5076
+ {
5077
+ field: EnumCampoTributo.Aliquota,
5078
+ rule: this.taxRateCalculationRule
5079
+ },
5080
+ {
5081
+ field: EnumCampoTributo.Valor,
5082
+ rule: this.taxAmountCalculationRule
5083
+ }
5084
+ ],
4583
5085
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
4584
5086
  {
4585
5087
  field: EnumCampoTributo.BaseCalculo,
@@ -9094,6 +9596,20 @@ let PurchaseOrderCalculationRulesRegistry = class PurchaseOrderCalculationRulesR
9094
9596
  rule: this.manualTaxCalculationRule
9095
9597
  }
9096
9598
  ],
9599
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
9600
+ {
9601
+ field: EnumCampoTributo.BaseCalculo,
9602
+ rule: this.taxableBaseCalculationRule
9603
+ },
9604
+ {
9605
+ field: EnumCampoTributo.Aliquota,
9606
+ rule: this.taxRateCalculationRule
9607
+ },
9608
+ {
9609
+ field: EnumCampoTributo.Valor,
9610
+ rule: this.taxAmountCalculationRule
9611
+ }
9612
+ ],
9097
9613
  [EnumTipoTributo.CBS_DIFERIDO]: [
9098
9614
  {
9099
9615
  field: EnumCampoTributo.BaseCalculo,
@@ -9156,6 +9672,20 @@ let PurchaseOrderCalculationRulesRegistry = class PurchaseOrderCalculationRulesR
9156
9672
  rule: this.manualTaxCalculationRule
9157
9673
  }
9158
9674
  ],
9675
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
9676
+ {
9677
+ field: EnumCampoTributo.BaseCalculo,
9678
+ rule: this.taxableBaseCalculationRule
9679
+ },
9680
+ {
9681
+ field: EnumCampoTributo.Aliquota,
9682
+ rule: this.taxRateCalculationRule
9683
+ },
9684
+ {
9685
+ field: EnumCampoTributo.Valor,
9686
+ rule: this.taxAmountCalculationRule
9687
+ }
9688
+ ],
9159
9689
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
9160
9690
  {
9161
9691
  field: EnumCampoTributo.BaseCalculo,
@@ -9212,6 +9742,20 @@ let PurchaseOrderCalculationRulesRegistry = class PurchaseOrderCalculationRulesR
9212
9742
  rule: this.manualTaxCalculationRule
9213
9743
  }
9214
9744
  ],
9745
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
9746
+ {
9747
+ field: EnumCampoTributo.BaseCalculo,
9748
+ rule: this.taxableBaseCalculationRule
9749
+ },
9750
+ {
9751
+ field: EnumCampoTributo.Aliquota,
9752
+ rule: this.taxRateCalculationRule
9753
+ },
9754
+ {
9755
+ field: EnumCampoTributo.Valor,
9756
+ rule: this.taxAmountCalculationRule
9757
+ }
9758
+ ],
9215
9759
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
9216
9760
  {
9217
9761
  field: EnumCampoTributo.BaseCalculo,
@@ -10813,10 +11357,120 @@ TaxClassificationStatusRule = __decorate([
10813
11357
  Injectable({ providedIn: 'root' })
10814
11358
  ], TaxClassificationStatusRule);
10815
11359
 
11360
+ let TaxRateStatusRule = class TaxRateStatusRule {
11361
+ apply({ context: { document }, group, item: { name: taxType, formGroup } }) {
11362
+ switch (taxType) {
11363
+ case EnumTipoTributo.CBS_A_APROPRIAR:
11364
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
11365
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
11366
+ {
11367
+ switch (document) {
11368
+ case 'Incoming Invoice':
11369
+ case 'Purchase Order':
11370
+ {
11371
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
11372
+ combineLatest([
11373
+ baseTaxFormGroup
11374
+ .get('baseCalculo')
11375
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged()),
11376
+ baseTaxFormGroup
11377
+ .get('valor')
11378
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('valor')
11379
+ .value), distinctUntilChanged())
11380
+ ])
11381
+ .pipe(map(([taxableBase, taxAmount]) => !new BigNumber(taxableBase).isNaN() ||
11382
+ !new BigNumber(taxAmount).isNaN()), distinctUntilChanged())
11383
+ .subscribe((isBaseTaxInformed) => {
11384
+ if (isBaseTaxInformed) {
11385
+ formGroup.get('aliquota').enable({
11386
+ emitEvent: false
11387
+ });
11388
+ }
11389
+ else {
11390
+ formGroup.get('aliquota').disable({
11391
+ emitEvent: false
11392
+ });
11393
+ }
11394
+ });
11395
+ }
11396
+ break;
11397
+ default:
11398
+ throw new Error(`Regra TaxRateStatusRule não implementada para o imposto ${taxType}, documento ${document}.`);
11399
+ }
11400
+ }
11401
+ break;
11402
+ default:
11403
+ throw new Error(`Regra TaxRateStatusRule não implementada para o imposto ${taxType}, documento ${document}.`);
11404
+ }
11405
+ }
11406
+ };
11407
+ TaxRateStatusRule.ɵprov = ɵɵdefineInjectable({ factory: function TaxRateStatusRule_Factory() { return new TaxRateStatusRule(); }, token: TaxRateStatusRule, providedIn: "root" });
11408
+ TaxRateStatusRule = __decorate([
11409
+ Injectable({ providedIn: 'root' })
11410
+ ], TaxRateStatusRule);
11411
+
11412
+ let TaxableBaseStatusRule = class TaxableBaseStatusRule {
11413
+ apply({ context: { document }, group, item: { name: taxType, formGroup } }) {
11414
+ switch (taxType) {
11415
+ case EnumTipoTributo.CBS_A_APROPRIAR:
11416
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
11417
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
11418
+ {
11419
+ switch (document) {
11420
+ case 'Incoming Invoice':
11421
+ case 'Purchase Order':
11422
+ {
11423
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
11424
+ combineLatest([
11425
+ baseTaxFormGroup
11426
+ .get('baseCalculo')
11427
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged()),
11428
+ baseTaxFormGroup
11429
+ .get('valor')
11430
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('valor')
11431
+ .value), distinctUntilChanged())
11432
+ ])
11433
+ .pipe(map(([taxableBase, taxAmount]) => !new BigNumber(taxableBase).isNaN() ||
11434
+ !new BigNumber(taxAmount).isNaN()), distinctUntilChanged())
11435
+ .subscribe((isBaseTaxInformed) => {
11436
+ if (isBaseTaxInformed) {
11437
+ formGroup
11438
+ .get('baseCalculo')
11439
+ .enable({
11440
+ emitEvent: false
11441
+ });
11442
+ }
11443
+ else {
11444
+ formGroup
11445
+ .get('baseCalculo')
11446
+ .disable({
11447
+ emitEvent: false
11448
+ });
11449
+ }
11450
+ });
11451
+ }
11452
+ break;
11453
+ default:
11454
+ throw new Error(`Regra TaxableBaseStatusRule não implementada para o imposto ${taxType}, documento ${document}.`);
11455
+ }
11456
+ }
11457
+ break;
11458
+ default:
11459
+ throw new Error(`Regra TaxableBaseStatusRule não implementada para o imposto ${taxType}, documento ${document}.`);
11460
+ }
11461
+ }
11462
+ };
11463
+ TaxableBaseStatusRule.ɵprov = ɵɵdefineInjectable({ factory: function TaxableBaseStatusRule_Factory() { return new TaxableBaseStatusRule(); }, token: TaxableBaseStatusRule, providedIn: "root" });
11464
+ TaxableBaseStatusRule = __decorate([
11465
+ Injectable({ providedIn: 'root' })
11466
+ ], TaxableBaseStatusRule);
11467
+
10816
11468
  let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistry {
10817
- constructor(taxClassificationStatusRule, applyNetValueToDocumentStatusRule) {
11469
+ constructor(taxClassificationStatusRule, applyNetValueToDocumentStatusRule, taxableBaseStatusRule, taxRateStatusRule) {
10818
11470
  this.taxClassificationStatusRule = taxClassificationStatusRule;
10819
11471
  this.applyNetValueToDocumentStatusRule = applyNetValueToDocumentStatusRule;
11472
+ this.taxableBaseStatusRule = taxableBaseStatusRule;
11473
+ this.taxRateStatusRule = taxRateStatusRule;
10820
11474
  this.strategies = {
10821
11475
  Adjustment: {
10822
11476
  [EnumTipoTributo.CBS]: [
@@ -10835,6 +11489,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10835
11489
  rule: this.applyNetValueToDocumentStatusRule
10836
11490
  }
10837
11491
  ],
11492
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11493
+ {
11494
+ field: EnumCampoTributo.BaseCalculo,
11495
+ rule: this.taxableBaseStatusRule
11496
+ },
11497
+ {
11498
+ field: EnumCampoTributo.Aliquota,
11499
+ rule: this.taxRateStatusRule
11500
+ }
11501
+ ],
10838
11502
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
10839
11503
  {
10840
11504
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10851,6 +11515,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10851
11515
  rule: this.applyNetValueToDocumentStatusRule
10852
11516
  }
10853
11517
  ],
11518
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11519
+ {
11520
+ field: EnumCampoTributo.BaseCalculo,
11521
+ rule: this.taxableBaseStatusRule
11522
+ },
11523
+ {
11524
+ field: EnumCampoTributo.Aliquota,
11525
+ rule: this.taxRateStatusRule
11526
+ }
11527
+ ],
10854
11528
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
10855
11529
  {
10856
11530
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10867,6 +11541,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10867
11541
  rule: this.applyNetValueToDocumentStatusRule
10868
11542
  }
10869
11543
  ],
11544
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11545
+ {
11546
+ field: EnumCampoTributo.BaseCalculo,
11547
+ rule: this.taxableBaseStatusRule
11548
+ },
11549
+ {
11550
+ field: EnumCampoTributo.Aliquota,
11551
+ rule: this.taxRateStatusRule
11552
+ }
11553
+ ],
10870
11554
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
10871
11555
  {
10872
11556
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10910,6 +11594,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10910
11594
  rule: this.applyNetValueToDocumentStatusRule
10911
11595
  }
10912
11596
  ],
11597
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11598
+ {
11599
+ field: EnumCampoTributo.BaseCalculo,
11600
+ rule: this.taxableBaseStatusRule
11601
+ },
11602
+ {
11603
+ field: EnumCampoTributo.Aliquota,
11604
+ rule: this.taxRateStatusRule
11605
+ }
11606
+ ],
10913
11607
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
10914
11608
  {
10915
11609
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10926,6 +11620,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10926
11620
  rule: this.applyNetValueToDocumentStatusRule
10927
11621
  }
10928
11622
  ],
11623
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11624
+ {
11625
+ field: EnumCampoTributo.BaseCalculo,
11626
+ rule: this.taxableBaseStatusRule
11627
+ },
11628
+ {
11629
+ field: EnumCampoTributo.Aliquota,
11630
+ rule: this.taxRateStatusRule
11631
+ }
11632
+ ],
10929
11633
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
10930
11634
  {
10931
11635
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10942,6 +11646,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10942
11646
  rule: this.applyNetValueToDocumentStatusRule
10943
11647
  }
10944
11648
  ],
11649
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11650
+ {
11651
+ field: EnumCampoTributo.BaseCalculo,
11652
+ rule: this.taxableBaseStatusRule
11653
+ },
11654
+ {
11655
+ field: EnumCampoTributo.Aliquota,
11656
+ rule: this.taxRateStatusRule
11657
+ }
11658
+ ],
10945
11659
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
10946
11660
  {
10947
11661
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -10985,6 +11699,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
10985
11699
  rule: this.applyNetValueToDocumentStatusRule
10986
11700
  }
10987
11701
  ],
11702
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11703
+ {
11704
+ field: EnumCampoTributo.BaseCalculo,
11705
+ rule: this.taxableBaseStatusRule
11706
+ },
11707
+ {
11708
+ field: EnumCampoTributo.Aliquota,
11709
+ rule: this.taxRateStatusRule
11710
+ }
11711
+ ],
10988
11712
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
10989
11713
  {
10990
11714
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11001,6 +11725,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11001
11725
  rule: this.applyNetValueToDocumentStatusRule
11002
11726
  }
11003
11727
  ],
11728
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11729
+ {
11730
+ field: EnumCampoTributo.BaseCalculo,
11731
+ rule: this.taxableBaseStatusRule
11732
+ },
11733
+ {
11734
+ field: EnumCampoTributo.Aliquota,
11735
+ rule: this.taxRateStatusRule
11736
+ }
11737
+ ],
11004
11738
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11005
11739
  {
11006
11740
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11017,6 +11751,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11017
11751
  rule: this.applyNetValueToDocumentStatusRule
11018
11752
  }
11019
11753
  ],
11754
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11755
+ {
11756
+ field: EnumCampoTributo.BaseCalculo,
11757
+ rule: this.taxableBaseStatusRule
11758
+ },
11759
+ {
11760
+ field: EnumCampoTributo.Aliquota,
11761
+ rule: this.taxRateStatusRule
11762
+ }
11763
+ ],
11020
11764
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11021
11765
  {
11022
11766
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11060,6 +11804,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11060
11804
  rule: this.applyNetValueToDocumentStatusRule
11061
11805
  }
11062
11806
  ],
11807
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11808
+ {
11809
+ field: EnumCampoTributo.BaseCalculo,
11810
+ rule: this.taxableBaseStatusRule
11811
+ },
11812
+ {
11813
+ field: EnumCampoTributo.Aliquota,
11814
+ rule: this.taxRateStatusRule
11815
+ }
11816
+ ],
11063
11817
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11064
11818
  {
11065
11819
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11076,6 +11830,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11076
11830
  rule: this.applyNetValueToDocumentStatusRule
11077
11831
  }
11078
11832
  ],
11833
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11834
+ {
11835
+ field: EnumCampoTributo.BaseCalculo,
11836
+ rule: this.taxableBaseStatusRule
11837
+ },
11838
+ {
11839
+ field: EnumCampoTributo.Aliquota,
11840
+ rule: this.taxRateStatusRule
11841
+ }
11842
+ ],
11079
11843
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11080
11844
  {
11081
11845
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11092,6 +11856,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11092
11856
  rule: this.applyNetValueToDocumentStatusRule
11093
11857
  }
11094
11858
  ],
11859
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11860
+ {
11861
+ field: EnumCampoTributo.BaseCalculo,
11862
+ rule: this.taxableBaseStatusRule
11863
+ },
11864
+ {
11865
+ field: EnumCampoTributo.Aliquota,
11866
+ rule: this.taxRateStatusRule
11867
+ }
11868
+ ],
11095
11869
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11096
11870
  {
11097
11871
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11135,6 +11909,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11135
11909
  rule: this.applyNetValueToDocumentStatusRule
11136
11910
  }
11137
11911
  ],
11912
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11913
+ {
11914
+ field: EnumCampoTributo.BaseCalculo,
11915
+ rule: this.taxableBaseStatusRule
11916
+ },
11917
+ {
11918
+ field: EnumCampoTributo.Aliquota,
11919
+ rule: this.taxRateStatusRule
11920
+ }
11921
+ ],
11138
11922
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11139
11923
  {
11140
11924
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11151,6 +11935,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11151
11935
  rule: this.applyNetValueToDocumentStatusRule
11152
11936
  }
11153
11937
  ],
11938
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11939
+ {
11940
+ field: EnumCampoTributo.BaseCalculo,
11941
+ rule: this.taxableBaseStatusRule
11942
+ },
11943
+ {
11944
+ field: EnumCampoTributo.Aliquota,
11945
+ rule: this.taxRateStatusRule
11946
+ }
11947
+ ],
11154
11948
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11155
11949
  {
11156
11950
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11167,6 +11961,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11167
11961
  rule: this.applyNetValueToDocumentStatusRule
11168
11962
  }
11169
11963
  ],
11964
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11965
+ {
11966
+ field: EnumCampoTributo.BaseCalculo,
11967
+ rule: this.taxableBaseStatusRule
11968
+ },
11969
+ {
11970
+ field: EnumCampoTributo.Aliquota,
11971
+ rule: this.taxRateStatusRule
11972
+ }
11973
+ ],
11170
11974
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11171
11975
  {
11172
11976
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11210,6 +12014,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11210
12014
  rule: this.applyNetValueToDocumentStatusRule
11211
12015
  }
11212
12016
  ],
12017
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
12018
+ {
12019
+ field: EnumCampoTributo.BaseCalculo,
12020
+ rule: this.taxableBaseStatusRule
12021
+ },
12022
+ {
12023
+ field: EnumCampoTributo.Aliquota,
12024
+ rule: this.taxRateStatusRule
12025
+ }
12026
+ ],
11213
12027
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11214
12028
  {
11215
12029
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11226,6 +12040,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11226
12040
  rule: this.applyNetValueToDocumentStatusRule
11227
12041
  }
11228
12042
  ],
12043
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
12044
+ {
12045
+ field: EnumCampoTributo.BaseCalculo,
12046
+ rule: this.taxableBaseStatusRule
12047
+ },
12048
+ {
12049
+ field: EnumCampoTributo.Aliquota,
12050
+ rule: this.taxRateStatusRule
12051
+ }
12052
+ ],
11229
12053
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11230
12054
  {
11231
12055
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11242,6 +12066,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11242
12066
  rule: this.applyNetValueToDocumentStatusRule
11243
12067
  }
11244
12068
  ],
12069
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
12070
+ {
12071
+ field: EnumCampoTributo.BaseCalculo,
12072
+ rule: this.taxableBaseStatusRule
12073
+ },
12074
+ {
12075
+ field: EnumCampoTributo.Aliquota,
12076
+ rule: this.taxRateStatusRule
12077
+ }
12078
+ ],
11245
12079
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11246
12080
  {
11247
12081
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11273,6 +12107,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11273
12107
  rule: this.applyNetValueToDocumentStatusRule
11274
12108
  }
11275
12109
  ],
12110
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
12111
+ {
12112
+ field: EnumCampoTributo.BaseCalculo,
12113
+ rule: this.taxableBaseStatusRule
12114
+ },
12115
+ {
12116
+ field: EnumCampoTributo.Aliquota,
12117
+ rule: this.taxRateStatusRule
12118
+ }
12119
+ ],
11276
12120
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11277
12121
  {
11278
12122
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11289,6 +12133,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11289
12133
  rule: this.applyNetValueToDocumentStatusRule
11290
12134
  }
11291
12135
  ],
12136
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
12137
+ {
12138
+ field: EnumCampoTributo.BaseCalculo,
12139
+ rule: this.taxableBaseStatusRule
12140
+ },
12141
+ {
12142
+ field: EnumCampoTributo.Aliquota,
12143
+ rule: this.taxRateStatusRule
12144
+ }
12145
+ ],
11292
12146
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11293
12147
  {
11294
12148
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11305,6 +12159,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11305
12159
  rule: this.applyNetValueToDocumentStatusRule
11306
12160
  }
11307
12161
  ],
12162
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
12163
+ {
12164
+ field: EnumCampoTributo.BaseCalculo,
12165
+ rule: this.taxableBaseStatusRule
12166
+ },
12167
+ {
12168
+ field: EnumCampoTributo.Aliquota,
12169
+ rule: this.taxRateStatusRule
12170
+ }
12171
+ ],
11308
12172
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11309
12173
  {
11310
12174
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11348,6 +12212,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11348
12212
  rule: this.applyNetValueToDocumentStatusRule
11349
12213
  }
11350
12214
  ],
12215
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
12216
+ {
12217
+ field: EnumCampoTributo.BaseCalculo,
12218
+ rule: this.taxableBaseStatusRule
12219
+ },
12220
+ {
12221
+ field: EnumCampoTributo.Aliquota,
12222
+ rule: this.taxRateStatusRule
12223
+ }
12224
+ ],
11351
12225
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11352
12226
  {
11353
12227
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11364,6 +12238,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11364
12238
  rule: this.applyNetValueToDocumentStatusRule
11365
12239
  }
11366
12240
  ],
12241
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
12242
+ {
12243
+ field: EnumCampoTributo.BaseCalculo,
12244
+ rule: this.taxableBaseStatusRule
12245
+ },
12246
+ {
12247
+ field: EnumCampoTributo.Aliquota,
12248
+ rule: this.taxRateStatusRule
12249
+ }
12250
+ ],
11367
12251
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11368
12252
  {
11369
12253
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11380,6 +12264,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11380
12264
  rule: this.applyNetValueToDocumentStatusRule
11381
12265
  }
11382
12266
  ],
12267
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
12268
+ {
12269
+ field: EnumCampoTributo.BaseCalculo,
12270
+ rule: this.taxableBaseStatusRule
12271
+ },
12272
+ {
12273
+ field: EnumCampoTributo.Aliquota,
12274
+ rule: this.taxRateStatusRule
12275
+ }
12276
+ ],
11383
12277
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11384
12278
  {
11385
12279
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11423,6 +12317,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11423
12317
  rule: this.applyNetValueToDocumentStatusRule
11424
12318
  }
11425
12319
  ],
12320
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
12321
+ {
12322
+ field: EnumCampoTributo.BaseCalculo,
12323
+ rule: this.taxableBaseStatusRule
12324
+ },
12325
+ {
12326
+ field: EnumCampoTributo.Aliquota,
12327
+ rule: this.taxRateStatusRule
12328
+ }
12329
+ ],
11426
12330
  [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11427
12331
  {
11428
12332
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11439,6 +12343,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11439
12343
  rule: this.applyNetValueToDocumentStatusRule
11440
12344
  }
11441
12345
  ],
12346
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
12347
+ {
12348
+ field: EnumCampoTributo.BaseCalculo,
12349
+ rule: this.taxableBaseStatusRule
12350
+ },
12351
+ {
12352
+ field: EnumCampoTributo.Aliquota,
12353
+ rule: this.taxRateStatusRule
12354
+ }
12355
+ ],
11442
12356
  [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11443
12357
  {
11444
12358
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11455,6 +12369,16 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11455
12369
  rule: this.applyNetValueToDocumentStatusRule
11456
12370
  }
11457
12371
  ],
12372
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
12373
+ {
12374
+ field: EnumCampoTributo.BaseCalculo,
12375
+ rule: this.taxableBaseStatusRule
12376
+ },
12377
+ {
12378
+ field: EnumCampoTributo.Aliquota,
12379
+ rule: this.taxRateStatusRule
12380
+ }
12381
+ ],
11458
12382
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11459
12383
  {
11460
12384
  field: EnumCampoTributo.ClassificacaoTributaria,
@@ -11498,29 +12422,23 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11498
12422
  rule: this.applyNetValueToDocumentStatusRule
11499
12423
  }
11500
12424
  ],
11501
- [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
12425
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
11502
12426
  {
11503
- field: EnumCampoTributo.ClassificacaoTributaria,
11504
- rule: this.taxClassificationStatusRule
11505
- }
11506
- ],
11507
- [EnumTipoTributo.IBS_ESTADUAL]: [
11508
- {
11509
- field: EnumCampoTributo.ClassificacaoTributaria,
11510
- rule: this.taxClassificationStatusRule
12427
+ field: EnumCampoTributo.BaseCalculo,
12428
+ rule: this.taxableBaseStatusRule
11511
12429
  },
11512
12430
  {
11513
- field: EnumCampoTributo.AplicarValorLiquidoDocumento,
11514
- rule: this.applyNetValueToDocumentStatusRule
12431
+ field: EnumCampoTributo.Aliquota,
12432
+ rule: this.taxRateStatusRule
11515
12433
  }
11516
12434
  ],
11517
- [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
12435
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
11518
12436
  {
11519
12437
  field: EnumCampoTributo.ClassificacaoTributaria,
11520
12438
  rule: this.taxClassificationStatusRule
11521
12439
  }
11522
12440
  ],
11523
- [EnumTipoTributo.IBS_MUNICIPAL]: [
12441
+ [EnumTipoTributo.IBS_ESTADUAL]: [
11524
12442
  {
11525
12443
  field: EnumCampoTributo.ClassificacaoTributaria,
11526
12444
  rule: this.taxClassificationStatusRule
@@ -11530,77 +12448,23 @@ let IncomingInvoiceStatusRulesRegistry = class IncomingInvoiceStatusRulesRegistr
11530
12448
  rule: this.applyNetValueToDocumentStatusRule
11531
12449
  }
11532
12450
  ],
11533
- [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
11534
- {
11535
- field: EnumCampoTributo.ClassificacaoTributaria,
11536
- rule: this.taxClassificationStatusRule
11537
- }
11538
- ],
11539
- [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [],
11540
- [EnumTipoTributo.IS]: [
12451
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
11541
12452
  {
11542
- field: EnumCampoTributo.ClassificacaoTributaria,
11543
- rule: this.taxClassificationStatusRule
11544
- }
11545
- ],
11546
- [EnumTipoTributo.CBS_ESTORNO_CREDITO]: [
11547
- {
11548
- field: EnumCampoTributo.ClassificacaoTributaria,
11549
- rule: this.taxClassificationStatusRule
11550
- }
11551
- ],
11552
- [EnumTipoTributo.IBS_ESTORNO_CREDITO]: [
11553
- {
11554
- field: EnumCampoTributo.ClassificacaoTributaria,
11555
- rule: this.taxClassificationStatusRule
11556
- }
11557
- ]
11558
- }
11559
- };
11560
- }
11561
- get(type, taxType) {
11562
- var _a, _b;
11563
- return (_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : [];
11564
- }
11565
- };
11566
- IncomingInvoiceStatusRulesRegistry.ctorParameters = () => [
11567
- { type: TaxClassificationStatusRule },
11568
- { type: ApplyNetValueToDocumentStatusRule }
11569
- ];
11570
- IncomingInvoiceStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function IncomingInvoiceStatusRulesRegistry_Factory() { return new IncomingInvoiceStatusRulesRegistry(ɵɵinject(TaxClassificationStatusRule), ɵɵinject(ApplyNetValueToDocumentStatusRule)); }, token: IncomingInvoiceStatusRulesRegistry, providedIn: "root" });
11571
- IncomingInvoiceStatusRulesRegistry = __decorate([
11572
- Injectable({ providedIn: 'root' })
11573
- ], IncomingInvoiceStatusRulesRegistry);
11574
-
11575
- let OutgoingInvoiceStatusRulesRegistry = class OutgoingInvoiceStatusRulesRegistry {
11576
- constructor(taxClassificationStatusRule, applyNetValueToDocumentStatusRule) {
11577
- this.taxClassificationStatusRule = taxClassificationStatusRule;
11578
- this.applyNetValueToDocumentStatusRule = applyNetValueToDocumentStatusRule;
11579
- this.strategies = {
11580
- 'Product And Service Sale': {
11581
- [EnumTipoTributo.CBS]: [
11582
- {
11583
- field: EnumCampoTributo.ClassificacaoTributaria,
11584
- rule: this.taxClassificationStatusRule
12453
+ field: EnumCampoTributo.BaseCalculo,
12454
+ rule: this.taxableBaseStatusRule
11585
12455
  },
11586
12456
  {
11587
- field: EnumCampoTributo.AplicarValorLiquidoDocumento,
11588
- rule: this.applyNetValueToDocumentStatusRule
11589
- }
11590
- ],
11591
- [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
11592
- {
11593
- field: EnumCampoTributo.AplicarValorLiquidoDocumento,
11594
- rule: this.applyNetValueToDocumentStatusRule
12457
+ field: EnumCampoTributo.Aliquota,
12458
+ rule: this.taxRateStatusRule
11595
12459
  }
11596
12460
  ],
11597
- [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
12461
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11598
12462
  {
11599
12463
  field: EnumCampoTributo.ClassificacaoTributaria,
11600
12464
  rule: this.taxClassificationStatusRule
11601
12465
  }
11602
12466
  ],
11603
- [EnumTipoTributo.IBS_ESTADUAL]: [
12467
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
11604
12468
  {
11605
12469
  field: EnumCampoTributo.ClassificacaoTributaria,
11606
12470
  rule: this.taxClassificationStatusRule
@@ -11610,20 +12474,112 @@ let OutgoingInvoiceStatusRulesRegistry = class OutgoingInvoiceStatusRulesRegistr
11610
12474
  rule: this.applyNetValueToDocumentStatusRule
11611
12475
  }
11612
12476
  ],
11613
- [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
11614
- {
11615
- field: EnumCampoTributo.ClassificacaoTributaria,
11616
- rule: this.taxClassificationStatusRule
11617
- }
11618
- ],
11619
- [EnumTipoTributo.IBS_MUNICIPAL]: [
12477
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
11620
12478
  {
11621
- field: EnumCampoTributo.ClassificacaoTributaria,
11622
- rule: this.taxClassificationStatusRule
12479
+ field: EnumCampoTributo.BaseCalculo,
12480
+ rule: this.taxableBaseStatusRule
11623
12481
  },
11624
12482
  {
11625
- field: EnumCampoTributo.AplicarValorLiquidoDocumento,
11626
- rule: this.applyNetValueToDocumentStatusRule
12483
+ field: EnumCampoTributo.Aliquota,
12484
+ rule: this.taxRateStatusRule
12485
+ }
12486
+ ],
12487
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
12488
+ {
12489
+ field: EnumCampoTributo.ClassificacaoTributaria,
12490
+ rule: this.taxClassificationStatusRule
12491
+ }
12492
+ ],
12493
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [],
12494
+ [EnumTipoTributo.IS]: [
12495
+ {
12496
+ field: EnumCampoTributo.ClassificacaoTributaria,
12497
+ rule: this.taxClassificationStatusRule
12498
+ }
12499
+ ],
12500
+ [EnumTipoTributo.CBS_ESTORNO_CREDITO]: [
12501
+ {
12502
+ field: EnumCampoTributo.ClassificacaoTributaria,
12503
+ rule: this.taxClassificationStatusRule
12504
+ }
12505
+ ],
12506
+ [EnumTipoTributo.IBS_ESTORNO_CREDITO]: [
12507
+ {
12508
+ field: EnumCampoTributo.ClassificacaoTributaria,
12509
+ rule: this.taxClassificationStatusRule
12510
+ }
12511
+ ]
12512
+ }
12513
+ };
12514
+ }
12515
+ get(type, taxType) {
12516
+ var _a, _b;
12517
+ return (_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : [];
12518
+ }
12519
+ };
12520
+ IncomingInvoiceStatusRulesRegistry.ctorParameters = () => [
12521
+ { type: TaxClassificationStatusRule },
12522
+ { type: ApplyNetValueToDocumentStatusRule },
12523
+ { type: TaxableBaseStatusRule },
12524
+ { type: TaxRateStatusRule }
12525
+ ];
12526
+ IncomingInvoiceStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function IncomingInvoiceStatusRulesRegistry_Factory() { return new IncomingInvoiceStatusRulesRegistry(ɵɵinject(TaxClassificationStatusRule), ɵɵinject(ApplyNetValueToDocumentStatusRule), ɵɵinject(TaxableBaseStatusRule), ɵɵinject(TaxRateStatusRule)); }, token: IncomingInvoiceStatusRulesRegistry, providedIn: "root" });
12527
+ IncomingInvoiceStatusRulesRegistry = __decorate([
12528
+ Injectable({ providedIn: 'root' })
12529
+ ], IncomingInvoiceStatusRulesRegistry);
12530
+
12531
+ let OutgoingInvoiceStatusRulesRegistry = class OutgoingInvoiceStatusRulesRegistry {
12532
+ constructor(taxClassificationStatusRule, applyNetValueToDocumentStatusRule) {
12533
+ this.taxClassificationStatusRule = taxClassificationStatusRule;
12534
+ this.applyNetValueToDocumentStatusRule = applyNetValueToDocumentStatusRule;
12535
+ this.strategies = {
12536
+ 'Product And Service Sale': {
12537
+ [EnumTipoTributo.CBS]: [
12538
+ {
12539
+ field: EnumCampoTributo.ClassificacaoTributaria,
12540
+ rule: this.taxClassificationStatusRule
12541
+ },
12542
+ {
12543
+ field: EnumCampoTributo.AplicarValorLiquidoDocumento,
12544
+ rule: this.applyNetValueToDocumentStatusRule
12545
+ }
12546
+ ],
12547
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
12548
+ {
12549
+ field: EnumCampoTributo.AplicarValorLiquidoDocumento,
12550
+ rule: this.applyNetValueToDocumentStatusRule
12551
+ }
12552
+ ],
12553
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
12554
+ {
12555
+ field: EnumCampoTributo.ClassificacaoTributaria,
12556
+ rule: this.taxClassificationStatusRule
12557
+ }
12558
+ ],
12559
+ [EnumTipoTributo.IBS_ESTADUAL]: [
12560
+ {
12561
+ field: EnumCampoTributo.ClassificacaoTributaria,
12562
+ rule: this.taxClassificationStatusRule
12563
+ },
12564
+ {
12565
+ field: EnumCampoTributo.AplicarValorLiquidoDocumento,
12566
+ rule: this.applyNetValueToDocumentStatusRule
12567
+ }
12568
+ ],
12569
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
12570
+ {
12571
+ field: EnumCampoTributo.ClassificacaoTributaria,
12572
+ rule: this.taxClassificationStatusRule
12573
+ }
12574
+ ],
12575
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
12576
+ {
12577
+ field: EnumCampoTributo.ClassificacaoTributaria,
12578
+ rule: this.taxClassificationStatusRule
12579
+ },
12580
+ {
12581
+ field: EnumCampoTributo.AplicarValorLiquidoDocumento,
12582
+ rule: this.applyNetValueToDocumentStatusRule
11627
12583
  }
11628
12584
  ],
11629
12585
  [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
@@ -12881,15 +13837,54 @@ OutgoingInvoiceStatusRulesRegistry = __decorate([
12881
13837
  ], OutgoingInvoiceStatusRulesRegistry);
12882
13838
 
12883
13839
  let PurchaseOrderStatusRulesRegistry = class PurchaseOrderStatusRulesRegistry {
12884
- constructor() {
12885
- this.strategies = {};
13840
+ constructor(taxableBaseStatusRule, taxRateStatusRule) {
13841
+ this.taxableBaseStatusRule = taxableBaseStatusRule;
13842
+ this.taxRateStatusRule = taxRateStatusRule;
13843
+ this.strategies = {
13844
+ 'Purchase Order': {
13845
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
13846
+ {
13847
+ field: EnumCampoTributo.BaseCalculo,
13848
+ rule: this.taxableBaseStatusRule
13849
+ },
13850
+ {
13851
+ field: EnumCampoTributo.Aliquota,
13852
+ rule: this.taxRateStatusRule
13853
+ }
13854
+ ],
13855
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
13856
+ {
13857
+ field: EnumCampoTributo.BaseCalculo,
13858
+ rule: this.taxableBaseStatusRule
13859
+ },
13860
+ {
13861
+ field: EnumCampoTributo.Aliquota,
13862
+ rule: this.taxRateStatusRule
13863
+ }
13864
+ ],
13865
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
13866
+ {
13867
+ field: EnumCampoTributo.BaseCalculo,
13868
+ rule: this.taxableBaseStatusRule
13869
+ },
13870
+ {
13871
+ field: EnumCampoTributo.Aliquota,
13872
+ rule: this.taxRateStatusRule
13873
+ }
13874
+ ]
13875
+ }
13876
+ };
12886
13877
  }
12887
13878
  get(type, taxType) {
12888
13879
  var _a, _b;
12889
13880
  return ((_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : []);
12890
13881
  }
12891
13882
  };
12892
- PurchaseOrderStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function PurchaseOrderStatusRulesRegistry_Factory() { return new PurchaseOrderStatusRulesRegistry(); }, token: PurchaseOrderStatusRulesRegistry, providedIn: "root" });
13883
+ PurchaseOrderStatusRulesRegistry.ctorParameters = () => [
13884
+ { type: TaxableBaseStatusRule },
13885
+ { type: TaxRateStatusRule }
13886
+ ];
13887
+ PurchaseOrderStatusRulesRegistry.ɵprov = ɵɵdefineInjectable({ factory: function PurchaseOrderStatusRulesRegistry_Factory() { return new PurchaseOrderStatusRulesRegistry(ɵɵinject(TaxableBaseStatusRule), ɵɵinject(TaxRateStatusRule)); }, token: PurchaseOrderStatusRulesRegistry, providedIn: "root" });
12893
13888
  PurchaseOrderStatusRulesRegistry = __decorate([
12894
13889
  Injectable({ providedIn: 'root' })
12895
13890
  ], PurchaseOrderStatusRulesRegistry);
@@ -13033,8 +14028,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13033
14028
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13034
14029
  formGroup
13035
14030
  .get('aliquotaEfetiva')
13036
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13037
- .value), distinctUntilChanged()),
14031
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13038
14032
  formGroup
13039
14033
  .get('situacaoTributaria')
13040
14034
  .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
@@ -13111,8 +14105,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13111
14105
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13112
14106
  formGroup
13113
14107
  .get('aliquotaEfetiva')
13114
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13115
- .value), distinctUntilChanged()),
14108
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13116
14109
  formGroup
13117
14110
  .get('valor')
13118
14111
  .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged()),
@@ -13180,8 +14173,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13180
14173
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13181
14174
  formGroup
13182
14175
  .get('aliquotaEfetiva')
13183
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13184
- .value), distinctUntilChanged()),
14176
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13185
14177
  formGroup
13186
14178
  .get('situacaoTributaria')
13187
14179
  .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
@@ -13253,8 +14245,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13253
14245
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13254
14246
  formGroup
13255
14247
  .get('aliquotaEfetiva')
13256
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13257
- .value), distinctUntilChanged()),
14248
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13258
14249
  formGroup
13259
14250
  .get('valor')
13260
14251
  .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged()),
@@ -13322,8 +14313,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13322
14313
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13323
14314
  formGroup
13324
14315
  .get('aliquotaEfetiva')
13325
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13326
- .value), distinctUntilChanged()),
14316
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13327
14317
  formGroup
13328
14318
  .get('situacaoTributaria')
13329
14319
  .valueChanges.pipe(startWith(formGroup.get('situacaoTributaria').value), distinctUntilChanged()),
@@ -13395,8 +14385,7 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13395
14385
  .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
13396
14386
  formGroup
13397
14387
  .get('aliquotaEfetiva')
13398
- .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva')
13399
- .value), distinctUntilChanged()),
14388
+ .valueChanges.pipe(startWith(formGroup.get('aliquotaEfetiva').value), distinctUntilChanged()),
13400
14389
  formGroup
13401
14390
  .get('valor')
13402
14391
  .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged()),
@@ -13444,6 +14433,68 @@ let TaxAmountRequiredValidationRule = class TaxAmountRequiredValidationRule {
13444
14433
  }
13445
14434
  }
13446
14435
  break;
14436
+ case EnumTipoTributo.CBS_A_APROPRIAR:
14437
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
14438
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
14439
+ {
14440
+ switch (document) {
14441
+ case 'Incoming Invoice':
14442
+ case 'Purchase Order':
14443
+ {
14444
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
14445
+ combineLatest([
14446
+ baseTaxFormGroup
14447
+ .get('baseCalculo')
14448
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged()),
14449
+ formGroup
14450
+ .get('baseCalculo')
14451
+ .valueChanges.pipe(startWith(formGroup.get('baseCalculo')
14452
+ .value), distinctUntilChanged()),
14453
+ formGroup
14454
+ .get('aliquota')
14455
+ .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
14456
+ formGroup
14457
+ .get('valor')
14458
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
14459
+ ])
14460
+ .pipe(map(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => [
14461
+ new BigNumber(baseTaxTaxableBase),
14462
+ new BigNumber(taxableBase),
14463
+ new BigNumber(taxRate),
14464
+ new BigNumber(taxAmount)
14465
+ ]))
14466
+ .subscribe(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => {
14467
+ let validators = [];
14468
+ if (baseTaxTaxableBase.isFinite() ||
14469
+ taxableBase.isFinite() ||
14470
+ taxRate.isFinite() ||
14471
+ taxAmount.isFinite()) {
14472
+ validators = [
14473
+ Validators.max(9999999999999.99),
14474
+ Validators.required
14475
+ ];
14476
+ }
14477
+ else {
14478
+ validators = [
14479
+ Validators.max(9999999999999.99)
14480
+ ];
14481
+ }
14482
+ formGroup
14483
+ .get('valor')
14484
+ .setValidators(validators);
14485
+ formGroup
14486
+ .get('valor')
14487
+ .updateValueAndValidity({
14488
+ emitEvent: false
14489
+ });
14490
+ });
14491
+ }
14492
+ break;
14493
+ default:
14494
+ throw new Error(`Regra TaxAmountRequiredValidationRule não implementada para o imposto ${taxType}, documento ${document}.`);
14495
+ }
14496
+ }
14497
+ break;
13447
14498
  case EnumTipoTributo.CBS_DIFERIDO:
13448
14499
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
13449
14500
  case EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO:
@@ -14825,6 +15876,68 @@ let TaxRateRequiredValidationRule = class TaxRateRequiredValidationRule {
14825
15876
  }
14826
15877
  }
14827
15878
  break;
15879
+ case EnumTipoTributo.CBS_A_APROPRIAR:
15880
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
15881
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
15882
+ {
15883
+ switch (document) {
15884
+ case 'Incoming Invoice':
15885
+ case 'Purchase Order':
15886
+ {
15887
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
15888
+ combineLatest([
15889
+ baseTaxFormGroup
15890
+ .get('baseCalculo')
15891
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged()),
15892
+ formGroup
15893
+ .get('baseCalculo')
15894
+ .valueChanges.pipe(startWith(formGroup.get('baseCalculo')
15895
+ .value), distinctUntilChanged()),
15896
+ formGroup
15897
+ .get('aliquota')
15898
+ .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
15899
+ formGroup
15900
+ .get('valor')
15901
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
15902
+ ])
15903
+ .pipe(map(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => [
15904
+ new BigNumber(baseTaxTaxableBase),
15905
+ new BigNumber(taxableBase),
15906
+ new BigNumber(taxRate),
15907
+ new BigNumber(taxAmount)
15908
+ ]))
15909
+ .subscribe(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => {
15910
+ let validators = [];
15911
+ if (baseTaxTaxableBase.isFinite() ||
15912
+ taxableBase.isFinite() ||
15913
+ taxRate.isFinite() ||
15914
+ taxAmount.isFinite()) {
15915
+ validators = [
15916
+ Validators.max(999.9999),
15917
+ Validators.required
15918
+ ];
15919
+ }
15920
+ else {
15921
+ validators = [
15922
+ Validators.max(999.9999)
15923
+ ];
15924
+ }
15925
+ formGroup
15926
+ .get('aliquota')
15927
+ .setValidators(validators);
15928
+ formGroup
15929
+ .get('aliquota')
15930
+ .updateValueAndValidity({
15931
+ emitEvent: false
15932
+ });
15933
+ });
15934
+ }
15935
+ break;
15936
+ default:
15937
+ throw new Error(`Regra TaxRateRequiredValidationRule não implementada para o imposto ${taxType}, documento ${document}.`);
15938
+ }
15939
+ }
15940
+ break;
14828
15941
  case EnumTipoTributo.CBS_DIFERIDO:
14829
15942
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
14830
15943
  case EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO:
@@ -14879,7 +15992,7 @@ let TaxRateRequiredValidationRule = class TaxRateRequiredValidationRule {
14879
15992
  }
14880
15993
  break;
14881
15994
  default:
14882
- throw new Error(`Regra TaxableBaseRequiredValidationRule não implementada para o imposto ${taxType}, documento ${document}.`);
15995
+ throw new Error(`Regra TaxRateRequiredValidationRule não implementada para o imposto ${taxType}, documento ${document}.`);
14883
15996
  }
14884
15997
  }
14885
15998
  break;
@@ -15768,6 +16881,66 @@ let TaxableBaseRequiredValidationRule = class TaxableBaseRequiredValidationRule
15768
16881
  }
15769
16882
  }
15770
16883
  break;
16884
+ case EnumTipoTributo.CBS_A_APROPRIAR:
16885
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
16886
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
16887
+ {
16888
+ switch (document) {
16889
+ case 'Incoming Invoice':
16890
+ case 'Purchase Order':
16891
+ {
16892
+ const { formGroup: baseTaxFormGroup } = getBaseTaxItemFromGroup({ group });
16893
+ combineLatest([
16894
+ baseTaxFormGroup
16895
+ .get('baseCalculo')
16896
+ .valueChanges.pipe(startWith(baseTaxFormGroup.get('baseCalculo').value), distinctUntilChanged()),
16897
+ formGroup
16898
+ .get('baseCalculo')
16899
+ .valueChanges.pipe(startWith(formGroup.get('baseCalculo')
16900
+ .value), distinctUntilChanged()),
16901
+ formGroup
16902
+ .get('aliquota')
16903
+ .valueChanges.pipe(startWith(formGroup.get('aliquota').value), distinctUntilChanged()),
16904
+ formGroup
16905
+ .get('valor')
16906
+ .valueChanges.pipe(startWith(formGroup.get('valor').value), distinctUntilChanged())
16907
+ ])
16908
+ .pipe(map(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => [
16909
+ new BigNumber(baseTaxTaxableBase),
16910
+ new BigNumber(taxableBase),
16911
+ new BigNumber(taxRate),
16912
+ new BigNumber(taxAmount)
16913
+ ]))
16914
+ .subscribe(([baseTaxTaxableBase, taxableBase, taxRate, taxAmount]) => {
16915
+ let validators = [];
16916
+ if (baseTaxTaxableBase.isFinite() ||
16917
+ taxableBase.isFinite() ||
16918
+ taxRate.isFinite() ||
16919
+ taxAmount.isFinite()) {
16920
+ validators = [
16921
+ Validators.max(9999999999999.99),
16922
+ Validators.required
16923
+ ];
16924
+ }
16925
+ else {
16926
+ validators = [];
16927
+ }
16928
+ formGroup
16929
+ .get('baseCalculo')
16930
+ .setValidators(validators);
16931
+ formGroup
16932
+ .get('baseCalculo')
16933
+ .updateValueAndValidity({
16934
+ emitEvent: false
16935
+ });
16936
+ });
16937
+ }
16938
+ break;
16939
+ default:
16940
+ throw new Error(`Regra TaxableBaseRequiredValidationRule não implementada para o imposto ${taxType}, documento ${document}.`);
16941
+ }
16942
+ }
16943
+ break;
15771
16944
  case EnumTipoTributo.CBS_DIFERIDO:
15772
16945
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
15773
16946
  case EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO:
@@ -15872,6 +17045,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
15872
17045
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
15873
17046
  }
15874
17047
  ],
17048
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
17049
+ {
17050
+ field: EnumCampoTributo.BaseCalculo,
17051
+ rules: [this.taxableBaseRequiredValidationRule]
17052
+ },
17053
+ {
17054
+ field: EnumCampoTributo.Aliquota,
17055
+ rules: [this.taxRateRequiredValidationRule]
17056
+ },
17057
+ {
17058
+ field: EnumCampoTributo.Valor,
17059
+ rules: [this.taxAmountRequiredValidationRule]
17060
+ }
17061
+ ],
15875
17062
  [EnumTipoTributo.CBS_DIFERIDO]: [
15876
17063
  {
15877
17064
  field: EnumCampoTributo.BaseCalculo,
@@ -15966,6 +17153,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
15966
17153
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
15967
17154
  }
15968
17155
  ],
17156
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
17157
+ {
17158
+ field: EnumCampoTributo.BaseCalculo,
17159
+ rules: [this.taxableBaseRequiredValidationRule]
17160
+ },
17161
+ {
17162
+ field: EnumCampoTributo.Aliquota,
17163
+ rules: [this.taxRateRequiredValidationRule]
17164
+ },
17165
+ {
17166
+ field: EnumCampoTributo.Valor,
17167
+ rules: [this.taxAmountRequiredValidationRule]
17168
+ }
17169
+ ],
15969
17170
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
15970
17171
  {
15971
17172
  field: EnumCampoTributo.BaseCalculo,
@@ -16034,6 +17235,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16034
17235
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16035
17236
  }
16036
17237
  ],
17238
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
17239
+ {
17240
+ field: EnumCampoTributo.BaseCalculo,
17241
+ rules: [this.taxableBaseRequiredValidationRule]
17242
+ },
17243
+ {
17244
+ field: EnumCampoTributo.Aliquota,
17245
+ rules: [this.taxRateRequiredValidationRule]
17246
+ },
17247
+ {
17248
+ field: EnumCampoTributo.Valor,
17249
+ rules: [this.taxAmountRequiredValidationRule]
17250
+ }
17251
+ ],
16037
17252
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
16038
17253
  {
16039
17254
  field: EnumCampoTributo.BaseCalculo,
@@ -16176,6 +17391,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16176
17391
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16177
17392
  }
16178
17393
  ],
17394
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
17395
+ {
17396
+ field: EnumCampoTributo.BaseCalculo,
17397
+ rules: [this.taxableBaseRequiredValidationRule]
17398
+ },
17399
+ {
17400
+ field: EnumCampoTributo.Aliquota,
17401
+ rules: [this.taxRateRequiredValidationRule]
17402
+ },
17403
+ {
17404
+ field: EnumCampoTributo.Valor,
17405
+ rules: [this.taxAmountRequiredValidationRule]
17406
+ }
17407
+ ],
16179
17408
  [EnumTipoTributo.CBS_DIFERIDO]: [
16180
17409
  {
16181
17410
  field: EnumCampoTributo.BaseCalculo,
@@ -16270,6 +17499,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16270
17499
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16271
17500
  }
16272
17501
  ],
17502
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
17503
+ {
17504
+ field: EnumCampoTributo.BaseCalculo,
17505
+ rules: [this.taxableBaseRequiredValidationRule]
17506
+ },
17507
+ {
17508
+ field: EnumCampoTributo.Aliquota,
17509
+ rules: [this.taxRateRequiredValidationRule]
17510
+ },
17511
+ {
17512
+ field: EnumCampoTributo.Valor,
17513
+ rules: [this.taxAmountRequiredValidationRule]
17514
+ }
17515
+ ],
16273
17516
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
16274
17517
  {
16275
17518
  field: EnumCampoTributo.BaseCalculo,
@@ -16338,6 +17581,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16338
17581
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16339
17582
  }
16340
17583
  ],
17584
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
17585
+ {
17586
+ field: EnumCampoTributo.BaseCalculo,
17587
+ rules: [this.taxableBaseRequiredValidationRule]
17588
+ },
17589
+ {
17590
+ field: EnumCampoTributo.Aliquota,
17591
+ rules: [this.taxRateRequiredValidationRule]
17592
+ },
17593
+ {
17594
+ field: EnumCampoTributo.Valor,
17595
+ rules: [this.taxAmountRequiredValidationRule]
17596
+ }
17597
+ ],
16341
17598
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
16342
17599
  {
16343
17600
  field: EnumCampoTributo.BaseCalculo,
@@ -16480,6 +17737,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16480
17737
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16481
17738
  }
16482
17739
  ],
17740
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
17741
+ {
17742
+ field: EnumCampoTributo.BaseCalculo,
17743
+ rules: [this.taxableBaseRequiredValidationRule]
17744
+ },
17745
+ {
17746
+ field: EnumCampoTributo.Aliquota,
17747
+ rules: [this.taxRateRequiredValidationRule]
17748
+ },
17749
+ {
17750
+ field: EnumCampoTributo.Valor,
17751
+ rules: [this.taxAmountRequiredValidationRule]
17752
+ }
17753
+ ],
16483
17754
  [EnumTipoTributo.CBS_DIFERIDO]: [
16484
17755
  {
16485
17756
  field: EnumCampoTributo.BaseCalculo,
@@ -16574,6 +17845,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16574
17845
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16575
17846
  }
16576
17847
  ],
17848
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
17849
+ {
17850
+ field: EnumCampoTributo.BaseCalculo,
17851
+ rules: [this.taxableBaseRequiredValidationRule]
17852
+ },
17853
+ {
17854
+ field: EnumCampoTributo.Aliquota,
17855
+ rules: [this.taxRateRequiredValidationRule]
17856
+ },
17857
+ {
17858
+ field: EnumCampoTributo.Valor,
17859
+ rules: [this.taxAmountRequiredValidationRule]
17860
+ }
17861
+ ],
16577
17862
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
16578
17863
  {
16579
17864
  field: EnumCampoTributo.BaseCalculo,
@@ -16642,6 +17927,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16642
17927
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16643
17928
  }
16644
17929
  ],
17930
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
17931
+ {
17932
+ field: EnumCampoTributo.BaseCalculo,
17933
+ rules: [this.taxableBaseRequiredValidationRule]
17934
+ },
17935
+ {
17936
+ field: EnumCampoTributo.Aliquota,
17937
+ rules: [this.taxRateRequiredValidationRule]
17938
+ },
17939
+ {
17940
+ field: EnumCampoTributo.Valor,
17941
+ rules: [this.taxAmountRequiredValidationRule]
17942
+ }
17943
+ ],
16645
17944
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
16646
17945
  {
16647
17946
  field: EnumCampoTributo.BaseCalculo,
@@ -16784,6 +18083,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16784
18083
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16785
18084
  }
16786
18085
  ],
18086
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
18087
+ {
18088
+ field: EnumCampoTributo.BaseCalculo,
18089
+ rules: [this.taxableBaseRequiredValidationRule]
18090
+ },
18091
+ {
18092
+ field: EnumCampoTributo.Aliquota,
18093
+ rules: [this.taxRateRequiredValidationRule]
18094
+ },
18095
+ {
18096
+ field: EnumCampoTributo.Valor,
18097
+ rules: [this.taxAmountRequiredValidationRule]
18098
+ }
18099
+ ],
16787
18100
  [EnumTipoTributo.CBS_DIFERIDO]: [
16788
18101
  {
16789
18102
  field: EnumCampoTributo.BaseCalculo,
@@ -16878,6 +18191,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16878
18191
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16879
18192
  }
16880
18193
  ],
18194
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
18195
+ {
18196
+ field: EnumCampoTributo.BaseCalculo,
18197
+ rules: [this.taxableBaseRequiredValidationRule]
18198
+ },
18199
+ {
18200
+ field: EnumCampoTributo.Aliquota,
18201
+ rules: [this.taxRateRequiredValidationRule]
18202
+ },
18203
+ {
18204
+ field: EnumCampoTributo.Valor,
18205
+ rules: [this.taxAmountRequiredValidationRule]
18206
+ }
18207
+ ],
16881
18208
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
16882
18209
  {
16883
18210
  field: EnumCampoTributo.BaseCalculo,
@@ -16946,6 +18273,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
16946
18273
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
16947
18274
  }
16948
18275
  ],
18276
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
18277
+ {
18278
+ field: EnumCampoTributo.BaseCalculo,
18279
+ rules: [this.taxableBaseRequiredValidationRule]
18280
+ },
18281
+ {
18282
+ field: EnumCampoTributo.Aliquota,
18283
+ rules: [this.taxRateRequiredValidationRule]
18284
+ },
18285
+ {
18286
+ field: EnumCampoTributo.Valor,
18287
+ rules: [this.taxAmountRequiredValidationRule]
18288
+ }
18289
+ ],
16949
18290
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
16950
18291
  {
16951
18292
  field: EnumCampoTributo.BaseCalculo,
@@ -17088,6 +18429,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17088
18429
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17089
18430
  }
17090
18431
  ],
18432
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
18433
+ {
18434
+ field: EnumCampoTributo.BaseCalculo,
18435
+ rules: [this.taxableBaseRequiredValidationRule]
18436
+ },
18437
+ {
18438
+ field: EnumCampoTributo.Aliquota,
18439
+ rules: [this.taxRateRequiredValidationRule]
18440
+ },
18441
+ {
18442
+ field: EnumCampoTributo.Valor,
18443
+ rules: [this.taxAmountRequiredValidationRule]
18444
+ }
18445
+ ],
17091
18446
  [EnumTipoTributo.CBS_DIFERIDO]: [
17092
18447
  {
17093
18448
  field: EnumCampoTributo.BaseCalculo,
@@ -17182,6 +18537,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17182
18537
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17183
18538
  }
17184
18539
  ],
18540
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
18541
+ {
18542
+ field: EnumCampoTributo.BaseCalculo,
18543
+ rules: [this.taxableBaseRequiredValidationRule]
18544
+ },
18545
+ {
18546
+ field: EnumCampoTributo.Aliquota,
18547
+ rules: [this.taxRateRequiredValidationRule]
18548
+ },
18549
+ {
18550
+ field: EnumCampoTributo.Valor,
18551
+ rules: [this.taxAmountRequiredValidationRule]
18552
+ }
18553
+ ],
17185
18554
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
17186
18555
  {
17187
18556
  field: EnumCampoTributo.BaseCalculo,
@@ -17250,6 +18619,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17250
18619
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17251
18620
  }
17252
18621
  ],
18622
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
18623
+ {
18624
+ field: EnumCampoTributo.BaseCalculo,
18625
+ rules: [this.taxableBaseRequiredValidationRule]
18626
+ },
18627
+ {
18628
+ field: EnumCampoTributo.Aliquota,
18629
+ rules: [this.taxRateRequiredValidationRule]
18630
+ },
18631
+ {
18632
+ field: EnumCampoTributo.Valor,
18633
+ rules: [this.taxAmountRequiredValidationRule]
18634
+ }
18635
+ ],
17253
18636
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
17254
18637
  {
17255
18638
  field: EnumCampoTributo.BaseCalculo,
@@ -17392,6 +18775,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17392
18775
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17393
18776
  }
17394
18777
  ],
18778
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
18779
+ {
18780
+ field: EnumCampoTributo.BaseCalculo,
18781
+ rules: [this.taxableBaseRequiredValidationRule]
18782
+ },
18783
+ {
18784
+ field: EnumCampoTributo.Aliquota,
18785
+ rules: [this.taxRateRequiredValidationRule]
18786
+ },
18787
+ {
18788
+ field: EnumCampoTributo.Valor,
18789
+ rules: [this.taxAmountRequiredValidationRule]
18790
+ }
18791
+ ],
17395
18792
  [EnumTipoTributo.CBS_DIFERIDO]: [
17396
18793
  {
17397
18794
  field: EnumCampoTributo.BaseCalculo,
@@ -17486,6 +18883,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17486
18883
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17487
18884
  }
17488
18885
  ],
18886
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
18887
+ {
18888
+ field: EnumCampoTributo.BaseCalculo,
18889
+ rules: [this.taxableBaseRequiredValidationRule]
18890
+ },
18891
+ {
18892
+ field: EnumCampoTributo.Aliquota,
18893
+ rules: [this.taxRateRequiredValidationRule]
18894
+ },
18895
+ {
18896
+ field: EnumCampoTributo.Valor,
18897
+ rules: [this.taxAmountRequiredValidationRule]
18898
+ }
18899
+ ],
17489
18900
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
17490
18901
  {
17491
18902
  field: EnumCampoTributo.BaseCalculo,
@@ -17554,6 +18965,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17554
18965
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17555
18966
  }
17556
18967
  ],
18968
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
18969
+ {
18970
+ field: EnumCampoTributo.BaseCalculo,
18971
+ rules: [this.taxableBaseRequiredValidationRule]
18972
+ },
18973
+ {
18974
+ field: EnumCampoTributo.Aliquota,
18975
+ rules: [this.taxRateRequiredValidationRule]
18976
+ },
18977
+ {
18978
+ field: EnumCampoTributo.Valor,
18979
+ rules: [this.taxAmountRequiredValidationRule]
18980
+ }
18981
+ ],
17557
18982
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
17558
18983
  {
17559
18984
  field: EnumCampoTributo.BaseCalculo,
@@ -17696,6 +19121,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17696
19121
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17697
19122
  }
17698
19123
  ],
19124
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
19125
+ {
19126
+ field: EnumCampoTributo.BaseCalculo,
19127
+ rules: [this.taxableBaseRequiredValidationRule]
19128
+ },
19129
+ {
19130
+ field: EnumCampoTributo.Aliquota,
19131
+ rules: [this.taxRateRequiredValidationRule]
19132
+ },
19133
+ {
19134
+ field: EnumCampoTributo.Valor,
19135
+ rules: [this.taxAmountRequiredValidationRule]
19136
+ }
19137
+ ],
17699
19138
  [EnumTipoTributo.CBS_DIFERIDO]: [
17700
19139
  {
17701
19140
  field: EnumCampoTributo.BaseCalculo,
@@ -17790,6 +19229,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17790
19229
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17791
19230
  }
17792
19231
  ],
19232
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
19233
+ {
19234
+ field: EnumCampoTributo.BaseCalculo,
19235
+ rules: [this.taxableBaseRequiredValidationRule]
19236
+ },
19237
+ {
19238
+ field: EnumCampoTributo.Aliquota,
19239
+ rules: [this.taxRateRequiredValidationRule]
19240
+ },
19241
+ {
19242
+ field: EnumCampoTributo.Valor,
19243
+ rules: [this.taxAmountRequiredValidationRule]
19244
+ }
19245
+ ],
17793
19246
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
17794
19247
  {
17795
19248
  field: EnumCampoTributo.BaseCalculo,
@@ -17858,6 +19311,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
17858
19311
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
17859
19312
  }
17860
19313
  ],
19314
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
19315
+ {
19316
+ field: EnumCampoTributo.BaseCalculo,
19317
+ rules: [this.taxableBaseRequiredValidationRule]
19318
+ },
19319
+ {
19320
+ field: EnumCampoTributo.Aliquota,
19321
+ rules: [this.taxRateRequiredValidationRule]
19322
+ },
19323
+ {
19324
+ field: EnumCampoTributo.Valor,
19325
+ rules: [this.taxAmountRequiredValidationRule]
19326
+ }
19327
+ ],
17861
19328
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
17862
19329
  {
17863
19330
  field: EnumCampoTributo.BaseCalculo,
@@ -18000,6 +19467,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18000
19467
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18001
19468
  }
18002
19469
  ],
19470
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
19471
+ {
19472
+ field: EnumCampoTributo.BaseCalculo,
19473
+ rules: [this.taxableBaseRequiredValidationRule]
19474
+ },
19475
+ {
19476
+ field: EnumCampoTributo.Aliquota,
19477
+ rules: [this.taxRateRequiredValidationRule]
19478
+ },
19479
+ {
19480
+ field: EnumCampoTributo.Valor,
19481
+ rules: [this.taxAmountRequiredValidationRule]
19482
+ }
19483
+ ],
18003
19484
  [EnumTipoTributo.CBS_DIFERIDO]: [
18004
19485
  {
18005
19486
  field: EnumCampoTributo.BaseCalculo,
@@ -18094,6 +19575,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18094
19575
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18095
19576
  }
18096
19577
  ],
19578
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
19579
+ {
19580
+ field: EnumCampoTributo.BaseCalculo,
19581
+ rules: [this.taxableBaseRequiredValidationRule]
19582
+ },
19583
+ {
19584
+ field: EnumCampoTributo.Aliquota,
19585
+ rules: [this.taxRateRequiredValidationRule]
19586
+ },
19587
+ {
19588
+ field: EnumCampoTributo.Valor,
19589
+ rules: [this.taxAmountRequiredValidationRule]
19590
+ }
19591
+ ],
18097
19592
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
18098
19593
  {
18099
19594
  field: EnumCampoTributo.BaseCalculo,
@@ -18162,6 +19657,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18162
19657
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18163
19658
  }
18164
19659
  ],
19660
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
19661
+ {
19662
+ field: EnumCampoTributo.BaseCalculo,
19663
+ rules: [this.taxableBaseRequiredValidationRule]
19664
+ },
19665
+ {
19666
+ field: EnumCampoTributo.Aliquota,
19667
+ rules: [this.taxRateRequiredValidationRule]
19668
+ },
19669
+ {
19670
+ field: EnumCampoTributo.Valor,
19671
+ rules: [this.taxAmountRequiredValidationRule]
19672
+ }
19673
+ ],
18165
19674
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
18166
19675
  {
18167
19676
  field: EnumCampoTributo.BaseCalculo,
@@ -18304,6 +19813,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18304
19813
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18305
19814
  }
18306
19815
  ],
19816
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
19817
+ {
19818
+ field: EnumCampoTributo.BaseCalculo,
19819
+ rules: [this.taxableBaseRequiredValidationRule]
19820
+ },
19821
+ {
19822
+ field: EnumCampoTributo.Aliquota,
19823
+ rules: [this.taxRateRequiredValidationRule]
19824
+ },
19825
+ {
19826
+ field: EnumCampoTributo.Valor,
19827
+ rules: [this.taxAmountRequiredValidationRule]
19828
+ }
19829
+ ],
18307
19830
  [EnumTipoTributo.CBS_DIFERIDO]: [
18308
19831
  {
18309
19832
  field: EnumCampoTributo.BaseCalculo,
@@ -18398,6 +19921,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18398
19921
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18399
19922
  }
18400
19923
  ],
19924
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
19925
+ {
19926
+ field: EnumCampoTributo.BaseCalculo,
19927
+ rules: [this.taxableBaseRequiredValidationRule]
19928
+ },
19929
+ {
19930
+ field: EnumCampoTributo.Aliquota,
19931
+ rules: [this.taxRateRequiredValidationRule]
19932
+ },
19933
+ {
19934
+ field: EnumCampoTributo.Valor,
19935
+ rules: [this.taxAmountRequiredValidationRule]
19936
+ }
19937
+ ],
18401
19938
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
18402
19939
  {
18403
19940
  field: EnumCampoTributo.BaseCalculo,
@@ -18466,6 +20003,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18466
20003
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18467
20004
  }
18468
20005
  ],
20006
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
20007
+ {
20008
+ field: EnumCampoTributo.BaseCalculo,
20009
+ rules: [this.taxableBaseRequiredValidationRule]
20010
+ },
20011
+ {
20012
+ field: EnumCampoTributo.Aliquota,
20013
+ rules: [this.taxRateRequiredValidationRule]
20014
+ },
20015
+ {
20016
+ field: EnumCampoTributo.Valor,
20017
+ rules: [this.taxAmountRequiredValidationRule]
20018
+ }
20019
+ ],
18469
20020
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
18470
20021
  {
18471
20022
  field: EnumCampoTributo.BaseCalculo,
@@ -18608,6 +20159,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18608
20159
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18609
20160
  }
18610
20161
  ],
20162
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
20163
+ {
20164
+ field: EnumCampoTributo.BaseCalculo,
20165
+ rules: [this.taxableBaseRequiredValidationRule]
20166
+ },
20167
+ {
20168
+ field: EnumCampoTributo.Aliquota,
20169
+ rules: [this.taxRateRequiredValidationRule]
20170
+ },
20171
+ {
20172
+ field: EnumCampoTributo.Valor,
20173
+ rules: [this.taxAmountRequiredValidationRule]
20174
+ }
20175
+ ],
18611
20176
  [EnumTipoTributo.CBS_DIFERIDO]: [
18612
20177
  {
18613
20178
  field: EnumCampoTributo.BaseCalculo,
@@ -18702,6 +20267,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18702
20267
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18703
20268
  }
18704
20269
  ],
20270
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
20271
+ {
20272
+ field: EnumCampoTributo.BaseCalculo,
20273
+ rules: [this.taxableBaseRequiredValidationRule]
20274
+ },
20275
+ {
20276
+ field: EnumCampoTributo.Aliquota,
20277
+ rules: [this.taxRateRequiredValidationRule]
20278
+ },
20279
+ {
20280
+ field: EnumCampoTributo.Valor,
20281
+ rules: [this.taxAmountRequiredValidationRule]
20282
+ }
20283
+ ],
18705
20284
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
18706
20285
  {
18707
20286
  field: EnumCampoTributo.BaseCalculo,
@@ -18770,6 +20349,20 @@ let IncomingInvoiceValidationRulesRegistry = class IncomingInvoiceValidationRule
18770
20349
  rules: [this.applyNetValueToDocumentRequiredValidationRule]
18771
20350
  }
18772
20351
  ],
20352
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
20353
+ {
20354
+ field: EnumCampoTributo.BaseCalculo,
20355
+ rules: [this.taxableBaseRequiredValidationRule]
20356
+ },
20357
+ {
20358
+ field: EnumCampoTributo.Aliquota,
20359
+ rules: [this.taxRateRequiredValidationRule]
20360
+ },
20361
+ {
20362
+ field: EnumCampoTributo.Valor,
20363
+ rules: [this.taxAmountRequiredValidationRule]
20364
+ }
20365
+ ],
18773
20366
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
18774
20367
  {
18775
20368
  field: EnumCampoTributo.BaseCalculo,
@@ -24258,6 +25851,20 @@ let PurchaseOrderValidationRulesRegistry = class PurchaseOrderValidationRulesReg
24258
25851
  rules: [this.taxAmountRequiredValidationRule]
24259
25852
  }
24260
25853
  ],
25854
+ [EnumTipoTributo.CBS_A_APROPRIAR]: [
25855
+ {
25856
+ field: EnumCampoTributo.BaseCalculo,
25857
+ rules: [this.taxableBaseRequiredValidationRule]
25858
+ },
25859
+ {
25860
+ field: EnumCampoTributo.Aliquota,
25861
+ rules: [this.taxRateRequiredValidationRule]
25862
+ },
25863
+ {
25864
+ field: EnumCampoTributo.Valor,
25865
+ rules: [this.taxAmountRequiredValidationRule]
25866
+ }
25867
+ ],
24261
25868
  [EnumTipoTributo.CBS_DIFERIDO]: [
24262
25869
  {
24263
25870
  field: EnumCampoTributo.BaseCalculo,
@@ -24320,6 +25927,20 @@ let PurchaseOrderValidationRulesRegistry = class PurchaseOrderValidationRulesReg
24320
25927
  rules: [this.taxAmountRequiredValidationRule]
24321
25928
  }
24322
25929
  ],
25930
+ [EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR]: [
25931
+ {
25932
+ field: EnumCampoTributo.BaseCalculo,
25933
+ rules: [this.taxableBaseRequiredValidationRule]
25934
+ },
25935
+ {
25936
+ field: EnumCampoTributo.Aliquota,
25937
+ rules: [this.taxRateRequiredValidationRule]
25938
+ },
25939
+ {
25940
+ field: EnumCampoTributo.Valor,
25941
+ rules: [this.taxAmountRequiredValidationRule]
25942
+ }
25943
+ ],
24323
25944
  [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
24324
25945
  {
24325
25946
  field: EnumCampoTributo.BaseCalculo,
@@ -24368,6 +25989,20 @@ let PurchaseOrderValidationRulesRegistry = class PurchaseOrderValidationRulesReg
24368
25989
  rules: [this.taxAmountRequiredValidationRule]
24369
25990
  }
24370
25991
  ],
25992
+ [EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR]: [
25993
+ {
25994
+ field: EnumCampoTributo.BaseCalculo,
25995
+ rules: [this.taxableBaseRequiredValidationRule]
25996
+ },
25997
+ {
25998
+ field: EnumCampoTributo.Aliquota,
25999
+ rules: [this.taxRateRequiredValidationRule]
26000
+ },
26001
+ {
26002
+ field: EnumCampoTributo.Valor,
26003
+ rules: [this.taxAmountRequiredValidationRule]
26004
+ }
26005
+ ],
24371
26006
  [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
24372
26007
  {
24373
26008
  field: EnumCampoTributo.BaseCalculo,
@@ -26218,17 +27853,20 @@ let ErpTributosComponent = class ErpTributosComponent {
26218
27853
  this.tributosValue.map((it) => {
26219
27854
  switch (it.tipoImposto) {
26220
27855
  case EnumTipoTributo.CBS:
27856
+ case EnumTipoTributo.CBS_A_APROPRIAR:
26221
27857
  case EnumTipoTributo.CBS_DIFERIDO:
26222
27858
  case EnumTipoTributo.CBS_CREDITO_PRESUMIDO:
26223
27859
  case EnumTipoTributo.CBS_TRIBUTACAO_REGULAR:
26224
27860
  this.montaCBS();
26225
27861
  break;
26226
27862
  case EnumTipoTributo.IBS_ESTADUAL:
27863
+ case EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR:
26227
27864
  case EnumTipoTributo.IBS_ESTADUAL_DIFERIDO:
26228
27865
  case EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR:
26229
27866
  this.montaIBSEstadual();
26230
27867
  break;
26231
27868
  case EnumTipoTributo.IBS_MUNICIPAL:
27869
+ case EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR:
26232
27870
  case EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO:
26233
27871
  case EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR:
26234
27872
  this.montaIBSMunicipal();
@@ -28035,7 +29673,18 @@ let ErpTributosComponent = class ErpTributosComponent {
28035
29673
  campo: EnumCampoTributo.ClassificacaoTributaria
28036
29674
  });
28037
29675
  }
28038
- item.unshift(Object.assign({ name: EnumTipoTributo.CBS, label: 'erpx.tributos.enum_tipo_tributo_cbs' }, this.montaCampos(campos, EnumTipoTributo.CBS)), Object.assign({ name: EnumTipoTributo.CBS_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_cbs_diferido' }, this.montaCampos([
29676
+ item.unshift(Object.assign({ name: EnumTipoTributo.CBS, label: 'erpx.tributos.enum_tipo_tributo_cbs' }, this.montaCampos(campos, EnumTipoTributo.CBS)), ...(this.isAccrualTaxDocument()
29677
+ ? [
29678
+ Object.assign({ name: EnumTipoTributo.CBS_A_APROPRIAR, label: 'erpx.tributos.enum_tipo_tributo_cbs_a_apropriar' }, this.montaCampos([
29679
+ { campo: EnumCampoTributo.BaseCalculo },
29680
+ { campo: EnumCampoTributo.Aliquota },
29681
+ {
29682
+ campo: EnumCampoTributo.Valor,
29683
+ disabled: true
29684
+ }
29685
+ ], EnumTipoTributo.CBS_A_APROPRIAR))
29686
+ ]
29687
+ : []), Object.assign({ name: EnumTipoTributo.CBS_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_cbs_diferido' }, this.montaCampos([
28039
29688
  { campo: EnumCampoTributo.BaseCalculo },
28040
29689
  { campo: EnumCampoTributo.Aliquota },
28041
29690
  { campo: EnumCampoTributo.Valor, disabled: true }
@@ -28111,7 +29760,18 @@ let ErpTributosComponent = class ErpTributosComponent {
28111
29760
  campo: EnumCampoTributo.AplicarValorLiquidoDocumento,
28112
29761
  grupo: EnumGrupoTributo.IBS_ESTADUAL
28113
29762
  }
28114
- ], EnumTipoTributo.IBS_ESTADUAL)), Object.assign({ name: EnumTipoTributo.IBS_ESTADUAL_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_ibs_estadual_diferido' }, this.montaCampos([
29763
+ ], EnumTipoTributo.IBS_ESTADUAL)), ...(this.isAccrualTaxDocument()
29764
+ ? [
29765
+ Object.assign({ name: EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR, label: 'erpx.tributos.enum_tipo_tributo_ibs_estadual_a_apropriar' }, this.montaCampos([
29766
+ { campo: EnumCampoTributo.BaseCalculo },
29767
+ { campo: EnumCampoTributo.Aliquota },
29768
+ {
29769
+ campo: EnumCampoTributo.Valor,
29770
+ disabled: true
29771
+ }
29772
+ ], EnumTipoTributo.IBS_ESTADUAL_A_APROPRIAR))
29773
+ ]
29774
+ : []), Object.assign({ name: EnumTipoTributo.IBS_ESTADUAL_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_ibs_estadual_diferido' }, this.montaCampos([
28115
29775
  { campo: EnumCampoTributo.BaseCalculo },
28116
29776
  { campo: EnumCampoTributo.Aliquota },
28117
29777
  { campo: EnumCampoTributo.Valor, disabled: true }
@@ -28202,7 +29862,18 @@ let ErpTributosComponent = class ErpTributosComponent {
28202
29862
  campo: EnumCampoTributo.AplicarValorLiquidoDocumento,
28203
29863
  grupo: EnumGrupoTributo.IBS_MUNICIPAL
28204
29864
  }
28205
- ], EnumTipoTributo.IBS_MUNICIPAL)), Object.assign({ name: EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_ibs_municipal_diferido' }, this.montaCampos([
29865
+ ], EnumTipoTributo.IBS_MUNICIPAL)), ...(this.isAccrualTaxDocument()
29866
+ ? [
29867
+ Object.assign({ name: EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR, label: 'erpx.tributos.enum_tipo_tributo_ibs_municipal_a_apropriar' }, this.montaCampos([
29868
+ { campo: EnumCampoTributo.BaseCalculo },
29869
+ { campo: EnumCampoTributo.Aliquota },
29870
+ {
29871
+ campo: EnumCampoTributo.Valor,
29872
+ disabled: true
29873
+ }
29874
+ ], EnumTipoTributo.IBS_MUNICIPAL_A_APROPRIAR))
29875
+ ]
29876
+ : []), Object.assign({ name: EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO, label: 'erpx.tributos.enum_tipo_tributo_ibs_municipal_diferido' }, this.montaCampos([
28206
29877
  { campo: EnumCampoTributo.BaseCalculo },
28207
29878
  { campo: EnumCampoTributo.Aliquota },
28208
29879
  { campo: EnumCampoTributo.Valor, disabled: true }
@@ -29669,7 +31340,15 @@ let ErpTributosComponent = class ErpTributosComponent {
29669
31340
  ? EnumLogicalOperator.Eq
29670
31341
  : EnumLogicalOperator.Ne,
29671
31342
  values: [EnumIndicativoPadrao.EXIGE]
29672
- },
31343
+ }
31344
+ ];
31345
+ if (tributo === EnumTipoTributo.CBS ||
31346
+ tributo === EnumTipoTributo.IBS_ESTADUAL ||
31347
+ tributo === EnumTipoTributo.IBS_MUNICIPAL ||
31348
+ tributo === EnumTipoTributo.CBS_AJUSTE ||
31349
+ tributo === EnumTipoTributo.IBS_AJUSTE)
31350
+ defaultFilter = [
31351
+ ...defaultFilter,
29673
31352
  {
29674
31353
  field: 'indGAjusteCompet',
29675
31354
  operator: tributo === EnumTipoTributo.CBS_AJUSTE ||
@@ -30829,6 +32508,10 @@ let ErpTributosComponent = class ErpTributosComponent {
30829
32508
  return (this.context.document === 'Incoming Invoice' ||
30830
32509
  this.context.document === 'Outgoing Invoice');
30831
32510
  }
32511
+ isAccrualTaxDocument() {
32512
+ return (this.context.document === 'Incoming Invoice' ||
32513
+ this.context.document === 'Purchase Order');
32514
+ }
30832
32515
  isFieldRequired(field, taxType) {
30833
32516
  var _a, _b, _c;
30834
32517
  const item = this.grupos
@@ -33923,5 +35606,5 @@ const fallback = {
33923
35606
  * Generated bundle index. Do not edit.
33924
35607
  */
33925
35608
 
33926
- export { BreadcrumbComponent, BreadcrumbModule, Breakpoints, EnumAplicarValorLiquidoDocumento, EnumCampoTributo, EnumEscriturarAliquotaISS, EnumFunruralIndicativoAquisicao, EnumGrupoTributo, EnumInvoiceOrigin, EnumModBc, EnumMotDes, EnumOriMer, EnumRegimeTributarioPisCofins, EnumSituacao, EnumTipImpCst, EnumTipOpe, EnumTipoControleProduto, EnumTipoItem, EnumTipoMovimentacao, EnumTipoTributo, ErpLoteSerieComponent, ErpLoteSerieModule, ErpRateioEditorComponent, ErpRateioEditorConverter, ErpRateioEditorModule, ErpResumoModule, ErpTributosComponent, ErpTributosModule, ExportUtils, enumTipCredRecup, fallback, isEmpty, isNotEmpty, isNullOrUndefined, nonNullish, ErpResumoComponent as ɵa, ErpResumoService as ɵb, TaxableBaseCalculationRule as ɵba, TaxAmountCalculator as ɵbb, EffectiveTaxRateCalculator as ɵbc, TaxRoundingService as ɵbd, TaxStore as ɵbe, TaxRateCalculationRule as ɵbf, EffectiveTaxRateCalculationRule as ɵbg, TaxAmountCalculationRule as ɵbh, GrossAmountCalculationRule as ɵbi, GrossAmountCalculator as ɵbj, TaxSituationCalculationRule as ɵbk, TaxClassificationCalculationRule as ɵbl, TaxCalculationTypeCalculationRule as ɵbm, ApplyNetValueToDocumentCalculationRule as ɵbn, ManualTaxCalculationRule as ɵbo, OutgoingInvoiceCalculationRulesRegistry as ɵbp, AssessmentPeriodCalculationRule as ɵbq, SaleOrderCalculationRulesRegistry as ɵbr, PurchaseOrderCalculationRulesRegistry as ɵbs, FocusService as ɵbt, ErpLoteSeriesService as ɵbu, QuantidadeDisponivelDemandaService as ɵbv, EntityService as ɵbw, QuantidadeDisponivelDemandaModule as ɵbx, ErpRateioEditorService as ɵby, LoadingContext as ɵc, ErpTributosService as ɵd, RulesService as ɵe, StatusRulesRegistry as ɵf, IncomingInvoiceStatusRulesRegistry as ɵg, TaxClassificationStatusRule as ɵh, ApplyNetValueToDocumentStatusRule as ɵi, OutgoingInvoiceStatusRulesRegistry as ɵj, SaleOrderStatusRulesRegistry as ɵk, PurchaseOrderStatusRulesRegistry as ɵl, ValidationRulesRegistry as ɵm, IncomingInvoiceValidationRulesRegistry as ɵn, TaxableBaseRequiredValidationRule as ɵo, TaxRateRequiredValidationRule as ɵp, TaxClassificationRequiredValidationRule as ɵq, TaxAmountRequiredValidationRule as ɵr, TaxSituationRequiredValidationRule as ɵs, ApplyNetValueToDocumentRequiredValidationRule as ɵt, OutgoingInvoiceValidationRulesRegistry as ɵu, AssessmentPeriodRequiredValidationRule as ɵv, SaleOrderValidationRulesRegistry as ɵw, PurchaseOrderValidationRulesRegistry as ɵx, CalculationRulesRegistry as ɵy, IncomingInvoiceCalculationRulesRegistry as ɵz };
35609
+ export { BreadcrumbComponent, BreadcrumbModule, Breakpoints, EnumAplicarValorLiquidoDocumento, EnumCampoTributo, EnumEscriturarAliquotaISS, EnumFunruralIndicativoAquisicao, EnumGrupoTributo, EnumInvoiceOrigin, EnumModBc, EnumMotDes, EnumOriMer, EnumRegimeTributarioPisCofins, EnumSituacao, EnumTipImpCst, EnumTipOpe, EnumTipoControleProduto, EnumTipoItem, EnumTipoMovimentacao, EnumTipoTributo, ErpLoteSerieComponent, ErpLoteSerieModule, ErpRateioEditorComponent, ErpRateioEditorConverter, ErpRateioEditorModule, ErpResumoModule, ErpTributosComponent, ErpTributosModule, ExportUtils, enumTipCredRecup, fallback, isEmpty, isNotEmpty, isNullOrUndefined, nonNullish, ErpResumoComponent as ɵa, ErpResumoService as ɵb, CalculationRulesRegistry as ɵba, IncomingInvoiceCalculationRulesRegistry as ɵbb, TaxableBaseCalculationRule as ɵbc, TaxAmountCalculator as ɵbd, EffectiveTaxRateCalculator as ɵbe, TaxRoundingService as ɵbf, TaxStore as ɵbg, TaxRateCalculationRule as ɵbh, EffectiveTaxRateCalculationRule as ɵbi, TaxAmountCalculationRule as ɵbj, GrossAmountCalculationRule as ɵbk, GrossAmountCalculator as ɵbl, TaxSituationCalculationRule as ɵbm, TaxClassificationCalculationRule as ɵbn, TaxCalculationTypeCalculationRule as ɵbo, ApplyNetValueToDocumentCalculationRule as ɵbp, ManualTaxCalculationRule as ɵbq, OutgoingInvoiceCalculationRulesRegistry as ɵbr, AssessmentPeriodCalculationRule as ɵbs, SaleOrderCalculationRulesRegistry as ɵbt, PurchaseOrderCalculationRulesRegistry as ɵbu, FocusService as ɵbv, ErpLoteSeriesService as ɵbw, QuantidadeDisponivelDemandaService as ɵbx, EntityService as ɵby, QuantidadeDisponivelDemandaModule as ɵbz, LoadingContext as ɵc, ErpRateioEditorService as ɵca, ErpTributosService as ɵd, RulesService as ɵe, StatusRulesRegistry as ɵf, IncomingInvoiceStatusRulesRegistry as ɵg, TaxClassificationStatusRule as ɵh, ApplyNetValueToDocumentStatusRule as ɵi, TaxableBaseStatusRule as ɵj, TaxRateStatusRule as ɵk, OutgoingInvoiceStatusRulesRegistry as ɵl, SaleOrderStatusRulesRegistry as ɵm, PurchaseOrderStatusRulesRegistry as ɵn, ValidationRulesRegistry as ɵo, IncomingInvoiceValidationRulesRegistry as ɵp, TaxableBaseRequiredValidationRule as ɵq, TaxRateRequiredValidationRule as ɵr, TaxClassificationRequiredValidationRule as ɵs, TaxAmountRequiredValidationRule as ɵt, TaxSituationRequiredValidationRule as ɵu, ApplyNetValueToDocumentRequiredValidationRule as ɵv, OutgoingInvoiceValidationRulesRegistry as ɵw, AssessmentPeriodRequiredValidationRule as ɵx, SaleOrderValidationRulesRegistry as ɵy, PurchaseOrderValidationRulesRegistry as ɵz };
33927
35610
  //# sourceMappingURL=senior-gestao-empresarial-erpx-components.js.map