arcli 1.1.0 → 1.3.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 (190) hide show
  1. package/CHANGELOG.md +126 -0
  2. package/README.md +9 -3
  3. package/dist/cli/commands/billing.command.interactive-preview.d.ts +1 -0
  4. package/dist/cli/commands/billing.command.interactive-preview.js +5 -1
  5. package/dist/cli/commands/billing.command.interactive-preview.js.map +1 -1
  6. package/dist/cli/commands/billing.command.options.js +17 -1
  7. package/dist/cli/commands/billing.command.options.js.map +1 -1
  8. package/dist/cli/commands/billing.command.parser.d.ts +3 -0
  9. package/dist/cli/commands/billing.command.parser.js +36 -2
  10. package/dist/cli/commands/billing.command.parser.js.map +1 -1
  11. package/dist/cli/commands/billing.command.shared.js +26 -5
  12. package/dist/cli/commands/billing.command.shared.js.map +1 -1
  13. package/dist/cli/commands/config.command.d.ts +5 -0
  14. package/dist/cli/commands/config.command.js +3 -3
  15. package/dist/cli/commands/config.command.js.map +1 -1
  16. package/dist/cli/commands/fce-obligation.command.d.ts +2 -0
  17. package/dist/cli/commands/fce-obligation.command.js +51 -0
  18. package/dist/cli/commands/fce-obligation.command.js.map +1 -0
  19. package/dist/cli/commands/interactive.command.d.ts +3 -0
  20. package/dist/cli/commands/interactive.command.js +22 -0
  21. package/dist/cli/commands/interactive.command.js.map +1 -0
  22. package/dist/cli/commands/storybook.command.js +3 -2
  23. package/dist/cli/commands/storybook.command.js.map +1 -1
  24. package/dist/cli/help.d.ts +1 -0
  25. package/dist/cli/help.js +65 -3
  26. package/dist/cli/help.js.map +1 -1
  27. package/dist/cli/index.js +3 -1
  28. package/dist/cli/index.js.map +1 -1
  29. package/dist/cli/interactive/history.flow.d.ts +2 -0
  30. package/dist/cli/interactive/history.flow.js +31 -0
  31. package/dist/cli/interactive/history.flow.js.map +1 -0
  32. package/dist/cli/interactive/interactive-mode.d.ts +3 -0
  33. package/dist/cli/interactive/interactive-mode.js +92 -0
  34. package/dist/cli/interactive/interactive-mode.js.map +1 -0
  35. package/dist/cli/interactive/invoice.flow.d.ts +2 -0
  36. package/dist/cli/interactive/invoice.flow.js +54 -0
  37. package/dist/cli/interactive/invoice.flow.js.map +1 -0
  38. package/dist/cli/interactive/note.flow.d.ts +2 -0
  39. package/dist/cli/interactive/note.flow.js +99 -0
  40. package/dist/cli/interactive/note.flow.js.map +1 -0
  41. package/dist/cli/interactive/prompts.d.ts +13 -0
  42. package/dist/cli/interactive/prompts.js +24 -0
  43. package/dist/cli/interactive/prompts.js.map +1 -0
  44. package/dist/cli/interactive/session.d.ts +22 -0
  45. package/dist/cli/interactive/session.js +86 -0
  46. package/dist/cli/interactive/session.js.map +1 -0
  47. package/dist/cli/interactive/validators.d.ts +5 -0
  48. package/dist/cli/interactive/validators.js +17 -0
  49. package/dist/cli/interactive/validators.js.map +1 -0
  50. package/dist/cli/interactive/voucher-format.d.ts +4 -0
  51. package/dist/cli/interactive/voucher-format.js +28 -0
  52. package/dist/cli/interactive/voucher-format.js.map +1 -0
  53. package/dist/cli/program.js +4 -0
  54. package/dist/cli/program.js.map +1 -1
  55. package/dist/cli/spinner.d.ts +8 -0
  56. package/dist/cli/spinner.js +14 -0
  57. package/dist/cli/spinner.js.map +1 -0
  58. package/dist/cli/version.d.ts +1 -1
  59. package/dist/cli/version.js +1 -1
  60. package/dist/lib/dates/arca-date.d.ts +4 -0
  61. package/dist/lib/dates/arca-date.js +18 -1
  62. package/dist/lib/dates/arca-date.js.map +1 -1
  63. package/dist/modules/billing/billing.amounts.d.ts +12 -2
  64. package/dist/modules/billing/billing.amounts.js +52 -10
  65. package/dist/modules/billing/billing.amounts.js.map +1 -1
  66. package/dist/modules/billing/billing.associated-period.d.ts +8 -0
  67. package/dist/modules/billing/billing.associated-period.js +40 -0
  68. package/dist/modules/billing/billing.associated-period.js.map +1 -0
  69. package/dist/modules/billing/billing.associated-vouchers.d.ts +2 -0
  70. package/dist/modules/billing/billing.associated-vouchers.js +29 -7
  71. package/dist/modules/billing/billing.associated-vouchers.js.map +1 -1
  72. package/dist/modules/billing/billing.currency.d.ts +18 -0
  73. package/dist/modules/billing/billing.currency.js +53 -0
  74. package/dist/modules/billing/billing.currency.js.map +1 -0
  75. package/dist/modules/billing/billing.date-range.d.ts +5 -4
  76. package/dist/modules/billing/billing.date-range.js +34 -27
  77. package/dist/modules/billing/billing.date-range.js.map +1 -1
  78. package/dist/modules/billing/billing.display.js +30 -4
  79. package/dist/modules/billing/billing.display.js.map +1 -1
  80. package/dist/modules/billing/billing.fce.d.ts +21 -0
  81. package/dist/modules/billing/billing.fce.js +59 -0
  82. package/dist/modules/billing/billing.fce.js.map +1 -0
  83. package/dist/modules/billing/billing.iva-receptor.d.ts +8 -0
  84. package/dist/modules/billing/billing.iva-receptor.js +61 -0
  85. package/dist/modules/billing/billing.iva-receptor.js.map +1 -0
  86. package/dist/modules/billing/billing.labels.js +1 -1
  87. package/dist/modules/billing/billing.mappers.js +2 -1
  88. package/dist/modules/billing/billing.mappers.js.map +1 -1
  89. package/dist/modules/billing/billing.schemas.d.ts +40 -7
  90. package/dist/modules/billing/billing.schemas.js +38 -1
  91. package/dist/modules/billing/billing.schemas.js.map +1 -1
  92. package/dist/modules/billing/billing.serialize.js +2 -0
  93. package/dist/modules/billing/billing.serialize.js.map +1 -1
  94. package/dist/modules/billing/billing.service.d.ts +12 -0
  95. package/dist/modules/billing/billing.service.js +68 -10
  96. package/dist/modules/billing/billing.service.js.map +1 -1
  97. package/dist/modules/billing/billing.text.js +20 -8
  98. package/dist/modules/billing/billing.text.js.map +1 -1
  99. package/dist/modules/billing/billing.types.internal.d.ts +2 -0
  100. package/dist/modules/billing/billing.validation.d.ts +4 -2
  101. package/dist/modules/billing/billing.validation.js +36 -1
  102. package/dist/modules/billing/billing.validation.js.map +1 -1
  103. package/dist/modules/config/config-value-parser.d.ts +1 -1
  104. package/dist/modules/config/config-value-parser.js +29 -1
  105. package/dist/modules/config/config-value-parser.js.map +1 -1
  106. package/dist/modules/config/config.presenter.js +10 -2
  107. package/dist/modules/config/config.presenter.js.map +1 -1
  108. package/dist/modules/config/config.schemas.d.ts +26 -3
  109. package/dist/modules/config/config.schemas.js +19 -0
  110. package/dist/modules/config/config.schemas.js.map +1 -1
  111. package/dist/modules/config/config.service.js +4 -0
  112. package/dist/modules/config/config.service.js.map +1 -1
  113. package/dist/modules/examples/examples.d.ts +1 -1
  114. package/dist/modules/examples/examples.js +62 -38
  115. package/dist/modules/examples/examples.js.map +1 -1
  116. package/dist/modules/fce/fce-obligation.d.ts +20 -0
  117. package/dist/modules/fce/fce-obligation.js +33 -0
  118. package/dist/modules/fce/fce-obligation.js.map +1 -0
  119. package/dist/modules/fce/fce-obligation.presenter.d.ts +9 -0
  120. package/dist/modules/fce/fce-obligation.presenter.js +32 -0
  121. package/dist/modules/fce/fce-obligation.presenter.js.map +1 -0
  122. package/dist/modules/interactive/amount-input.d.ts +6 -0
  123. package/dist/modules/interactive/amount-input.js +29 -0
  124. package/dist/modules/interactive/amount-input.js.map +1 -0
  125. package/dist/modules/interactive/choices.d.ts +13 -0
  126. package/dist/modules/interactive/choices.js +56 -0
  127. package/dist/modules/interactive/choices.js.map +1 -0
  128. package/dist/modules/interactive/equivalent-command.d.ts +8 -0
  129. package/dist/modules/interactive/equivalent-command.js +85 -0
  130. package/dist/modules/interactive/equivalent-command.js.map +1 -0
  131. package/dist/modules/interactive/voucher-history.d.ts +25 -0
  132. package/dist/modules/interactive/voucher-history.js +42 -0
  133. package/dist/modules/interactive/voucher-history.js.map +1 -0
  134. package/dist/modules/storybook/showcase.d.ts +1 -1
  135. package/dist/modules/storybook/showcase.js +50 -6
  136. package/dist/modules/storybook/showcase.js.map +1 -1
  137. package/dist/modules/update-check/update-check.presenter.js +1 -1
  138. package/dist/modules/update-check/update-check.presenter.js.map +1 -1
  139. package/dist/services/arca/arca-billing.gateway.d.ts +1 -0
  140. package/dist/services/arca/arca-billing.gateway.js +12 -0
  141. package/dist/services/arca/arca-billing.gateway.js.map +1 -1
  142. package/dist/services/arca/arca-fce-obligation.gateway.d.ts +7 -0
  143. package/dist/services/arca/arca-fce-obligation.gateway.js +36 -0
  144. package/dist/services/arca/arca-fce-obligation.gateway.js.map +1 -0
  145. package/dist/services/arca/arca-voucher-history.gateway.d.ts +8 -0
  146. package/dist/services/arca/arca-voucher-history.gateway.js +28 -0
  147. package/dist/services/arca/arca-voucher-history.gateway.js.map +1 -0
  148. package/dist/ui/components/contentPanel.d.ts +2 -2
  149. package/dist/ui/components/contentPanel.js +2 -1
  150. package/dist/ui/components/contentPanel.js.map +1 -1
  151. package/dist/ui/components/errorPanel.js +3 -3
  152. package/dist/ui/components/errorPanel.js.map +1 -1
  153. package/dist/ui/components/index.d.ts +3 -0
  154. package/dist/ui/components/index.js +3 -0
  155. package/dist/ui/components/index.js.map +1 -1
  156. package/dist/ui/components/keyValuePanel.d.ts +2 -2
  157. package/dist/ui/components/keyValuePanel.js +2 -1
  158. package/dist/ui/components/keyValuePanel.js.map +1 -1
  159. package/dist/ui/components/rawPanel.js +1 -1
  160. package/dist/ui/components/rawPanel.js.map +1 -1
  161. package/dist/ui/components/sectionHeading.d.ts +3 -0
  162. package/dist/ui/components/sectionHeading.js +13 -0
  163. package/dist/ui/components/sectionHeading.js.map +1 -0
  164. package/dist/ui/components/statusBar.d.ts +6 -0
  165. package/dist/ui/components/statusBar.js +24 -0
  166. package/dist/ui/components/statusBar.js.map +1 -0
  167. package/dist/ui/components/statusPanel.d.ts +2 -2
  168. package/dist/ui/components/statusPanel.js +2 -1
  169. package/dist/ui/components/statusPanel.js.map +1 -1
  170. package/dist/ui/components/testingBanner.d.ts +2 -0
  171. package/dist/ui/components/testingBanner.js +6 -0
  172. package/dist/ui/components/testingBanner.js.map +1 -0
  173. package/dist/ui/presenters/errors.zod-presenter.js +22 -1
  174. package/dist/ui/presenters/errors.zod-presenter.js.map +1 -1
  175. package/dist/ui/primitives/renderLogo.js +5 -0
  176. package/dist/ui/primitives/renderLogo.js.map +1 -1
  177. package/dist/ui/primitives/renderPanel.d.ts +3 -1
  178. package/dist/ui/primitives/renderPanel.js +68 -21
  179. package/dist/ui/primitives/renderPanel.js.map +1 -1
  180. package/dist/ui/primitives/terminalWidth.d.ts +4 -0
  181. package/dist/ui/primitives/terminalWidth.js +11 -0
  182. package/dist/ui/primitives/terminalWidth.js.map +1 -0
  183. package/dist/ui/primitives/text.d.ts +5 -0
  184. package/dist/ui/primitives/text.js +91 -29
  185. package/dist/ui/primitives/text.js.map +1 -1
  186. package/dist/ui/theme/theme.d.ts +45 -4
  187. package/dist/ui/theme/theme.js +183 -5
  188. package/dist/ui/theme/theme.js.map +1 -1
  189. package/llms.txt +17 -5
  190. package/package.json +17 -14
