arcli 0.1.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +164 -4
  3. package/dist/cli/commands/billing-family.command.d.ts +2 -0
  4. package/dist/cli/commands/billing-family.command.js +30 -0
  5. package/dist/cli/commands/billing-family.command.js.map +1 -0
  6. package/dist/cli/commands/billing-shortcuts.command.d.ts +2 -0
  7. package/dist/cli/commands/billing-shortcuts.command.js +18 -0
  8. package/dist/cli/commands/billing-shortcuts.command.js.map +1 -0
  9. package/dist/cli/commands/billing.command.interactive-preview.d.ts +17 -0
  10. package/dist/cli/commands/billing.command.interactive-preview.js +65 -0
  11. package/dist/cli/commands/billing.command.interactive-preview.js.map +1 -0
  12. package/dist/cli/commands/billing.command.options.d.ts +2 -0
  13. package/dist/cli/commands/billing.command.options.js +49 -0
  14. package/dist/cli/commands/billing.command.options.js.map +1 -0
  15. package/dist/cli/commands/billing.command.output.d.ts +12 -0
  16. package/dist/cli/commands/billing.command.output.js +33 -0
  17. package/dist/cli/commands/billing.command.output.js.map +1 -0
  18. package/dist/cli/commands/billing.command.parser.d.ts +18 -0
  19. package/dist/cli/commands/billing.command.parser.js +136 -0
  20. package/dist/cli/commands/billing.command.parser.js.map +1 -0
  21. package/dist/cli/commands/billing.command.shared.d.ts +7 -0
  22. package/dist/cli/commands/billing.command.shared.js +78 -0
  23. package/dist/cli/commands/billing.command.shared.js.map +1 -0
  24. package/dist/cli/commands/billing.command.shortcuts.d.ts +7 -0
  25. package/dist/cli/commands/billing.command.shortcuts.js +52 -0
  26. package/dist/cli/commands/billing.command.shortcuts.js.map +1 -0
  27. package/dist/cli/commands/config.command.d.ts +2 -0
  28. package/dist/cli/commands/config.command.js +125 -0
  29. package/dist/cli/commands/config.command.js.map +1 -0
  30. package/dist/cli/commands/examples.command.d.ts +2 -0
  31. package/dist/cli/commands/examples.command.js +14 -0
  32. package/dist/cli/commands/examples.command.js.map +1 -0
  33. package/dist/cli/commands/storybook.command.d.ts +2 -0
  34. package/dist/cli/commands/storybook.command.js +26 -0
  35. package/dist/cli/commands/storybook.command.js.map +1 -0
  36. package/dist/cli/help.d.ts +10 -0
  37. package/dist/cli/help.js +473 -0
  38. package/dist/cli/help.js.map +1 -0
  39. package/dist/cli/index.d.ts +2 -0
  40. package/dist/cli/index.js +41 -0
  41. package/dist/cli/index.js.map +1 -0
  42. package/dist/cli/program.d.ts +2 -0
  43. package/dist/cli/program.js +28 -0
  44. package/dist/cli/program.js.map +1 -0
  45. package/dist/cli/types.d.ts +6 -0
  46. package/dist/cli/types.js +2 -0
  47. package/dist/cli/types.js.map +1 -0
  48. package/dist/cli/version.d.ts +1 -0
  49. package/dist/cli/version.js +2 -0
  50. package/dist/cli/version.js.map +1 -0
  51. package/dist/index.d.ts +1 -0
  52. package/dist/index.js +2 -0
  53. package/dist/index.js.map +1 -0
  54. package/dist/lib/dates/arca-date.d.ts +2 -0
  55. package/dist/lib/dates/arca-date.js +28 -0
  56. package/dist/lib/dates/arca-date.js.map +1 -0
  57. package/dist/lib/errors/app-error.d.ts +14 -0
  58. package/dist/lib/errors/app-error.js +29 -0
  59. package/dist/lib/errors/app-error.js.map +1 -0
  60. package/dist/lib/files/read-json-file.d.ts +1 -0
  61. package/dist/lib/files/read-json-file.js +21 -0
  62. package/dist/lib/files/read-json-file.js.map +1 -0
  63. package/dist/lib/paths/mask-path.d.ts +1 -0
  64. package/dist/lib/paths/mask-path.js +17 -0
  65. package/dist/lib/paths/mask-path.js.map +1 -0
  66. package/dist/lib/security/certificate.d.ts +7 -0
  67. package/dist/lib/security/certificate.js +16 -0
  68. package/dist/lib/security/certificate.js.map +1 -0
  69. package/dist/lib/security/pem.d.ts +5 -0
  70. package/dist/lib/security/pem.js +36 -0
  71. package/dist/lib/security/pem.js.map +1 -0
  72. package/dist/modules/billing/billing-response.d.ts +4 -0
  73. package/dist/modules/billing/billing-response.js +74 -0
  74. package/dist/modules/billing/billing-response.js.map +1 -0
  75. package/dist/modules/billing/billing.amounts.d.ts +9 -0
  76. package/dist/modules/billing/billing.amounts.js +30 -0
  77. package/dist/modules/billing/billing.amounts.js.map +1 -0
  78. package/dist/modules/billing/billing.associated-vouchers.d.ts +10 -0
  79. package/dist/modules/billing/billing.associated-vouchers.js +51 -0
  80. package/dist/modules/billing/billing.associated-vouchers.js.map +1 -0
  81. package/dist/modules/billing/billing.constants.d.ts +2 -0
  82. package/dist/modules/billing/billing.constants.js +3 -0
  83. package/dist/modules/billing/billing.constants.js.map +1 -0
  84. package/dist/modules/billing/billing.date-range.d.ts +8 -0
  85. package/dist/modules/billing/billing.date-range.js +45 -0
  86. package/dist/modules/billing/billing.date-range.js.map +1 -0
  87. package/dist/modules/billing/billing.display.d.ts +13 -0
  88. package/dist/modules/billing/billing.display.js +111 -0
  89. package/dist/modules/billing/billing.display.js.map +1 -0
  90. package/dist/modules/billing/billing.json-format.d.ts +6 -0
  91. package/dist/modules/billing/billing.json-format.js +5 -0
  92. package/dist/modules/billing/billing.json-format.js.map +1 -0
  93. package/dist/modules/billing/billing.labels.d.ts +9 -0
  94. package/dist/modules/billing/billing.labels.js +108 -0
  95. package/dist/modules/billing/billing.labels.js.map +1 -0
  96. package/dist/modules/billing/billing.mappers.d.ts +8 -0
  97. package/dist/modules/billing/billing.mappers.js +59 -0
  98. package/dist/modules/billing/billing.mappers.js.map +1 -0
  99. package/dist/modules/billing/billing.presenter.d.ts +7 -0
  100. package/dist/modules/billing/billing.presenter.js +3 -0
  101. package/dist/modules/billing/billing.presenter.js.map +1 -0
  102. package/dist/modules/billing/billing.schemas.d.ts +74 -0
  103. package/dist/modules/billing/billing.schemas.js +69 -0
  104. package/dist/modules/billing/billing.schemas.js.map +1 -0
  105. package/dist/modules/billing/billing.serialize.d.ts +8 -0
  106. package/dist/modules/billing/billing.serialize.js +51 -0
  107. package/dist/modules/billing/billing.serialize.js.map +1 -0
  108. package/dist/modules/billing/billing.service.d.ts +15 -0
  109. package/dist/modules/billing/billing.service.js +88 -0
  110. package/dist/modules/billing/billing.service.js.map +1 -0
  111. package/dist/modules/billing/billing.text.d.ts +8 -0
  112. package/dist/modules/billing/billing.text.js +44 -0
  113. package/dist/modules/billing/billing.text.js.map +1 -0
  114. package/dist/modules/billing/billing.types.d.ts +13 -0
  115. package/dist/modules/billing/billing.types.internal.d.ts +25 -0
  116. package/dist/modules/billing/billing.types.internal.js +2 -0
  117. package/dist/modules/billing/billing.types.internal.js.map +1 -0
  118. package/dist/modules/billing/billing.types.js +2 -0
  119. package/dist/modules/billing/billing.types.js.map +1 -0
  120. package/dist/modules/billing/billing.validation.d.ts +5 -0
  121. package/dist/modules/billing/billing.validation.js +45 -0
  122. package/dist/modules/billing/billing.validation.js.map +1 -0
  123. package/dist/modules/billing/voucher-kind-map.d.ts +9 -0
  124. package/dist/modules/billing/voucher-kind-map.js +180 -0
  125. package/dist/modules/billing/voucher-kind-map.js.map +1 -0
  126. package/dist/modules/config/config-doctor.d.ts +15 -0
  127. package/dist/modules/config/config-doctor.js +125 -0
  128. package/dist/modules/config/config-doctor.js.map +1 -0
  129. package/dist/modules/config/config-value-parser.d.ts +2 -0
  130. package/dist/modules/config/config-value-parser.js +71 -0
  131. package/dist/modules/config/config-value-parser.js.map +1 -0
  132. package/dist/modules/config/config.presenter.d.ts +7 -0
  133. package/dist/modules/config/config.presenter.js +80 -0
  134. package/dist/modules/config/config.presenter.js.map +1 -0
  135. package/dist/modules/config/config.schemas.d.ts +87 -0
  136. package/dist/modules/config/config.schemas.js +84 -0
  137. package/dist/modules/config/config.schemas.js.map +1 -0
  138. package/dist/modules/config/config.service.d.ts +20 -0
  139. package/dist/modules/config/config.service.js +78 -0
  140. package/dist/modules/config/config.service.js.map +1 -0
  141. package/dist/modules/examples/examples.d.ts +1 -0
  142. package/dist/modules/examples/examples.js +156 -0
  143. package/dist/modules/examples/examples.js.map +1 -0
  144. package/dist/modules/storybook/showcase-theme.d.ts +7 -0
  145. package/dist/modules/storybook/showcase-theme.js +6 -0
  146. package/dist/modules/storybook/showcase-theme.js.map +1 -0
  147. package/dist/modules/storybook/showcase.d.ts +2 -0
  148. package/dist/modules/storybook/showcase.js +310 -0
  149. package/dist/modules/storybook/showcase.js.map +1 -0
  150. package/dist/modules/update-check/update-check.presenter.d.ts +2 -0
  151. package/dist/modules/update-check/update-check.presenter.js +6 -0
  152. package/dist/modules/update-check/update-check.presenter.js.map +1 -0
  153. package/dist/modules/update-check/update-check.service.d.ts +8 -0
  154. package/dist/modules/update-check/update-check.service.js +72 -0
  155. package/dist/modules/update-check/update-check.service.js.map +1 -0
  156. package/dist/services/arca/arca-billing.gateway.d.ts +9 -0
  157. package/dist/services/arca/arca-billing.gateway.js +10 -0
  158. package/dist/services/arca/arca-billing.gateway.js.map +1 -0
  159. package/dist/services/arca/arca-client.factory.d.ts +5 -0
  160. package/dist/services/arca/arca-client.factory.js +7 -0
  161. package/dist/services/arca/arca-client.factory.js.map +1 -0
  162. package/dist/services/arca/arca-context.resolver.d.ts +44 -0
  163. package/dist/services/arca/arca-context.resolver.js +120 -0
  164. package/dist/services/arca/arca-context.resolver.js.map +1 -0
  165. package/dist/ui/components/contentPanel.d.ts +5 -0
  166. package/dist/ui/components/contentPanel.js +11 -0
  167. package/dist/ui/components/contentPanel.js.map +1 -0
  168. package/dist/ui/components/errorPanel.d.ts +1 -0
  169. package/dist/ui/components/errorPanel.js +13 -0
  170. package/dist/ui/components/errorPanel.js.map +1 -0
  171. package/dist/ui/components/index.d.ts +6 -0
  172. package/dist/ui/components/index.js +7 -0
  173. package/dist/ui/components/index.js.map +1 -0
  174. package/dist/ui/components/keyValuePanel.d.ts +3 -0
  175. package/dist/ui/components/keyValuePanel.js +14 -0
  176. package/dist/ui/components/keyValuePanel.js.map +1 -0
  177. package/dist/ui/components/noticePanel.d.ts +3 -0
  178. package/dist/ui/components/noticePanel.js +11 -0
  179. package/dist/ui/components/noticePanel.js.map +1 -0
  180. package/dist/ui/components/rawPanel.d.ts +1 -0
  181. package/dist/ui/components/rawPanel.js +5 -0
  182. package/dist/ui/components/rawPanel.js.map +1 -0
  183. package/dist/ui/components/statusPanel.d.ts +3 -0
  184. package/dist/ui/components/statusPanel.js +20 -0
  185. package/dist/ui/components/statusPanel.js.map +1 -0
  186. package/dist/ui/index.d.ts +5 -0
  187. package/dist/ui/index.js +6 -0
  188. package/dist/ui/index.js.map +1 -0
  189. package/dist/ui/presenters/billing.presenter.d.ts +2 -0
  190. package/dist/ui/presenters/billing.presenter.js +2 -0
  191. package/dist/ui/presenters/billing.presenter.js.map +1 -0
  192. package/dist/ui/presenters/config.presenter.d.ts +1 -0
  193. package/dist/ui/presenters/config.presenter.js +2 -0
  194. package/dist/ui/presenters/config.presenter.js.map +1 -0
  195. package/dist/ui/presenters/errors.presenter.d.ts +1 -0
  196. package/dist/ui/presenters/errors.presenter.js +89 -0
  197. package/dist/ui/presenters/errors.presenter.js.map +1 -0
  198. package/dist/ui/presenters/errors.zod-presenter.d.ts +2 -0
  199. package/dist/ui/presenters/errors.zod-presenter.js +82 -0
  200. package/dist/ui/presenters/errors.zod-presenter.js.map +1 -0
  201. package/dist/ui/presenters/index.d.ts +4 -0
  202. package/dist/ui/presenters/index.js +5 -0
  203. package/dist/ui/presenters/index.js.map +1 -0
  204. package/dist/ui/presenters/showcase.presenter.d.ts +1 -0
  205. package/dist/ui/presenters/showcase.presenter.js +2 -0
  206. package/dist/ui/presenters/showcase.presenter.js.map +1 -0
  207. package/dist/ui/primitives/index.d.ts +10 -0
  208. package/dist/ui/primitives/index.js +11 -0
  209. package/dist/ui/primitives/index.js.map +1 -0
  210. package/dist/ui/primitives/renderDivider.d.ts +5 -0
  211. package/dist/ui/primitives/renderDivider.js +5 -0
  212. package/dist/ui/primitives/renderDivider.js.map +1 -0
  213. package/dist/ui/primitives/renderFooter.d.ts +7 -0
  214. package/dist/ui/primitives/renderFooter.js +6 -0
  215. package/dist/ui/primitives/renderFooter.js.map +1 -0
  216. package/dist/ui/primitives/renderJson.d.ts +3 -0
  217. package/dist/ui/primitives/renderJson.js +19 -0
  218. package/dist/ui/primitives/renderJson.js.map +1 -0
  219. package/dist/ui/primitives/renderKeyValue.d.ts +14 -0
  220. package/dist/ui/primitives/renderKeyValue.js +34 -0
  221. package/dist/ui/primitives/renderKeyValue.js.map +1 -0
  222. package/dist/ui/primitives/renderLogo.d.ts +2 -0
  223. package/dist/ui/primitives/renderLogo.js +28 -0
  224. package/dist/ui/primitives/renderLogo.js.map +1 -0
  225. package/dist/ui/primitives/renderObject.d.ts +1 -0
  226. package/dist/ui/primitives/renderObject.js +19 -0
  227. package/dist/ui/primitives/renderObject.js.map +1 -0
  228. package/dist/ui/primitives/renderPanel.d.ts +23 -0
  229. package/dist/ui/primitives/renderPanel.js +114 -0
  230. package/dist/ui/primitives/renderPanel.js.map +1 -0
  231. package/dist/ui/primitives/renderSubtitle.d.ts +7 -0
  232. package/dist/ui/primitives/renderSubtitle.js +6 -0
  233. package/dist/ui/primitives/renderSubtitle.js.map +1 -0
  234. package/dist/ui/primitives/renderTable.d.ts +6 -0
  235. package/dist/ui/primitives/renderTable.js +14 -0
  236. package/dist/ui/primitives/renderTable.js.map +1 -0
  237. package/dist/ui/primitives/text.d.ts +18 -0
  238. package/dist/ui/primitives/text.js +154 -0
  239. package/dist/ui/primitives/text.js.map +1 -0
  240. package/dist/ui/stream/index.d.ts +1 -0
  241. package/dist/ui/stream/index.js +2 -0
  242. package/dist/ui/stream/index.js.map +1 -0
  243. package/dist/ui/stream/terminal-stream.d.ts +10 -0
  244. package/dist/ui/stream/terminal-stream.js +20 -0
  245. package/dist/ui/stream/terminal-stream.js.map +1 -0
  246. package/dist/ui/theme/index.d.ts +1 -0
  247. package/dist/ui/theme/index.js +2 -0
  248. package/dist/ui/theme/index.js.map +1 -0
  249. package/dist/ui/theme/theme.d.ts +27 -0
  250. package/dist/ui/theme/theme.js +41 -0
  251. package/dist/ui/theme/theme.js.map +1 -0
  252. package/llms.txt +157 -0
  253. package/package.json +98 -35
  254. package/.babelrc +0 -4
  255. package/.eslintignore +0 -1
  256. package/.eslintrc.js +0 -17
  257. package/.npmignore +0 -1
  258. package/lib/arcli.min.js +0 -1
  259. package/src/commander/index.js +0 -3
  260. package/src/config.js +0 -22
  261. package/src/index.js +0 -19
  262. package/src/init/index.js +0 -13
  263. package/src/logger/index.js +0 -8
  264. package/src/logger/winston.js +0 -55
  265. package/src/run.js +0 -4
  266. package/src/spinner/index.js +0 -8
  267. package/src/spinner/ora.js +0 -50
  268. package/tst/index.js +0 -29
  269. package/webpack.config.js +0 -47
