@arcasdk/core 0.3.1 → 0.3.3

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 (385) hide show
  1. package/lib/application/config/env.d.ts +6 -0
  2. package/lib/application/config/env.js +14 -0
  3. package/lib/application/config/env.js.map +1 -0
  4. package/lib/application/config/index.d.ts +6 -0
  5. package/lib/application/config/index.js +15 -0
  6. package/lib/application/config/index.js.map +1 -0
  7. package/lib/application/dto/electronic-billing.dto.d.ts +192 -0
  8. package/lib/application/dto/electronic-billing.dto.js +3 -0
  9. package/lib/application/dto/electronic-billing.dto.js.map +1 -0
  10. package/lib/application/dto/index.d.ts +6 -0
  11. package/lib/application/dto/index.js +23 -0
  12. package/lib/application/dto/index.js.map +1 -0
  13. package/lib/application/dto/register.dto.d.ts +116 -0
  14. package/lib/application/dto/register.dto.js +8 -0
  15. package/lib/application/dto/register.dto.js.map +1 -0
  16. package/lib/application/index.d.ts +10 -0
  17. package/lib/application/index.js +27 -0
  18. package/lib/application/index.js.map +1 -0
  19. package/lib/application/ports/authentication/authentication-repository.port.d.ts +29 -0
  20. package/lib/application/ports/authentication/authentication-repository.port.js +3 -0
  21. package/lib/application/ports/authentication/authentication-repository.port.js.map +1 -0
  22. package/lib/application/ports/authentication/index.d.ts +5 -0
  23. package/lib/application/ports/authentication/index.js +22 -0
  24. package/lib/application/ports/authentication/index.js.map +1 -0
  25. package/lib/application/ports/electronic-billing/electronic-billing-repository.port.d.ts +139 -0
  26. package/lib/application/ports/electronic-billing/electronic-billing-repository.port.js +3 -0
  27. package/lib/application/ports/electronic-billing/electronic-billing-repository.port.js.map +1 -0
  28. package/lib/application/ports/electronic-billing/index.d.ts +5 -0
  29. package/lib/application/ports/electronic-billing/index.js +22 -0
  30. package/lib/application/ports/electronic-billing/index.js.map +1 -0
  31. package/lib/application/ports/generic/generic-repository.port.d.ts +16 -0
  32. package/lib/application/ports/generic/generic-repository.port.js +3 -0
  33. package/lib/application/ports/generic/generic-repository.port.js.map +1 -0
  34. package/lib/application/ports/index.d.ts +7 -0
  35. package/lib/application/ports/index.js +24 -0
  36. package/lib/application/ports/index.js.map +1 -0
  37. package/lib/application/ports/register/index.d.ts +5 -0
  38. package/lib/application/ports/register/index.js +22 -0
  39. package/lib/application/ports/register/index.js.map +1 -0
  40. package/lib/application/ports/register/register-repository.ports.d.ts +23 -0
  41. package/lib/application/ports/register/register-repository.ports.js +3 -0
  42. package/lib/application/ports/register/register-repository.ports.js.map +1 -0
  43. package/lib/application/services/electronic-billing.service.d.ts +202 -0
  44. package/lib/application/services/electronic-billing.service.js +340 -0
  45. package/lib/application/services/electronic-billing.service.js.map +1 -0
  46. package/lib/application/services/generic.service.d.ts +19 -0
  47. package/lib/application/services/generic.service.js +31 -0
  48. package/lib/application/services/generic.service.js.map +1 -0
  49. package/lib/application/services/index.d.ts +10 -0
  50. package/lib/application/services/index.js +27 -0
  51. package/lib/application/services/index.js.map +1 -0
  52. package/lib/application/services/register-inscription-proof.service.d.ts +26 -0
  53. package/lib/application/services/register-inscription-proof.service.js +49 -0
  54. package/lib/application/services/register-inscription-proof.service.js.map +1 -0
  55. package/lib/application/services/register-scope-five.service.d.ts +26 -0
  56. package/lib/application/services/register-scope-five.service.js +49 -0
  57. package/lib/application/services/register-scope-five.service.js.map +1 -0
  58. package/lib/application/services/register-scope-four.service.d.ts +28 -0
  59. package/lib/application/services/register-scope-four.service.js +51 -0
  60. package/lib/application/services/register-scope-four.service.js.map +1 -0
  61. package/lib/application/services/register-scope-ten.service.d.ts +21 -0
  62. package/lib/application/services/register-scope-ten.service.js +39 -0
  63. package/lib/application/services/register-scope-ten.service.js.map +1 -0
  64. package/lib/application/services/register-scope-thirteen.service.d.ts +26 -0
  65. package/lib/application/services/register-scope-thirteen.service.js +49 -0
  66. package/lib/application/services/register-scope-thirteen.service.js.map +1 -0
  67. package/lib/application/types/auth.types.d.ts +19 -0
  68. package/lib/application/types/auth.types.js +7 -0
  69. package/lib/application/types/auth.types.js.map +1 -0
  70. package/lib/application/types/context.types.d.ts +46 -0
  71. package/lib/application/types/context.types.js +3 -0
  72. package/lib/application/types/context.types.js.map +1 -0
  73. package/lib/application/types/index.d.ts +8 -0
  74. package/lib/application/types/index.js +25 -0
  75. package/lib/application/types/index.js.map +1 -0
  76. package/lib/application/types/result.types.d.ts +10 -0
  77. package/lib/application/types/result.types.js +3 -0
  78. package/lib/application/types/result.types.js.map +1 -0
  79. package/lib/application/types/use-case-inputs.types.d.ts +23 -0
  80. package/lib/application/types/use-case-inputs.types.js +7 -0
  81. package/lib/application/types/use-case-inputs.types.js.map +1 -0
  82. package/lib/application/use-cases/authentication/get-auth-params.use-case.d.ts +16 -0
  83. package/lib/application/use-cases/authentication/get-auth-params.use-case.js +29 -0
  84. package/lib/application/use-cases/authentication/get-auth-params.use-case.js.map +1 -0
  85. package/lib/application/use-cases/authentication/index.d.ts +7 -0
  86. package/lib/application/use-cases/authentication/index.js +24 -0
  87. package/lib/application/use-cases/authentication/index.js.map +1 -0
  88. package/lib/application/use-cases/authentication/login.use-case.d.ts +17 -0
  89. package/lib/application/use-cases/authentication/login.use-case.js +29 -0
  90. package/lib/application/use-cases/authentication/login.use-case.js.map +1 -0
  91. package/lib/application/use-cases/authentication/request-login.use-case.d.ts +16 -0
  92. package/lib/application/use-cases/authentication/request-login.use-case.js +29 -0
  93. package/lib/application/use-cases/authentication/request-login.use-case.js.map +1 -0
  94. package/lib/application/use-cases/electronic-billing/consult-caea-no-movement.use-case.d.ts +17 -0
  95. package/lib/application/use-cases/electronic-billing/consult-caea-no-movement.use-case.js +30 -0
  96. package/lib/application/use-cases/electronic-billing/consult-caea-no-movement.use-case.js.map +1 -0
  97. package/lib/application/use-cases/electronic-billing/consult-caea.use-case.d.ts +17 -0
  98. package/lib/application/use-cases/electronic-billing/consult-caea.use-case.js +30 -0
  99. package/lib/application/use-cases/electronic-billing/consult-caea.use-case.js.map +1 -0
  100. package/lib/application/use-cases/electronic-billing/create-next-voucher.use-case.d.ts +17 -0
  101. package/lib/application/use-cases/electronic-billing/create-next-voucher.use-case.js +39 -0
  102. package/lib/application/use-cases/electronic-billing/create-next-voucher.use-case.js.map +1 -0
  103. package/lib/application/use-cases/electronic-billing/create-voucher.use-case.d.ts +17 -0
  104. package/lib/application/use-cases/electronic-billing/create-voucher.use-case.js +33 -0
  105. package/lib/application/use-cases/electronic-billing/create-voucher.use-case.js.map +1 -0
  106. package/lib/application/use-cases/electronic-billing/get-activities.use-case.d.ts +15 -0
  107. package/lib/application/use-cases/electronic-billing/get-activities.use-case.js +28 -0
  108. package/lib/application/use-cases/electronic-billing/get-activities.use-case.js.map +1 -0
  109. package/lib/application/use-cases/electronic-billing/get-aliquot-types.use-case.d.ts +15 -0
  110. package/lib/application/use-cases/electronic-billing/get-aliquot-types.use-case.js +28 -0
  111. package/lib/application/use-cases/electronic-billing/get-aliquot-types.use-case.js.map +1 -0
  112. package/lib/application/use-cases/electronic-billing/get-caea.use-case.d.ts +17 -0
  113. package/lib/application/use-cases/electronic-billing/get-caea.use-case.js +30 -0
  114. package/lib/application/use-cases/electronic-billing/get-caea.use-case.js.map +1 -0
  115. package/lib/application/use-cases/electronic-billing/get-concept-types.use-case.d.ts +15 -0
  116. package/lib/application/use-cases/electronic-billing/get-concept-types.use-case.js +28 -0
  117. package/lib/application/use-cases/electronic-billing/get-concept-types.use-case.js.map +1 -0
  118. package/lib/application/use-cases/electronic-billing/get-countries.use-case.d.ts +15 -0
  119. package/lib/application/use-cases/electronic-billing/get-countries.use-case.js +28 -0
  120. package/lib/application/use-cases/electronic-billing/get-countries.use-case.js.map +1 -0
  121. package/lib/application/use-cases/electronic-billing/get-currency-types.use-case.d.ts +15 -0
  122. package/lib/application/use-cases/electronic-billing/get-currency-types.use-case.js +28 -0
  123. package/lib/application/use-cases/electronic-billing/get-currency-types.use-case.js.map +1 -0
  124. package/lib/application/use-cases/electronic-billing/get-document-types.use-case.d.ts +15 -0
  125. package/lib/application/use-cases/electronic-billing/get-document-types.use-case.js +28 -0
  126. package/lib/application/use-cases/electronic-billing/get-document-types.use-case.js.map +1 -0
  127. package/lib/application/use-cases/electronic-billing/get-iva-receptor-types.use-case.d.ts +16 -0
  128. package/lib/application/use-cases/electronic-billing/get-iva-receptor-types.use-case.js +29 -0
  129. package/lib/application/use-cases/electronic-billing/get-iva-receptor-types.use-case.js.map +1 -0
  130. package/lib/application/use-cases/electronic-billing/get-last-voucher.use-case.d.ts +17 -0
  131. package/lib/application/use-cases/electronic-billing/get-last-voucher.use-case.js +29 -0
  132. package/lib/application/use-cases/electronic-billing/get-last-voucher.use-case.js.map +1 -0
  133. package/lib/application/use-cases/electronic-billing/get-max-records.use-case.d.ts +15 -0
  134. package/lib/application/use-cases/electronic-billing/get-max-records.use-case.js +28 -0
  135. package/lib/application/use-cases/electronic-billing/get-max-records.use-case.js.map +1 -0
  136. package/lib/application/use-cases/electronic-billing/get-optional-types.use-case.d.ts +15 -0
  137. package/lib/application/use-cases/electronic-billing/get-optional-types.use-case.js +28 -0
  138. package/lib/application/use-cases/electronic-billing/get-optional-types.use-case.js.map +1 -0
  139. package/lib/application/use-cases/electronic-billing/get-parameter-types.use-case.d.ts +40 -0
  140. package/lib/application/use-cases/electronic-billing/get-parameter-types.use-case.js +73 -0
  141. package/lib/application/use-cases/electronic-billing/get-parameter-types.use-case.js.map +1 -0
  142. package/lib/application/use-cases/electronic-billing/get-quotation.use-case.d.ts +16 -0
  143. package/lib/application/use-cases/electronic-billing/get-quotation.use-case.js +29 -0
  144. package/lib/application/use-cases/electronic-billing/get-quotation.use-case.js.map +1 -0
  145. package/lib/application/use-cases/electronic-billing/get-sales-points.use-case.d.ts +15 -0
  146. package/lib/application/use-cases/electronic-billing/get-sales-points.use-case.js +28 -0
  147. package/lib/application/use-cases/electronic-billing/get-sales-points.use-case.js.map +1 -0
  148. package/lib/application/use-cases/electronic-billing/get-server-status.use-case.d.ts +15 -0
  149. package/lib/application/use-cases/electronic-billing/get-server-status.use-case.js +28 -0
  150. package/lib/application/use-cases/electronic-billing/get-server-status.use-case.js.map +1 -0
  151. package/lib/application/use-cases/electronic-billing/get-tax-types.use-case.d.ts +15 -0
  152. package/lib/application/use-cases/electronic-billing/get-tax-types.use-case.js +28 -0
  153. package/lib/application/use-cases/electronic-billing/get-tax-types.use-case.js.map +1 -0
  154. package/lib/application/use-cases/electronic-billing/get-voucher-info.use-case.d.ts +17 -0
  155. package/lib/application/use-cases/electronic-billing/get-voucher-info.use-case.js +29 -0
  156. package/lib/application/use-cases/electronic-billing/get-voucher-info.use-case.js.map +1 -0
  157. package/lib/application/use-cases/electronic-billing/get-voucher-types.use-case.d.ts +15 -0
  158. package/lib/application/use-cases/electronic-billing/get-voucher-types.use-case.js +28 -0
  159. package/lib/application/use-cases/electronic-billing/get-voucher-types.use-case.js.map +1 -0
  160. package/lib/application/use-cases/electronic-billing/index.d.ts +18 -0
  161. package/lib/application/use-cases/electronic-billing/index.js +36 -0
  162. package/lib/application/use-cases/electronic-billing/index.js.map +1 -0
  163. package/lib/application/use-cases/electronic-billing/inform-caea-no-movement.use-case.d.ts +17 -0
  164. package/lib/application/use-cases/electronic-billing/inform-caea-no-movement.use-case.js +30 -0
  165. package/lib/application/use-cases/electronic-billing/inform-caea-no-movement.use-case.js.map +1 -0
  166. package/lib/application/use-cases/electronic-billing/inform-caea-usage.use-case.d.ts +14 -0
  167. package/lib/application/use-cases/electronic-billing/inform-caea-usage.use-case.js +32 -0
  168. package/lib/application/use-cases/electronic-billing/inform-caea-usage.use-case.js.map +1 -0
  169. package/lib/application/use-cases/index.d.ts +7 -0
  170. package/lib/application/use-cases/index.js +24 -0
  171. package/lib/application/use-cases/index.js.map +1 -0
  172. package/lib/application/use-cases/register/get-register-server-status.use-case.d.ts +15 -0
  173. package/lib/application/use-cases/register/get-register-server-status.use-case.js +28 -0
  174. package/lib/application/use-cases/register/get-register-server-status.use-case.js.map +1 -0
  175. package/lib/application/use-cases/register/get-tax-id-by-document.use-case.d.ts +16 -0
  176. package/lib/application/use-cases/register/get-tax-id-by-document.use-case.js +29 -0
  177. package/lib/application/use-cases/register/get-tax-id-by-document.use-case.js.map +1 -0
  178. package/lib/application/use-cases/register/get-taxpayer-details.use-case.d.ts +16 -0
  179. package/lib/application/use-cases/register/get-taxpayer-details.use-case.js +29 -0
  180. package/lib/application/use-cases/register/get-taxpayer-details.use-case.js.map +1 -0
  181. package/lib/application/use-cases/register/get-taxpayers-details.use-case.d.ts +16 -0
  182. package/lib/application/use-cases/register/get-taxpayers-details.use-case.js +29 -0
  183. package/lib/application/use-cases/register/get-taxpayers-details.use-case.js.map +1 -0
  184. package/lib/application/use-cases/register/index.d.ts +4 -0
  185. package/lib/application/use-cases/register/index.js +21 -0
  186. package/lib/application/use-cases/register/index.js.map +1 -0
  187. package/lib/arca.d.ts +26 -0
  188. package/lib/arca.js +124 -0
  189. package/lib/arca.js.map +1 -0
  190. package/lib/domain/entities/access-ticket.entity.d.ts +73 -0
  191. package/lib/domain/entities/access-ticket.entity.js +144 -0
  192. package/lib/domain/entities/access-ticket.entity.js.map +1 -0
  193. package/lib/domain/entities/index.d.ts +6 -0
  194. package/lib/domain/entities/index.js +23 -0
  195. package/lib/domain/entities/index.js.map +1 -0
  196. package/lib/domain/entities/voucher.entity.d.ts +113 -0
  197. package/lib/domain/entities/voucher.entity.js +216 -0
  198. package/lib/domain/entities/voucher.entity.js.map +1 -0
  199. package/lib/domain/index.d.ts +6 -0
  200. package/lib/domain/index.js +23 -0
  201. package/lib/domain/index.js.map +1 -0
  202. package/lib/domain/types/electronic-billing.types.d.ts +193 -0
  203. package/lib/domain/types/electronic-billing.types.js +8 -0
  204. package/lib/domain/types/electronic-billing.types.js.map +1 -0
  205. package/lib/domain/types/index.d.ts +6 -0
  206. package/lib/domain/types/index.js +23 -0
  207. package/lib/domain/types/index.js.map +1 -0
  208. package/lib/domain/types/voucher.types.d.ts +65 -0
  209. package/lib/domain/types/voucher.types.js +3 -0
  210. package/lib/domain/types/voucher.types.js.map +1 -0
  211. package/lib/domain/value-objects/cae.vo.d.ts +47 -0
  212. package/lib/domain/value-objects/cae.vo.js +80 -0
  213. package/lib/domain/value-objects/cae.vo.js.map +1 -0
  214. package/lib/domain/value-objects/cuit.vo.d.ts +49 -0
  215. package/lib/domain/value-objects/cuit.vo.js +98 -0
  216. package/lib/domain/value-objects/cuit.vo.js.map +1 -0
  217. package/lib/domain/value-objects/index.d.ts +7 -0
  218. package/lib/domain/value-objects/index.js +24 -0
  219. package/lib/domain/value-objects/index.js.map +1 -0
  220. package/lib/domain/value-objects/voucher-number.vo.d.ts +66 -0
  221. package/lib/domain/value-objects/voucher-number.vo.js +106 -0
  222. package/lib/domain/value-objects/voucher-number.vo.js.map +1 -0
  223. package/lib/index.d.ts +8 -0
  224. package/lib/index.js +27 -0
  225. package/lib/index.js.map +1 -0
  226. package/lib/infrastructure/constants/index.d.ts +5 -0
  227. package/lib/infrastructure/constants/index.js +22 -0
  228. package/lib/infrastructure/constants/index.js.map +1 -0
  229. package/lib/infrastructure/constants/ssl.constants.d.ts +16 -0
  230. package/lib/infrastructure/constants/ssl.constants.js +20 -0
  231. package/lib/infrastructure/constants/ssl.constants.js.map +1 -0
  232. package/lib/infrastructure/index.d.ts +5 -0
  233. package/lib/infrastructure/index.js +22 -0
  234. package/lib/infrastructure/index.js.map +1 -0
  235. package/lib/infrastructure/outbound/adapters/auth/afip-auth.repository.d.ts +68 -0
  236. package/lib/infrastructure/outbound/adapters/auth/afip-auth.repository.js +128 -0
  237. package/lib/infrastructure/outbound/adapters/auth/afip-auth.repository.js.map +1 -0
  238. package/lib/infrastructure/outbound/adapters/auth/auth.repository.d.ts +59 -0
  239. package/lib/infrastructure/outbound/adapters/auth/auth.repository.js +134 -0
  240. package/lib/infrastructure/outbound/adapters/auth/auth.repository.js.map +1 -0
  241. package/lib/infrastructure/outbound/adapters/electronic-billing/electronic-billing-repository.d.ts +41 -0
  242. package/lib/infrastructure/outbound/adapters/electronic-billing/electronic-billing-repository.js +513 -0
  243. package/lib/infrastructure/outbound/adapters/electronic-billing/electronic-billing-repository.js.map +1 -0
  244. package/lib/infrastructure/outbound/adapters/electronic-billing/index.d.ts +5 -0
  245. package/lib/infrastructure/outbound/adapters/electronic-billing/index.js +22 -0
  246. package/lib/infrastructure/outbound/adapters/electronic-billing/index.js.map +1 -0
  247. package/lib/infrastructure/outbound/adapters/enums.d.ts +43 -0
  248. package/lib/infrastructure/outbound/adapters/enums.js +49 -0
  249. package/lib/infrastructure/outbound/adapters/enums.js.map +1 -0
  250. package/lib/infrastructure/outbound/adapters/generic/generic-repository.d.ts +13 -0
  251. package/lib/infrastructure/outbound/adapters/generic/generic-repository.js +53 -0
  252. package/lib/infrastructure/outbound/adapters/generic/generic-repository.js.map +1 -0
  253. package/lib/infrastructure/outbound/adapters/index.d.ts +10 -0
  254. package/lib/infrastructure/outbound/adapters/index.js +27 -0
  255. package/lib/infrastructure/outbound/adapters/index.js.map +1 -0
  256. package/lib/infrastructure/outbound/adapters/logger/winston-logger.d.ts +14 -0
  257. package/lib/infrastructure/outbound/adapters/logger/winston-logger.js +24 -0
  258. package/lib/infrastructure/outbound/adapters/logger/winston-logger.js.map +1 -0
  259. package/lib/infrastructure/outbound/adapters/register/index.d.ts +9 -0
  260. package/lib/infrastructure/outbound/adapters/register/index.js +26 -0
  261. package/lib/infrastructure/outbound/adapters/register/index.js.map +1 -0
  262. package/lib/infrastructure/outbound/adapters/register/register-inscription-proof.repository.d.ts +18 -0
  263. package/lib/infrastructure/outbound/adapters/register/register-inscription-proof.repository.js +143 -0
  264. package/lib/infrastructure/outbound/adapters/register/register-inscription-proof.repository.js.map +1 -0
  265. package/lib/infrastructure/outbound/adapters/register/register-scope-five.repository.d.ts +14 -0
  266. package/lib/infrastructure/outbound/adapters/register/register-scope-five.repository.js +136 -0
  267. package/lib/infrastructure/outbound/adapters/register/register-scope-five.repository.js.map +1 -0
  268. package/lib/infrastructure/outbound/adapters/register/register-scope-four.repository.d.ts +12 -0
  269. package/lib/infrastructure/outbound/adapters/register/register-scope-four.repository.js +103 -0
  270. package/lib/infrastructure/outbound/adapters/register/register-scope-four.repository.js.map +1 -0
  271. package/lib/infrastructure/outbound/adapters/register/register-scope-ten.repository.d.ts +12 -0
  272. package/lib/infrastructure/outbound/adapters/register/register-scope-ten.repository.js +112 -0
  273. package/lib/infrastructure/outbound/adapters/register/register-scope-ten.repository.js.map +1 -0
  274. package/lib/infrastructure/outbound/adapters/register/register-scope-thirteen.repository.d.ts +13 -0
  275. package/lib/infrastructure/outbound/adapters/register/register-scope-thirteen.repository.js +133 -0
  276. package/lib/infrastructure/outbound/adapters/register/register-scope-thirteen.repository.js.map +1 -0
  277. package/lib/infrastructure/outbound/adapters/soap/base-soap-repository.d.ts +30 -0
  278. package/lib/infrastructure/outbound/adapters/soap/base-soap-repository.js +68 -0
  279. package/lib/infrastructure/outbound/adapters/soap/base-soap-repository.js.map +1 -0
  280. package/lib/infrastructure/outbound/adapters/soap/soap-client-facade.d.ts +20 -0
  281. package/lib/infrastructure/outbound/adapters/soap/soap-client-facade.js +54 -0
  282. package/lib/infrastructure/outbound/adapters/soap/soap-client-facade.js.map +1 -0
  283. package/lib/infrastructure/outbound/adapters/soap/soap-client.d.ts +11 -0
  284. package/lib/infrastructure/outbound/adapters/soap/soap-client.js +95 -0
  285. package/lib/infrastructure/outbound/adapters/soap/soap-client.js.map +1 -0
  286. package/lib/infrastructure/outbound/adapters/soap/wsdl-strings.d.ts +10 -0
  287. package/lib/infrastructure/outbound/adapters/soap/wsdl-strings.js +6144 -0
  288. package/lib/infrastructure/outbound/adapters/soap/wsdl-strings.js.map +1 -0
  289. package/lib/infrastructure/outbound/adapters/storage/file-system-ticket-storage.d.ts +24 -0
  290. package/lib/infrastructure/outbound/adapters/storage/file-system-ticket-storage.js +98 -0
  291. package/lib/infrastructure/outbound/adapters/storage/file-system-ticket-storage.js.map +1 -0
  292. package/lib/infrastructure/outbound/index.d.ts +9 -0
  293. package/lib/infrastructure/outbound/index.js +26 -0
  294. package/lib/infrastructure/outbound/index.js.map +1 -0
  295. package/lib/infrastructure/outbound/ports/auth/auth-repository.types.d.ts +17 -0
  296. package/lib/infrastructure/outbound/ports/auth/auth-repository.types.js +3 -0
  297. package/lib/infrastructure/outbound/ports/auth/auth-repository.types.js.map +1 -0
  298. package/lib/infrastructure/outbound/ports/index.d.ts +11 -0
  299. package/lib/infrastructure/outbound/ports/index.js +28 -0
  300. package/lib/infrastructure/outbound/ports/index.js.map +1 -0
  301. package/lib/infrastructure/outbound/ports/logger/logger.port.d.ts +31 -0
  302. package/lib/infrastructure/outbound/ports/logger/logger.port.js +3 -0
  303. package/lib/infrastructure/outbound/ports/logger/logger.port.js.map +1 -0
  304. package/lib/infrastructure/outbound/ports/logger/logger.types.d.ts +7 -0
  305. package/lib/infrastructure/outbound/ports/logger/logger.types.js +3 -0
  306. package/lib/infrastructure/outbound/ports/logger/logger.types.js.map +1 -0
  307. package/lib/infrastructure/outbound/ports/soap/enums/endpoints.enum.d.ts +51 -0
  308. package/lib/infrastructure/outbound/ports/soap/enums/endpoints.enum.js +57 -0
  309. package/lib/infrastructure/outbound/ports/soap/enums/endpoints.enum.js.map +1 -0
  310. package/lib/infrastructure/outbound/ports/soap/enums/index.d.ts +7 -0
  311. package/lib/infrastructure/outbound/ports/soap/enums/index.js +24 -0
  312. package/lib/infrastructure/outbound/ports/soap/enums/index.js.map +1 -0
  313. package/lib/infrastructure/outbound/ports/soap/enums/service-names.enum.d.ts +9 -0
  314. package/lib/infrastructure/outbound/ports/soap/enums/service-names.enum.js +14 -0
  315. package/lib/infrastructure/outbound/ports/soap/enums/service-names.enum.js.map +1 -0
  316. package/lib/infrastructure/outbound/ports/soap/enums/wsdl-path.enum.d.ts +15 -0
  317. package/lib/infrastructure/outbound/ports/soap/enums/wsdl-path.enum.js +20 -0
  318. package/lib/infrastructure/outbound/ports/soap/enums/wsdl-path.enum.js.map +1 -0
  319. package/lib/infrastructure/outbound/ports/soap/index.d.ts +7 -0
  320. package/lib/infrastructure/outbound/ports/soap/index.js +24 -0
  321. package/lib/infrastructure/outbound/ports/soap/index.js.map +1 -0
  322. package/lib/infrastructure/outbound/ports/soap/interfaces/LoginCMSService/LoginCms.d.ts +42 -0
  323. package/lib/infrastructure/outbound/ports/soap/interfaces/LoginCMSService/LoginCms.js +3 -0
  324. package/lib/infrastructure/outbound/ports/soap/interfaces/LoginCMSService/LoginCms.js.map +1 -0
  325. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA10/PersonaServiceA10Port.d.ts +102 -0
  326. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA10/PersonaServiceA10Port.js +3 -0
  327. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA10/PersonaServiceA10Port.js.map +1 -0
  328. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA13/PersonaServiceA13Port.d.ts +145 -0
  329. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA13/PersonaServiceA13Port.js +3 -0
  330. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA13/PersonaServiceA13Port.js.map +1 -0
  331. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA4/PersonaServiceA4Port.d.ts +227 -0
  332. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA4/PersonaServiceA4Port.js +3 -0
  333. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA4/PersonaServiceA4Port.js.map +1 -0
  334. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA5/PersonaServiceA5Port.d.ts +300 -0
  335. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA5/PersonaServiceA5Port.js +3 -0
  336. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceA5/PersonaServiceA5Port.js.map +1 -0
  337. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceInscriptionProof/PersonaServiceInscriptionProofPort.d.ts +301 -0
  338. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceInscriptionProof/PersonaServiceInscriptionProofPort.js +3 -0
  339. package/lib/infrastructure/outbound/ports/soap/interfaces/PersonaServiceInscriptionProof/PersonaServiceInscriptionProofPort.js.map +1 -0
  340. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap.d.ts +835 -0
  341. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap.js +3 -0
  342. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap.js.map +1 -0
  343. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap12.d.ts +876 -0
  344. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap12.js +3 -0
  345. package/lib/infrastructure/outbound/ports/soap/interfaces/Service/ServiceSoap12.js.map +1 -0
  346. package/lib/infrastructure/outbound/ports/soap/interfaces/index.d.ts +15 -0
  347. package/lib/infrastructure/outbound/ports/soap/interfaces/index.js +53 -0
  348. package/lib/infrastructure/outbound/ports/soap/interfaces/index.js.map +1 -0
  349. package/lib/infrastructure/outbound/ports/soap/soap-client.port.d.ts +30 -0
  350. package/lib/infrastructure/outbound/ports/soap/soap-client.port.js +3 -0
  351. package/lib/infrastructure/outbound/ports/soap/soap-client.port.js.map +1 -0
  352. package/lib/infrastructure/outbound/ports/soap/soap-repository.types.d.ts +45 -0
  353. package/lib/infrastructure/outbound/ports/soap/soap-repository.types.js +3 -0
  354. package/lib/infrastructure/outbound/ports/soap/soap-repository.types.js.map +1 -0
  355. package/lib/infrastructure/outbound/ports/storage/ticket-storage.port.d.ts +24 -0
  356. package/lib/infrastructure/outbound/ports/storage/ticket-storage.port.js +3 -0
  357. package/lib/infrastructure/outbound/ports/storage/ticket-storage.port.js.map +1 -0
  358. package/lib/infrastructure/outbound/ports/storage/ticket-storage.types.d.ts +9 -0
  359. package/lib/infrastructure/outbound/ports/storage/ticket-storage.types.js +3 -0
  360. package/lib/infrastructure/outbound/ports/storage/ticket-storage.types.js.map +1 -0
  361. package/lib/infrastructure/types/index.d.ts +5 -0
  362. package/lib/infrastructure/types/index.js +22 -0
  363. package/lib/infrastructure/types/index.js.map +1 -0
  364. package/lib/infrastructure/types/soap.types.d.ts +29 -0
  365. package/lib/infrastructure/types/soap.types.js +3 -0
  366. package/lib/infrastructure/types/soap.types.js.map +1 -0
  367. package/lib/infrastructure/utils/crypt-data.d.ts +6 -0
  368. package/lib/infrastructure/utils/crypt-data.js +46 -0
  369. package/lib/infrastructure/utils/crypt-data.js.map +1 -0
  370. package/lib/infrastructure/utils/env.d.ts +10 -0
  371. package/lib/infrastructure/utils/env.js +32 -0
  372. package/lib/infrastructure/utils/env.js.map +1 -0
  373. package/lib/infrastructure/utils/index.d.ts +8 -0
  374. package/lib/infrastructure/utils/index.js +25 -0
  375. package/lib/infrastructure/utils/index.js.map +1 -0
  376. package/lib/infrastructure/utils/logger.d.ts +4 -0
  377. package/lib/infrastructure/utils/logger.js +21 -0
  378. package/lib/infrastructure/utils/logger.js.map +1 -0
  379. package/lib/infrastructure/utils/parser.d.ts +14 -0
  380. package/lib/infrastructure/utils/parser.js +36 -0
  381. package/lib/infrastructure/utils/parser.js.map +1 -0
  382. package/lib/infrastructure/utils/soap-to-dto.mapper.d.ts +200 -0
  383. package/lib/infrastructure/utils/soap-to-dto.mapper.js +213 -0
  384. package/lib/infrastructure/utils/soap-to-dto.mapper.js.map +1 -0
  385. package/package.json +3 -2
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AccessTicket = void 0;
7
+ /**
8
+ * AccessTicket Entity
9
+ * Domain entity representing an authentication ticket from AFIP/ARCA
10
+ */
11
+ const moment_1 = __importDefault(require("moment"));
12
+ /**
13
+ * AccessTicket Entity
14
+ * Represents an authentication ticket with business logic
15
+ */
16
+ class AccessTicket {
17
+ constructor(header, credentials) {
18
+ this.header = header;
19
+ this.credentials = credentials;
20
+ this.validate();
21
+ }
22
+ /**
23
+ * Factory method to create an AccessTicket
24
+ * @param data Login credentials data
25
+ * @returns AccessTicket instance
26
+ */
27
+ static create(data) {
28
+ return new AccessTicket(data.header, data.credentials);
29
+ }
30
+ /**
31
+ * Validates the ticket structure
32
+ * @throws Error if ticket is invalid
33
+ */
34
+ validate() {
35
+ var _a;
36
+ if (!this.header || !Array.isArray(this.header)) {
37
+ throw new Error("Invalid ticket header structure");
38
+ }
39
+ if (!this.credentials ||
40
+ !this.credentials.sign ||
41
+ !this.credentials.token) {
42
+ throw new Error("Invalid ticket credentials");
43
+ }
44
+ const expirationTime = (_a = this.header[1]) === null || _a === void 0 ? void 0 : _a.expirationtime;
45
+ if (!expirationTime) {
46
+ throw new Error("Ticket expiration time is missing");
47
+ }
48
+ }
49
+ /**
50
+ * Gets the sign from credentials
51
+ */
52
+ getSign() {
53
+ return this.credentials.sign;
54
+ }
55
+ /**
56
+ * Gets the token from credentials
57
+ */
58
+ getToken() {
59
+ return this.credentials.token;
60
+ }
61
+ /**
62
+ * Gets the expiration date
63
+ */
64
+ getExpiration() {
65
+ const expirationTime = this.header[1].expirationtime;
66
+ if (!expirationTime) {
67
+ throw new Error("Expiration time is missing");
68
+ }
69
+ return (0, moment_1.default)(expirationTime).toDate();
70
+ }
71
+ /**
72
+ * Gets the headers
73
+ */
74
+ getHeaders() {
75
+ return this.header;
76
+ }
77
+ /**
78
+ * Gets the credentials
79
+ */
80
+ getCredentials() {
81
+ return this.credentials;
82
+ }
83
+ /**
84
+ * Gets the full login credentials (header + credentials)
85
+ * Useful for storing and reusing tickets
86
+ */
87
+ toLoginCredentials() {
88
+ return {
89
+ header: this.header,
90
+ credentials: this.credentials,
91
+ };
92
+ }
93
+ /**
94
+ * Formats the ticket for SOAP authentication
95
+ * @param cuit CUIT to include in auth
96
+ * @returns WSAuthParam formatted for SOAP
97
+ */
98
+ getWSAuthFormat(cuit) {
99
+ if (!cuit || cuit <= 0) {
100
+ throw new Error("Invalid CUIT provided");
101
+ }
102
+ return {
103
+ Auth: {
104
+ Token: this.getToken(),
105
+ Sign: this.getSign(),
106
+ Cuit: cuit,
107
+ },
108
+ };
109
+ }
110
+ /**
111
+ * Checks if the ticket is expired
112
+ * @returns true if expired, false otherwise
113
+ */
114
+ isExpired() {
115
+ try {
116
+ const expiration = this.getExpiration();
117
+ return (0, moment_1.default)(expiration).isBefore(new Date());
118
+ }
119
+ catch (error) {
120
+ return true; // If we can't determine expiration, consider it expired
121
+ }
122
+ }
123
+ /**
124
+ * Checks if the ticket is valid (not expired)
125
+ * @returns true if valid, false otherwise
126
+ */
127
+ isValid() {
128
+ return !this.isExpired();
129
+ }
130
+ /**
131
+ * Gets the time remaining until expiration in milliseconds
132
+ * @returns milliseconds until expiration, or 0 if expired
133
+ */
134
+ getTimeUntilExpiration() {
135
+ if (this.isExpired()) {
136
+ return 0;
137
+ }
138
+ const expiration = this.getExpiration();
139
+ const now = new Date();
140
+ return Math.max(0, expiration.getTime() - now.getTime());
141
+ }
142
+ }
143
+ exports.AccessTicket = AccessTicket;
144
+ //# sourceMappingURL=access-ticket.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access-ticket.entity.js","sourceRoot":"","sources":["../../../src/domain/entities/access-ticket.entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Domain Entities
3
+ * Exports all domain entities
4
+ */
5
+ export * from "./access-ticket.entity";
6
+ export * from "./voucher.entity";
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * Domain Entities
19
+ * Exports all domain entities
20
+ */
21
+ __exportStar(require("./access-ticket.entity"), exports);
22
+ __exportStar(require("./voucher.entity"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;GAGG;AACH,yDAAuC;AACvC,mDAAiC"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Voucher Entity
3
+ * Domain entity representing an electronic voucher/comprobante
4
+ */
5
+ import { IVoucher as IVoucherData, ICbtesAsoc, ITributo, IIva } from "../types/voucher.types";
6
+ /**
7
+ * Voucher Entity
8
+ * Represents an electronic voucher with business logic and validations
9
+ */
10
+ export declare class Voucher {
11
+ private readonly data;
12
+ private constructor();
13
+ /**
14
+ * Factory method to create a Voucher
15
+ * @param data Voucher data
16
+ * @returns Voucher instance
17
+ */
18
+ static create(data: IVoucherData): Voucher;
19
+ /**
20
+ * Validates the voucher according to business rules
21
+ * @throws Error if validation fails
22
+ */
23
+ private validate;
24
+ /**
25
+ * Gets the Punto de Venta
26
+ */
27
+ getPtoVta(): number;
28
+ /**
29
+ * Gets the Tipo de Comprobante
30
+ */
31
+ getCbteTipo(): number;
32
+ /**
33
+ * Gets the CbteDesde
34
+ */
35
+ getCbteDesde(): number;
36
+ /**
37
+ * Gets the CbteHasta
38
+ */
39
+ getCbteHasta(): number;
40
+ /**
41
+ * Gets the total amount
42
+ */
43
+ getImpTotal(): number;
44
+ /**
45
+ * Gets the IVA amount
46
+ */
47
+ getImpIVA(): number;
48
+ /**
49
+ * Gets the net amount
50
+ */
51
+ getImpNeto(): number;
52
+ /**
53
+ * Gets the taxes amount
54
+ */
55
+ getImpTrib(): number;
56
+ /**
57
+ * Checks if this is a Factura C (type 11)
58
+ */
59
+ isFacturaC(): boolean;
60
+ /**
61
+ * Checks if this is a Factura A (type 1)
62
+ */
63
+ isFacturaA(): boolean;
64
+ /**
65
+ * Checks if this is a Factura B (type 6)
66
+ */
67
+ isFacturaB(): boolean;
68
+ /**
69
+ * Gets the voucher date
70
+ */
71
+ getCbteFch(): string;
72
+ /**
73
+ * Gets the concept type
74
+ */
75
+ getConcepto(): number;
76
+ /**
77
+ * Gets the document type
78
+ */
79
+ getDocTipo(): number;
80
+ /**
81
+ * Gets the document number
82
+ */
83
+ getDocNro(): number;
84
+ /**
85
+ * Gets the currency ID
86
+ */
87
+ getMonId(): string;
88
+ /**
89
+ * Gets the currency exchange rate
90
+ */
91
+ getMonCotiz(): number;
92
+ /**
93
+ * Gets the IVA array (if any)
94
+ */
95
+ getIva(): IIva[] | undefined;
96
+ /**
97
+ * Gets the Tributos array (if any)
98
+ */
99
+ getTributos(): ITributo[] | undefined;
100
+ /**
101
+ * Gets the associated vouchers (if any)
102
+ */
103
+ getCbtesAsoc(): ICbtesAsoc[] | undefined;
104
+ /**
105
+ * Converts the entity to DTO for external use
106
+ * @returns IVoucherData DTO
107
+ */
108
+ toDTO(): IVoucherData;
109
+ /**
110
+ * Gets the number of vouchers in this range
111
+ */
112
+ getCantReg(): number;
113
+ }
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Voucher = void 0;
4
+ /**
5
+ * Voucher Entity
6
+ * Represents an electronic voucher with business logic and validations
7
+ */
8
+ class Voucher {
9
+ constructor(data) {
10
+ this.data = data;
11
+ this.validate();
12
+ }
13
+ /**
14
+ * Factory method to create a Voucher
15
+ * @param data Voucher data
16
+ * @returns Voucher instance
17
+ */
18
+ static create(data) {
19
+ return new Voucher(data);
20
+ }
21
+ /**
22
+ * Validates the voucher according to business rules
23
+ * @throws Error if validation fails
24
+ */
25
+ validate() {
26
+ // Validate Punto de Venta
27
+ if (!this.data.PtoVta || this.data.PtoVta <= 0) {
28
+ throw new Error("Punto de venta inválido. Debe ser mayor a cero.");
29
+ }
30
+ // Validate Tipo de Comprobante
31
+ if (!this.data.CbteTipo || this.data.CbteTipo <= 0) {
32
+ throw new Error("Tipo de comprobante inválido. Debe ser mayor a cero.");
33
+ }
34
+ // Validate Números de Comprobante
35
+ if (!this.data.CbteDesde || !this.data.CbteHasta) {
36
+ throw new Error("Números de comprobante inválidos. CbteDesde y CbteHasta son requeridos.");
37
+ }
38
+ if (this.data.CbteDesde > this.data.CbteHasta) {
39
+ throw new Error("CbteDesde no puede ser mayor que CbteHasta.");
40
+ }
41
+ if (this.data.CbteDesde < 0 || this.data.CbteHasta < 0) {
42
+ throw new Error("Los números de comprobante no pueden ser negativos.");
43
+ }
44
+ // Validate CantReg
45
+ const expectedCantReg = this.data.CbteHasta - this.data.CbteDesde + 1;
46
+ if (this.data.CantReg !== expectedCantReg) {
47
+ throw new Error(`CantReg (${this.data.CantReg}) debe ser igual a la cantidad de comprobantes (${expectedCantReg})`);
48
+ }
49
+ // Validate Factura C (type 11) - No debe tener IVA
50
+ if (this.isFacturaC()) {
51
+ if (this.data.ImpIVA !== 0) {
52
+ throw new Error("El campo ImpIVA (Importe de IVA) para comprobantes tipo C debe ser igual a cero (0).");
53
+ }
54
+ if (this.data.Iva && this.data.Iva.length > 0) {
55
+ throw new Error("Para comprobantes tipo C el objeto IVA no debe informarse.");
56
+ }
57
+ }
58
+ // Validate Total Calculation
59
+ const calculatedTotal = this.data.ImpNeto + this.data.ImpTrib + this.data.ImpIVA;
60
+ if (Math.abs(this.data.ImpTotal - calculatedTotal) > 0.01) {
61
+ throw new Error(`El campo 'Importe Total' ImpTotal (${this.data.ImpTotal}), debe ser igual a la suma de ImpNeto (${this.data.ImpNeto}) + ImpTrib (${this.data.ImpTrib}) + ImpIVA (${this.data.ImpIVA}) = ${calculatedTotal}.`);
62
+ }
63
+ // Validate Concepto
64
+ if (!this.data.Concepto ||
65
+ this.data.Concepto < 1 ||
66
+ this.data.Concepto > 3) {
67
+ throw new Error("Concepto inválido. Debe ser 1 (Productos), 2 (Servicios) o 3 (Productos y Servicios).");
68
+ }
69
+ // Validate Document Type
70
+ if (!this.data.DocTipo || this.data.DocTipo <= 0) {
71
+ throw new Error("Tipo de documento inválido.");
72
+ }
73
+ // Validate Currency
74
+ if (!this.data.MonId || this.data.MonId.length === 0) {
75
+ throw new Error("Moneda (MonId) es requerida.");
76
+ }
77
+ if (!this.data.MonCotiz || this.data.MonCotiz <= 0) {
78
+ throw new Error("Cotización de moneda (MonCotiz) debe ser mayor a cero.");
79
+ }
80
+ }
81
+ /**
82
+ * Gets the Punto de Venta
83
+ */
84
+ getPtoVta() {
85
+ return this.data.PtoVta;
86
+ }
87
+ /**
88
+ * Gets the Tipo de Comprobante
89
+ */
90
+ getCbteTipo() {
91
+ return this.data.CbteTipo;
92
+ }
93
+ /**
94
+ * Gets the CbteDesde
95
+ */
96
+ getCbteDesde() {
97
+ return this.data.CbteDesde;
98
+ }
99
+ /**
100
+ * Gets the CbteHasta
101
+ */
102
+ getCbteHasta() {
103
+ return this.data.CbteHasta;
104
+ }
105
+ /**
106
+ * Gets the total amount
107
+ */
108
+ getImpTotal() {
109
+ return this.data.ImpTotal;
110
+ }
111
+ /**
112
+ * Gets the IVA amount
113
+ */
114
+ getImpIVA() {
115
+ return this.data.ImpIVA;
116
+ }
117
+ /**
118
+ * Gets the net amount
119
+ */
120
+ getImpNeto() {
121
+ return this.data.ImpNeto;
122
+ }
123
+ /**
124
+ * Gets the taxes amount
125
+ */
126
+ getImpTrib() {
127
+ return this.data.ImpTrib;
128
+ }
129
+ /**
130
+ * Checks if this is a Factura C (type 11)
131
+ */
132
+ isFacturaC() {
133
+ return this.data.CbteTipo === 11;
134
+ }
135
+ /**
136
+ * Checks if this is a Factura A (type 1)
137
+ */
138
+ isFacturaA() {
139
+ return this.data.CbteTipo === 1;
140
+ }
141
+ /**
142
+ * Checks if this is a Factura B (type 6)
143
+ */
144
+ isFacturaB() {
145
+ return this.data.CbteTipo === 6;
146
+ }
147
+ /**
148
+ * Gets the voucher date
149
+ */
150
+ getCbteFch() {
151
+ return this.data.CbteFch;
152
+ }
153
+ /**
154
+ * Gets the concept type
155
+ */
156
+ getConcepto() {
157
+ return this.data.Concepto;
158
+ }
159
+ /**
160
+ * Gets the document type
161
+ */
162
+ getDocTipo() {
163
+ return this.data.DocTipo;
164
+ }
165
+ /**
166
+ * Gets the document number
167
+ */
168
+ getDocNro() {
169
+ return this.data.DocNro;
170
+ }
171
+ /**
172
+ * Gets the currency ID
173
+ */
174
+ getMonId() {
175
+ return this.data.MonId;
176
+ }
177
+ /**
178
+ * Gets the currency exchange rate
179
+ */
180
+ getMonCotiz() {
181
+ return this.data.MonCotiz;
182
+ }
183
+ /**
184
+ * Gets the IVA array (if any)
185
+ */
186
+ getIva() {
187
+ return this.data.Iva;
188
+ }
189
+ /**
190
+ * Gets the Tributos array (if any)
191
+ */
192
+ getTributos() {
193
+ return this.data.Tributos;
194
+ }
195
+ /**
196
+ * Gets the associated vouchers (if any)
197
+ */
198
+ getCbtesAsoc() {
199
+ return this.data.CbtesAsoc;
200
+ }
201
+ /**
202
+ * Converts the entity to DTO for external use
203
+ * @returns IVoucherData DTO
204
+ */
205
+ toDTO() {
206
+ return Object.assign({}, this.data);
207
+ }
208
+ /**
209
+ * Gets the number of vouchers in this range
210
+ */
211
+ getCantReg() {
212
+ return this.data.CantReg;
213
+ }
214
+ }
215
+ exports.Voucher = Voucher;
216
+ //# sourceMappingURL=voucher.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voucher.entity.js","sourceRoot":"","sources":["../../../src/domain/entities/voucher.entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Domain Layer
3
+ * Exports all domain entities and value objects
4
+ */
5
+ export * from "./entities";
6
+ export * from "./value-objects";
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * Domain Layer
19
+ * Exports all domain entities and value objects
20
+ */
21
+ __exportStar(require("./entities"), exports);
22
+ __exportStar(require("./value-objects"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;GAGG;AACH,6CAA2B;AAC3B,kDAAgC"}