package/CHANGELOG.md ADDED
@@ -0,0 +1,126 @@
1
+ [← Volver al README](README.md)
2
+
3
+ # Changelog
4
+
5
+ Todos los cambios relevantes de ARCLI se documentan acá.
6
+
7
+ El formato sigue [Keep a Changelog](https://keepachangelog.com/es-ES/1.1.0/) y el proyecto usa [versionado semántico](https://semver.org/lang/es/). Como el contrato del CLI es público (comandos, flags, claves de config y JSON), cada entrada aclara qué cambia para quien ya lo usa.
8
+
9
+ ## [Sin publicar]
10
+
11
+ ## [1.3.0] - 2026-10-02
12
+
13
+ Esta versión suma el modo interactivo para quien factura de vez en cuando y renueva la salida de la terminal: bordes según el tipo de panel, paneles que se ajustan a ventanas angostas y varios bugs de color corregidos. No se rompe ningún comando, flag ni JSON existente. El único cambio de comportamiento es que `arcli` sin argumentos, en una terminal interactiva, abre el asistente en lugar de la ayuda.
14
+
15
+ ### Agregado
16
+
17
+ - `ARCLI_ASCII=1` dibuja los paneles con ASCII puro, para terminales que no muestran caracteres de caja.
18
+ - **Modo interactivo.** `arcli` sin argumentos en una terminal interactiva abre un asistente paso a paso (también `arcli interactivo`):
19
+ - Emitir facturas A, B o C, comunes o FCE.
20
+ - Notas de crédito y débito eligiendo la factura de una lista de las últimas emitidas, consultadas a ARCA.
21
+ - Ver los últimos comprobantes y revisar la configuración.
22
+ - Antes de emitir muestra la vista previa y el comando equivalente. En producción pide una segunda confirmación.
23
+ - Usa las mismas validaciones y la misma emisión que los comandos con flags. Ver [Modo interactivo](docs/modo-interactivo.md).
24
+
25
+ ### Cambiado
26
+
27
+ - **Bordes según el tipo de panel**, para reconocerlo antes de leerlo:
28
+ - Comprobantes: la línea antes del estado ahora es de puntos y llega al borde (`├┄┄┤`).
29
+ - Errores del CLI y de ARCA: `╭─╮`, con una franja gruesa `┃` a la izquierda.
30
+ - Observaciones y avisos del régimen FCE: la misma forma, con la franja a trazos `╏`. Sugerencias: franja fina `┆`.
31
+ - Configuración y régimen FCE: ficha `┌─┐` con el título a la izquierda.
32
+ - Revisión de configuración: `╓─╖` con el veredicto en el pie (`╟──╢`).
33
+ - Últimos comprobantes (modo interactivo): solo reglas `══` arriba y abajo, sin costados.
34
+ - Avisos simples ("No se emitió nada"): solo las esquinas `┌ ┐ └ ┘`.
35
+ - Banner de TESTING: `┌╌┐`. Aviso de nueva versión: `╭─╮`. JSON y respuestas crudas: `┌┈┐`.
36
+ - Encabezado del modo interactivo: una barra de estado de una línea (`━━ MODO INTERACTIVO ━━ testing · PV 3 ━━`).
37
+ - Títulos de `arcli ejemplos`: una línea de sección (`── FACTURA C ──`) en lugar de una caja.
38
+ - "Esto equivale a:" del modo interactivo: solo `▎` a la izquierda, sin borde derecho, para que el comando se copie limpio.
39
+ - `arcli storybook bordes` muestra cada estilo con el panel donde se usa.
40
+ - Las etiquetas de las tablas, los pies de los paneles y el "CLI" del logo usan el color por defecto de la terminal en lugar de blanco fijo, que casi no se leía en terminales con fondo claro.
41
+ - Los títulos de los paneles de JSON, respuesta bruta y eventos pasan de celeste a gris, para que no compitan con los paneles informativos.
42
+ - Los errores muestran **Detalles** en cian y **Sugerencia** en amarillo, como dice la paleta. Antes estaban al revés. El panel "Sugerencias" de la respuesta también pasa a amarillo.
43
+ - `arcli` sin argumentos en una terminal interactiva abre el asistente en lugar de la ayuda. Sin terminal (pipes, CI, agentes) o con `--json` sigue mostrando la ayuda. `arcli ayuda` y `arcli --ayuda` no cambian.
44
+
45
+ ### Corregido
46
+
47
+ - Los títulos de los paneles ignoraban el color pedido desde la primera versión. Ahora el comprobante sale verde si fue aprobado, amarillo si quedó observado y rojo si fue rechazado; los errores, en rojo.
48
+ - El texto atenuado dejaba el atenuado prendido y apagaba lo que se imprimía después: el comando del "Esto equivale a:" y el comienzo del panel siguiente hasta el título.
49
+ - En terminales angostas los paneles medían al menos 68 columnas y se rompían. Ahora se ajustan al ancho de la ventana: las filas etiqueta/valor parten el valor debajo de su columna y, si no hay lugar, apilan etiqueta y valor. El logo se reemplaza por el nombre si no entra.
50
+ - El README decía que alcanzaba con Node.js 20. El mínimo es Node.js 22.22.1, como pide `engines`.
51
+
52
+ ### Dependencias
53
+
54
+ - `boxen` 8 → 9, `zod` 4.4 → 4.6 y `@inquirer/select` 5.2.2 → 5.2.5. No cambia la salida de la terminal.
55
+ - Herramientas de desarrollo: `vitest` y `@vitest/coverage-v8` 4 → 5 (ahora requieren `vite` como dependencia explícita), `eslint`, `typescript-eslint`, `prettier`, `lint-staged` y `tsx`.
56
+ - Se mantienen `typescript` 6, porque `typescript-eslint` todavía no soporta TypeScript 7, y `@types/node` 22, para no usar APIs que no existen en Node 22, la versión mínima soportada.
57
+
58
+ ## [1.2.0] - 2026-10-02
59
+
60
+ Esta versión revisa el payload que ARCLI envía a ARCA contra el manual de WSFEv1 y corrige los casos en que ARCA rechazaba el comprobante. Además completa el soporte de Factura de Crédito Electrónica (FCE) y suma alícuotas, importes exentos y no gravados, y período asociado.
61
+
62
+ ### ⚠️ Puede afectar comandos o scripts existentes
63
+
64
+ Ninguno de estos cambios quita flags. Todos convierten en un error local, con el motivo en castellano, algo que antes llegaba a ARCA y ARCA rechazaba:
65
+
66
+ - **Moneda extranjera sin cotización:** `--moneda USD` sin `--cotizacion-moneda` da error. Antes se enviaba cotización `1`. En pesos, una cotización distinta de `1` también da error.
67
+ - **IVA receptor según la letra:** `fa` con `--ir-cf`, o `fb` con `--ir-ri`, da error y sugiere la letra correcta. Se usa la tabla de `FEParamGetCondicionIvaReceptor`.
68
+ - **Consumidor final desde $10.000.000:** `--consumidor-final` da error desde ese monto (RG 5700/2025). Hay que identificar al receptor con `--dni`, `--cuit` o `--cuil`.
69
+ - **Fecha del comprobante:** `--fecha` fuera de la ventana de ARCA da error. La ventana es ±5 días en productos, ±10 en servicios y de −5 a +1 en FCE. En productos y FCE, una fecha futura tiene que caer en el mes actual.
70
+ - **FCE:** las facturas FCE sin CBU, y las NC/ND FCE sin `--afecha`, dan error.
71
+ - **Flags de FCE fuera de FCE:** `--cbu`, `--alias`, `--transferencia` y `--anulacion` dan error en comprobantes que no son FCE.
72
+ - **Salida JSON:** la salida de facturación suma el campo `avisos` (siempre presente, vacío si no hay avisos).
73
+
74
+ ### Agregado
75
+
76
+ - `--misma-moneda` para comprobantes en moneda extranjera que se cobran en esa moneda. Consulta la cotización oficial a ARCA y envía `CanMisMonExt = S`. Clave JSON: `mismaMoneda`.
77
+ - `--vencimiento <fecha>` (alias `--vto`) para separar el vencimiento de pago del período de servicio. Clave JSON: `vencimientoPago`.
78
+ - Soporte completo de FCE:
79
+ - Facturas: `--cbu`, `--alias` y `--transferencia sca|adc`.
80
+ - NC/ND: `--anulacion` y `--afecha`. El CUIT del asociado se toma del emisor.
81
+ - Claves de config `cbu` y `aliasCbu`, aplicadas solo a facturas FCE.
82
+ - Claves JSON `cbu`, `aliasCbu`, `transferencia`, `anulacion` y `comprobanteAsociado.fecha`.
83
+ - `--afecha` también disponible, opcional, en notas comunes.
84
+ - `--alicuota 0|2.5|5|10.5|21|27` para letras A y B, y la clave de config `alicuota` para fijarla por defecto. Clave JSON: `alicuotaIva`.
85
+ - `--exento <monto>` y `--nogravado <monto>`: reparten el total en importe exento (`ImpOpEx`) y no gravado (`ImpTotConc`). Claves JSON: `importeExento` e `importeNoGravado`.
86
+ - `--periodo-desde` / `--periodo-hasta` (alias `--pd` / `--ph`): período asociado en notas comunes, como alternativa a `--ac`. Clave JSON: `periodoAsociado`.
87
+ - Comando `arcli fce-obligado <cuit>`: consulta en ARCA (`wsfecred`) si un receptor está obligado a recibir FCE y desde qué monto.
88
+ - Clave de config `verificarFce` (opt-in): hace esa consulta en cada factura con CUIT y avisa si corresponde FCE en lugar de factura común, o al revés. No frena la emisión.
89
+ - La vista previa muestra CBU, transferencia, anulación, fecha y período asociado, alícuota, importe no gravado y avisos.
90
+ - Los errores de valores no soportados listan los valores válidos.
91
+
92
+ ### Corregido
93
+
94
+ - Dólar se enviaba como `USD`; ahora se envía `DOL`, el código de ARCA.
95
+ - La factura A a un receptor que no era responsable inscripto salía sin IVA discriminado. Ahora A y B siempre discriminan IVA.
96
+ - Las facturas FCE de productos no enviaban `FchVtoPago`, y las NC/ND FCE lo enviaban cuando no correspondía.
97
+ - Un servicio facturado después de su fin enviaba un vencimiento de pago anterior a la fecha del comprobante. Ahora nunca es anterior.
98
+ - La fecha por defecto del comprobante se calculaba en UTC: después de las 21 hs en Argentina salía con el día siguiente.
99
+ - `arcli ejemplos` usaba fechas fijas que quedaban fuera de la ventana de ARCA. Ahora son relativas a hoy e incluyen los datos de FCE.
100
+ - Con `config cotizacion` configurada, las facturas en pesos ya no toman esa cotización.
101
+
102
+ ### Dependencias
103
+
104
+ - `@arcasdk/core` 2.0.0 → 2.0.2. La 2.0.0 validaba el total sin sumar exento ni no gravado ([ralcorta/arcasdk#190](https://github.com/ralcorta/arcasdk/issues/190)). La 2.0.2 además expone `wsfecred` y tipa `PeriodoAsoc`.
105
+
106
+ ### Documentación
107
+
108
+ - Secciones nuevas en reglas de validación: moneda y cotización, IVA receptor por letra, vencimiento de pago, fecha del comprobante, crédito electrónico (FCE) y régimen FCE del receptor.
109
+ - La guía de certificados explica cómo autorizar `wsfecred`.
110
+ - Se actualizaron la referencia del CLI, entrada y salida, configuración, patrones de uso (con uno de FCE), troubleshooting, glosario, checklist de testing y `llms.txt`.
111
+
112
+ ## [1.1.0] - 2026-08-24
113
+
114
+ Primera versión publicada en npm.
115
+
116
+ - Facturas, notas de crédito y notas de débito A, B y C, comunes y de crédito electrónica, por shortcut (`fc`, `nca`…) o por familia y letra (`factura c`…).
117
+ - Configuración persistente (`arcli config`), revisión del entorno (`arcli config revisar`) y `testing` como entorno por defecto.
118
+ - Vista previa antes de emitir, carga desde JSON (`--cargar`, también por lotes) y salida humana, `--json` o `--bruto`.
119
+ - `arcli ejemplos` con comandos listos para copiar.
120
+ - `llms.txt`: referencia condensada para que un agente de IA con acceso a terminal ejecute el CLI.
121
+ - Publicación con npm Trusted Publishers (OIDC).
122
+
123
+ [Sin publicar]: https://github.com/LcsGrz/arcli/compare/v1.3.0...HEAD
124
+ [1.3.0]: https://github.com/LcsGrz/arcli/compare/v1.2.0...v1.3.0
125
+ [1.2.0]: https://github.com/LcsGrz/arcli/compare/v1.1.0...v1.2.0
126
+ [1.1.0]: https://github.com/LcsGrz/arcli/releases/tag/v1.1.0
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![npm version](https://img.shields.io/npm/v/arcli.svg)](https://www.npmjs.com/package/arcli)
4
4
  [![CI](https://github.com/LcsGrz/arcli/actions/workflows/ci.yml/badge.svg)](https://github.com/LcsGrz/arcli/actions/workflows/ci.yml)
5
5
  [![license: MIT](https://img.shields.io/npm/l/arcli.svg)](LICENSE)
6
- [![node >=20](https://img.shields.io/node/v/arcli.svg)](package.json)
6
+ [![node >=22.22.1](https://img.shields.io/node/v/arcli.svg)](package.json)
7
7
 
8
8
  ```text
9
9
  d8888 8888888b. .d8888b. 888 8888888
@@ -24,8 +24,11 @@ Emití o previsualizá comprobantes ARCA desde tu terminal, con un flujo claro,
24
24
  - previsualización segura antes de emitir
25
25
  - entrada por flags o JSON
26
26
  - salida humana, JSON o respuesta bruta
27
- - prompts interactivos cuando el flujo lo requiere
27
+ - modo interactivo: `arcli` sin argumentos abre un asistente paso a paso que muestra el comando equivalente
28
28
  - integración real con ARCA
29
+ - Factura de Crédito Electrónica (FCE) completa: CBU, transferencia, anulación y consulta del régimen del receptor
30
+ - alícuotas de IVA, importes exentos y no gravados, moneda extranjera y período asociado
31
+ - validaciones locales con las reglas del manual de ARCA, para que los errores aparezcan antes de emitir
29
32
 
30
33
  ## Demo basica
31
34
 
@@ -44,7 +47,7 @@ arcli fc -m 15000 --cs --consumidor-final --ir-cf
44
47
 
45
48
  ### 1. Instalar
46
49
 
47
- Requiere Node.js 20 o superior.
50
+ Requiere Node.js 22.22.1 o superior.
48
51
 
49
52
  ```bash
50
53
  npm install -g arcli
@@ -129,14 +132,17 @@ arcli fa -m 15000 --cs --cuit 20168598204 --ir-ri \
129
132
  - [Modelo mental](docs/mental-model.md)
130
133
  - [Glosario](docs/glossary.md)
131
134
  - [Referencia del CLI](docs/cli-reference.md)
135
+ - [Modo interactivo](docs/modo-interactivo.md)
132
136
  - [Patrones de uso](docs/usage-patterns.md)
133
137
  - [Configuración](docs/configuration.md)
138
+ - [Cómo obtener los certificados de ARCA](docs/obtencion-certificados.md)
134
139
  - [Entrada y salida](docs/input-output.md)
135
140
  - [Reglas de validación](docs/validation-rules.md)
136
141
  - [Troubleshooting](docs/troubleshooting.md)
137
142
  - [Limitaciones actuales](docs/limitations.md)
138
143
  - [Guía de desarrollo](docs/development.md)
139
144
  - [Testing](docs/ui-smoke-checklist.md)
145
+ - [Changelog](CHANGELOG.md)
140
146
  - [Cómo contribuir](CONTRIBUTING.md)
141
147
  - [llms.txt](llms.txt): referencia condensada para que un agente/IA con acceso a terminal ejecute el CLI directamente
142
148
  - [Seguridad](SECURITY.md)
@@ -14,4 +14,5 @@ export declare function runInteractiveBillingPreview(options: {
14
14
  readonly service: BillingService;
15
15
  readonly useRaw: boolean;
16
16
  readonly voucherLabel: string;
17
+ readonly warnings?: ReadonlyArray<readonly string[]>;
17
18
  }): Promise<InteractiveBillingPreviewOutcome>;
@@ -36,13 +36,17 @@ export async function runInteractiveBillingPreview(options) {
36
36
  createNextVoucher: async () => {
37
37
  throw new Error('No deberia ejecutarse la emision real durante la vista previa.');
38
38
  },
39
+ getQuotation: async () => {
40
+ throw new Error('La cotizacion se resuelve antes de la vista previa.');
41
+ },
39
42
  };
40
43
  const previewResults = [];
41
- for (const input of options.inputs) {
44
+ for (const [index, input] of options.inputs.entries()) {
42
45
  previewResults.push(await options.service.execute({
43
46
  gateway: previewGateway,
44
47
  input,
45
48
  runtime: options.runtime,
49
+ warnings: options.warnings?.[index],
46
50
  }));
47
51
  }
48
52
  writeTerminalOutput(formatBillingOutputs(previewResults, { environment: options.runtime.environment, raw: options.useRaw }));
@@ -1 +1 @@
1
- {"version":3,"file":"billing.command.interactive-preview.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.interactive-preview.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,kBAAkB,CAAC;AAMtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAShE,KAAK,UAAU,iBAAiB,CAAC,KAAa,EAAE,YAAoB;IAClE,OAAO,MAAM,CAAC;QACZ,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE;YACzC,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE;SAC/C;QACD,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,KAAK,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,YAAY,SAAS;KAC/G,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA6B,EAAE,UAAmB;IAC3E,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5B,GAAG,KAAK;QACR,MAAM,EAAE,CAAC,UAAU;QACnB,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAOlD;IACC,MAAM,mBAAmB,GACvB,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3C,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU;QAC3B,OAAO,CAAC,KAAK,CAAC,KAAK;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IAEvB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO;YACL,sBAAsB,EAAE,KAAK;YAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,KAAK;YACnB,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAmB;QACrC,iBAAiB,EAAE,KAAK,IAAI,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;KACF,CAAC;IACF,MAAM,cAAc,GAA6B,EAAE,CAAC;IAEpD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,cAAc,CAAC,IAAI,CACjB,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5B,OAAO,EAAE,cAAc;YACvB,KAAK;YACL,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,mBAAmB,CACjB,oBAAoB,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CACxG,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAEvF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,sBAAsB,EAAE,KAAK;YAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,OAAO;QACL,sBAAsB,EAAE,IAAI;QAC5B,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;QAC/C,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"billing.command.interactive-preview.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.interactive-preview.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,10 @@ import { Option } from 'commander';
2
2
  export function registerBillingOptions(command) {
3
3
  command
4
4
  .option('-m, --monto <number>', 'importe total del comprobante', parseFloat)
5
+ .option('--alicuota <tasa>', 'alicuota de IVA para A y B: 0, 2.5, 5, 10.5, 21 o 27 (por defecto 21)')
6
+ .option('--exento <number>', 'parte exenta del monto total (A y B)', parseFloat)
7
+ // No puede llamarse --no-gravado: commander interpreta --no-* como negacion de un flag booleano.
8
+ .option('--nogravado <number>', 'parte no gravada del monto total (A y B)', parseFloat)
5
9
  .option('-d, --dia <number>', 'dia de vencimiento o referencia del servicio', (value) => Number.parseInt(value, 10))
6
10
  .option('--punto-venta <number>', 'punto de venta', (value) => Number.parseInt(value, 10))
7
11
  .option('--pv <number>', 'alias de punto de venta', (value) => Number.parseInt(value, 10))
@@ -15,6 +19,7 @@ export function registerBillingOptions(command) {
15
19
  .option('--mda <codigo>', 'alias de moneda, por ejemplo ARS o USD')
16
20
  .option('--cm <number>', 'alias de cotizacion de la moneda', parseFloat)
17
21
  .option('--cotizacion-moneda <number>', 'cotizacion de la moneda', parseFloat)
22
+ .option('--misma-moneda', 'el pago se cancela en la misma moneda extranjera; usa la cotizacion oficial de ARCA')
18
23
  .option('--cuit <number>', 'usar CUIT del receptor', (value) => Number.parseInt(value, 10))
19
24
  .option('--cuil <number>', 'usar CUIL del receptor', (value) => Number.parseInt(value, 10))
20
25
  .option('--dni <number>', 'usar DNI del receptor', (value) => Number.parseInt(value, 10))
@@ -37,12 +42,23 @@ export function registerBillingOptions(command) {
37
42
  .option('--servicio-desde <fecha>', 'fecha de inicio de servicio')
38
43
  .option('--sh <fecha>', 'alias rapido de fecha de fin de servicio')
39
44
  .option('--servicio-hasta <fecha>', 'fecha de fin de servicio')
45
+ .option('--vencimiento <fecha>', 'fecha de vencimiento del pago; por defecto el fin del servicio')
46
+ .option('--vto <fecha>', 'alias de fecha de vencimiento del pago')
40
47
  .option('--at <number>', 'tipo ARCA del comprobante asociado', (value) => Number.parseInt(value, 10))
41
48
  .option('--apv <number>', 'punto de venta del comprobante asociado', (value) => Number.parseInt(value, 10))
42
49
  .option('--asociado-punto-venta <number>', 'punto de venta del comprobante asociado', (value) => Number.parseInt(value, 10))
43
50
  .option('--ar <number>', 'numero del comprobante asociado', (value) => Number.parseInt(value, 10))
44
51
  .option('--ac <shortcut>', 'atajo del comprobante asociado, por ejemplo fc o fa')
45
- .option('--acuit <number>', 'CUIT del comprobante asociado')
52
+ .option('--acuit <number>', 'CUIT del comprobante asociado; en NC/ND FCE por defecto el CUIT emisor')
53
+ .option('--periodo-desde <fecha>', 'inicio del periodo asociado; alternativa a --ac en notas comunes')
54
+ .option('--pd <fecha>', 'alias de inicio del periodo asociado')
55
+ .option('--periodo-hasta <fecha>', 'fin del periodo asociado; alternativa a --ac en notas comunes')
56
+ .option('--ph <fecha>', 'alias de fin del periodo asociado')
57
+ .option('--afecha <fecha>', 'fecha del comprobante asociado; obligatoria en NC/ND FCE')
58
+ .option('--cbu <cbu>', 'CBU del emisor para facturas FCE (22 digitos)')
59
+ .option('--alias <alias>', 'alias del CBU del emisor para facturas FCE')
60
+ .option('--transferencia <modalidad>', 'modalidad de transferencia FCE: sca o adc (por defecto sca)')
61
+ .option('--anulacion', 'NC/ND FCE de anulacion (la factura asociada fue rechazada por el comprador)')
46
62
  .option('--previsualizar', 'mostrar el payload antes de emitir en ARCA')
47
63
  .addOption(new Option('--emitir', 'emitir realmente en ARCA'));
48
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"billing.command.options.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.command.options.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.options.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,9 @@ import { type BillingCommandInput } from '../../modules/billing/billing.schemas'
3
3
  import type { VoucherShortcut } from '../../modules/billing/billing.types';
4
4
  export { registerBillingOptions } from './billing.command.options';
5
5
  export interface BillingCommandDefaults {
6
+ readonly defaultIvaRate?: BillingCommandInput['ivaRate'];
7
+ readonly defaultCbu?: string;
8
+ readonly defaultCbuAlias?: string;
6
9
  readonly defaultConcept?: BillingCommandInput['concept'];
7
10
  readonly defaultCurrencyCode?: string;
8
11
  readonly defaultEmit?: boolean;
@@ -1,6 +1,8 @@
1
1
  import { InputValidationError } from '../../lib/errors/app-error.js';
2
2
  import { readJsonFile } from '../../lib/files/read-json-file.js';
3
+ import { isForeignCurrency } from '../../modules/billing/billing.currency.js';
3
4
  import { billingCommandSchema } from '../../modules/billing/billing.schemas.js';
5
+ import { getVoucherKindByShortcut } from '../../modules/billing/voucher-kind-map.js';
4
6
  import { resolveConceptShortcut, resolveDocumentIdentity, resolveIvaShortcut } from './billing.command.shortcuts.js';
5
7
  export { registerBillingOptions } from './billing.command.options.js';
6
8
  function pickString(...values) {
@@ -23,9 +25,11 @@ function parseBillingCommandInputFromSource(command, shortcut, fileInput, defaul
23
25
  commandOptions.asociadoPuntoVenta ||
24
26
  commandOptions.at ||
25
27
  commandOptions.acuit ||
28
+ commandOptions.afecha ||
26
29
  commandOptions.ac
27
30
  ? {
28
31
  cuit: pickString(commandOptions.acuit),
32
+ fecha: pickString(commandOptions.afecha),
29
33
  numero: pickNumber(commandOptions.ar),
30
34
  puntoVenta: pickNumber(commandOptions.apv, commandOptions.asociadoPuntoVenta),
31
35
  shortcut: pickString(commandOptions.ac),
@@ -76,30 +80,60 @@ function parseBillingCommandInputFromSource(command, shortcut, fileInput, defaul
76
80
  const associatedVoucherFromFile = fileInput?.comprobanteAsociado
77
81
  ? {
78
82
  cuit: fileInput.comprobanteAsociado.cuit,
83
+ fecha: fileInput.comprobanteAsociado.fecha,
79
84
  numero: fileInput.comprobanteAsociado.numero,
80
85
  puntoVenta: fileInput.comprobanteAsociado.puntoVenta,
81
86
  shortcut: fileInput.comprobanteAsociado.atajo,
82
87
  tipo: fileInput.comprobanteAsociado.tipo,
83
88
  }
84
89
  : undefined;
90
+ const currencyCode = pickString(commandOptions.moneda, commandOptions.mda, fileInput?.codigoMoneda, defaults.defaultCurrencyCode);
91
+ const sameCurrency = commandOptions.mismaMoneda === true || fileInput?.mismaMoneda === true;
92
+ const explicitExchangeRate = pickNumber(commandOptions.cotizacionMoneda, commandOptions.cm, fileInput?.cotizacionMoneda);
93
+ if (sameCurrency && typeof explicitExchangeRate === 'number') {
94
+ throw new InputValidationError('Con --misma-moneda la cotizacion se toma de ARCA. Quite --cotizacion-moneda o --cm.');
95
+ }
96
+ // La cotizacion por defecto de la config solo aplica a moneda extranjera sin --misma-moneda.
97
+ const exchangeRate = explicitExchangeRate ??
98
+ (!sameCurrency && isForeignCurrency({ currencyCode }) ? defaults.defaultExchangeRate : undefined);
99
+ // El CBU de la config solo aplica a facturas FCE: ARCA rechaza esos opcionales en otros comprobantes (10169).
100
+ const voucherKind = getVoucherKindByShortcut(shortcut);
101
+ const usesFceDefaults = voucherKind?.family === 'factura-credito-electronica';
102
+ // La C no discrimina IVA: la alicuota de la config solo aplica a A y B.
103
+ const usesIvaRateDefault = voucherKind?.letter !== 'c';
104
+ const periodFrom = pickString(commandOptions.periodoDesde, commandOptions.pd);
105
+ const periodTo = pickString(commandOptions.periodoHasta, commandOptions.ph);
106
+ const associatedPeriod = periodFrom || periodTo ? { desde: periodFrom, hasta: periodTo } : fileInput?.periodoAsociado;
85
107
  return {
86
108
  ...billingCommandSchema.parse({
109
+ associatedPeriod,
87
110
  associatedVoucher: associatedVoucherFromFlags ?? associatedVoucherFromFile,
88
111
  billingDate: pickString(commandOptions.fecha, fileInput?.fechaComprobante),
112
+ cancellation: commandOptions.anulacion === true || fileInput?.anulacion === true,
113
+ cbu: pickString(commandOptions.cbu, fileInput?.cbu, usesFceDefaults ? defaults.defaultCbu : undefined),
114
+ cbuAlias: pickString(commandOptions.alias, fileInput?.aliasCbu, usesFceDefaults ? defaults.defaultCbuAlias : undefined),
89
115
  concept: resolvedConcept,
90
- currencyCode: pickString(commandOptions.moneda, commandOptions.mda, fileInput?.codigoMoneda, defaults.defaultCurrencyCode),
116
+ currencyCode,
91
117
  documentNumber: documentIdentity.documentNumber ?? fileInput?.numeroDocumento,
92
118
  documentType: documentIdentity.documentType ?? fileInput?.tipoDocumento,
93
119
  dryRun: shouldDryRun,
94
120
  dueDay: pickNumber(commandOptions.dia, fileInput?.dia),
95
121
  emit: shouldEmit,
96
- exchangeRate: pickNumber(commandOptions.cotizacionMoneda, commandOptions.cm, fileInput?.cotizacionMoneda, defaults.defaultExchangeRate),
122
+ exchangeRate,
123
+ exemptAmount: pickNumber(commandOptions.exento, fileInput?.importeExento),
124
+ ivaRate: pickString(commandOptions.alicuota) ??
125
+ fileInput?.alicuotaIva ??
126
+ (usesIvaRateDefault ? defaults.defaultIvaRate : undefined),
97
127
  ivaCondition: resolvedIvaCondition,
128
+ paymentDueDate: pickString(commandOptions.vencimiento, commandOptions.vto, fileInput?.vencimientoPago),
98
129
  pointOfSale: pickNumber(commandOptions.puntoVenta, commandOptions.pv, fileInput?.puntoVenta),
130
+ sameCurrency,
99
131
  serviceEndDate: pickString(commandOptions.servicioHasta, commandOptions.sh, fileInput?.servicioHasta),
100
132
  serviceStartDate: pickString(commandOptions.servicioDesde, commandOptions.sd, fileInput?.servicioDesde),
101
133
  shortcut,
102
134
  totalAmount: pickNumber(commandOptions.monto, fileInput?.montoTotal),
135
+ transferMode: pickString(commandOptions.transferencia, fileInput?.transferencia),
136
+ untaxedAmount: pickNumber(commandOptions.nogravado, fileInput?.importeNoGravado),
103
137
  }),
104
138
  __modeSource: modeSource,
105
139
  };
@@ -1 +1 @@
1
- {"version":3,"file":"billing.command.parser.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.command.parser.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.parser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAA4B,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAEvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAElF,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAElH,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AA4CnE,SAAS,UAAU,CAAC,GAAG,MAAiB;IACtC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,UAAU,CAAC,GAAG,MAAiB;IACtC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;AAC5E,CAAC;AAkBD,SAAS,kCAAkC,CACzC,OAAgB,EAChB,QAAyB,EACzB,SAAuC,EACvC,WAAmC,EAAE;IAErC,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,EAA2B,CAAC;IAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;IAC1E,MAAM,qBAAqB,GAAG,OAAO,cAAc,CAAC,EAAE,KAAK,QAAQ,CAAC;IACpE,MAAM,iBAAiB,GAAG,OAAO,cAAc,CAAC,EAAE,KAAK,QAAQ,CAAC;IAEhE,IAAI,qBAAqB,IAAI,iBAAiB,EAAE,CAAC;QAC/C,MAAM,IAAI,oBAAoB,CAAC,mFAAmF,CAAC,CAAC;IACtH,CAAC;IAED,MAAM,0BAA0B,GAC9B,cAAc,CAAC,EAAE;QACjB,cAAc,CAAC,GAAG;QAClB,cAAc,CAAC,kBAAkB;QACjC,cAAc,CAAC,EAAE;QACjB,cAAc,CAAC,KAAK;QACpB,cAAc,CAAC,MAAM;QACrB,cAAc,CAAC,EAAE;QACf,CAAC,CAAC;YACE,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC;YACtC,KAAK,EAAE,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACrC,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,kBAAkB,CAAC;YAC7E,QAAQ,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;SACpC;QACH,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,UAAU,GACd,YAAY,KAAK,KAAK,IAAI,mBAAmB,KAAK,KAAK;QACrD,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,OAAO,SAAS,EAAE,MAAM,KAAK,SAAS,IAAI,OAAO,SAAS,EAAE,aAAa,KAAK,SAAS;YACvF,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC;IAClB,MAAM,UAAU,GACd,YAAY,KAAK,KAAK;QACpB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC,OAAO,SAAS,EAAE,MAAM,KAAK,SAAS;YACtC,CAAC,CAAC,SAAS,CAAC,MAAM;YAClB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,YAAY,GAChB,mBAAmB,KAAK,KAAK;QAC3B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC;QACvC,CAAC,CAAC,OAAO,SAAS,EAAE,aAAa,KAAK,SAAS;YAC7C,CAAC,CAAC,SAAS,CAAC,aAAa;YACzB,CAAC,CAAC,CAAC,UAAU,CAAC;IACpB,MAAM,eAAe,GAAG,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACvD,MAAM,eAAe,GACnB,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,eAAe,IAAI,SAAS,EAAE,QAAQ,IAAI,QAAQ,CAAC,cAAc,CAAC;IAC3G,MAAM,oBAAoB,GACxB,UAAU,CAAC,cAAc,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;QACzD,WAAW;QACX,SAAS,EAAE,WAAW;QACtB,QAAQ,CAAC,mBAAmB,CAAC;IAE/B,IAAI,OAAO,cAAc,CAAC,QAAQ,KAAK,QAAQ,IAAI,eAAe,EAAE,CAAC;QACnE,MAAM,IAAI,oBAAoB,CAAC,gFAAgF,CAAC,CAAC;IACnH,CAAC;IAED,IAAI,OAAO,cAAc,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,cAAc,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC5F,MAAM,IAAI,oBAAoB,CAAC,qEAAqE,CAAC,CAAC;IACxG,CAAC;IAED,IAAI,CAAC,OAAO,cAAc,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,cAAc,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,WAAW,EAAE,CAAC;QAC7G,MAAM,IAAI,oBAAoB,CAAC,2EAA2E,CAAC,CAAC;IAC9G,CAAC;IAED,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,IAAI,oBAAoB,CAAC,yDAAyD,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,oBAAoB,CAC5B,iJAAiJ,CAClJ,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,oBAAoB,CAC5B,qKAAqK,CACtK,CAAC;IACJ,CAAC;IAED,MAAM,yBAAyB,GAAG,SAAS,EAAE,mBAAmB;QAC9D,CAAC,CAAC;YACE,IAAI,EAAE,SAAS,CAAC,mBAAmB,CAAC,IAAI;YACxC,KAAK,EAAE,SAAS,CAAC,mBAAmB,CAAC,KAAK;YAC1C,MAAM,EAAE,SAAS,CAAC,mBAAmB,CAAC,MAAM;YAC5C,UAAU,EAAE,SAAS,CAAC,mBAAmB,CAAC,UAAU;YACpD,QAAQ,EAAE,SAAS,CAAC,mBAAmB,CAAC,KAAK;YAC7C,IAAI,EAAE,SAAS,CAAC,mBAAmB,CAAC,IAAI;SACzC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,YAAY,GAAG,UAAU,CAC7B,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,GAAG,EAClB,SAAS,EAAE,YAAY,EACvB,QAAQ,CAAC,mBAAmB,CAC7B,CAAC;IACF,MAAM,YAAY,GAAG,cAAc,CAAC,WAAW,KAAK,IAAI,IAAI,SAAS,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5F,MAAM,oBAAoB,GAAG,UAAU,CACrC,cAAc,CAAC,gBAAgB,EAC/B,cAAc,CAAC,EAAE,EACjB,SAAS,EAAE,gBAAgB,CAC5B,CAAC;IAEF,IAAI,YAAY,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE,CAAC;QAC7D,MAAM,IAAI,oBAAoB,CAC5B,qFAAqF,CACtF,CAAC;IACJ,CAAC;IAED,6FAA6F;IAC7F,MAAM,YAAY,GAChB,oBAAoB;QACpB,CAAC,CAAC,YAAY,IAAI,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEpG,8GAA8G;IAC9G,MAAM,WAAW,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,WAAW,EAAE,MAAM,KAAK,6BAA6B,CAAC;IAC9E,wEAAwE;IACxE,MAAM,kBAAkB,GAAG,WAAW,EAAE,MAAM,KAAK,GAAG,CAAC;IAEvD,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,eAAe,CAAC;IAEtH,OAAO;QACL,GAAG,oBAAoB,CAAC,KAAK,CAAC;YAC5B,gBAAgB;YAChB,iBAAiB,EAAE,0BAA0B,IAAI,yBAAyB;YAC1E,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC;YAC1E,YAAY,EAAE,cAAc,CAAC,SAAS,KAAK,IAAI,IAAI,SAAS,EAAE,SAAS,KAAK,IAAI;YAChF,GAAG,EAAE,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YACtG,QAAQ,EAAE,UAAU,CAClB,cAAc,CAAC,KAAK,EACpB,SAAS,EAAE,QAAQ,EACnB,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CACvD;YACD,OAAO,EAAE,eAAe;YACxB,YAAY;YACZ,cAAc,EAAE,gBAAgB,CAAC,cAAc,IAAI,SAAS,EAAE,eAAe;YAC7E,YAAY,EAAE,gBAAgB,CAAC,YAAY,IAAI,SAAS,EAAE,aAAa;YACvE,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC;YACtD,IAAI,EAAE,UAAU;YAChB,YAAY;YACZ,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC;YACzE,OAAO,EACL,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC;gBACnC,SAAS,EAAE,WAAW;gBACtB,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,YAAY,EAAE,oBAAoB;YAClC,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,eAAe,CAAC;YACtG,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC;YAC5F,YAAY;YACZ,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC;YACrG,gBAAgB,EAAE,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC;YACvG,QAAQ;YACR,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC;YACpE,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,EAAE,aAAa,CAAC;YAChF,aAAa,EAAE,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC;SACjF,CAAC;QACF,YAAY,EAAE,UAAU;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,OAAgB,EAChB,QAAyB,EACzB,WAAmC,EAAE;IAErC,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,EAA2B,CAAC;IAC1E,MAAM,aAAa,GAAG,OAAO,cAAc,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,MAAM,eAAe,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAyB,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAExG,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,GAAG,kCAAkC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE9G,OAAO;YACL,MAAM,EAAE,CAAC,KAAK,CAAC;YACf,UAAU,EAAE,YAAY;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC1C,kCAAkC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAC3E,CAAC;IACF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC;QACvE,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC;YACrD,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;QACtE,UAAU;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAgB,EAChB,QAAyB,EACzB,WAAmC,EAAE;IAErC,OAAO,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAgB,EAChB,QAAyB,EACzB,WAAmC,EAAE;IAErC,OAAO,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC"}
@@ -1,9 +1,10 @@
1
- import ora from 'ora';
2
1
  import { BillingService } from '../../modules/billing/billing.service.js';
3
2
  import { getVoucherKindByShortcut } from '../../modules/billing/voucher-kind-map.js';
4
3
  import { ArcaBillingGateway } from '../../services/arca/arca-billing.gateway.js';
5
4
  import { ArcaClientFactory } from '../../services/arca/arca-client.factory.js';
6
5
  import { ArcaContextResolver } from '../../services/arca/arca-context.resolver.js';
6
+ import { ArcaFceObligationGateway } from '../../services/arca/arca-fce-obligation.gateway.js';
7
+ import { startSpinner } from '../spinner.js';
7
8
  import { runInteractiveBillingPreview } from './billing.command.interactive-preview.js';
8
9
  import { writeBillingCommandResults } from './billing.command.output.js';
9
10
  import { parseBillingCommandPlan, registerBillingOptions } from './billing.command.parser.js';
@@ -21,6 +22,14 @@ export function registerBillingCommandOptions(command) {
21
22
  export function getGlobalOptions(command) {
22
23
  return command.optsWithGlobals();
23
24
  }
25
+ async function resolveFceWarnings(inputs, service, gateway) {
26
+ const warnings = [];
27
+ // Secuencial a proposito: cada consulta a wsfecred reutiliza el mismo ticket WSAA.
28
+ for (const input of inputs) {
29
+ warnings.push(await service.resolveFceWarnings(input, gateway));
30
+ }
31
+ return warnings;
32
+ }
24
33
  export async function executeBillingCommand(command, shortcut) {
25
34
  const globalOptions = getGlobalOptions(command);
26
35
  let spinner = null;
@@ -28,38 +37,50 @@ export async function executeBillingCommand(command, shortcut) {
28
37
  try {
29
38
  const runtime = new ArcaContextResolver({ options: globalOptions }).resolve();
30
39
  const plan = parseBillingCommandPlan(command, shortcut, {
40
+ defaultCbu: runtime.config.cbu,
41
+ defaultCbuAlias: runtime.config.aliasCbu,
31
42
  defaultConcept: runtime.config.conceptoPorDefecto,
32
43
  defaultCurrencyCode: runtime.config.monedaPorDefecto,
33
44
  defaultEmit: runtime.config.output.emitirPorDefecto,
34
45
  defaultExchangeRate: runtime.config.cotizacionPorDefecto,
35
46
  defaultIvaCondition: runtime.config.ivaReceptorPorDefecto,
47
+ defaultIvaRate: runtime.config.alicuotaPorDefecto,
36
48
  });
37
49
  const service = new BillingService();
38
50
  const arca = new ArcaClientFactory().create(runtime);
51
+ const gateway = new ArcaBillingGateway(arca);
39
52
  const useRaw = typeof globalOptions.bruto === 'boolean' ? globalOptions.bruto : runtime.outputRaw;
53
+ const plannedInputs = [];
54
+ for (const input of plan.inputs) {
55
+ plannedInputs.push(await service.resolveExchangeRate(input, gateway));
56
+ }
57
+ const warnings = runtime.config.verificarFce
58
+ ? await resolveFceWarnings(plannedInputs, service, new ArcaFceObligationGateway(arca))
59
+ : [];
40
60
  const preview = await runInteractiveBillingPreview({
41
- inputs: plan.inputs,
61
+ inputs: plannedInputs,
42
62
  modeSource: plan.modeSource,
43
63
  runtime,
44
64
  service,
45
65
  useRaw,
46
66
  voucherLabel: voucherKind?.displayName ?? 'este comprobante',
67
+ warnings,
47
68
  });
48
69
  if (!preview.proceed) {
49
70
  return;
50
71
  }
51
72
  const { inputs, previewShown } = preview;
52
- spinner = !runtime.outputJson && process.stdout.isTTY ? ora('Procesando comprobante...').start() : null;
73
+ spinner = runtime.outputJson ? null : startSpinner('Procesando comprobante...');
53
74
  if (spinner) {
54
75
  spinner.text = inputs.length > 1 ? `Procesando ${inputs.length} comprobantes...` : 'Procesando comprobante...';
55
76
  }
56
- const gateway = new ArcaBillingGateway(arca);
57
77
  const results = [];
58
- for (const input of inputs) {
78
+ for (const [index, input] of inputs.entries()) {
59
79
  results.push(await service.execute({
60
80
  gateway,
61
81
  input,
62
82
  runtime,
83
+ warnings: warnings[index],
63
84
  }));
64
85
  }
65
86
  spinner?.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"billing.command.shared.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.command.shared.js","sourceRoot":"","sources":["../../../src/cli/commands/billing.command.shared.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,7 @@
1
1
  import { Command } from 'commander';
2
+ import { type ConfigDoctorRuntimeCheck } from '../../modules/config/config-doctor';
3
+ export declare function buildRuntimeCheck(options: {
4
+ produccion?: boolean;
5
+ testing?: boolean;
6
+ }): ConfigDoctorRuntimeCheck;
2
7
  export declare function registerConfigCommand(program: Command): void;
@@ -1,9 +1,9 @@
1
- import ora from 'ora';
2
1
  import { ConfigService } from '../../modules/config/config.service.js';
3
2
  import { buildConfigDoctorReport } from '../../modules/config/config-doctor.js';
4
3
  import { ArcaContextResolver } from '../../services/arca/arca-context.resolver.js';
5
4
  import { formatConfig, formatConfigAsText, formatConfigDoctor, formatConfigDoctorAsText, formatConfigPath, writeTerminalJson, writeTerminalOutput, } from '../../ui/index.js';
6
5
  import { configureSpanishHelp, createConfigHelp } from '../help.js';
6
+ import { startSpinner } from '../spinner.js';
7
7
  function createConfigService() {
8
8
  const service = new ConfigService();
9
9
  service.ensureInitialized();
@@ -16,7 +16,7 @@ function printConfigResult(textValue, jsonValue, useJson = false) {
16
16
  }
17
17
  writeTerminalOutput(textValue);
18
18
  }
19
- function buildRuntimeCheck(options) {
19
+ export function buildRuntimeCheck(options) {
20
20
  try {
21
21
  return {
22
22
  validation: new ArcaContextResolver({
@@ -58,7 +58,7 @@ export function registerConfigCommand(program) {
58
58
  .option('--produccion', 'revisar para produccion')
59
59
  .action((options) => {
60
60
  const service = createConfigService();
61
- const spinner = !options.json && process.stdout.isTTY ? ora('Generando revision...').start() : null;
61
+ const spinner = options.json ? null : startSpinner('Generando revision...');
62
62
  try {
63
63
  const report = buildConfigDoctorReport(service.getConfig(), buildRuntimeCheck(options));
64
64
  spinner?.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"config.command.js","sourceRoot":"","sources":["../../../src/cli/commands/config.command.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAiC,MAAM,oCAAoC,CAAC;AAC5G,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEjE,SAAS,mBAAmB;IAC1B,MAAM,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;IACpC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,EAAE,SAAiB,EAAE,OAAO,GAAG,KAAK;IAC9E,IAAI,OAAO,EAAE,CAAC;QACZ,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,mBAAmB,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAoD;IAC7E,IAAI,CAAC;QACH,OAAO;YACL,UAAU,EAAE,IAAI,mBAAmB,CAAC;gBAClC,OAAO,EAAE;oBACP,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB;aACF,CAAC,CAAC,QAAQ,EAAE;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0CAA0C;SAC3F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,aAAa,GAAG,OAAO;SAC1B,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,2EAA2E,CAAC,CAAC;IAE5F,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAEpC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,OAA2B,EAAE,EAAE;QAC5F,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACrD,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5G,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEvD,MAAM,cAAc,GAAG,aAAa;SACjC,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,mEAAmE,CAAC;SAChF,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC;SAC3C,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAAC;SACjD,MAAM,CAAC,CAAC,OAAoE,EAAE,EAAE;QAC/E,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAEpG,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;YACxF,OAAO,EAAE,IAAI,EAAE,CAAC;YAChB,iBAAiB,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAChG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,IAAI,EAAE,CAAC;YAChB,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAErC,MAAM,WAAW,GAAG,aAAa;SAC9B,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,8CAA8C,CAAC;SAC3D,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,IAAI,CAAC;YACH,mBAAmB,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3D,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAElC,MAAM,iBAAiB,GAAG,aAAa;SACpC,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,mCAAmC,CAAC;SAChD,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,QAAQ,CAAC,SAAS,EAAE,gCAAgC,CAAC;SACrD,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;SACtC,MAAM,CAAC,CAAC,GAAW,EAAE,KAAa,EAAE,OAA2B,EAAE,EAAE;QAClE,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACrD,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5G,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAExC,MAAM,eAAe,GAAG,aAAa;SAClC,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,oCAAoC,CAAC;SACjD,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,QAAQ,CAAC,SAAS,EAAE,gCAAgC,CAAC;SACrD,MAAM,CAAC,CAAC,GAAW,EAAE,OAA2B,EAAE,EAAE;QACnD,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACrD,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5G,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,oBAAoB,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"config.command.js","sourceRoot":"","sources":["../../../src/cli/commands/config.command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { Command } from 'commander';
2
+ export declare function registerFceObligationCommand(program: Command): void;