@@ -0,0 +1,9 @@
1
+ export declare function formatDateLabel(value: string | undefined): string;
2
+ export declare function formatMoneyLabel(value: number | undefined): string;
3
+ export declare function formatConceptLabel(value: number | undefined): string;
4
+ export declare function formatDocumentTypeLabel(value: number | undefined): string;
5
+ export declare function formatIvaConditionLabel(value: number | undefined): string;
6
+ export declare function formatCurrencyLabel(value: string | undefined): string;
7
+ export declare function formatNumericLabel(value: number | undefined): string;
8
+ export declare function formatTaxIdLabel(value: string | number | undefined): string;
9
+ export declare function formatDecimalLabel(value: number | undefined): string;
@@ -0,0 +1,108 @@
1
+ export function formatDateLabel(value) {
2
+ if (!value) {
3
+ return 'N/D';
4
+ }
5
+ if (/^\d{8}$/.test(value)) {
6
+ return `${value.slice(6, 8)}/${value.slice(4, 6)}/${value.slice(0, 4)}`;
7
+ }
8
+ return value.replaceAll('-', '/');
9
+ }
10
+ export function formatMoneyLabel(value) {
11
+ if (typeof value !== 'number') {
12
+ return 'N/D';
13
+ }
14
+ const hasDecimals = !Number.isInteger(value);
15
+ return `${new Intl.NumberFormat('es-AR', {
16
+ maximumFractionDigits: 2,
17
+ minimumFractionDigits: hasDecimals ? 2 : 0,
18
+ }).format(value)}$`;
19
+ }
20
+ export function formatConceptLabel(value) {
21
+ switch (value) {
22
+ case 1:
23
+ return 'Productos';
24
+ case 2:
25
+ return 'Servicios';
26
+ case 3:
27
+ return 'Productos y servicios';
28
+ default:
29
+ return value ? String(value) : 'N/D';
30
+ }
31
+ }
32
+ export function formatDocumentTypeLabel(value) {
33
+ switch (value) {
34
+ case 80:
35
+ return 'CUIT';
36
+ case 86:
37
+ return 'CUIL';
38
+ case 96:
39
+ return 'DNI';
40
+ case 99:
41
+ return 'Consumidor final';
42
+ default:
43
+ return value ? String(value) : 'N/D';
44
+ }
45
+ }
46
+ export function formatIvaConditionLabel(value) {
47
+ switch (value) {
48
+ case 1:
49
+ return 'Responsable inscripto';
50
+ case 4:
51
+ return 'Sujeto exento';
52
+ case 5:
53
+ return 'Consumidor final';
54
+ case 6:
55
+ return 'Responsable monotributo';
56
+ case 7:
57
+ return 'Sujeto no categorizado';
58
+ case 8:
59
+ return 'Proveedor del exterior';
60
+ case 9:
61
+ return 'Cliente del exterior';
62
+ case 10:
63
+ return 'IVA liberado';
64
+ case 13:
65
+ return 'Monotributista social';
66
+ case 15:
67
+ return 'IVA no alcanzado';
68
+ case 16:
69
+ return 'Monotributo trabajador independiente promovido';
70
+ default:
71
+ return value ? String(value) : 'N/D';
72
+ }
73
+ }
74
+ export function formatCurrencyLabel(value) {
75
+ switch (value) {
76
+ case 'PES':
77
+ return 'Pesos argentinos (ARS)';
78
+ case 'USD':
79
+ return 'Dolares estadounidenses (USD)';
80
+ default:
81
+ return value ?? 'N/D';
82
+ }
83
+ }
84
+ export function formatNumericLabel(value) {
85
+ if (typeof value !== 'number') {
86
+ return 'N/D';
87
+ }
88
+ return new Intl.NumberFormat('es-AR').format(value);
89
+ }
90
+ export function formatTaxIdLabel(value) {
91
+ if (value === undefined || value === null || value === '') {
92
+ return 'No informado';
93
+ }
94
+ const normalizedValue = String(value).replace(/\D/g, '');
95
+ if (!/^\d{11}$/.test(normalizedValue)) {
96
+ return String(value);
97
+ }
98
+ return `${normalizedValue.slice(0, 2)}-${normalizedValue.slice(2, 10)}-${normalizedValue.slice(10)}`;
99
+ }
100
+ export function formatDecimalLabel(value) {
101
+ if (typeof value !== 'number') {
102
+ return 'N/D';
103
+ }
104
+ return new Intl.NumberFormat('es-AR', {
105
+ maximumFractionDigits: 6,
106
+ }).format(value);
107
+ }
108
+ //# sourceMappingURL=billing.labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.labels.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.labels.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,eAAe,CAAC,KAAyB;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC;IAED,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAyB;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAE7C,OAAO,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;QACvC,qBAAqB,EAAE,CAAC;QACxB,qBAAqB,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,CAAC;YACJ,OAAO,WAAW,CAAC;QACrB,KAAK,CAAC;YACJ,OAAO,WAAW,CAAC;QACrB,KAAK,CAAC;YACJ,OAAO,uBAAuB,CAAC;QACjC;YACE,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAyB;IAC/D,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,EAAE;YACL,OAAO,MAAM,CAAC;QAChB,KAAK,EAAE;YACL,OAAO,MAAM,CAAC;QAChB,KAAK,EAAE;YACL,OAAO,KAAK,CAAC;QACf,KAAK,EAAE;YACL,OAAO,kBAAkB,CAAC;QAC5B;YACE,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAyB;IAC/D,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,CAAC;YACJ,OAAO,uBAAuB,CAAC;QACjC,KAAK,CAAC;YACJ,OAAO,eAAe,CAAC;QACzB,KAAK,CAAC;YACJ,OAAO,kBAAkB,CAAC;QAC5B,KAAK,CAAC;YACJ,OAAO,yBAAyB,CAAC;QACnC,KAAK,CAAC;YACJ,OAAO,wBAAwB,CAAC;QAClC,KAAK,CAAC;YACJ,OAAO,wBAAwB,CAAC;QAClC,KAAK,CAAC;YACJ,OAAO,sBAAsB,CAAC;QAChC,KAAK,EAAE;YACL,OAAO,cAAc,CAAC;QACxB,KAAK,EAAE;YACL,OAAO,uBAAuB,CAAC;QACjC,KAAK,EAAE;YACL,OAAO,kBAAkB,CAAC;QAC5B,KAAK,EAAE;YACL,OAAO,gDAAgD,CAAC;QAC1D;YACE,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAyB;IAC3D,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK;YACR,OAAO,wBAAwB,CAAC;QAClC,KAAK,KAAK;YACR,OAAO,+BAA+B,CAAC;QACzC;YACE,OAAO,KAAK,IAAI,KAAK,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAkC;IACjE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;AACvG,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;QACpC,qBAAqB,EAAE,CAAC;KACzB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { BillingConcept, BillingDocumentType, BillingIvaCondition } from './billing.schemas';
2
+ import type { VoucherKindDefinition } from './billing.types';
3
+ export declare function resolveBillingConceptCode(concept: BillingConcept): number;
4
+ export declare function resolveBillingDocumentTypeCode(documentType: BillingDocumentType): number;
5
+ export declare function resolveBillingIvaConditionCode(ivaCondition: BillingIvaCondition): number;
6
+ export declare function resolveBillingCurrencyCode(currencyCode?: string): string;
7
+ export declare function formatVoucherLabel(voucherKind: VoucherKindDefinition): string;
8
+ export declare function formatDocumentFlag(documentType: BillingDocumentType): string;
@@ -0,0 +1,59 @@
1
+ import { DEFAULT_CURRENCY_CODE } from './billing.constants.js';
2
+ const BILLING_CONCEPT_MAP = {
3
+ productos: 1,
4
+ servicios: 2,
5
+ 'productos-servicios': 3,
6
+ };
7
+ const BILLING_DOCUMENT_TYPE_MAP = {
8
+ 'consumidor-final': 99,
9
+ cuil: 86,
10
+ cuit: 80,
11
+ dni: 96,
12
+ };
13
+ const BILLING_IVA_CONDITION_MAP = {
14
+ 'cliente-del-exterior': 9,
15
+ 'consumidor-final': 5,
16
+ 'iva-liberado': 10,
17
+ 'iva-no-alcanzado': 15,
18
+ 'monotributista-social': 13,
19
+ 'monotributo-trabajador-independiente-promovido': 16,
20
+ 'proveedor-del-exterior': 8,
21
+ 'responsable-inscripto': 1,
22
+ 'responsable-monotributo': 6,
23
+ 'sujeto-exento': 4,
24
+ 'sujeto-no-categorizado': 7,
25
+ };
26
+ const BILLING_CURRENCY_CODE_MAP = {
27
+ ARS: 'PES',
28
+ PES: 'PES',
29
+ USD: 'USD',
30
+ };
31
+ export function resolveBillingConceptCode(concept) {
32
+ return BILLING_CONCEPT_MAP[concept];
33
+ }
34
+ export function resolveBillingDocumentTypeCode(documentType) {
35
+ return BILLING_DOCUMENT_TYPE_MAP[documentType];
36
+ }
37
+ export function resolveBillingIvaConditionCode(ivaCondition) {
38
+ return BILLING_IVA_CONDITION_MAP[ivaCondition];
39
+ }
40
+ export function resolveBillingCurrencyCode(currencyCode = DEFAULT_CURRENCY_CODE) {
41
+ const normalizedCode = currencyCode.trim().toUpperCase();
42
+ return BILLING_CURRENCY_CODE_MAP[normalizedCode] ?? normalizedCode;
43
+ }
44
+ export function formatVoucherLabel(voucherKind) {
45
+ return voucherKind.displayName.toLowerCase();
46
+ }
47
+ export function formatDocumentFlag(documentType) {
48
+ switch (documentType) {
49
+ case 'cuit':
50
+ return '--cuit';
51
+ case 'cuil':
52
+ return '--cuil';
53
+ case 'dni':
54
+ return '--dni';
55
+ default:
56
+ return '--consumidor-final';
57
+ }
58
+ }
59
+ //# sourceMappingURL=billing.mappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.mappers.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.mappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAI5D,MAAM,mBAAmB,GAAmC;IAC1D,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,qBAAqB,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,yBAAyB,GAAwC;IACrE,kBAAkB,EAAE,EAAE;IACtB,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,GAAG,EAAE,EAAE;CACR,CAAC;AAEF,MAAM,yBAAyB,GAAwC;IACrE,sBAAsB,EAAE,CAAC;IACzB,kBAAkB,EAAE,CAAC;IACrB,cAAc,EAAE,EAAE;IAClB,kBAAkB,EAAE,EAAE;IACtB,uBAAuB,EAAE,EAAE;IAC3B,gDAAgD,EAAE,EAAE;IACpD,wBAAwB,EAAE,CAAC;IAC3B,uBAAuB,EAAE,CAAC;IAC1B,yBAAyB,EAAE,CAAC;IAC5B,eAAe,EAAE,CAAC;IAClB,wBAAwB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,yBAAyB,GAA2B;IACxD,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;CACX,CAAC;AAEF,MAAM,UAAU,yBAAyB,CAAC,OAAuB;IAC/D,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,YAAiC;IAC9E,OAAO,yBAAyB,CAAC,YAAY,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,YAAiC;IAC9E,OAAO,yBAAyB,CAAC,YAAY,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,YAAY,GAAG,qBAAqB;IAC7E,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAEzD,OAAO,yBAAyB,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAkC;IACnE,OAAO,WAAW,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAiC;IAClE,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,KAAK;YACR,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,oBAAoB,CAAC;IAChC,CAAC;AACH,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { formatBillingResultAsJson } from './billing.json-format';
2
+ export { formatBillingResultAsText } from './billing.text';
3
+ export interface BillingPresenterOptions {
4
+ readonly environment?: 'produccion' | 'testing';
5
+ readonly previewShown?: boolean;
6
+ readonly raw?: boolean;
7
+ }
@@ -0,0 +1,3 @@
1
+ export { formatBillingResultAsJson } from './billing.json-format.js';
2
+ export { formatBillingResultAsText } from './billing.text.js';
3
+ //# sourceMappingURL=billing.presenter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.presenter.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.presenter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { z } from 'zod';
2
+ export declare const billingConceptSchema: z.ZodPreprocess<z.ZodEnum<{
3
+ productos: "productos";
4
+ "productos-servicios": "productos-servicios";
5
+ servicios: "servicios";
6
+ }>>;
7
+ export declare const billingDocumentTypeSchema: z.ZodEnum<{
8
+ "consumidor-final": "consumidor-final";
9
+ cuit: "cuit";
10
+ cuil: "cuil";
11
+ dni: "dni";
12
+ }>;
13
+ export declare const billingIvaConditionSchema: z.ZodEnum<{
14
+ "cliente-del-exterior": "cliente-del-exterior";
15
+ "consumidor-final": "consumidor-final";
16
+ "iva-liberado": "iva-liberado";
17
+ "iva-no-alcanzado": "iva-no-alcanzado";
18
+ "monotributista-social": "monotributista-social";
19
+ "monotributo-trabajador-independiente-promovido": "monotributo-trabajador-independiente-promovido";
20
+ "proveedor-del-exterior": "proveedor-del-exterior";
21
+ "responsable-inscripto": "responsable-inscripto";
22
+ "responsable-monotributo": "responsable-monotributo";
23
+ "sujeto-exento": "sujeto-exento";
24
+ "sujeto-no-categorizado": "sujeto-no-categorizado";
25
+ }>;
26
+ export declare const billingCommandSchema: z.ZodObject<{
27
+ associatedVoucher: z.ZodOptional<z.ZodObject<{
28
+ cuit: z.ZodOptional<z.ZodString>;
29
+ numero: z.ZodOptional<z.ZodNumber>;
30
+ puntoVenta: z.ZodOptional<z.ZodNumber>;
31
+ shortcut: z.ZodOptional<z.ZodString>;
32
+ tipo: z.ZodOptional<z.ZodNumber>;
33
+ }, z.core.$strip>>;
34
+ billingDate: z.ZodOptional<z.ZodString>;
35
+ concept: z.ZodPreprocess<z.ZodEnum<{
36
+ productos: "productos";
37
+ "productos-servicios": "productos-servicios";
38
+ servicios: "servicios";
39
+ }>>;
40
+ currencyCode: z.ZodDefault<z.ZodString>;
41
+ documentNumber: z.ZodOptional<z.ZodNumber>;
42
+ documentType: z.ZodDefault<z.ZodEnum<{
43
+ "consumidor-final": "consumidor-final";
44
+ cuit: "cuit";
45
+ cuil: "cuil";
46
+ dni: "dni";
47
+ }>>;
48
+ dryRun: z.ZodDefault<z.ZodBoolean>;
49
+ emit: z.ZodDefault<z.ZodBoolean>;
50
+ exchangeRate: z.ZodDefault<z.ZodNumber>;
51
+ dueDay: z.ZodOptional<z.ZodNumber>;
52
+ ivaCondition: z.ZodEnum<{
53
+ "cliente-del-exterior": "cliente-del-exterior";
54
+ "consumidor-final": "consumidor-final";
55
+ "iva-liberado": "iva-liberado";
56
+ "iva-no-alcanzado": "iva-no-alcanzado";
57
+ "monotributista-social": "monotributista-social";
58
+ "monotributo-trabajador-independiente-promovido": "monotributo-trabajador-independiente-promovido";
59
+ "proveedor-del-exterior": "proveedor-del-exterior";
60
+ "responsable-inscripto": "responsable-inscripto";
61
+ "responsable-monotributo": "responsable-monotributo";
62
+ "sujeto-exento": "sujeto-exento";
63
+ "sujeto-no-categorizado": "sujeto-no-categorizado";
64
+ }>;
65
+ pointOfSale: z.ZodOptional<z.ZodNumber>;
66
+ serviceEndDate: z.ZodOptional<z.ZodString>;
67
+ serviceStartDate: z.ZodOptional<z.ZodString>;
68
+ shortcut: z.ZodPipe<z.ZodString, z.ZodTransform<"fa" | "fb" | "fc" | "nca" | "ncb" | "ncc" | "nda" | "ndb" | "ndc" | "fcea" | "fceb" | "fcec" | "ncea" | "nceb" | "ncec" | "ndea" | "ndeb" | "ndec", string>>;
69
+ totalAmount: z.ZodNumber;
70
+ }, z.core.$strip>;
71
+ export type BillingConcept = z.infer<typeof billingConceptSchema>;
72
+ export type BillingDocumentType = z.infer<typeof billingDocumentTypeSchema>;
73
+ export type BillingIvaCondition = z.infer<typeof billingIvaConditionSchema>;
74
+ export type BillingCommandInput = z.infer<typeof billingCommandSchema>;
@@ -0,0 +1,69 @@
1
+ import { z } from 'zod';
2
+ const BILLING_CONCEPT_ALIASES = {
3
+ p: 'productos',
4
+ producto: 'productos',
5
+ productos: 'productos',
6
+ ps: 'productos-servicios',
7
+ 'productos-y-servicios': 'productos-servicios',
8
+ 'productos-servicios': 'productos-servicios',
9
+ s: 'servicios',
10
+ servicio: 'servicios',
11
+ servicios: 'servicios',
12
+ };
13
+ export const billingConceptSchema = z.preprocess((value) => {
14
+ if (typeof value !== 'string') {
15
+ return value;
16
+ }
17
+ const normalizedValue = value.trim().toLowerCase();
18
+ return BILLING_CONCEPT_ALIASES[normalizedValue] ?? value;
19
+ }, z.enum(['productos', 'productos-servicios', 'servicios']));
20
+ export const billingDocumentTypeSchema = z.enum(['consumidor-final', 'cuil', 'cuit', 'dni']);
21
+ export const billingIvaConditionSchema = z.enum([
22
+ 'cliente-del-exterior',
23
+ 'consumidor-final',
24
+ 'iva-liberado',
25
+ 'iva-no-alcanzado',
26
+ 'monotributista-social',
27
+ 'monotributo-trabajador-independiente-promovido',
28
+ 'proveedor-del-exterior',
29
+ 'responsable-inscripto',
30
+ 'responsable-monotributo',
31
+ 'sujeto-exento',
32
+ 'sujeto-no-categorizado',
33
+ ]);
34
+ const billingAssociatedVoucherSchema = z
35
+ .object({
36
+ cuit: z
37
+ .string()
38
+ .trim()
39
+ .regex(/^\d{11}$/)
40
+ .optional(),
41
+ numero: z.number().int().positive().optional(),
42
+ puntoVenta: z.number().int().positive().optional(),
43
+ shortcut: z.string().trim().min(1).optional(),
44
+ tipo: z.number().int().positive().optional(),
45
+ })
46
+ .optional();
47
+ export const billingCommandSchema = z.object({
48
+ associatedVoucher: billingAssociatedVoucherSchema,
49
+ billingDate: z.string().trim().optional(),
50
+ concept: billingConceptSchema,
51
+ currencyCode: z.string().trim().length(3).default('ARS'),
52
+ documentNumber: z.number().int().nonnegative().optional(),
53
+ documentType: billingDocumentTypeSchema.default('consumidor-final'),
54
+ dryRun: z.boolean().default(false),
55
+ emit: z.boolean().default(false),
56
+ exchangeRate: z.number().positive().default(1),
57
+ dueDay: z.number().int().min(1).max(31).optional(),
58
+ ivaCondition: billingIvaConditionSchema,
59
+ pointOfSale: z.number().int().positive().optional(),
60
+ serviceEndDate: z.string().trim().optional(),
61
+ serviceStartDate: z.string().trim().optional(),
62
+ shortcut: z
63
+ .string()
64
+ .trim()
65
+ .min(1)
66
+ .transform((value) => value),
67
+ totalAmount: z.number().positive(),
68
+ });
69
+ //# sourceMappingURL=billing.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.schemas.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { BillingExecutionResult } from './billing.types.internal';
2
+ interface BillingSerializeOptions {
3
+ readonly raw?: boolean;
4
+ }
5
+ export declare function serializeBillingResult(result: BillingExecutionResult, options?: BillingSerializeOptions): Record<string, unknown>;
6
+ export declare function serializeBillingBatch(results: BillingExecutionResult[], options?: BillingSerializeOptions): Array<Record<string, unknown>>;
7
+ export declare function formatRawBillingResponse(result: BillingExecutionResult): Record<string, string> | NonNullable<BillingExecutionResult['response']['raw']>;
8
+ export {};
@@ -0,0 +1,51 @@
1
+ function formatRawResponse(result) {
2
+ if (result.response.raw) {
3
+ return result.response.raw;
4
+ }
5
+ return {
6
+ mensaje: 'Sin emision real. Use --emitir para obtener una respuesta de ARCA.',
7
+ };
8
+ }
9
+ function formatVoucherSummary(result) {
10
+ return {
11
+ atajo: result.voucherKind.shortcut,
12
+ cae: result.response.cae,
13
+ caeVencimiento: result.response.caeVencimiento,
14
+ comprobante: result.voucherKind.displayName,
15
+ errores: result.response.errors,
16
+ estado: result.response.status,
17
+ eventos: result.response.events,
18
+ observaciones: result.response.observaciones,
19
+ observacion: result.response.observacion,
20
+ solicitud: result.payload,
21
+ previsualizacion: result.dryRun,
22
+ resultado: result.response.resultado,
23
+ sugerencias: result.response.suggestions,
24
+ tipoArca: result.voucherKind.arcaType,
25
+ };
26
+ }
27
+ export function serializeBillingResult(result, options = {}) {
28
+ if (options.raw) {
29
+ return {
30
+ atajo: result.voucherKind.shortcut,
31
+ comprobante: result.voucherKind.displayName,
32
+ solicitud: result.payload,
33
+ previsualizacion: result.dryRun,
34
+ respuesta: formatRawResponse(result),
35
+ sugerencias: result.response.suggestions,
36
+ };
37
+ }
38
+ return formatVoucherSummary(result);
39
+ }
40
+ export function serializeBillingBatch(results, options = {}) {
41
+ return results.map((result, index) => ({
42
+ atajo: result.voucherKind.shortcut,
43
+ indice: index + 1,
44
+ comprobante: result.voucherKind.displayName,
45
+ ...serializeBillingResult(result, options),
46
+ }));
47
+ }
48
+ export function formatRawBillingResponse(result) {
49
+ return formatRawResponse(result);
50
+ }
51
+ //# sourceMappingURL=billing.serialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.serialize.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.serialize.ts"],"names":[],"mappings":"AAMA,SAAS,iBAAiB,CACxB,MAA8B;IAE9B,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,CAAC;IAED,OAAO;QACL,OAAO,EAAE,oEAAoE;KAC9E,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA8B;IAC1D,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;QAClC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG;QACxB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,cAAc;QAC9C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;QAC3C,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAC/B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAC9B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAC/B,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa;QAC5C,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW;QACxC,SAAS,EAAE,MAAM,CAAC,OAAO;QACzB,gBAAgB,EAAE,MAAM,CAAC,MAAM;QAC/B,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;QACpC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW;QACxC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAA8B,EAC9B,UAAmC,EAAE;IAErC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;YAClC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;YAC3C,SAAS,EAAE,MAAM,CAAC,OAAO;YACzB,gBAAgB,EAAE,MAAM,CAAC,MAAM;YAC/B,SAAS,EAAE,iBAAiB,CAAC,MAAM,CAAC;YACpC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW;SACzC,CAAC;IACJ,CAAC;IAED,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,OAAiC,EACjC,UAAmC,EAAE;IAErC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;QAClC,MAAM,EAAE,KAAK,GAAG,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;QAC3C,GAAG,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC;KAC3C,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,MAA8B;IAE9B,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { INextVoucher } from '@arcasdk/core/lib/domain/types/voucher.types';
2
+ import type { ResolvedArcaRuntime } from '../../services/arca/arca-context.resolver';
3
+ import type { BillingCommandInput } from './billing.schemas';
4
+ import type { VoucherKindDefinition } from './billing.types';
5
+ import type { BillingExecutionResult, BillingGateway } from './billing.types.internal';
6
+ export interface BillingExecutionOptions {
7
+ readonly gateway: BillingGateway;
8
+ readonly input: BillingCommandInput;
9
+ readonly runtime: ResolvedArcaRuntime;
10
+ }
11
+ export declare class BillingService {
12
+ execute(options: BillingExecutionOptions): Promise<BillingExecutionResult>;
13
+ buildVoucherPayload(input: BillingCommandInput, runtime: ResolvedArcaRuntime, voucherKind?: VoucherKindDefinition): INextVoucher;
14
+ private requireVoucherKind;
15
+ }
@@ -0,0 +1,88 @@
1
+ import { InputValidationError } from '../../lib/errors/app-error.js';
2
+ import { resolveTaxAmounts } from './billing.amounts.js';
3
+ import { resolveAssociatedVouchers } from './billing.associated-vouchers.js';
4
+ import { DEFAULT_EXCHANGE_RATE } from './billing.constants.js';
5
+ import { resolveBillingDateRange } from './billing.date-range.js';
6
+ import { resolveBillingConceptCode, resolveBillingCurrencyCode, resolveBillingDocumentTypeCode, resolveBillingIvaConditionCode, } from './billing.mappers.js';
7
+ import { validateDocumentIdentity } from './billing.validation.js';
8
+ import { createDryRunResponse, mapBillingResponse } from './billing-response.js';
9
+ import { getVoucherKindByShortcut } from './voucher-kind-map.js';
10
+ export class BillingService {
11
+ async execute(options) {
12
+ const voucherKind = this.requireVoucherKind(options.input.shortcut);
13
+ const payload = this.buildVoucherPayload(options.input, options.runtime, voucherKind);
14
+ if (options.input.dryRun || !options.input.emit) {
15
+ return {
16
+ dryRun: true,
17
+ environment: options.runtime.environment,
18
+ payload,
19
+ response: createDryRunResponse(),
20
+ voucherKind,
21
+ };
22
+ }
23
+ const response = await options.gateway.createNextVoucher(payload);
24
+ return {
25
+ dryRun: false,
26
+ environment: options.runtime.environment,
27
+ payload,
28
+ response: mapBillingResponse(response),
29
+ voucherKind,
30
+ };
31
+ }
32
+ buildVoucherPayload(input, runtime, voucherKind = this.requireVoucherKind(input.shortcut)) {
33
+ const pointOfSale = input.pointOfSale ?? runtime.pointOfSale;
34
+ if (!pointOfSale) {
35
+ throw new InputValidationError('Falta el punto de venta. Use --punto-venta o --pv, o configurelo con "arcli config establecer puntoVenta <valor>".');
36
+ }
37
+ const dateRange = resolveBillingDateRange(input);
38
+ const concept = resolveBillingConceptCode(input.concept);
39
+ const documentType = resolveBillingDocumentTypeCode(input.documentType);
40
+ const ivaCondition = resolveBillingIvaConditionCode(input.ivaCondition);
41
+ const associatedVouchers = resolveAssociatedVouchers({
42
+ input,
43
+ requireVoucherKind: (shortcut) => this.requireVoucherKind(shortcut),
44
+ voucherKind,
45
+ });
46
+ const taxAmounts = resolveTaxAmounts(input.totalAmount, input.ivaCondition, voucherKind);
47
+ validateDocumentIdentity(input, voucherKind);
48
+ const payload = {
49
+ CantReg: 1,
50
+ CbteFch: dateRange.billingDate,
51
+ CbteTipo: voucherKind.arcaType,
52
+ Concepto: concept,
53
+ CondicionIVAReceptorId: ivaCondition,
54
+ DocTipo: documentType,
55
+ FchServDesde: concept === 1 ? undefined : dateRange.serviceStartDate,
56
+ FchServHasta: concept === 1 ? undefined : dateRange.serviceEndDate,
57
+ FchVtoPago: concept === 1 ? undefined : dateRange.paymentDueDate,
58
+ ImpIVA: taxAmounts.ivaAmount,
59
+ ImpNeto: taxAmounts.netAmount,
60
+ ImpOpEx: 0,
61
+ ImpTotConc: 0,
62
+ ImpTotal: input.totalAmount,
63
+ ImpTrib: 0,
64
+ MonCotiz: input.exchangeRate ?? DEFAULT_EXCHANGE_RATE,
65
+ MonId: resolveBillingCurrencyCode(input.currencyCode),
66
+ PtoVta: pointOfSale,
67
+ };
68
+ if (taxAmounts.iva) {
69
+ payload.Iva = taxAmounts.iva;
70
+ }
71
+ if (typeof input.documentNumber === 'number') {
72
+ payload.DocNro = input.documentNumber;
73
+ }
74
+ if (associatedVouchers) {
75
+ payload.CbtesAsoc = associatedVouchers;
76
+ }
77
+ // El SDK tipa DocNro como obligatorio, pero el CLI permite omitirlo cuando el usuario no lo informa.
78
+ return payload;
79
+ }
80
+ requireVoucherKind(shortcut) {
81
+ const definition = getVoucherKindByShortcut(shortcut);
82
+ if (!definition) {
83
+ throw new InputValidationError(`El atajo "${shortcut}" no corresponde a un comprobante soportado.`);
84
+ }
85
+ return definition;
86
+ }
87
+ }
88
+ //# sourceMappingURL=billing.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.service.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { BillingExecutionResult } from './billing.types.internal';
2
+ interface BillingTextOptions {
3
+ readonly environment?: 'produccion' | 'testing';
4
+ readonly previewShown?: boolean;
5
+ readonly raw?: boolean;
6
+ }
7
+ export declare function formatBillingResultAsText(result: BillingExecutionResult, options?: BillingTextOptions): string;
8
+ export {};
@@ -0,0 +1,44 @@
1
+ import { contentPanel, renderObject } from '../../ui/index.js';
2
+ import { formatEnvironmentBanner, formatPayloadPreview, formatResultPanel, formatStatusBadge } from './billing.display.js';
3
+ import { formatRawBillingResponse } from './billing.serialize.js';
4
+ function formatObservationList(observaciones) {
5
+ return observaciones.map((item, index) => `${index + 1}. ${item}`).join('\n');
6
+ }
7
+ export function formatBillingResultAsText(result, options = {}) {
8
+ const environmentLines = options.previewShown
9
+ ? []
10
+ : formatEnvironmentBanner(options.environment ?? result.environment);
11
+ if (options.raw) {
12
+ if (result.dryRun) {
13
+ return [...environmentLines, formatPayloadPreview(result)].join('\n\n');
14
+ }
15
+ const lines = [contentPanel('Respuesta bruta', renderObject(formatRawBillingResponse(result)), 'wide', 'info')];
16
+ if (!options.previewShown) {
17
+ lines.unshift(formatPayloadPreview(result));
18
+ }
19
+ return [...environmentLines, ...lines].join('\n\n');
20
+ }
21
+ if (result.dryRun) {
22
+ return [...environmentLines, formatPayloadPreview(result)].join('\n\n');
23
+ }
24
+ const lines = [...environmentLines];
25
+ if (!options.previewShown) {
26
+ lines.push(formatPayloadPreview(result));
27
+ }
28
+ lines.push(formatResultPanel(result, formatStatusBadge(result)));
29
+ if (result.response.observaciones.length > 0) {
30
+ lines.push(contentPanel('Observaciones', formatObservationList(result.response.observaciones), 'wide', 'warning'));
31
+ }
32
+ if (result.response.events.length > 0) {
33
+ lines.push(contentPanel('Eventos', renderObject(result.response.events), 'wide', 'info'));
34
+ }
35
+ if (result.response.errors.length > 0) {
36
+ lines.push(contentPanel('Errores', renderObject(result.response.errors), 'wide', 'danger'));
37
+ }
38
+ const suggestions = result.response.suggestions ?? [];
39
+ if (suggestions.length > 0) {
40
+ lines.push(contentPanel('Sugerencias', suggestions.map((item) => `• ${item}`).join('\n'), 'wide', 'info'));
41
+ }
42
+ return lines.join('\n\n');
43
+ }
44
+ //# sourceMappingURL=billing.text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.text.js","sourceRoot":"","sources":["../../../src/modules/billing/billing.text.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export type VoucherLetter = 'a' | 'b' | 'c';
2
+ export type VoucherFamily = 'factura' | 'nota-credito' | 'nota-debito' | 'factura-credito-electronica' | 'nota-credito-electronica' | 'nota-debito-electronica';
3
+ export type VoucherShortcut = 'fa' | 'fb' | 'fc' | 'nca' | 'ncb' | 'ncc' | 'nda' | 'ndb' | 'ndc' | 'fcea' | 'fceb' | 'fcec' | 'ncea' | 'nceb' | 'ncec' | 'ndea' | 'ndeb' | 'ndec';
4
+ export type VoucherDisplayName = 'Factura A' | 'Factura B' | 'Factura C' | 'Nota de credito A' | 'Nota de credito B' | 'Nota de credito C' | 'Nota de debito A' | 'Nota de debito B' | 'Nota de debito C' | 'Factura de credito electronica A' | 'Factura de credito electronica B' | 'Factura de credito electronica C' | 'Nota de credito electronica A' | 'Nota de credito electronica B' | 'Nota de credito electronica C' | 'Nota de debito electronica A' | 'Nota de debito electronica B' | 'Nota de debito electronica C';
5
+ export interface VoucherKindDefinition {
6
+ readonly arcaType: number;
7
+ readonly displayName: VoucherDisplayName;
8
+ readonly family: VoucherFamily;
9
+ readonly isElectronicCredit: boolean;
10
+ readonly letter: VoucherLetter;
11
+ readonly requiresAssociatedVoucher: boolean;
12
+ readonly shortcut: VoucherShortcut;
13
+ }