@silexpert/core 1.1.390 → 1.1.393

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 (157) hide show
  1. package/dist/cjs/api/resources/PrevisionalForm.d.ts +10 -0
  2. package/dist/cjs/api/resources/PrevisionalForm.d.ts.map +1 -0
  3. package/dist/cjs/api/resources/PrevisionalForm.js +23 -0
  4. package/dist/cjs/api/resources/PrevisionalForm.js.map +1 -0
  5. package/dist/cjs/api/resources/Vat.d.ts +3 -1
  6. package/dist/cjs/api/resources/Vat.d.ts.map +1 -1
  7. package/dist/cjs/api/resources/Vat.js +6 -0
  8. package/dist/cjs/api/resources/Vat.js.map +1 -1
  9. package/dist/cjs/api/resources.d.ts +2 -0
  10. package/dist/cjs/api/resources.d.ts.map +1 -1
  11. package/dist/cjs/api/resources.js +2 -0
  12. package/dist/cjs/api/resources.js.map +1 -1
  13. package/dist/cjs/types/Enum/AutomaticRegistration.d.ts +4 -2
  14. package/dist/cjs/types/Enum/AutomaticRegistration.d.ts.map +1 -1
  15. package/dist/cjs/types/Enum/AutomaticRegistration.js +3 -1
  16. package/dist/cjs/types/Enum/AutomaticRegistration.js.map +1 -1
  17. package/dist/cjs/types/Enum/Ged.d.ts +2 -1
  18. package/dist/cjs/types/Enum/Ged.d.ts.map +1 -1
  19. package/dist/cjs/types/Enum/Ged.js +2 -0
  20. package/dist/cjs/types/Enum/Ged.js.map +1 -1
  21. package/dist/cjs/types/Enum/Log.d.ts +2 -1
  22. package/dist/cjs/types/Enum/Log.d.ts.map +1 -1
  23. package/dist/cjs/types/Enum/Log.js +1 -0
  24. package/dist/cjs/types/Enum/Log.js.map +1 -1
  25. package/dist/cjs/types/Enum/PrevisionalForm.d.ts +16 -0
  26. package/dist/cjs/types/Enum/PrevisionalForm.d.ts.map +1 -0
  27. package/dist/cjs/types/Enum/PrevisionalForm.js +15 -0
  28. package/dist/cjs/types/Enum/PrevisionalForm.js.map +1 -0
  29. package/dist/cjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.d.ts +76 -0
  30. package/dist/cjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.d.ts.map +1 -0
  31. package/dist/cjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.js +217 -0
  32. package/dist/cjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.js.map +1 -0
  33. package/dist/cjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.d.ts +65 -0
  34. package/dist/cjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.d.ts.map +1 -0
  35. package/dist/cjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.js +3 -0
  36. package/dist/cjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.js.map +1 -0
  37. package/dist/cjs/types/Interface/api/registration/CreateRegistration.d.ts +7 -0
  38. package/dist/cjs/types/Interface/api/registration/CreateRegistration.d.ts.map +1 -1
  39. package/dist/cjs/types/Interface/api/registration/CreateRegistration.js +31 -1
  40. package/dist/cjs/types/Interface/api/registration/CreateRegistration.js.map +1 -1
  41. package/dist/cjs/types/Interface/api/registration/DeclareRegistration.d.ts +4 -0
  42. package/dist/cjs/types/Interface/api/registration/DeclareRegistration.d.ts.map +1 -1
  43. package/dist/cjs/types/Interface/api/registration/DeclareRegistration.js +16 -1
  44. package/dist/cjs/types/Interface/api/registration/DeclareRegistration.js.map +1 -1
  45. package/dist/cjs/types/Interface/api/revision/Create.d.ts +1 -0
  46. package/dist/cjs/types/Interface/api/revision/Create.d.ts.map +1 -1
  47. package/dist/cjs/types/Interface/api/revision/Create.js +5 -0
  48. package/dist/cjs/types/Interface/api/revision/Create.js.map +1 -1
  49. package/dist/cjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.d.ts +6 -0
  50. package/dist/cjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.d.ts.map +1 -1
  51. package/dist/cjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.js +4 -1
  52. package/dist/cjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.js.map +1 -1
  53. package/dist/cjs/types/Interface/models/IAutomaticRegistration.d.ts +1 -1
  54. package/dist/cjs/types/Interface/models/IAutomaticRegistration.d.ts.map +1 -1
  55. package/dist/cjs/types/Interface/models/IAutomaticRegistration.js.map +1 -1
  56. package/dist/cjs/types/Interface/models/IPrevisionalForm.d.ts +13 -0
  57. package/dist/cjs/types/Interface/models/IPrevisionalForm.d.ts.map +1 -0
  58. package/dist/cjs/types/Interface/models/IPrevisionalForm.js +3 -0
  59. package/dist/cjs/types/Interface/models/IPrevisionalForm.js.map +1 -0
  60. package/dist/cjs/types/Interface/models/IRefund.d.ts +1 -0
  61. package/dist/cjs/types/Interface/models/IRefund.d.ts.map +1 -1
  62. package/dist/cjs/types/Interface/models/IRefund.js.map +1 -1
  63. package/dist/cjs/types/index.d.ts +4 -0
  64. package/dist/cjs/types/index.d.ts.map +1 -1
  65. package/dist/cjs/types/index.js +4 -0
  66. package/dist/cjs/types/index.js.map +1 -1
  67. package/dist/cjs/utils/commercialManagement/document.d.ts.map +1 -1
  68. package/dist/cjs/utils/commercialManagement/document.js +2 -1
  69. package/dist/cjs/utils/commercialManagement/document.js.map +1 -1
  70. package/dist/mjs/api/resources/PrevisionalForm.d.ts +10 -0
  71. package/dist/mjs/api/resources/PrevisionalForm.d.ts.map +1 -0
  72. package/dist/mjs/api/resources/PrevisionalForm.js +23 -0
  73. package/dist/mjs/api/resources/PrevisionalForm.js.map +1 -0
  74. package/dist/mjs/api/resources/Vat.d.ts +3 -1
  75. package/dist/mjs/api/resources/Vat.d.ts.map +1 -1
  76. package/dist/mjs/api/resources/Vat.js +6 -0
  77. package/dist/mjs/api/resources/Vat.js.map +1 -1
  78. package/dist/mjs/api/resources.d.ts +2 -0
  79. package/dist/mjs/api/resources.d.ts.map +1 -1
  80. package/dist/mjs/api/resources.js +2 -0
  81. package/dist/mjs/api/resources.js.map +1 -1
  82. package/dist/mjs/types/Enum/AutomaticRegistration.d.ts +4 -2
  83. package/dist/mjs/types/Enum/AutomaticRegistration.d.ts.map +1 -1
  84. package/dist/mjs/types/Enum/AutomaticRegistration.js +3 -1
  85. package/dist/mjs/types/Enum/AutomaticRegistration.js.map +1 -1
  86. package/dist/mjs/types/Enum/Ged.d.ts +2 -1
  87. package/dist/mjs/types/Enum/Ged.d.ts.map +1 -1
  88. package/dist/mjs/types/Enum/Ged.js +2 -0
  89. package/dist/mjs/types/Enum/Ged.js.map +1 -1
  90. package/dist/mjs/types/Enum/Log.d.ts +2 -1
  91. package/dist/mjs/types/Enum/Log.d.ts.map +1 -1
  92. package/dist/mjs/types/Enum/Log.js +1 -0
  93. package/dist/mjs/types/Enum/Log.js.map +1 -1
  94. package/dist/mjs/types/Enum/PrevisionalForm.d.ts +16 -0
  95. package/dist/mjs/types/Enum/PrevisionalForm.d.ts.map +1 -0
  96. package/dist/mjs/types/Enum/PrevisionalForm.js +12 -0
  97. package/dist/mjs/types/Enum/PrevisionalForm.js.map +1 -0
  98. package/dist/mjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.d.ts +76 -0
  99. package/dist/mjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.d.ts.map +1 -0
  100. package/dist/mjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.js +277 -0
  101. package/dist/mjs/types/Interface/api/previsionalForm/CreatePrevisionalForm.js.map +1 -0
  102. package/dist/mjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.d.ts +65 -0
  103. package/dist/mjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.d.ts.map +1 -0
  104. package/dist/mjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.js +2 -0
  105. package/dist/mjs/types/Interface/api/previsionalForm/PrevisionalFormPayload.js.map +1 -0
  106. package/dist/mjs/types/Interface/api/registration/CreateRegistration.d.ts +7 -0
  107. package/dist/mjs/types/Interface/api/registration/CreateRegistration.d.ts.map +1 -1
  108. package/dist/mjs/types/Interface/api/registration/CreateRegistration.js +35 -1
  109. package/dist/mjs/types/Interface/api/registration/CreateRegistration.js.map +1 -1
  110. package/dist/mjs/types/Interface/api/registration/DeclareRegistration.d.ts +4 -0
  111. package/dist/mjs/types/Interface/api/registration/DeclareRegistration.d.ts.map +1 -1
  112. package/dist/mjs/types/Interface/api/registration/DeclareRegistration.js +16 -0
  113. package/dist/mjs/types/Interface/api/registration/DeclareRegistration.js.map +1 -1
  114. package/dist/mjs/types/Interface/api/revision/Create.d.ts +1 -0
  115. package/dist/mjs/types/Interface/api/revision/Create.d.ts.map +1 -1
  116. package/dist/mjs/types/Interface/api/revision/Create.js +6 -0
  117. package/dist/mjs/types/Interface/api/revision/Create.js.map +1 -1
  118. package/dist/mjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.d.ts +6 -0
  119. package/dist/mjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.d.ts.map +1 -1
  120. package/dist/mjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.js +5 -0
  121. package/dist/mjs/types/Interface/api/vatDeclaration/ReadVatDeclaration.js.map +1 -1
  122. package/dist/mjs/types/Interface/models/IAutomaticRegistration.d.ts +1 -1
  123. package/dist/mjs/types/Interface/models/IAutomaticRegistration.d.ts.map +1 -1
  124. package/dist/mjs/types/Interface/models/IAutomaticRegistration.js.map +1 -1
  125. package/dist/mjs/types/Interface/models/IPrevisionalForm.d.ts +13 -0
  126. package/dist/mjs/types/Interface/models/IPrevisionalForm.d.ts.map +1 -0
  127. package/dist/mjs/types/Interface/models/IPrevisionalForm.js +2 -0
  128. package/dist/mjs/types/Interface/models/IPrevisionalForm.js.map +1 -0
  129. package/dist/mjs/types/Interface/models/IRefund.d.ts +1 -0
  130. package/dist/mjs/types/Interface/models/IRefund.d.ts.map +1 -1
  131. package/dist/mjs/types/Interface/models/IRefund.js.map +1 -1
  132. package/dist/mjs/types/index.d.ts +4 -0
  133. package/dist/mjs/types/index.d.ts.map +1 -1
  134. package/dist/mjs/types/index.js +4 -0
  135. package/dist/mjs/types/index.js.map +1 -1
  136. package/dist/mjs/utils/commercialManagement/document.d.ts.map +1 -1
  137. package/dist/mjs/utils/commercialManagement/document.js +6 -5
  138. package/dist/mjs/utils/commercialManagement/document.js.map +1 -1
  139. package/package.json +1 -1
  140. package/ts/api/resources/PrevisionalForm.ts +28 -0
  141. package/ts/api/resources/Vat.ts +9 -1
  142. package/ts/api/resources.ts +2 -0
  143. package/ts/types/Enum/AutomaticRegistration.ts +3 -1
  144. package/ts/types/Enum/Ged.ts +2 -0
  145. package/ts/types/Enum/Log.ts +1 -0
  146. package/ts/types/Enum/PrevisionalForm.ts +11 -0
  147. package/ts/types/Interface/api/previsionalForm/CreatePrevisionalForm.ts +177 -0
  148. package/ts/types/Interface/api/previsionalForm/PrevisionalFormPayload.ts +73 -0
  149. package/ts/types/Interface/api/registration/CreateRegistration.ts +27 -0
  150. package/ts/types/Interface/api/registration/DeclareRegistration.ts +12 -0
  151. package/ts/types/Interface/api/revision/Create.ts +5 -1
  152. package/ts/types/Interface/api/vatDeclaration/ReadVatDeclaration.ts +7 -0
  153. package/ts/types/Interface/models/IAutomaticRegistration.ts +1 -1
  154. package/ts/types/Interface/models/IPrevisionalForm.ts +15 -0
  155. package/ts/types/Interface/models/IRefund.ts +1 -0
  156. package/ts/types/index.ts +4 -0
  157. package/ts/utils/commercialManagement/document.ts +7 -5
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,IAAI,MAAM,EAAE,IAAI,IAAI,KAAK,GACzE,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EACL,sBAAsB,EAAE,OAAO,EAAE,QAAQ,GAC1C,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,iCAAiC,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAC3B,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAW3B,MAAM,UAAU,0BAA0B,CAAC,qBAA0C,EAAE,OAAsD,EAAE,mBAAmB,GAAG,KAAK,EAAE,UAA8B,SAAS;IACjN,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9G,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5J,MAAM,UAAU,GAAG,iCAAiC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAEzE,IAAI,UAAU,GAAiC,SAAS,CAAC;IAEzD,IAAI,OAAO,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAExK,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;YACxE,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;YAC3E,OAAO;gBACL,GAAG,CAAC;gBACJ,aAAa,EAAE,8BAA8B,CAAC,IAAI,CAAC;gBACnD,eAAe,EAAE,8BAA8B,CAAC,KAAK,CAAC;aACvD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAA2G;QACnH,GAAG,OAAO;QACV,UAAU;QACV,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,GAAG;QACvC,qBAAqB;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;QACpC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;QAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;QACtC,YAAY,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY,IAAI,IAAI;QACpD,QAAQ;QACR,IAAI;QACJ,gBAAgB,EAAE,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC;QACtD,gBAAgB,EAAE,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC/E,2BAA2B,EAAE,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC1F,wBAAwB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,8BAA8B,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI;QACpH,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC1F,yBAAyB,EAAE,8BAA8B,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC/F,yBAAyB,EAAE,8BAA8B,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxH,oCAAoC,EAAE,8BAA8B,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;QAC9L,uBAAuB,EAAE,8BAA8B,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/E,IAAI,EAAE;YACJ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,OAAO,CAAC,YAAY;YACpD,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACvF,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;SACvF;QACD,gBAAgB,EAAE,OAAO,CAAC,OAAO;YAC/B,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;iBAC7B,WAAW,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC;iBACxG,IAAI,EAAE;YACT,CAAC,CAAC,IAAI;QACR,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QACtF,uBAAuB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3G,qBAAqB,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QACrG,2BAA2B,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CACtC;QACD,aAAa;QACb,UAAU,EAAE,KAAK,CACf,QAAQ;aACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,KAAK,IAAI,CAAC;aAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CACpC;QACD,2BAA2B,EACzB,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC;YACrE,EAAE,KAAK,IAAI,IAAI;QACnB,aAAa;QACb,WAAW,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAmB;QAClF,SAAS,EAAE,GAAG,cAAc,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;QACjE,mBAAmB;QACnB,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAC;IAEF,MAAM,cAAc,GAAG,IAAI,4BAA4B,EAAE,CAAC;IAC1D,MAAM,gBAAgB,GAAG;QACvB,mBAAmB,CAAC,KAAK;QACzB,mBAAmB,CAAC,GAAG;KACxB,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC/B,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB;QACrC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC;IAEvC,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC;QAC/C,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,GAAG,IAAI;YACP,OAAO,EACL,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAC9C,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;gBACvC,CAAC,CAAC,IAAI;YACV,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAClC,GAAG,CAAC;gBACJ,OAAO,EACL,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;oBACxC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;oBACpC,CAAC,CAAC,IAAI;aACX,CAAC,CAAC;YACH,IAAI,EAAE,UAAU,IAAI,IAAI;SACzB,CAAC;QACF,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE;YACxC,GAAG,IAAI;YACP,QAAQ,EAAE,gBAAgB,IAAI,IAAI;SACnC,CAAC;QACF,IAAI;KACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAwB,EAAE,mBAAmB,GAAG,KAAK,EAAE,UAA8B,SAAS;IAC/H,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG;QACX,GAAG,MAAM,CAAC,OAAO;QACjB,yBAAyB,EAAE,8BAA8B,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC1F,yBAAyB,EAAE,8BAA8B,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC1F,iBAAiB,EAAE,8BAA8B,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACpH,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;QACtG,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,aAAa;QACb,WAAW,EAAE,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAmB;QAClF,mBAAmB;KACpB,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,0BAA0B,EAAE,CAAC;IAEtD,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;KAC9C,CAAC;AACJ,CAAC","sourcesContent":["import {\n orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq,\n} from 'lodash';\nimport * as dayjs from 'dayjs';\nimport { ReadCommercialDocumentTemplate, ReadDocumentEditing, ReadVatEditing } from '../../types/Interface/api/commercialManagement/Read';\nimport {\n AccountingCategoryList, FontIds, fontList,\n} from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument, CreateMailHeader, CreatePreSaleDocument, ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\n\nconst ejs = require('ejs');\nrequire('dayjs/locale/fr');\n\ntype brandColorType = {\n primary: string,\n primary50: string,\n primary100: string,\n primary300: string,\n primary500: string,\n primary700: string\n};\n\nexport function generateCommercialDocument(idEstimateInvoiceType: EstimateInvoiceType, payload: CreateInvoiceDocument | CreatePreSaleDocument, shouldHideBrandName = false, nodeEnv: string | undefined = undefined): ReadCommercialDocumentTemplate {\n const products = _orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = _orderBy(Object.values(_groupBy(products, 'vatFormatted')).map((v) => (vatToReadVatEditing(v)), 'value')).filter((v) => v.id !== Vat.MARGE.id);\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(_groupBy(payload.advanceProducts, 'vatFormatted')).map((v) => (vatToReadVatEditing(v)), 'value').filter((v) => v.id !== Vat.MARGE.id);\n \n forcedVats = vats.map(v => {\n const base = v.base - (advanceVats.find(a => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find(a => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const data: ReadDocumentEditing & { brandColors: brandColorType, brandName: string, shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties ?? null,\n compensation: payload.compensation ?? null,\n discount: payload.discount ?? null,\n vatMention: payload.vatMention ?? null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, 'totalTaxExcluded'),\n totalTaxIncluded: _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount'),\n totalTaxAndDiscountIncluded: _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount'),\n generalDiscountFormatted: payload.generalDiscount2 ? integerToFormattedAmountString(payload.generalDiscount2) : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount')),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount') - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0)),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`.split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find(\n (p) => p.discount2 && p.discount2 > 0,\n ),\n // @ts-ignore\n marginVats: _uniq(\n products\n .filter((p) => p.marginVatFormatted !== null)\n .map((p) => p.marginVatFormatted),\n ),\n accountingCategoryFormatted:\n AccountingCategoryList.find((a) => a.id === payload.accountingCategory)\n ?.label ?? null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv })}`,\n shouldHideBrandName,\n paymentType: payload.paymentType,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [\n EstimateInvoiceType.DEVIS,\n EstimateInvoiceType.BON,\n ].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment:\n data.comment && typeof data.comment === 'string'\n ? data.comment?.replace(/\\n/g, '<br/>')\n : null,\n products: data.products.map((p) => ({\n ...p,\n comment:\n p.comment && typeof p.comment === 'string'\n ? p.comment?.replace(/\\n/g, '<br/>')\n : null,\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(params: CreateMailHeader, shouldHideBrandName = false, nodeEnv: string | undefined = undefined): ReadCommercialMailTemplate {\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded - params.payload.totalTaxExcluded),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}"]}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round,\n} from 'lodash';\nimport * as dayjs from 'dayjs';\nimport { ReadCommercialDocumentTemplate, ReadDocumentEditing, ReadVatEditing } from '../../types/Interface/api/commercialManagement/Read';\nimport {\n AccountingCategoryList, FontIds, fontList,\n} from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument, CreateMailHeader, CreatePreSaleDocument, ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\n\nconst ejs = require('ejs');\nrequire('dayjs/locale/fr');\n\ntype brandColorType = {\n primary: string,\n primary50: string,\n primary100: string,\n primary300: string,\n primary500: string,\n primary700: string\n};\n\nexport function generateCommercialDocument(idEstimateInvoiceType: EstimateInvoiceType, payload: CreateInvoiceDocument | CreatePreSaleDocument, shouldHideBrandName = false, nodeEnv: string | undefined = undefined): ReadCommercialDocumentTemplate {\n const products = _orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = _orderBy(Object.values(_groupBy(products, 'vatFormatted')).map((v) => (vatToReadVatEditing(v)), 'value')).filter((v) => v.id !== Vat.MARGE.id);\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(_groupBy(payload.advanceProducts, 'vatFormatted')).map((v) => (vatToReadVatEditing(v)), 'value').filter((v) => v.id !== Vat.MARGE.id);\n \n forcedVats = vats.map(v => {\n const base = v.base - (advanceVats.find(a => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find(a => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');\n\n const data: ReadDocumentEditing & { brandColors: brandColorType, brandName: string, shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties ?? null,\n compensation: payload.compensation ?? null,\n discount: payload.discount ?? null,\n vatMention: payload.vatMention ?? null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, 'totalTaxExcluded'),\n totalTaxIncluded:_round(totalTaxIncluded),\n totalTaxAndDiscountIncluded: _round(totalTaxIncluded),\n generalDiscountFormatted: payload.generalDiscount2 ? integerToFormattedAmountString(payload.generalDiscount2) : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0)),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`.split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find(\n (p) => p.discount2 && p.discount2 > 0,\n ),\n // @ts-ignore\n marginVats: _uniq(\n products\n .filter((p) => p.marginVatFormatted !== null)\n .map((p) => p.marginVatFormatted),\n ),\n accountingCategoryFormatted:\n AccountingCategoryList.find((a) => a.id === payload.accountingCategory)\n ?.label ?? null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv })}`,\n shouldHideBrandName,\n paymentType: payload.paymentType,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [\n EstimateInvoiceType.DEVIS,\n EstimateInvoiceType.BON,\n ].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment:\n data.comment && typeof data.comment === 'string'\n ? data.comment?.replace(/\\n/g, '<br/>')\n : null,\n products: data.products.map((p) => ({\n ...p,\n comment:\n p.comment && typeof p.comment === 'string'\n ? p.comment?.replace(/\\n/g, '<br/>')\n : null,\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(params: CreateMailHeader, shouldHideBrandName = false, nodeEnv: string | undefined = undefined): ReadCommercialMailTemplate {\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded - params.payload.totalTaxExcluded),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@silexpert/core",
3
- "version": "1.1.390",
3
+ "version": "1.1.393",
4
4
  "description": "Silex Core perform HTTP Request and object binding. Silex core helps developers to retrieve and return formatted object",
5
5
  "homepage": "https://gitlab.compta-clementine.fr/dev/silex-api",
6
6
  "main": "dist/cjs/index.js",
@@ -0,0 +1,28 @@
1
+ import { CreatePrevisionalForm, IPrevisionalForm } from '../..';
2
+ import { Resource } from '../Resource';
3
+
4
+ export class PrevisionalForm extends Resource {
5
+ create(body: CreatePrevisionalForm): Promise<IPrevisionalForm> {
6
+ return this.axios.$post('/previsional-form', body);
7
+ }
8
+
9
+ get(id: number, signal?: AbortSignal): Promise<IPrevisionalForm> {
10
+ return this.axios.$get(`/previsional-form/${id}`, {
11
+ ...signal && { signal },
12
+ });
13
+ }
14
+
15
+ getAllBySociety(idSociety: number, signal?: AbortSignal): Promise<IPrevisionalForm[]> {
16
+ return this.axios.$get(`/societies/${idSociety}/previsional-form`, {
17
+ ...signal && { signal },
18
+ });
19
+ }
20
+
21
+ update(id: number, body: Partial<CreatePrevisionalForm>): Promise<IPrevisionalForm> {
22
+ return this.axios.$put(`/previsional-form/${id}`, body);
23
+ }
24
+
25
+ delete(id: number): Promise<true> {
26
+ return this.axios.$delete(`/previsional-form/${id}`);
27
+ }
28
+ }
@@ -1,5 +1,5 @@
1
1
  import {
2
- BasePaginate, CreateRegistrationDetail, DeclareVatRegistration, IAccountingTransaction, ICustomerVat, QueryPaginatedRegistration, QueryPreviousVatDeclaration, QueryVatEntry, QueryVatMigrationEntry, ReadFormattedAccountingTransaction, ReadRegistration, ReadVatDeclarationUpdatedEntry, ReadVatEntry, ReadVatVariousOperations, UpdateOrCreateVatAdvance, UpdateOrCreateVatRegistration,
2
+ BasePaginate, CreateAndSendVatMail, CreateRegistrationDetail, DeclareVatRegistration, IAccountingTransaction, ICustomerVat, QueryPaginatedRegistration, QueryPreviousVatDeclaration, QueryVatEntry, QueryVatMigrationEntry, ReadFormattedAccountingTransaction, ReadRegistration, ReadVatDeclarationUpdatedEntry, ReadVatEntry, ReadVatMailPreview, ReadVatVariousOperations, UpdateOrCreateVatAdvance, UpdateOrCreateVatRegistration,
3
3
  } from '../..';
4
4
  import { Resource } from '../Resource';
5
5
 
@@ -69,4 +69,12 @@ export class Vat extends Resource {
69
69
  getAllAdvances(idExercice: number): Promise<ICustomerVat[]> {
70
70
  return this.axios.$get(`/exercices/${idExercice}/vat/advances`);
71
71
  }
72
+
73
+ getMailData(idCustomerVat: number): Promise<ReadVatMailPreview> {
74
+ return this.axios.$get(`/vat/advances/${idCustomerVat}/preview-mail`);
75
+ }
76
+
77
+ sendByMail(idCustomerVat: number, payload: CreateAndSendVatMail): Promise<ICustomerVat> {
78
+ return this.axios.$post(`/vat/advances/${idCustomerVat}`, payload);
79
+ }
72
80
  }
@@ -167,6 +167,7 @@ import { BankConnection } from './resources/BankConnection';
167
167
  import { ToDoExpress } from './resources/ToDoExpress';
168
168
  import { JuridicalMission } from './resources/JuridicalMission';
169
169
  import { PrestationComplementary } from './resources/PrestationComplementary';
170
+ import { PrevisionalForm } from './resources/PrevisionalForm';
170
171
 
171
172
  export const resources = {
172
173
  simulation: Simulation,
@@ -338,4 +339,5 @@ export const resources = {
338
339
  toDoExpress: ToDoExpress,
339
340
  juridicalMission: JuridicalMission,
340
341
  prestationComplementary: PrestationComplementary,
342
+ previsionalForm: PrevisionalForm,
341
343
  };
@@ -1,4 +1,6 @@
1
1
  export enum AutomaticRegistrationType {
2
- FINISHED = 1,
2
+ GENERATED = 1,
3
3
  INVALID = 2,
4
+ EMAIL_SEND = 3,
5
+ EMAIL_ERROR = 4,
4
6
  }
@@ -51,6 +51,7 @@ export enum GedFolder {
51
51
  JEDECLARE_MANDATES = 45,
52
52
  COMPANY_PASSWORD_SERVICE = 46,
53
53
  FEC = 47,
54
+ PREVISIONAL = 48,
54
55
  }
55
56
 
56
57
  export enum TypeFile {
@@ -364,6 +365,7 @@ export const GedFolderList: Array<{ id: GedFolder, isVisibleForClient: boolean;
364
365
  { id: GedFolder.JEDECLARE_MANDATES, name: 'Mandat JeDeclare', isVisibleForClient: true, idGedCategory: GedCategory.COMPANY },
365
366
  { id: GedFolder.COMPANY_PASSWORD_SERVICE, name: 'Mot de passe service entreprise', isVisibleForClient: false, idGedCategory: GedCategory.COMPANY },
366
367
  { id: GedFolder.FEC, name: 'Fec', isVisibleForClient: false, idGedCategory: GedCategory.ACCOUNTING_AND_TAX },
368
+ { id: GedFolder.PREVISIONAL, name: 'Prévisionnel', isVisibleForClient: true, idGedCategory: GedCategory.ACCOUNTING_AND_TAX },
367
369
  ];
368
370
 
369
371
  export const gedCategoryWithName: Array<{ idGedCategory: number, name: string, usableByClient: boolean, brandCondition?: string[] }> = [
@@ -49,6 +49,7 @@ export enum LogType {
49
49
  UP_TO_DATE = 37,
50
50
  LOGIN_AS = 38,
51
51
  ROLE = 39,
52
+ REFUND = 40,
52
53
  }
53
54
 
54
55
  export const LogTypeDetail = {
@@ -0,0 +1,11 @@
1
+ export enum PrevisionalFormActivity {
2
+ VENTES_DE_MARCHANDISES = 1,
3
+ VENTES_DE_PRODUITS_FINIS = 2,
4
+ PRESTATIONS_DE_SERVICES = 3,
5
+ }
6
+
7
+ export const PrevisionalFormActivityOptions = [
8
+ { label: 'Ventes de marchandises', id: PrevisionalFormActivity.VENTES_DE_MARCHANDISES },
9
+ { label: 'Ventes de produits finis', id: PrevisionalFormActivity.VENTES_DE_PRODUITS_FINIS },
10
+ { label: 'Prestations de services', id: PrevisionalFormActivity.PRESTATIONS_DE_SERVICES },
11
+ ] as const;
@@ -0,0 +1,177 @@
1
+ import { LegalFormTypeEnum } from '../../../Enum/LegalForm';
2
+ import { TaxSystem } from '../../../Enum/TaxSystem';
3
+ import { NumberFiscalYears, PrevisionalFormActivity, PrevisionalFormPayload } from '../../..';
4
+ import { ApiProperty } from '../../../../utils';
5
+ import { IsNumber, IsBoolean, IsEnum, IsString } from 'class-validator';
6
+ import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
7
+
8
+ export class NumberFiscalYearsValidation implements NumberFiscalYears {
9
+ @ApiProperty()
10
+ @IsNumber()
11
+ n: number;
12
+
13
+ @ApiProperty()
14
+ @IsNumber()
15
+ n1: number;
16
+
17
+ @ApiProperty()
18
+ @IsNumber()
19
+ n2: number;
20
+ }
21
+
22
+ export class CreatePrevisionalFormData implements PrevisionalFormPayload {
23
+ /**
24
+ * Description de la société
25
+ */
26
+ @ApiProperty()
27
+ @IsBoolean()
28
+ @ToBoolean()
29
+ isCompanyCreation: boolean;
30
+
31
+ @ApiProperty()
32
+ @IsEnum(LegalFormTypeEnum)
33
+ idLegalForm: LegalFormTypeEnum;
34
+
35
+ @ApiProperty()
36
+ @IsEnum(TaxSystem)
37
+ idTaxSystem: TaxSystem;
38
+
39
+ @ApiProperty()
40
+ @IsString()
41
+ activity: PrevisionalFormActivity;
42
+
43
+ /**
44
+ * Investissement
45
+ */
46
+ @ApiProperty()
47
+ computerHardware: NumberFiscalYearsValidation;
48
+
49
+ @ApiProperty()
50
+ vehicle: NumberFiscalYearsValidation;
51
+
52
+ @ApiProperty()
53
+ toolsEquipment: NumberFiscalYearsValidation;
54
+
55
+ @ApiProperty()
56
+ software: NumberFiscalYearsValidation;
57
+
58
+ @ApiProperty()
59
+ website: NumberFiscalYearsValidation;
60
+
61
+ @ApiProperty()
62
+ businessAssets: NumberFiscalYearsValidation;
63
+
64
+ @ApiProperty()
65
+ immobilizedSecurities: NumberFiscalYearsValidation;
66
+
67
+ @ApiProperty()
68
+ deposit: NumberFiscalYearsValidation;
69
+
70
+ /**
71
+ * Financement
72
+ */
73
+ @ApiProperty()
74
+ socialCapital: NumberFiscalYearsValidation;
75
+
76
+ @ApiProperty()
77
+ accountContribution: NumberFiscalYearsValidation;
78
+
79
+ @ApiProperty()
80
+ loan: NumberFiscalYearsValidation;
81
+
82
+ /**
83
+ * Chiffres d’affaires et charge liées à l’activité
84
+ */
85
+ @ApiProperty()
86
+ turnover: NumberFiscalYearsValidation;
87
+
88
+ @ApiProperty()
89
+ outsourcing: NumberFiscalYearsValidation;
90
+
91
+ @ApiProperty()
92
+ merchandisePurchase: NumberFiscalYearsValidation;
93
+
94
+ /**
95
+ * Consommables
96
+ */
97
+ @ApiProperty()
98
+ packaging: NumberFiscalYearsValidation;
99
+
100
+ @ApiProperty()
101
+ utilities: NumberFiscalYearsValidation;
102
+
103
+ @ApiProperty()
104
+ fuel: NumberFiscalYearsValidation;
105
+
106
+ @ApiProperty()
107
+ equipmentAndSupplies: NumberFiscalYearsValidation;
108
+
109
+ @ApiProperty()
110
+ administrativeSupplies: NumberFiscalYearsValidation;
111
+
112
+ /**
113
+ * Autes charges liées à l’activité
114
+ */
115
+ @ApiProperty()
116
+ realEstateRental: NumberFiscalYearsValidation;
117
+
118
+ @ApiProperty()
119
+ otherRental: NumberFiscalYearsValidation;
120
+
121
+ @ApiProperty()
122
+ maintenanceAndRepair: NumberFiscalYearsValidation;
123
+
124
+ @ApiProperty()
125
+ insuranceAndProfessionalLiability: NumberFiscalYearsValidation;
126
+
127
+ @ApiProperty()
128
+ accountingFees: NumberFiscalYearsValidation;
129
+
130
+ @ApiProperty()
131
+ otherFees: NumberFiscalYearsValidation;
132
+
133
+ @ApiProperty()
134
+ advertising: NumberFiscalYearsValidation;
135
+
136
+ @ApiProperty()
137
+ kilometricAllowances: NumberFiscalYearsValidation;
138
+
139
+ @ApiProperty()
140
+ otherTravelExpenses: NumberFiscalYearsValidation;
141
+
142
+ @ApiProperty()
143
+ telephonyInternetNetworks: NumberFiscalYearsValidation;
144
+
145
+ @ApiProperty()
146
+ bankFees: NumberFiscalYearsValidation;
147
+
148
+ /**
149
+ * Social et rémunération
150
+ */
151
+ @ApiProperty()
152
+ isACREBeneficiary: boolean;
153
+
154
+ @ApiProperty()
155
+ employee1GrossSalary: NumberFiscalYearsValidation;
156
+
157
+ @ApiProperty()
158
+ employee2GrossSalary: NumberFiscalYearsValidation;
159
+
160
+ @ApiProperty()
161
+ employee3GrossSalary: NumberFiscalYearsValidation;
162
+
163
+ @ApiProperty()
164
+ remunerationPresident: NumberFiscalYearsValidation;
165
+
166
+ @ApiProperty()
167
+ remunerationManager: NumberFiscalYearsValidation;
168
+ }
169
+
170
+ export class CreatePrevisionalForm {
171
+ @ApiProperty()
172
+ @IsNumber()
173
+ idSociety: number;
174
+
175
+ @ApiProperty()
176
+ payload: CreatePrevisionalFormData;
177
+ }
@@ -0,0 +1,73 @@
1
+ import { LegalFormTypeEnum } from '../../../Enum/LegalForm';
2
+ import { PrevisionalFormActivity } from '../../../Enum/PrevisionalForm';
3
+ import { TaxSystem } from '../../../Enum/TaxSystem';
4
+
5
+ export interface NumberFiscalYears {
6
+ n: number;
7
+ n1: number;
8
+ n2: number;
9
+ }
10
+
11
+ export interface CompanyDescription {
12
+ isCompanyCreation: boolean; // Est-ce une création ?
13
+ idLegalForm: LegalFormTypeEnum; // Statut Juridique
14
+ idTaxSystem: TaxSystem; // Régime d'imposition prévu
15
+ activity: PrevisionalFormActivity; // Quelle est l'activité de la société ?
16
+ // + question "De combien est le capital initial apporté ?" socialCapital pour année N
17
+ }
18
+
19
+ export interface Investment {
20
+ computerHardware: NumberFiscalYears; // Matériel informatique
21
+ vehicle: NumberFiscalYears; // Véhicules
22
+ toolsEquipment: NumberFiscalYears; // Outillage, matériel
23
+ software: NumberFiscalYears; // Logiciel
24
+ website: NumberFiscalYears; // Site internet
25
+ businessAssets: NumberFiscalYears; // Fonds de commerce
26
+ immobilizedSecurities: NumberFiscalYears; // Titres immobilisés
27
+ deposit: NumberFiscalYears; // Caution
28
+ }
29
+
30
+ export interface Financing {
31
+ socialCapital: NumberFiscalYears; // Augmentation social
32
+ accountContribution: NumberFiscalYears; // Apport en compte courant d'associé
33
+ loan: NumberFiscalYears; // Emprunt bancaire
34
+ }
35
+
36
+ export interface TurnoverAndCharges {
37
+ turnover: NumberFiscalYears; // Chiffre d'affaires prévu
38
+ outsourcing: NumberFiscalYears; // Sous-traitance prévue
39
+ merchandisePurchase: NumberFiscalYears; // Achats de marchandises / matières premières
40
+ }
41
+
42
+ export interface Consumables {
43
+ packaging: NumberFiscalYears; // Emballages
44
+ utilities: NumberFiscalYears; // Eau, électricité, gaz
45
+ fuel: NumberFiscalYears; // Carburant
46
+ equipmentAndSupplies: NumberFiscalYears; // Petit équipement et matériel
47
+ administrativeSupplies: NumberFiscalYears; // Fournitures administratives
48
+ }
49
+
50
+ export interface OtherCharges {
51
+ realEstateRental: NumberFiscalYears; // Location immobilière
52
+ otherRental: NumberFiscalYears; // Autres locations et crédit bail
53
+ maintenanceAndRepair: NumberFiscalYears; // Entretien et réparation
54
+ insuranceAndProfessionalLiability: NumberFiscalYears; // Assurances et RC Pro
55
+ accountingFees: NumberFiscalYears; // Honoraires comptables
56
+ otherFees: NumberFiscalYears; // Autres frais de gestion
57
+ advertising: NumberFiscalYears; // Publicité
58
+ kilometricAllowances: NumberFiscalYears; // Indemnités kilométriques
59
+ otherTravelExpenses: NumberFiscalYears; // Autres frais de déplacement
60
+ telephonyInternetNetworks: NumberFiscalYears; // Téléphonie, interne, réseaux
61
+ bankFees: NumberFiscalYears; // Frais bancaires
62
+ }
63
+
64
+ export interface SocialAndRemuneration {
65
+ isACREBeneficiary: boolean; // Bénéficiaire de l'ACRE
66
+ employee1GrossSalary: NumberFiscalYears; // Salaire brut employé 1
67
+ employee2GrossSalary: NumberFiscalYears; // Salaire brut employé 2
68
+ employee3GrossSalary: NumberFiscalYears; // Salaire brut employé 3
69
+ remunerationPresident: NumberFiscalYears; // Rémunération brut président
70
+ remunerationManager: NumberFiscalYears; // Rémunération gérant
71
+ }
72
+
73
+ export interface PrevisionalFormPayload extends CompanyDescription, Investment, Financing, TurnoverAndCharges, Consumables, OtherCharges, SocialAndRemuneration {}
@@ -1,5 +1,8 @@
1
1
  import {
2
2
  IsEnum, IsOptional, IsBoolean, IsNumber, Min, IsDateString, IsArray, ValidateNested, IsString,
3
+ IsEmail,
4
+ MinLength,
5
+ IsInt,
3
6
  } from 'class-validator';
4
7
  import { ApiProperty, ApiPropertyOptional } from '../../../../utils';
5
8
  import { CerfaType } from '../../../Enum/CerfaType';
@@ -214,4 +217,28 @@ export class CreateVatMigration {
214
217
  @ApiPropertyOptional()
215
218
  @IsOptional()
216
219
  limit?: number;
220
+ }
221
+
222
+ export class CreateAndSendVatMail {
223
+ @ApiProperty()
224
+ @IsEmail()
225
+ to: string;
226
+
227
+ @ApiProperty()
228
+ @IsString()
229
+ @MinLength(2)
230
+ subject: string;
231
+
232
+ @ApiProperty()
233
+ @IsString()
234
+ @MinLength(2)
235
+ content: string;
236
+
237
+ @ApiProperty()
238
+ @IsInt()
239
+ idSociety: number;
240
+
241
+ @ApiProperty()
242
+ @IsArray()
243
+ idFiles: number[];
217
244
  }
@@ -71,4 +71,16 @@ export class GenerateVatAutomaticallyPayload {
71
71
  @IsArray()
72
72
  @IsInt({ each: true })
73
73
  societyIds: number[];
74
+ }
75
+
76
+ export class SendRegistrationByMailAutomaticallyPayload {
77
+ @ApiPropertyOptional()
78
+ @IsInt()
79
+ @IsOptional()
80
+ idSociety?: number;
81
+
82
+ @ApiPropertyOptional()
83
+ @IsDateString()
84
+ @IsOptional()
85
+ startDate?: string;
74
86
  }
@@ -7,7 +7,7 @@ export class SuperVisionPendingPointsPayload {
7
7
  @IsNumber()
8
8
  @IsOptional()
9
9
  idPendingPoint: number;
10
-
10
+
11
11
  @ApiPropertyOptional()
12
12
  @IsString()
13
13
  @IsOptional()
@@ -84,6 +84,10 @@ export class CreateOrUpdateState {
84
84
  @ApiProperty()
85
85
  @IsNumber()
86
86
  idSociety: number;
87
+
88
+ @ApiProperty()
89
+ @IsNumber()
90
+ idClient: number;
87
91
 
88
92
  @ApiProperty()
89
93
  @IsDate()
@@ -1,3 +1,4 @@
1
+ import { IUser } from '../../..';
1
2
  import { IAccountingEntry } from '../../models/IAccountingEntry';
2
3
  import { FormEntry } from '../accountingEntry/AnnotateAccountingTransaction';
3
4
 
@@ -22,4 +23,10 @@ export class ReadVatOnCollection {
22
23
  sales: { [k: string]: number };
23
24
  purchases: { [k: string]: number };
24
25
  };
26
+ }
27
+
28
+ export class ReadVatMailPreview {
29
+ recipient: IUser | null;
30
+ content: string;
31
+ subject: string;
25
32
  }
@@ -8,7 +8,7 @@ export interface IAutomaticRegistration {
8
8
  state: AutomaticRegistrationType;
9
9
  details: any;
10
10
  idSociety: number;
11
- idRegistration: number;
11
+ idRegistration?: number | null;
12
12
 
13
13
  registrations?: IRegistration | null;
14
14
  society?: ISociety | null;
@@ -0,0 +1,15 @@
1
+ import { IFile, ISociety, PrevisionalFormPayload } from '../..';
2
+
3
+ export interface IPrevisionalForm {
4
+ id?: number;
5
+ idSociety: number;
6
+ idFile?: number | null;
7
+ payload: PrevisionalFormPayload;
8
+ createdAt?: Date;
9
+ updatedAt?: Date;
10
+ deletedAt?: Date | null;
11
+
12
+ // Associations
13
+ society?: ISociety;
14
+ file?: IFile;
15
+ }
@@ -9,6 +9,7 @@ export interface IRefund {
9
9
  comment: string | null;
10
10
  refundDate: Date | null;
11
11
  processed: boolean;
12
+ isAmountChecked?: boolean;
12
13
  idRefundMotif: number;
13
14
  idSociety: number;
14
15
  idUserDemand: number;
package/ts/types/index.ts CHANGED
@@ -335,6 +335,7 @@ export * from './Interface/models/IUserTimeSlot';
335
335
  export * from './Interface/models/ICompanyCreationForm';
336
336
  export * from './Interface/models/IAnnotation';
337
337
  export * from './Interface/models/ILoanEarlyRepayment';
338
+ export * from './Interface/models/IPrevisionalForm';
338
339
 
339
340
 
340
341
  // Schemas
@@ -550,6 +551,7 @@ export * from './Enum/LetterResponseType';
550
551
  export * from './Enum/StatusRating';
551
552
  export * from './Enum/TypeSupportForNotation';
552
553
  export * from './Enum/ToRecallRating';
554
+ export * from './Enum/PrevisionalForm';
553
555
 
554
556
  // Interfaces API
555
557
  export * from './Interface/api/exercice/ReadExercice';
@@ -1100,6 +1102,8 @@ export * from './Interface/api/companyCreationForm/CreateCompanyCreationForm';
1100
1102
  export * from './Interface/api/companyCreationForm/UpdateCompanyCreationForm';
1101
1103
  export * from './Interface/api/companyCreationForm/CompanyCreationFormPayload';
1102
1104
  export * from './Interface/api/sellsy/CreateInvoicesSellsy';
1105
+ export * from './Interface/api/previsionalForm/PrevisionalFormPayload';
1106
+ export * from './Interface/api/previsionalForm/CreatePrevisionalForm';
1103
1107
  export * from './Interface/api/toDoExpress/Query';
1104
1108
  export * from './Interface/api/toDoExpress/Read';
1105
1109
 
@@ -1,5 +1,5 @@
1
1
  import {
2
- orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq,
2
+ orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round,
3
3
  } from 'lodash';
4
4
  import * as dayjs from 'dayjs';
5
5
  import { ReadCommercialDocumentTemplate, ReadDocumentEditing, ReadVatEditing } from '../../types/Interface/api/commercialManagement/Read';
@@ -52,6 +52,8 @@ export function generateCommercialDocument(idEstimateInvoiceType: EstimateInvoic
52
52
  });
53
53
  }
54
54
 
55
+ const totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');
56
+
55
57
  const data: ReadDocumentEditing & { brandColors: brandColorType, brandName: string, shouldHideBrandName: boolean } = {
56
58
  ...payload,
57
59
  thirdParty,
@@ -66,13 +68,13 @@ export function generateCommercialDocument(idEstimateInvoiceType: EstimateInvoic
66
68
  products,
67
69
  vats,
68
70
  totalTaxExcluded: _sumBy(products, 'totalTaxExcluded'),
69
- totalTaxIncluded: _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount'),
70
- totalTaxAndDiscountIncluded: _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount'),
71
+ totalTaxIncluded:_round(totalTaxIncluded),
72
+ totalTaxAndDiscountIncluded: _round(totalTaxIncluded),
71
73
  generalDiscountFormatted: payload.generalDiscount2 ? integerToFormattedAmountString(payload.generalDiscount2) : null,
72
74
  depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,
73
75
  totalTaxExcludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded')),
74
- totalTaxIncludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount')),
75
- totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount') - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0)),
76
+ totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),
77
+ totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0)),
76
78
  totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),
77
79
  font: {
78
80
  id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,