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,473 @@
1
+ import { getVoucherKindByShortcut } from '../modules/billing/voucher-kind-map.js';
2
+ import { renderLogo } from '../ui/index.js';
3
+ const FAMILY_LABELS = {
4
+ factura: 'Factura',
5
+ 'factura-credito-electronica': 'Factura de credito electronica',
6
+ 'nota-credito': 'Nota de credito',
7
+ 'nota-credito-electronica': 'Nota de credito electronica',
8
+ 'nota-debito': 'Nota de debito',
9
+ 'nota-debito-electronica': 'Nota de debito electronica',
10
+ };
11
+ const FAMILY_SHORTCUTS = {
12
+ factura: ['fa', 'fb', 'fc'],
13
+ 'factura-credito-electronica': ['fcea', 'fceb', 'fcec'],
14
+ 'nota-credito': ['nca', 'ncb', 'ncc'],
15
+ 'nota-credito-electronica': ['ncea', 'nceb', 'ncec'],
16
+ 'nota-debito': ['nda', 'ndb', 'ndc'],
17
+ 'nota-debito-electronica': ['ndea', 'ndeb', 'ndec'],
18
+ };
19
+ const AVAILABLE_GENERAL_OPTIONS = [
20
+ ' - --monto <number> | todas | importe total del comprobante',
21
+ ' - --punto-venta <number> | --pv <number> | todas | punto de venta emisor',
22
+ ' - --fecha <fecha> | todas | fecha del comprobante; si falta usa hoy',
23
+ ' - --concepto <tipo> | -c | todas | productos, servicios o productos-servicios',
24
+ ' - --cs | --cp | --csp | todas | atajos para concepto',
25
+ ' - --moneda <codigo> | --mda <codigo> | todas | codigo de moneda, por ejemplo ARS o USD',
26
+ ' - --cotizacion-moneda <number> | --cm <number> | todas | cotizacion de la moneda elegida',
27
+ ' - --cargar <path> | todas | cargar un comprobante o lote desde JSON',
28
+ ].join('\n');
29
+ const AVAILABLE_IDENTITY_OPTIONS = [
30
+ ' - --cuit <number> | todas | CUIT del receptor',
31
+ ' - --cuil <number> | todas | CUIL del receptor',
32
+ ' - --dni <number> | todas | DNI del receptor',
33
+ ' - --consumidor-final | --cfinal | todas | consumidor final con documento 0',
34
+ ' - --iva-receptor <tipo> | --ir <tipo> | todas | condicion IVA del receptor',
35
+ ' - --ir-* | todas | atajos para IVA receptor, por ejemplo --ir-cf o --ir-ri',
36
+ ].join('\n');
37
+ const AVAILABLE_SERVICE_OPTIONS = [
38
+ ' - -d, --dia <1-31> | servicios o productos-servicios | dia de vencimiento o referencia de servicio',
39
+ ' - --servicio-desde <fecha> | --sd <fecha> | servicios o productos-servicios | inicio del servicio',
40
+ ' - --servicio-hasta <fecha> | --sh <fecha> | servicios o productos-servicios | fin del servicio',
41
+ ].join('\n');
42
+ const AVAILABLE_ASSOCIATED_OPTIONS = [
43
+ ' - --ac <shortcut> | notas | shortcut del comprobante asociado',
44
+ ' - --at <number> | notas | tipo ARCA del comprobante asociado',
45
+ ' - --asociado-punto-venta <number> | --apv <number> | notas | punto de venta del asociado',
46
+ ' - --ar <number> | notas | numero del comprobante asociado',
47
+ ' - --acuit <number> | notas | CUIT del comprobante asociado',
48
+ ].join('\n');
49
+ const AVAILABLE_EXECUTION_OPTIONS = [
50
+ ' - --previsualizar | todas | muestra el payload antes de hablar con ARCA',
51
+ ' - --emitir | todas | emite realmente el comprobante',
52
+ ' - --testing | todas | fuerza entorno testing en esta corrida',
53
+ ' - --produccion | todas | fuerza entorno produccion en esta corrida',
54
+ ' - --json | todas | salida estructurada para scripts',
55
+ ' - --bruto | todas | agrega respuesta cruda de ARCA cuando exista',
56
+ ].join('\n');
57
+ const CORE_RULES = [
58
+ ' - ARCLI arma datos desde flags, JSON cargado, config y defaults internos.',
59
+ ' - Si no pasa fecha, usa hoy.',
60
+ ' - Use --emitir o --previsualizar, pero no ambos.',
61
+ ' - Use una sola identidad de receptor: --consumidor-final o --cfinal, o bien --cuit, --cuil o --dni.',
62
+ ' - Use --iva-receptor, --ir o un solo flag --ir-*, pero no varios a la vez.',
63
+ ' - Use --concepto o un solo flag entre --cs, --cp y --csp, pero no ambos.',
64
+ ].join('\n');
65
+ function section(title, body) {
66
+ return [title, body].join('\n');
67
+ }
68
+ function compactList(values) {
69
+ return values.map((value) => ` - ${value}`).join('\n');
70
+ }
71
+ function formatFamilyShortcuts(family) {
72
+ const [a, b, c] = FAMILY_SHORTCUTS[family];
73
+ return compactList([`A -> ${a}`, `B -> ${b}`, `C -> ${c}`]);
74
+ }
75
+ function createProgramQuickStart() {
76
+ return [
77
+ 'Uso minimo',
78
+ ' - TL;DR: arcli fc -m 300000 --cs --consumidor-final --ir-cf',
79
+ ' - Ese ejemplo asume que ya resolviste CUIT emisor, credenciales y punto de venta.',
80
+ ' - Si todavía no lo hiciste, empezá por: arcli config revisar',
81
+ ' - Emitir de verdad: arcli fa -m 1 --cs --cuit 20168598204 --ir-ri --emitir --bruto',
82
+ ].join('\n');
83
+ }
84
+ function createProgramMentalModel() {
85
+ return [
86
+ 'Como pensar rapido un comando',
87
+ ' - 1. Elegí el comprobante: fc, fa, nca, ndeb, fcec.',
88
+ ' - 2. Definí el monto: --monto.',
89
+ ' - 3. Elegí el concepto: --cs, --cp, --csp o --concepto.',
90
+ ' - 4. Definí la identidad: --cuit, --cuil, --dni o --consumidor-final.',
91
+ ' - 5. Definí el IVA receptor: --ir-*, --ir o --iva-receptor.',
92
+ ].join('\n');
93
+ }
94
+ function createProgramFamilies() {
95
+ return section('Familias y shortcuts', [
96
+ ' - factura -> fa, fb, fc',
97
+ ' - nota-credito -> nca, ncb, ncc',
98
+ ' - nota-debito -> nda, ndb, ndc',
99
+ ' - factura-credito-electronica -> fcea, fceb, fcec',
100
+ ' - nota-credito-electronica -> ncea, nceb, ncec',
101
+ ' - nota-debito-electronica -> ndea, ndeb, ndec',
102
+ ].join('\n'));
103
+ }
104
+ function createProgramCommands() {
105
+ return section('Comandos importantes', [
106
+ ' - Emitir comprobantes por shortcut: arcli fc ...',
107
+ ' - Emitir por familia y letra: arcli factura c ...',
108
+ ' - Ver y guardar config: arcli config',
109
+ ' - Revisar entorno y credenciales: arcli config revisar',
110
+ ' - Ver ejemplos listos para copiar: arcli ejemplos',
111
+ ' - Ver escenas de UI: arcli storybook',
112
+ ].join('\n'));
113
+ }
114
+ function createProgramExamples() {
115
+ return section('Ejemplos utiles', [
116
+ ' - Basico: arcli fc -m 300000 --cs --consumidor-final --ir-cf',
117
+ ' - Con CUIT: arcli fa -m 1 --cs --cuit 20168598204 --ir-ri',
118
+ ' - Nota: arcli nca -m 1 --cs --cuit 20168598204 --ir-ri --ac fa --apv 3 --ar 6 --acuit 20409509763',
119
+ ].join('\n'));
120
+ }
121
+ function createProgramSafety() {
122
+ return section('Ejecucion y seguridad', [
123
+ ' - --previsualizar muestra la solicitud antes de emitir.',
124
+ ' - --emitir habla de verdad con ARCA.',
125
+ ' - --produccion cambia al entorno real.',
126
+ ' - Para emitir de verdad necesita --produccion junto con --emitir.',
127
+ ' - Para scripts o pipelines, usá --json y evitá automatizar sobre salida humana.',
128
+ ].join('\n'));
129
+ }
130
+ function createProgramProject() {
131
+ return section('Proyecto y actualizaciones', [
132
+ ' - Repositorio: https://github.com/LcsGrz/arcli',
133
+ ' - Actualizar a la ultima version: npm install -g arcli@latest',
134
+ ' - Ver la version instalada: arcli --version',
135
+ ].join('\n'));
136
+ }
137
+ function createProgramDiscovery() {
138
+ return section('Descubrimiento', [
139
+ ' - Ayuda general: arcli ayuda',
140
+ ' - Ayuda de un shortcut: arcli fc ayuda',
141
+ ' - Ayuda de una familia: arcli factura ayuda',
142
+ ' - Ayuda de config: arcli config ayuda',
143
+ ' - Ayuda de ejemplos: arcli ejemplos ayuda',
144
+ ' - Ayuda de storybook: arcli storybook ayuda',
145
+ ].join('\n'));
146
+ }
147
+ function createProgramFrequentErrors() {
148
+ return section('Errores frecuentes', [
149
+ ' - Identidad duplicada: no uses --cuit y --consumidor-final juntos.',
150
+ ' - Falta IVA receptor: elegí --ir-* o --iva-receptor.',
151
+ ' - Flags incompatibles: no mezcles --emitir y --previsualizar.',
152
+ ' - JSON invalido o incompleto: revisá el archivo pasado a --cargar.',
153
+ ].join('\n'));
154
+ }
155
+ function createVoucherSummary(shortcut) {
156
+ const definition = getVoucherKindByShortcut(shortcut);
157
+ if (!definition) {
158
+ return '';
159
+ }
160
+ const whenToUse = definition.requiresAssociatedVoucher
161
+ ? 'Use este shortcut cuando ya sabe el comprobante exacto y necesita informar un asociado compatible.'
162
+ : 'Use este shortcut cuando ya sabe exactamente que comprobante quiere emitir y quiere escribir menos.';
163
+ return section('Resumen', [
164
+ ` - Comprobante: ${definition.displayName}`,
165
+ ` - Shortcut: arcli ${shortcut}`,
166
+ ` - Comando largo: arcli ${definition.family} ${definition.letter}`,
167
+ ` - Tipo ARCA: ${definition.arcaType}`,
168
+ ` - Cuando usarlo: ${whenToUse}`,
169
+ ].join('\n'));
170
+ }
171
+ function createShortcutMinimum(shortcut) {
172
+ const definition = getVoucherKindByShortcut(shortcut);
173
+ if (!definition) {
174
+ return '';
175
+ }
176
+ const example = definition.requiresAssociatedVoucher
177
+ ? ` - Ejemplo minimo: arcli ${shortcut} -m 1 --cs --cuit 20168598204 --ir-ri --ac fa --apv 3 --ar 6 --acuit 20409509763`
178
+ : ` - Ejemplo minimo: arcli ${shortcut} -m 300000 --cs --consumidor-final --ir-cf`;
179
+ return section('Para empezar', [
180
+ example,
181
+ definition.requiresAssociatedVoucher
182
+ ? ' - Ademas de la estructura base, este comprobante siempre necesita asociado.'
183
+ : ' - Con eso ya tenés una base funcional para previsualizar o emitir.',
184
+ ].join('\n'));
185
+ }
186
+ function createShortcutExamples(shortcut) {
187
+ const definition = getVoucherKindByShortcut(shortcut);
188
+ if (!definition) {
189
+ return '';
190
+ }
191
+ const examples = definition.requiresAssociatedVoucher
192
+ ? [
193
+ ` - Previsualizar: arcli ${shortcut} -m 1 --cs --cuit 20168598204 --ir-ri --ac fa --apv 3 --ar 6 --acuit 20409509763 --previsualizar`,
194
+ ` - Emitir: arcli ${shortcut} -m 1 --cs --cuit 20168598204 --ir-ri --ac fa --apv 3 --ar 6 --acuit 20409509763 --emitir --bruto`,
195
+ ` - JSON: arcli ${shortcut} --cargar ./voucher.json --json`,
196
+ ]
197
+ : [
198
+ ` - Rapido: arcli ${shortcut} -m 15000 --cs --consumidor-final --ir-cf`,
199
+ ` - Emitir: arcli ${shortcut} -m 1 --cs --cuit 20168598204 --ir-ri --emitir --bruto`,
200
+ ` - JSON: arcli ${shortcut} --cargar ./voucher.json --json`,
201
+ ];
202
+ return section('Ejemplos', examples.join('\n'));
203
+ }
204
+ function createShortcutImportantFlags(shortcut) {
205
+ const definition = getVoucherKindByShortcut(shortcut);
206
+ if (!definition) {
207
+ return '';
208
+ }
209
+ return section('Flags importantes', [
210
+ ' - Estructura base: --monto, --concepto/--cs/--cp/--csp, identidad y IVA receptor.',
211
+ ' - Datos comunes: --pv, --fecha, --moneda, --cm, --cargar.',
212
+ ' - Servicio: --dia, --sd y --sh cuando el concepto usa servicios.',
213
+ definition.requiresAssociatedVoucher
214
+ ? ' - Asociado: --ac o --at, mas --apv, --ar y --acuit.'
215
+ : ' - Asociado: no aplica para este comprobante.',
216
+ ' - Salida y ejecucion: --previsualizar, --emitir, --json, --bruto, --testing, --produccion.',
217
+ ].join('\n'));
218
+ }
219
+ function createShortcutAvailableFlags(shortcut) {
220
+ const definition = getVoucherKindByShortcut(shortcut);
221
+ if (!definition) {
222
+ return '';
223
+ }
224
+ return section('Mas parametros disponibles', [
225
+ 'Generales',
226
+ AVAILABLE_GENERAL_OPTIONS,
227
+ '',
228
+ 'Receptor e IVA',
229
+ AVAILABLE_IDENTITY_OPTIONS,
230
+ '',
231
+ 'Servicio',
232
+ AVAILABLE_SERVICE_OPTIONS,
233
+ '',
234
+ 'Comprobante asociado',
235
+ definition.requiresAssociatedVoucher ? AVAILABLE_ASSOCIATED_OPTIONS : ' - No aplica para este comprobante.',
236
+ '',
237
+ 'Ejecucion y salida',
238
+ AVAILABLE_EXECUTION_OPTIONS,
239
+ ].join('\n'));
240
+ }
241
+ function createShortcutFrequentErrors(shortcut) {
242
+ const definition = getVoucherKindByShortcut(shortcut);
243
+ if (!definition) {
244
+ return '';
245
+ }
246
+ const lines = [
247
+ ' - No mezcle identidades del receptor.',
248
+ ' - No mezcle --emitir y --previsualizar.',
249
+ ' - Si usa --cargar, revise que el JSON tenga claves validas.',
250
+ ];
251
+ if (definition.requiresAssociatedVoucher) {
252
+ lines.push(' - Este comprobante exige asociado; complete --ac, --apv, --ar y --acuit cuando corresponda.');
253
+ }
254
+ return section('Errores frecuentes', lines.join('\n'));
255
+ }
256
+ function createFamilySummary(family) {
257
+ return section('Resumen', [
258
+ ` - Familia: ${FAMILY_LABELS[family]}`,
259
+ ` - Uso: arcli ${family} <a|b|c>`,
260
+ ' - Letras validas: a, b, c',
261
+ ' - Use la familia cuando quiera cambiar solo la letra sin aprender todos los shortcuts.',
262
+ ' - Si ya sabés el comprobante exacto, el shortcut suele ser mas rapido.',
263
+ ].join('\n'));
264
+ }
265
+ function createFamilyExamples(family) {
266
+ return section('Ejemplos por letra', [
267
+ ` - Letra A: arcli ${family} a -m 15000 --cs --cuit 20168598204 --ir-ri`,
268
+ ` - Letra B: arcli ${family} b -m 15000 --cs --consumidor-final --ir-cf`,
269
+ ` - Letra C con JSON: arcli ${family} c --cargar ./voucher.json --json`,
270
+ ].join('\n'));
271
+ }
272
+ function createFamilySharedFlags(family) {
273
+ return [
274
+ section('Shortcuts relacionados', formatFamilyShortcuts(family)),
275
+ '',
276
+ section('Flags importantes', [
277
+ ' - Base comun: --monto, --concepto/--cs/--cp/--csp, identidad e IVA receptor.',
278
+ ' - Datos comunes: --pv, --fecha, --moneda, --cm, --cargar.',
279
+ ' - Servicio: --dia, --sd y --sh cuando el concepto usa servicios.',
280
+ family.includes('nota')
281
+ ? ' - Asociado: esta familia lo exige; usá --ac o --at, mas --apv, --ar y --acuit.'
282
+ : ' - Asociado: no aplica para esta familia.',
283
+ ' - Ejecucion y salida: --previsualizar, --emitir, --json, --bruto, --testing, --produccion.',
284
+ ].join('\n')),
285
+ '',
286
+ section('Mas parametros disponibles', [
287
+ 'Generales',
288
+ AVAILABLE_GENERAL_OPTIONS,
289
+ '',
290
+ 'Receptor e IVA',
291
+ AVAILABLE_IDENTITY_OPTIONS,
292
+ '',
293
+ 'Servicio',
294
+ AVAILABLE_SERVICE_OPTIONS,
295
+ '',
296
+ 'Comprobante asociado',
297
+ family.includes('nota') ? AVAILABLE_ASSOCIATED_OPTIONS : ' - No aplica para esta familia.',
298
+ '',
299
+ 'Ejecucion y salida',
300
+ AVAILABLE_EXECUTION_OPTIONS,
301
+ ].join('\n')),
302
+ ].join('\n');
303
+ }
304
+ function createFamilyFrequentErrors(family) {
305
+ const lines = [
306
+ ' - La letra debe ser a, b o c.',
307
+ ' - No mezcle identidades o conceptos incompatibles.',
308
+ ' - Si carga JSON, la letra del comando y el contenido deben representar el mismo comprobante.',
309
+ ];
310
+ if (family.includes('nota')) {
311
+ lines.push(' - Las notas requieren un asociado compatible; sin eso ARCLI no puede armar el payload final.');
312
+ }
313
+ return section('Errores frecuentes', lines.join('\n'));
314
+ }
315
+ export function createConfigHelp() {
316
+ return [
317
+ '',
318
+ section('Para que sirve', [
319
+ ' - Guardar defaults del CLI para no repetir flags en cada corrida.',
320
+ ' - Definir rutas de certificados y claves por entorno.',
321
+ ' - Revisar si el entorno esta listo antes de emitir.',
322
+ ].join('\n')),
323
+ '',
324
+ section('Casos comunes', [
325
+ ' - Guardar defaults para no repetir flags como puntoVenta, concepto o IVA receptor.',
326
+ ' - Revisar si testing o produccion tienen credenciales y contexto validos.',
327
+ ' - Debuggear por que un comando pide datos que pensabas tener guardados.',
328
+ ].join('\n')),
329
+ '',
330
+ section('Comandos mas usados', [
331
+ ' - Ver config actual: arcli config',
332
+ ' - Revisar entorno: arcli config revisar',
333
+ ' - Ver ruta del archivo: arcli config ruta',
334
+ ' - Guardar un default: arcli config establecer puntoVenta 3',
335
+ ' - Guardar una credencial: arcli config establecer cert.testing /ruta/cert.crt',
336
+ ].join('\n')),
337
+ '',
338
+ section('Defaults que podes guardar', [
339
+ ' - entorno: testing o produccion por defecto cuando no pasas --testing/--produccion.',
340
+ ' - cuit, puntoVenta, concepto, ivaReceptor: datos de facturacion que se repiten siempre.',
341
+ ' - cert.testing, cert.produccion, key.testing, key.produccion: rutas a certificado/clave por entorno.',
342
+ ' - moneda, cotizacion: defaults cuando no pasas --moneda/--cm.',
343
+ ' - emitir, json, bruto: defaults de ejecucion y salida (true/false, si/no o 1/0).',
344
+ ' - ticketPath: carpeta donde se cachea el ticket WSAA.',
345
+ ' - Guardar: arcli config establecer <clave> <valor>. Borrar: arcli config eliminar <clave>.',
346
+ ].join('\n')),
347
+ '',
348
+ section('Ejemplos', [
349
+ ' - arcli config establecer cuit 20409509763',
350
+ ' - arcli config establecer entorno produccion',
351
+ ' - arcli config establecer ivaReceptor consumidor-final',
352
+ ' - arcli config establecer key.produccion /ruta/clave.key',
353
+ ' - arcli config establecer ticketPath /ruta/tickets',
354
+ ' - arcli config eliminar json',
355
+ ].join('\n')),
356
+ '',
357
+ section('Errores frecuentes', [
358
+ ' - Faltan cert.testing o key.testing: corra arcli config revisar.',
359
+ ' - Punto de venta no configurado: guarde puntoVenta o paselo por flag.',
360
+ ' - Emitir por defecto activado sin querer: revise el valor de emitir.',
361
+ ].join('\n')),
362
+ '',
363
+ ].join('\n');
364
+ }
365
+ export function createStorybookHelp() {
366
+ return [
367
+ '',
368
+ section('Escenas disponibles', [
369
+ ' - arcli storybook',
370
+ ' - arcli storybook colores',
371
+ ' - arcli storybook componentes',
372
+ ' - arcli storybook comprobantes',
373
+ ' - arcli storybook configuracion',
374
+ ' - arcli storybook errores',
375
+ ' - arcli storybook json',
376
+ ].join('\n')),
377
+ '',
378
+ section('Cuando usarlo', [
379
+ ' - Revisar la UI del CLI sin pegarle a ARCA.',
380
+ ' - Probar escenas visuales mientras ajusta paneles, colores o contratos JSON.',
381
+ ].join('\n')),
382
+ '',
383
+ ].join('\n');
384
+ }
385
+ export function createExamplesHelp() {
386
+ return [
387
+ '',
388
+ section('Para que sirve', [
389
+ ' - Mostrar ejemplos seguros y listos para copiar de todos los comprobantes soportados.',
390
+ ' - Comparar la forma larga y la forma corta del mismo comando.',
391
+ ' - Ver rapido que cambia entre una variante minima y una full.',
392
+ ].join('\n')),
393
+ '',
394
+ section('Como leer la salida', [
395
+ ' - Minima: datos esenciales del comprobante.',
396
+ ' - Full: mas campos explicitados para el mismo flujo.',
397
+ ' - Larga: comando largo y flags descriptivos.',
398
+ ' - Corta: shortcut y aliases practicos.',
399
+ ].join('\n')),
400
+ '',
401
+ section('Seguridad', [
402
+ ' - Todos los ejemplos usan --previsualizar para evitar emisiones reales por error.',
403
+ ' - Si queres emitir, reemplaza --previsualizar por --emitir.',
404
+ ].join('\n')),
405
+ '',
406
+ ].join('\n');
407
+ }
408
+ export function createShortcutHelp(shortcut) {
409
+ return [
410
+ '',
411
+ createVoucherSummary(shortcut),
412
+ '',
413
+ createShortcutMinimum(shortcut),
414
+ '',
415
+ createShortcutImportantFlags(shortcut),
416
+ '',
417
+ createShortcutExamples(shortcut),
418
+ '',
419
+ createShortcutAvailableFlags(shortcut),
420
+ '',
421
+ section('Reglas clave', CORE_RULES),
422
+ '',
423
+ createShortcutFrequentErrors(shortcut),
424
+ '',
425
+ ].join('\n');
426
+ }
427
+ export function createFamilyHelp(family) {
428
+ return [
429
+ '',
430
+ createFamilySummary(family),
431
+ '',
432
+ createFamilyExamples(family),
433
+ '',
434
+ createFamilySharedFlags(family),
435
+ '',
436
+ section('Reglas clave', CORE_RULES),
437
+ '',
438
+ createFamilyFrequentErrors(family),
439
+ '',
440
+ ].join('\n');
441
+ }
442
+ export function createProgramHelp() {
443
+ return [
444
+ '',
445
+ createProgramQuickStart(),
446
+ '',
447
+ createProgramMentalModel(),
448
+ '',
449
+ createProgramFamilies(),
450
+ '',
451
+ createProgramCommands(),
452
+ '',
453
+ createProgramExamples(),
454
+ '',
455
+ createProgramSafety(),
456
+ '',
457
+ createProgramDiscovery(),
458
+ '',
459
+ createProgramFrequentErrors(),
460
+ '',
461
+ createProgramProject(),
462
+ '',
463
+ ].join('\n');
464
+ }
465
+ export function configureSpanishHelp(command) {
466
+ command.helpCommand(false);
467
+ command.helpOption('--ayuda', 'mostrar ayuda');
468
+ command.showHelpAfterError('(usa "ayuda" para ver ejemplos y opciones)');
469
+ }
470
+ export function createProgramHeader() {
471
+ return renderLogo();
472
+ }
473
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env node
2
+ import { renderUpdateNoticePanel } from '../modules/update-check/update-check.presenter.js';
3
+ import { checkForUpdate } from '../modules/update-check/update-check.service.js';
4
+ import { formatCliError, writeTerminalError, writeTerminalJsonError } from '../ui/index.js';
5
+ import { createProgram } from './program.js';
6
+ import { CLI_VERSION } from './version.js';
7
+ function normalizeHelpArgv(argv) {
8
+ const cliArgs = argv.slice(2);
9
+ if (cliArgs.length === 0) {
10
+ return argv;
11
+ }
12
+ if (cliArgs[0] === 'ayuda') {
13
+ const rest = cliArgs.slice(1);
14
+ return argv.slice(0, 2).concat(rest.length > 0 ? [...rest, '--ayuda'] : ['--ayuda']);
15
+ }
16
+ if (cliArgs[cliArgs.length - 1] === 'ayuda') {
17
+ return argv.slice(0, 2).concat([...cliArgs.slice(0, -1), '--ayuda']);
18
+ }
19
+ return argv;
20
+ }
21
+ const program = createProgram();
22
+ const useJson = process.argv.includes('--json');
23
+ const updateCheckPromise = useJson ? Promise.resolve(null) : checkForUpdate(CLI_VERSION).catch(() => null);
24
+ program
25
+ .parseAsync(normalizeHelpArgv(process.argv))
26
+ .then(async () => {
27
+ const updateResult = await updateCheckPromise;
28
+ if (updateResult) {
29
+ writeTerminalError(renderUpdateNoticePanel(updateResult));
30
+ }
31
+ })
32
+ .catch((error) => {
33
+ if (useJson) {
34
+ writeTerminalJsonError(formatCliError(error, useJson));
35
+ }
36
+ else {
37
+ writeTerminalError(formatCliError(error, useJson));
38
+ }
39
+ process.exitCode = 1;
40
+ });
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,OAAO,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,SAAS,iBAAiB,CAAC,IAAc;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE9B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE9B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;AAChC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAChD,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;AAE3G,OAAO;KACJ,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC3C,IAAI,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC;IAE9C,IAAI,YAAY,EAAE,CAAC;QACjB,kBAAkB,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IACxB,IAAI,OAAO,EAAE,CAAC;QACZ,sBAAsB,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,kBAAkB,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Command } from 'commander';
2
+ export declare function createProgram(): Command;
@@ -0,0 +1,28 @@
1
+ import { Command } from 'commander';
2
+ import { registerGlobalOptions } from './commands/billing.command.shared.js';
3
+ import { registerBillingFamilyCommands } from './commands/billing-family.command.js';
4
+ import { registerBillingShortcutCommands } from './commands/billing-shortcuts.command.js';
5
+ import { registerConfigCommand } from './commands/config.command.js';
6
+ import { registerExamplesCommand } from './commands/examples.command.js';
7
+ import { registerStorybookCommand } from './commands/storybook.command.js';
8
+ import { configureSpanishHelp, createProgramHeader, createProgramHelp } from './help.js';
9
+ import { CLI_VERSION } from './version.js';
10
+ export function createProgram() {
11
+ const program = new Command();
12
+ program
13
+ .name('arcli')
14
+ .description('Emití y revisá comprobantes ARCA desde terminal con una UX mas simple, validaciones claras y salida lista para automatizar.')
15
+ .version(CLI_VERSION)
16
+ .showHelpAfterError('(usa "ayuda" para ver comandos y ejemplos)');
17
+ configureSpanishHelp(program);
18
+ registerGlobalOptions(program);
19
+ registerBillingShortcutCommands(program);
20
+ registerBillingFamilyCommands(program);
21
+ registerConfigCommand(program);
22
+ registerExamplesCommand(program);
23
+ registerStorybookCommand(program);
24
+ program.addHelpText('beforeAll', ({ command }) => (command === program ? createProgramHeader() : ''));
25
+ program.addHelpText('afterAll', ({ command }) => (command === program ? createProgramHelp() : ''));
26
+ return program;
27
+ }
28
+ //# sourceMappingURL=program.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/cli/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,OAAO,CAAC;SACb,WAAW,CACV,6HAA6H,CAC9H;SACA,OAAO,CAAC,WAAW,CAAC;SACpB,kBAAkB,CAAC,4CAA4C,CAAC,CAAC;IAEpE,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAE/B,+BAA+B,CAAC,OAAO,CAAC,CAAC;IACzC,6BAA6B,CAAC,OAAO,CAAC,CAAC;IACvC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAElC,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtG,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEnG,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface GlobalCliOptions {
2
+ readonly bruto?: boolean;
3
+ readonly json?: boolean;
4
+ readonly produccion?: boolean;
5
+ readonly testing?: boolean;
6
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export declare const CLI_VERSION = "1.1.0";
@@ -0,0 +1,2 @@
1
+ export const CLI_VERSION = '1.1.0';
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC"}
@@ -0,0 +1 @@
1
+ import './cli/index';
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ import './cli/index.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function formatDateAsArcaDate(value: Date): string;
2
+ export declare function parseArgentineDateInputAsArcaDate(value: string, referenceDate?: Date): string;
@@ -0,0 +1,28 @@
1
+ import { InputValidationError } from '../errors/app-error.js';
2
+ const ARGENTINE_DATE_FORMAT_HINT = 'Use D, DD, D-MM, D/MM, D-MM-YY, D/MM/YY, D-MM-YYYY o D/MM/YYYY.';
3
+ export function formatDateAsArcaDate(value) {
4
+ return value.toISOString().slice(0, 10).replaceAll('-', '');
5
+ }
6
+ export function parseArgentineDateInputAsArcaDate(value, referenceDate = new Date()) {
7
+ const normalizedValue = value.trim();
8
+ const dateMatch = /^(\d{1,2})(?:([-/])(\d{1,2})(?:\2(\d{2}|\d{4}))?)?$/.exec(normalizedValue);
9
+ if (!dateMatch) {
10
+ throw new InputValidationError(`La fecha "${value}" no es valida. ${ARGENTINE_DATE_FORMAT_HINT}`);
11
+ }
12
+ const [, rawDay, , rawMonth, explicitYear] = dateMatch;
13
+ const day = rawDay.padStart(2, '0');
14
+ const month = (rawMonth ?? String(referenceDate.getMonth() + 1)).padStart(2, '0');
15
+ const year = resolveYear(explicitYear, referenceDate);
16
+ const date = new Date(Number(year), Number(month) - 1, Number(day));
17
+ if (date.getFullYear() !== Number(year) || date.getMonth() !== Number(month) - 1 || date.getDate() !== Number(day)) {
18
+ throw new InputValidationError(`La fecha "${value}" no es valida.`);
19
+ }
20
+ return `${year}${month}${day}`;
21
+ }
22
+ function resolveYear(explicitYear, referenceDate) {
23
+ if (!explicitYear) {
24
+ return String(referenceDate.getFullYear());
25
+ }
26
+ return explicitYear.length === 2 ? `20${explicitYear}` : explicitYear;
27
+ }
28
+ //# sourceMappingURL=arca-date.js.map