@seidor-cloud-produtos/tax-core 0.0.63 → 0.0.65

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 (74) hide show
  1. package/dist/conversionDocuments/cce/Cce.conversion.js +27 -5
  2. package/dist/conversionDocuments/cce/Cce.conversion.js.map +1 -1
  3. package/dist/conversionDocuments/cce/Cce.conversion.mjs +27 -5
  4. package/dist/conversionDocuments/cce/Cce.conversion.mjs.map +1 -1
  5. package/dist/conversionDocuments/cce/utils/taxFactory.class.d.mts +3 -1
  6. package/dist/conversionDocuments/cce/utils/taxFactory.class.d.ts +3 -1
  7. package/dist/conversionDocuments/cce/utils/taxFactory.class.js +26 -4
  8. package/dist/conversionDocuments/cce/utils/taxFactory.class.js.map +1 -1
  9. package/dist/conversionDocuments/cce/utils/taxFactory.class.mjs +26 -4
  10. package/dist/conversionDocuments/cce/utils/taxFactory.class.mjs.map +1 -1
  11. package/dist/conversionDocuments/documents/useCases/modelConverterUseCase/model-converter.usecase.js +32 -12
  12. package/dist/conversionDocuments/documents/useCases/modelConverterUseCase/model-converter.usecase.js.map +1 -1
  13. package/dist/conversionDocuments/documents/useCases/modelConverterUseCase/model-converter.usecase.mjs +32 -12
  14. package/dist/conversionDocuments/documents/useCases/modelConverterUseCase/model-converter.usecase.mjs.map +1 -1
  15. package/dist/conversionDocuments/nfe/Nfe.conversion.js +5 -1
  16. package/dist/conversionDocuments/nfe/Nfe.conversion.js.map +1 -1
  17. package/dist/conversionDocuments/nfe/Nfe.conversion.mjs +5 -1
  18. package/dist/conversionDocuments/nfe/Nfe.conversion.mjs.map +1 -1
  19. package/dist/conversionDocuments/nfe/interfaces/request/Taxes.interface.d.mts +1 -0
  20. package/dist/conversionDocuments/nfe/interfaces/request/Taxes.interface.d.ts +1 -0
  21. package/dist/conversionDocuments/nfe/interfaces/request/Taxes.interface.js.map +1 -1
  22. package/dist/conversionDocuments/nfe/utils/taxFactory.class.js +5 -1
  23. package/dist/conversionDocuments/nfe/utils/taxFactory.class.js.map +1 -1
  24. package/dist/conversionDocuments/nfe/utils/taxFactory.class.mjs +5 -1
  25. package/dist/conversionDocuments/nfe/utils/taxFactory.class.mjs.map +1 -1
  26. package/dist/documents/infra/db/mongo-builder.js +5 -5
  27. package/dist/documents/infra/db/mongo-builder.js.map +1 -1
  28. package/dist/documents/infra/db/mongo-builder.mjs +5 -5
  29. package/dist/documents/infra/db/mongo-builder.mjs.map +1 -1
  30. package/dist/documents/infra/db/mongo.js +5 -5
  31. package/dist/documents/infra/db/mongo.js.map +1 -1
  32. package/dist/documents/infra/db/mongo.mjs +5 -5
  33. package/dist/documents/infra/db/mongo.mjs.map +1 -1
  34. package/dist/errors/dictionary/codes.d.mts +28 -0
  35. package/dist/errors/dictionary/codes.d.ts +28 -0
  36. package/dist/errors/dictionary/codes.js +42 -0
  37. package/dist/errors/dictionary/codes.js.map +1 -0
  38. package/dist/errors/dictionary/codes.mjs +18 -0
  39. package/dist/errors/dictionary/codes.mjs.map +1 -0
  40. package/dist/errors/dictionary/parameters.d.mts +42 -0
  41. package/dist/errors/dictionary/parameters.d.ts +42 -0
  42. package/dist/errors/dictionary/parameters.js +56 -0
  43. package/dist/errors/dictionary/parameters.js.map +1 -0
  44. package/dist/errors/dictionary/parameters.mjs +30 -0
  45. package/dist/errors/dictionary/parameters.mjs.map +1 -0
  46. package/dist/errors/dictionary/templates.d.mts +19 -0
  47. package/dist/errors/dictionary/templates.d.ts +19 -0
  48. package/dist/errors/dictionary/templates.js +181 -0
  49. package/dist/errors/dictionary/templates.js.map +1 -0
  50. package/dist/errors/dictionary/templates.mjs +156 -0
  51. package/dist/errors/dictionary/templates.mjs.map +1 -0
  52. package/dist/errors/dictionary/types.d.mts +11 -0
  53. package/dist/errors/dictionary/types.d.ts +11 -0
  54. package/dist/errors/dictionary/types.js +40 -0
  55. package/dist/errors/dictionary/types.js.map +1 -0
  56. package/dist/errors/dictionary/types.mjs +15 -0
  57. package/dist/errors/dictionary/types.mjs.map +1 -0
  58. package/dist/errors/dictionary/utils.d.mts +12 -0
  59. package/dist/errors/dictionary/utils.d.ts +12 -0
  60. package/dist/errors/dictionary/utils.js +267 -0
  61. package/dist/errors/dictionary/utils.js.map +1 -0
  62. package/dist/errors/dictionary/utils.mjs +242 -0
  63. package/dist/errors/dictionary/utils.mjs.map +1 -0
  64. package/dist/errors/dictionary/validators.d.mts +9 -0
  65. package/dist/errors/dictionary/validators.d.ts +9 -0
  66. package/dist/errors/dictionary/validators.js +215 -0
  67. package/dist/errors/dictionary/validators.js.map +1 -0
  68. package/dist/errors/dictionary/validators.mjs +190 -0
  69. package/dist/errors/dictionary/validators.mjs.map +1 -0
  70. package/dist/index.js +37 -17
  71. package/dist/index.js.map +1 -1
  72. package/dist/index.mjs +37 -17
  73. package/dist/index.mjs.map +1 -1
  74. package/package.json +1 -1
@@ -3941,12 +3941,18 @@ var BuilderTax = class {
3941
3941
  }
3942
3942
  };
3943
3943
 
3944
+ // lib/documents/utils/calculate-base-value.ts
3945
+ function calculate_bases_values(percentage, value) {
3946
+ const calculateBaseValue = percentage && value ? value / 100 * percentage : 0;
3947
+ return calculateBaseValue;
3948
+ }
3949
+
3944
3950
  // lib/conversionDocuments/cce/utils/taxFactory.class.ts
3945
3951
  var TaxFactory = class {
3946
- static createTax(type, taxData) {
3952
+ static createTax(type, taxData, itemData) {
3947
3953
  switch (type) {
3948
3954
  case "icms":
3949
- return this.withIcms(taxData);
3955
+ return this.withIcms(taxData, itemData);
3950
3956
  case "pis":
3951
3957
  return this.withPis(taxData);
3952
3958
  case "cofins":
@@ -3955,11 +3961,27 @@ var TaxFactory = class {
3955
3961
  return null;
3956
3962
  }
3957
3963
  }
3958
- static withIcms(tax) {
3964
+ static withIcms(tax, data) {
3959
3965
  if (!tax) return;
3966
+ const base = calculate_bases_values(
3967
+ toSafeNumber(tax?.percBaseCalculoICMS),
3968
+ toSafeNumber(data?.valorItem)
3969
+ );
3970
+ const otherBase = calculate_bases_values(
3971
+ toSafeNumber(tax?.percBaseOutrasICMS),
3972
+ toSafeNumber(data?.valorItem)
3973
+ );
3974
+ const exemptNonTaxedBase = calculate_bases_values(
3975
+ toSafeNumber(tax?.percBaseIsentaICMS),
3976
+ toSafeNumber(data?.valorItem)
3977
+ );
3978
+ const nonTaxableValue = tax?.vRedBcICMS ? toSafeNumber(tax?.vRedBcICMS) : calculate_bases_values(
3979
+ toSafeNumber(tax?.vRedBcICMS),
3980
+ toSafeNumber(data?.valorItem)
3981
+ );
3960
3982
  return new BuilderTax().withCategory("ICMS" /* ICMS */).withWithholdingTax(false).withRate(validationValue(toSafeNumber(tax?.aliqICMS))).withClassificationCode(validationValue(tax?.cstICMS)).withProductOrigin(
3961
3983
  validationValue(ProductOriginEnum.fromOldValue(tax?.orig))
3962
- ).withNonTaxableValue(validationValue(toSafeNumber(tax?.vRedBcICMS))).withValue(validationValue(toSafeNumber(tax?.valorICMS))).build();
3984
+ ).withBaseAmount(validationValue(toSafeNumber(base))).withOtherBaseValue(validationValue(otherBase)).withExemptNonTaxedBase(validationValue(exemptNonTaxedBase)).withNonTaxableValue(validationValue(nonTaxableValue)).withValue(validationValue(toSafeNumber(tax?.valorICMS))).build();
3963
3985
  }
3964
3986
  static withPis(tax) {
3965
3987
  if (!tax) return;
@@ -4056,7 +4078,7 @@ var CceConversion = class {
4056
4078
  const taxes = [];
4057
4079
  if (data?.impostos) {
4058
4080
  for (const key of ["icms", "pis", "cofins"]) {
4059
- const taxData = TaxFactory.createTax(key, data?.impostos);
4081
+ const taxData = TaxFactory.createTax(key, data?.impostos, data);
4060
4082
  if (taxData) {
4061
4083
  taxes.push(taxData);
4062
4084
  }