arcli 1.7.1 → 2.0.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.
- package/CHANGELOG.md +78 -1
- package/README.md +11 -18
- package/dist/cli/commands/billing.command.options.js +17 -15
- package/dist/cli/commands/billing.command.options.js.map +1 -1
- package/dist/cli/commands/billing.command.parser.js +57 -28
- package/dist/cli/commands/billing.command.parser.js.map +1 -1
- package/dist/cli/commands/billing.command.pdf.d.ts +1 -1
- package/dist/cli/commands/billing.command.pdf.js +17 -2
- package/dist/cli/commands/billing.command.pdf.js.map +1 -1
- package/dist/cli/commands/config.command.js +4 -2
- package/dist/cli/commands/config.command.js.map +1 -1
- package/dist/cli/commands/vouchers.command.js +7 -6
- package/dist/cli/commands/vouchers.command.js.map +1 -1
- package/dist/cli/error-output.d.ts +7 -0
- package/dist/cli/error-output.js +26 -0
- package/dist/cli/error-output.js.map +1 -0
- package/dist/cli/help-argv.d.ts +5 -0
- package/dist/cli/help-argv.js +21 -0
- package/dist/cli/help-argv.js.map +1 -0
- package/dist/cli/help.js +4 -3
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/index.js +14 -20
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/interactive/advanced-options.js +2 -2
- package/dist/cli/interactive/advanced-options.js.map +1 -1
- package/dist/cli/interactive/config.flow.d.ts +1 -1
- package/dist/cli/interactive/config.flow.js +53 -18
- package/dist/cli/interactive/config.flow.js.map +1 -1
- package/dist/cli/interactive/history.flow.d.ts +4 -0
- package/dist/cli/interactive/history.flow.js +22 -8
- package/dist/cli/interactive/history.flow.js.map +1 -1
- package/dist/cli/interactive/interactive-mode.js +99 -17
- package/dist/cli/interactive/interactive-mode.js.map +1 -1
- package/dist/cli/interactive/invoice-picker.d.ts +25 -0
- package/dist/cli/interactive/invoice-picker.js +153 -0
- package/dist/cli/interactive/invoice-picker.js.map +1 -0
- package/dist/cli/interactive/note.flow.d.ts +8 -2
- package/dist/cli/interactive/note.flow.js +39 -37
- package/dist/cli/interactive/note.flow.js.map +1 -1
- package/dist/cli/interactive/pdf.flow.js +33 -22
- package/dist/cli/interactive/pdf.flow.js.map +1 -1
- package/dist/cli/interactive/prompts.d.ts +36 -5
- package/dist/cli/interactive/prompts.js +185 -19
- package/dist/cli/interactive/prompts.js.map +1 -1
- package/dist/cli/interactive/repeat.flow.js +26 -17
- package/dist/cli/interactive/repeat.flow.js.map +1 -1
- package/dist/cli/interactive/status.flow.d.ts +3 -0
- package/dist/cli/interactive/status.flow.js +29 -0
- package/dist/cli/interactive/status.flow.js.map +1 -0
- package/dist/cli/interactive/update.flow.d.ts +6 -0
- package/dist/cli/interactive/update.flow.js +26 -0
- package/dist/cli/interactive/update.flow.js.map +1 -0
- package/dist/cli/interactive/validators.js +8 -4
- package/dist/cli/interactive/validators.js.map +1 -1
- package/dist/cli/option-parsers.d.ts +6 -0
- package/dist/cli/option-parsers.js +34 -0
- package/dist/cli/option-parsers.js.map +1 -0
- package/dist/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/lib/dates/arca-date.d.ts +13 -0
- package/dist/lib/dates/arca-date.js +28 -11
- package/dist/lib/dates/arca-date.js.map +1 -1
- package/dist/lib/errors/app-error.d.ts +3 -0
- package/dist/lib/errors/app-error.js +3 -0
- package/dist/lib/errors/app-error.js.map +1 -1
- package/dist/lib/files/restrict-to-owner.d.ts +7 -0
- package/dist/lib/files/restrict-to-owner.js +19 -0
- package/dist/lib/files/restrict-to-owner.js.map +1 -0
- package/dist/lib/identity/format-cuit.d.ts +2 -0
- package/dist/lib/identity/format-cuit.js +6 -0
- package/dist/lib/identity/format-cuit.js.map +1 -0
- package/dist/lib/numbers/argentine-amount.d.ts +23 -0
- package/dist/lib/numbers/argentine-amount.js +37 -0
- package/dist/lib/numbers/argentine-amount.js.map +1 -0
- package/dist/lib/numbers/strict-integer.d.ts +4 -0
- package/dist/lib/numbers/strict-integer.js +10 -0
- package/dist/lib/numbers/strict-integer.js.map +1 -0
- package/dist/lib/security/pem.js +5 -1
- package/dist/lib/security/pem.js.map +1 -1
- package/dist/modules/billing/billing-response.js +3 -2
- package/dist/modules/billing/billing-response.js.map +1 -1
- package/dist/modules/billing/billing.amounts.d.ts +2 -0
- package/dist/modules/billing/billing.amounts.js +6 -3
- package/dist/modules/billing/billing.amounts.js.map +1 -1
- package/dist/modules/billing/billing.associated-vouchers.js +14 -3
- package/dist/modules/billing/billing.associated-vouchers.js.map +1 -1
- package/dist/modules/billing/billing.batch.js +6 -0
- package/dist/modules/billing/billing.batch.js.map +1 -1
- package/dist/modules/billing/billing.date-range.js +14 -9
- package/dist/modules/billing/billing.date-range.js.map +1 -1
- package/dist/modules/billing/billing.display.js +4 -4
- package/dist/modules/billing/billing.display.js.map +1 -1
- package/dist/modules/billing/billing.errors.d.ts +12 -0
- package/dist/modules/billing/billing.errors.js +18 -0
- package/dist/modules/billing/billing.errors.js.map +1 -0
- package/dist/modules/billing/billing.schemas.js +13 -5
- package/dist/modules/billing/billing.schemas.js.map +1 -1
- package/dist/modules/billing/billing.service.js +10 -3
- package/dist/modules/billing/billing.service.js.map +1 -1
- package/dist/modules/billing/billing.validation.js +4 -0
- package/dist/modules/billing/billing.validation.js.map +1 -1
- package/dist/modules/config/config-value-parser.d.ts +1 -1
- package/dist/modules/config/config-value-parser.js +21 -9
- package/dist/modules/config/config-value-parser.js.map +1 -1
- package/dist/modules/config/config.presenter.d.ts +4 -0
- package/dist/modules/config/config.presenter.js +57 -37
- package/dist/modules/config/config.presenter.js.map +1 -1
- package/dist/modules/config/config.schemas.d.ts +4 -2
- package/dist/modules/config/config.schemas.js +4 -0
- package/dist/modules/config/config.schemas.js.map +1 -1
- package/dist/modules/config/config.sections.d.ts +14 -0
- package/dist/modules/config/config.sections.js +61 -0
- package/dist/modules/config/config.sections.js.map +1 -0
- package/dist/modules/config/config.service.d.ts +5 -0
- package/dist/modules/config/config.service.js +30 -6
- package/dist/modules/config/config.service.js.map +1 -1
- package/dist/modules/examples/examples.js +5 -1
- package/dist/modules/examples/examples.js.map +1 -1
- package/dist/modules/interactive/amount-input.d.ts +3 -5
- package/dist/modules/interactive/amount-input.js +9 -26
- package/dist/modules/interactive/amount-input.js.map +1 -1
- package/dist/modules/interactive/config-fields.d.ts +1 -3
- package/dist/modules/interactive/config-fields.js +37 -42
- package/dist/modules/interactive/config-fields.js.map +1 -1
- package/dist/modules/interactive/equivalent-command.js +6 -8
- package/dist/modules/interactive/equivalent-command.js.map +1 -1
- package/dist/modules/interactive/invoice-copy.d.ts +19 -0
- package/dist/modules/interactive/invoice-copy.js +26 -0
- package/dist/modules/interactive/invoice-copy.js.map +1 -0
- package/dist/modules/interactive/periods.d.ts +2 -2
- package/dist/modules/interactive/periods.js +8 -4
- package/dist/modules/interactive/periods.js.map +1 -1
- package/dist/modules/parameters/health.d.ts +17 -0
- package/dist/modules/parameters/health.js +29 -0
- package/dist/modules/parameters/health.js.map +1 -0
- package/dist/modules/pdf/pdf.errors.d.ts +0 -1
- package/dist/modules/pdf/pdf.errors.js +1 -3
- package/dist/modules/pdf/pdf.errors.js.map +1 -1
- package/dist/modules/storybook/showcase.js +4 -1
- package/dist/modules/storybook/showcase.js.map +1 -1
- package/dist/modules/update-check/changelog.d.ts +23 -0
- package/dist/modules/update-check/changelog.js +99 -0
- package/dist/modules/update-check/changelog.js.map +1 -0
- package/dist/modules/update-check/update-check.presenter.d.ts +4 -0
- package/dist/modules/update-check/update-check.presenter.js +80 -2
- package/dist/modules/update-check/update-check.presenter.js.map +1 -1
- package/dist/modules/update-check/update-check.service.d.ts +3 -0
- package/dist/modules/update-check/update-check.service.js +2 -2
- package/dist/modules/update-check/update-check.service.js.map +1 -1
- package/dist/modules/vouchers/voucher-history.d.ts +9 -4
- package/dist/modules/vouchers/voucher-history.js +8 -3
- package/dist/modules/vouchers/voucher-history.js.map +1 -1
- package/dist/modules/vouchers/voucher-history.presenter.d.ts +9 -2
- package/dist/modules/vouchers/voucher-history.presenter.js +53 -15
- package/dist/modules/vouchers/voucher-history.presenter.js.map +1 -1
- package/dist/services/arca/arca-context.resolver.js +5 -0
- package/dist/services/arca/arca-context.resolver.js.map +1 -1
- package/dist/services/clipboard/clipboard.d.ts +2 -0
- package/dist/services/clipboard/clipboard.js +17 -0
- package/dist/services/clipboard/clipboard.js.map +1 -0
- package/dist/services/pdf/escape-html.d.ts +6 -0
- package/dist/services/pdf/escape-html.js +25 -0
- package/dist/services/pdf/escape-html.js.map +1 -0
- package/dist/services/pdf/pdf-exporter.js +2 -1
- package/dist/services/pdf/pdf-exporter.js.map +1 -1
- package/dist/ui/components/statusBar.d.ts +15 -2
- package/dist/ui/components/statusBar.js +18 -9
- package/dist/ui/components/statusBar.js.map +1 -1
- package/dist/ui/presenters/errors.presenter.js +5 -4
- package/dist/ui/presenters/errors.presenter.js.map +1 -1
- package/dist/ui/primitives/renderLogo.d.ts +2 -1
- package/dist/ui/primitives/renderLogo.js +21 -4
- package/dist/ui/primitives/renderLogo.js.map +1 -1
- package/dist/ui/primitives/renderPanel.d.ts +2 -0
- package/dist/ui/primitives/renderPanel.js +15 -5
- package/dist/ui/primitives/renderPanel.js.map +1 -1
- package/dist/ui/stream/terminal-stream.d.ts +6 -0
- package/dist/ui/stream/terminal-stream.js +15 -1
- package/dist/ui/stream/terminal-stream.js.map +1 -1
- package/dist/ui/theme/theme.d.ts +3 -3
- package/dist/ui/theme/theme.js +14 -3
- package/dist/ui/theme/theme.js.map +1 -1
- package/llms.txt +12 -10
- package/package.json +1 -1
- package/dist/cli/interactive/lookup.flow.d.ts +0 -5
- package/dist/cli/interactive/lookup.flow.js +0 -72
- package/dist/cli/interactive/lookup.flow.js.map +0 -1
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { formatArcaDateAsArgentineDate } from '../../lib/dates/arca-date.js';
|
|
2
2
|
import { maskPath } from '../../lib/paths/mask-path.js';
|
|
3
|
-
import {
|
|
3
|
+
import { colorize, keyValuePanel, resolveKeyValueLabelWidth, statusPanel, toneText, UI_THEME } from '../../ui/index.js';
|
|
4
|
+
import { RECENT_VOUCHERS_LIMIT } from '../vouchers/voucher-history.js';
|
|
5
|
+
import { CONFIG_LABELS, CONFIG_SECTIONS } from './config.sections.js';
|
|
4
6
|
function toPublicSnapshot(config, paths) {
|
|
5
7
|
return {
|
|
6
8
|
alicuota: config.alicuotaPorDefecto,
|
|
7
9
|
aliasCbu: config.aliasCbu,
|
|
10
|
+
comprobantesPorLista: config.comprobantesPorLista,
|
|
8
11
|
cbu: config.cbu,
|
|
9
12
|
cert: {
|
|
10
13
|
produccion: config.cert.produccion ? maskPath(config.cert.produccion) : undefined,
|
|
@@ -38,44 +41,61 @@ export function formatConfig(config, paths) {
|
|
|
38
41
|
export function formatConfigPath(configPath) {
|
|
39
42
|
return configPath;
|
|
40
43
|
}
|
|
44
|
+
const NOT_SET = 'no configurado';
|
|
45
|
+
const notSet = (value) => value ?? NOT_SET;
|
|
46
|
+
const yesNo = (value) => (value ? 'si' : 'no');
|
|
47
|
+
/** Como se muestra cada dato en `arcli config`. */
|
|
48
|
+
const CONFIG_TEXT_VALUES = {
|
|
49
|
+
alicuota: (c) => (c.alicuota ? `${c.alicuota}%` : '21% (por defecto)'),
|
|
50
|
+
aliasCbu: (c) => notSet(c.aliasCbu),
|
|
51
|
+
bruto: (c) => yesNo(c.bruto),
|
|
52
|
+
cbu: (c) => notSet(c.cbu),
|
|
53
|
+
'cert.produccion': (c) => notSet(c.cert.produccion),
|
|
54
|
+
'cert.testing': (c) => notSet(c.cert.testing),
|
|
55
|
+
comprobantesPorLista: (c) => c.comprobantesPorLista ?? `${RECENT_VOUCHERS_LIMIT} (por defecto)`,
|
|
56
|
+
concepto: (c) => notSet(c.concepto),
|
|
57
|
+
cotizacion: (c) => c.cotizacion ?? 1,
|
|
58
|
+
cuit: (c) => notSet(c.cuit),
|
|
59
|
+
'emisor.condicionIva': (c) => c.emisor.condicionIva ?? 'segun la letra',
|
|
60
|
+
'emisor.domicilio': (c) => notSet(c.emisor.domicilio),
|
|
61
|
+
'emisor.iibb': (c) => notSet(c.emisor.iibb),
|
|
62
|
+
'emisor.inicioActividades': (c) => c.emisor.inicioActividades ? formatArcaDateAsArgentineDate(c.emisor.inicioActividades) : NOT_SET,
|
|
63
|
+
'emisor.logo': (c) => notSet(c.emisor.logo),
|
|
64
|
+
'emisor.razonSocial': (c) => notSet(c.emisor.razonSocial),
|
|
65
|
+
emitir: (c) => yesNo(c.emitir),
|
|
66
|
+
entorno: (c) => c.entorno,
|
|
67
|
+
ivaReceptor: (c) => notSet(c.ivaReceptor),
|
|
68
|
+
json: (c) => yesNo(c.json),
|
|
69
|
+
'key.produccion': (c) => notSet(c.key.produccion),
|
|
70
|
+
'key.testing': (c) => notSet(c.key.testing),
|
|
71
|
+
moneda: (c) => c.moneda ?? 'PES',
|
|
72
|
+
pdf: (c) => c.pdf,
|
|
73
|
+
pdfCarpeta: (c) => c.pdfCarpeta,
|
|
74
|
+
pdfNavegador: (c) => c.pdfNavegador ?? 'automatico',
|
|
75
|
+
puntoVenta: (c) => notSet(c.puntoVenta),
|
|
76
|
+
ticketPath: (c) => c.ticketPath,
|
|
77
|
+
verificarFce: (c) => yesNo(c.verificarFce),
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* La configuracion por secciones, en el mismo orden que "Modificar configuracion" del modo interactivo.
|
|
81
|
+
* El peso esta en los valores: titulos en celeste, etiquetas y datos sin cargar atenuados.
|
|
82
|
+
*/
|
|
41
83
|
export function formatConfigAsText(config, paths) {
|
|
42
84
|
const safeConfig = toPublicSnapshot(config, paths);
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
[
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
['Key produccion', safeConfig.key.produccion ?? 'no configurado'],
|
|
58
|
-
['Punto de venta', safeConfig.puntoVenta ?? 'no configurado'],
|
|
59
|
-
['Emitir', safeConfig.emitir ? 'si' : 'no'],
|
|
60
|
-
['Salida JSON', safeConfig.json ? 'si' : 'no'],
|
|
61
|
-
['Salida bruta', safeConfig.bruto ? 'si' : 'no'],
|
|
62
|
-
['Ruta tickets WSAA', safeConfig.ticketPath],
|
|
63
|
-
['PDF', safeConfig.pdf],
|
|
64
|
-
['Carpeta de PDFs', safeConfig.pdfCarpeta],
|
|
65
|
-
['Navegador para PDFs', safeConfig.pdfNavegador ?? 'automatico'],
|
|
66
|
-
['Emisor: razon social', safeConfig.emisor.razonSocial ?? 'no configurado'],
|
|
67
|
-
['Emisor: domicilio', safeConfig.emisor.domicilio ?? 'no configurado'],
|
|
68
|
-
[
|
|
69
|
-
'Emisor: inicio actividades',
|
|
70
|
-
safeConfig.emisor.inicioActividades
|
|
71
|
-
? formatArcaDateAsArgentineDate(safeConfig.emisor.inicioActividades)
|
|
72
|
-
: 'no configurado',
|
|
73
|
-
],
|
|
74
|
-
['Emisor: IIBB', safeConfig.emisor.iibb ?? 'no configurado'],
|
|
75
|
-
['Emisor: condicion IVA', safeConfig.emisor.condicionIva ?? 'segun la letra'],
|
|
76
|
-
['Emisor: logo', safeConfig.emisor.logo ?? 'no configurado'],
|
|
77
|
-
];
|
|
78
|
-
return keyValuePanel('Configuracion', renderKeyValueRows(rows, { labelWidth: resolveKeyValueLabelWidth('standard', rows, [35, 65]) }), undefined, 'standard', undefined, 'sheet');
|
|
85
|
+
const sections = CONFIG_SECTIONS.map((section) => ({
|
|
86
|
+
label: section.label,
|
|
87
|
+
rows: section.keys.map((key) => [CONFIG_LABELS[key], String(CONFIG_TEXT_VALUES[key](safeConfig))]),
|
|
88
|
+
}));
|
|
89
|
+
// Un solo ancho de etiqueta para todas las secciones, asi los valores quedan en la misma columna.
|
|
90
|
+
const labelWidth = resolveKeyValueLabelWidth('standard', sections.flatMap((section) => section.rows), [35, 65]);
|
|
91
|
+
const gap = ' '.repeat(UI_THEME.table.gap);
|
|
92
|
+
const lines = sections.flatMap((section, index) => [
|
|
93
|
+
...(index > 0 ? [''] : []),
|
|
94
|
+
colorize(section.label, 'info'),
|
|
95
|
+
// Los datos van corridos bajo el titulo, asi la seccion se lee aun sin color (NO_COLOR, pipes).
|
|
96
|
+
...section.rows.map(([label, value]) => ` ${colorize(label.padEnd(labelWidth), 'muted')}${gap}${value === NOT_SET ? colorize(value, 'muted') : value}`),
|
|
97
|
+
]);
|
|
98
|
+
return keyValuePanel('Configuracion', lines, undefined, 'standard', undefined, 'sheet');
|
|
79
99
|
}
|
|
80
100
|
export function formatConfigDoctor(report) {
|
|
81
101
|
return JSON.stringify({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.presenter.js","sourceRoot":"","sources":["../../../src/modules/config/config.presenter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"config.presenter.js","sourceRoot":"","sources":["../../../src/modules/config/config.presenter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const arcliEnvironmentSchema: z.ZodEnum<{
|
|
3
|
-
produccion: "produccion";
|
|
4
3
|
testing: "testing";
|
|
4
|
+
produccion: "produccion";
|
|
5
5
|
}>;
|
|
6
6
|
export declare const arcliDefaultConceptSchema: z.ZodEnum<{
|
|
7
7
|
productos: "productos";
|
|
@@ -92,8 +92,8 @@ export declare const arcliConfigSchema: z.ZodObject<{
|
|
|
92
92
|
razonSocial: z.ZodOptional<z.ZodString>;
|
|
93
93
|
}, z.core.$strip>>;
|
|
94
94
|
entornoPorDefecto: z.ZodDefault<z.ZodEnum<{
|
|
95
|
-
produccion: "produccion";
|
|
96
95
|
testing: "testing";
|
|
96
|
+
produccion: "produccion";
|
|
97
97
|
}>>;
|
|
98
98
|
key: z.ZodDefault<z.ZodObject<{
|
|
99
99
|
produccion: z.ZodOptional<z.ZodString>;
|
|
@@ -111,6 +111,7 @@ export declare const arcliConfigSchema: z.ZodObject<{
|
|
|
111
111
|
}>>;
|
|
112
112
|
pdfCarpeta: z.ZodOptional<z.ZodString>;
|
|
113
113
|
pdfNavegador: z.ZodOptional<z.ZodString>;
|
|
114
|
+
comprobantesPorLista: z.ZodOptional<z.ZodNumber>;
|
|
114
115
|
puntoVentaPorDefecto: z.ZodOptional<z.ZodNumber>;
|
|
115
116
|
ticketPath: z.ZodOptional<z.ZodString>;
|
|
116
117
|
verificarFce: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -127,6 +128,7 @@ export declare const configPublicKeySchema: z.ZodEnum<{
|
|
|
127
128
|
aliasCbu: "aliasCbu";
|
|
128
129
|
pdfCarpeta: "pdfCarpeta";
|
|
129
130
|
pdfNavegador: "pdfNavegador";
|
|
131
|
+
comprobantesPorLista: "comprobantesPorLista";
|
|
130
132
|
ticketPath: "ticketPath";
|
|
131
133
|
verificarFce: "verificarFce";
|
|
132
134
|
alicuota: "alicuota";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { billingIvaRateSchema } from '../billing/billing.schemas.js';
|
|
3
|
+
import { MAX_RECENT_VOUCHERS } from '../vouchers/voucher-history.js';
|
|
3
4
|
export const arcliEnvironmentSchema = z.enum(['testing', 'produccion']);
|
|
4
5
|
export const arcliDefaultConceptSchema = z.enum(['productos', 'productos-servicios', 'servicios']);
|
|
5
6
|
export const arcliDefaultIvaConditionSchema = z.enum([
|
|
@@ -82,6 +83,8 @@ export const arcliConfigSchema = z.object({
|
|
|
82
83
|
pdf: arcliPdfModeSchema.optional(),
|
|
83
84
|
pdfCarpeta: z.string().trim().min(1).optional(),
|
|
84
85
|
pdfNavegador: z.string().trim().min(1).optional(),
|
|
86
|
+
/** Cuantos comprobantes muestran `arcli ultimos` y las listas del modo interactivo. */
|
|
87
|
+
comprobantesPorLista: z.number().int().min(1).max(MAX_RECENT_VOUCHERS).optional(),
|
|
85
88
|
puntoVentaPorDefecto: z.number().int().positive().optional(),
|
|
86
89
|
ticketPath: z.string().trim().min(1).optional(),
|
|
87
90
|
verificarFce: z.boolean().optional(),
|
|
@@ -102,6 +105,7 @@ export const CONFIG_DEFAULTS = {
|
|
|
102
105
|
export const configPublicKeySchema = z.enum([
|
|
103
106
|
'alicuota',
|
|
104
107
|
'aliasCbu',
|
|
108
|
+
'comprobantesPorLista',
|
|
105
109
|
'cbu',
|
|
106
110
|
'cert.produccion',
|
|
107
111
|
'cert.testing',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.schemas.js","sourceRoot":"","sources":["../../../src/modules/config/config.schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.schemas.js","sourceRoot":"","sources":["../../../src/modules/config/config.schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ConfigPublicKey } from './config.schemas';
|
|
2
|
+
export type ConfigSectionId = 'certificados' | 'cuenta' | 'emisor' | 'facturacion' | 'fce' | 'pdf' | 'salida';
|
|
3
|
+
export interface ConfigSection {
|
|
4
|
+
readonly id: ConfigSectionId;
|
|
5
|
+
readonly keys: readonly ConfigPublicKey[];
|
|
6
|
+
readonly label: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Secciones y orden de la configuracion. Las usan `arcli config` y "Modificar configuracion" del modo
|
|
10
|
+
* interactivo, asi los dos muestran lo mismo en el mismo lugar. Cada clave publica aparece una sola vez.
|
|
11
|
+
*/
|
|
12
|
+
export declare const CONFIG_SECTIONS: readonly ConfigSection[];
|
|
13
|
+
/** Nombre de cada dato, igual en `arcli config` y en el modo interactivo. */
|
|
14
|
+
export declare const CONFIG_LABELS: Record<ConfigPublicKey, string>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Secciones y orden de la configuracion. Las usan `arcli config` y "Modificar configuracion" del modo
|
|
3
|
+
* interactivo, asi los dos muestran lo mismo en el mismo lugar. Cada clave publica aparece una sola vez.
|
|
4
|
+
*/
|
|
5
|
+
export const CONFIG_SECTIONS = [
|
|
6
|
+
{ id: 'cuenta', keys: ['cuit', 'puntoVenta', 'entorno'], label: 'Cuenta' },
|
|
7
|
+
{
|
|
8
|
+
id: 'certificados',
|
|
9
|
+
keys: ['cert.testing', 'key.testing', 'cert.produccion', 'key.produccion', 'ticketPath'],
|
|
10
|
+
label: 'Certificados',
|
|
11
|
+
},
|
|
12
|
+
{ id: 'facturacion', keys: ['concepto', 'ivaReceptor', 'alicuota', 'moneda', 'cotizacion'], label: 'Al facturar' },
|
|
13
|
+
{ id: 'fce', keys: ['cbu', 'aliasCbu', 'verificarFce'], label: 'Factura de credito electronica (FCE)' },
|
|
14
|
+
{
|
|
15
|
+
id: 'emisor',
|
|
16
|
+
keys: [
|
|
17
|
+
'emisor.razonSocial',
|
|
18
|
+
'emisor.domicilio',
|
|
19
|
+
'emisor.inicioActividades',
|
|
20
|
+
'emisor.iibb',
|
|
21
|
+
'emisor.condicionIva',
|
|
22
|
+
'emisor.logo',
|
|
23
|
+
],
|
|
24
|
+
label: 'Datos del emisor (PDF)',
|
|
25
|
+
},
|
|
26
|
+
{ id: 'pdf', keys: ['pdf', 'pdfCarpeta', 'pdfNavegador'], label: 'PDF' },
|
|
27
|
+
{ id: 'salida', keys: ['comprobantesPorLista', 'emitir', 'json', 'bruto'], label: 'Salida y listados' },
|
|
28
|
+
];
|
|
29
|
+
/** Nombre de cada dato, igual en `arcli config` y en el modo interactivo. */
|
|
30
|
+
export const CONFIG_LABELS = {
|
|
31
|
+
alicuota: 'Alicuota de IVA (A y B)',
|
|
32
|
+
aliasCbu: 'Alias del CBU',
|
|
33
|
+
bruto: 'Salida bruta',
|
|
34
|
+
cbu: 'CBU',
|
|
35
|
+
'cert.produccion': 'Certificado de produccion',
|
|
36
|
+
'cert.testing': 'Certificado de testing',
|
|
37
|
+
comprobantesPorLista: 'Comprobantes por lista',
|
|
38
|
+
concepto: 'Concepto',
|
|
39
|
+
cotizacion: 'Cotizacion',
|
|
40
|
+
cuit: 'CUIT del emisor',
|
|
41
|
+
'emisor.condicionIva': 'Condicion de IVA',
|
|
42
|
+
'emisor.domicilio': 'Domicilio comercial',
|
|
43
|
+
'emisor.iibb': 'Ingresos Brutos',
|
|
44
|
+
'emisor.inicioActividades': 'Inicio de actividades',
|
|
45
|
+
'emisor.logo': 'Logo (PNG o JPG)',
|
|
46
|
+
'emisor.razonSocial': 'Razon social',
|
|
47
|
+
emitir: 'Emitir sin --emitir',
|
|
48
|
+
entorno: 'Entorno',
|
|
49
|
+
ivaReceptor: 'IVA del receptor',
|
|
50
|
+
json: 'Salida JSON',
|
|
51
|
+
'key.produccion': 'Clave privada de produccion',
|
|
52
|
+
'key.testing': 'Clave privada de testing',
|
|
53
|
+
moneda: 'Moneda',
|
|
54
|
+
pdf: 'Cuando generar el PDF',
|
|
55
|
+
pdfCarpeta: 'Carpeta de PDFs',
|
|
56
|
+
pdfNavegador: 'Navegador para PDFs',
|
|
57
|
+
puntoVenta: 'Punto de venta',
|
|
58
|
+
ticketPath: 'Carpeta de tickets WSAA',
|
|
59
|
+
verificarFce: 'Verificar regimen FCE del receptor',
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=config.sections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.sections.js","sourceRoot":"","sources":["../../../src/modules/config/config.sections.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA6B;IACvD,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC1E;QACE,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,CAAC;QACxF,KAAK,EAAE,cAAc;KACtB;IACD,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE;IAClH,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE;IACvG;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE;YACJ,oBAAoB;YACpB,kBAAkB;YAClB,0BAA0B;YAC1B,aAAa;YACb,qBAAqB;YACrB,aAAa;SACd;QACD,KAAK,EAAE,wBAAwB;KAChC;IACD,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACxE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,sBAAsB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE;CACxG,CAAC;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,aAAa,GAAoC;IAC5D,QAAQ,EAAE,yBAAyB;IACnC,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,cAAc;IACrB,GAAG,EAAE,KAAK;IACV,iBAAiB,EAAE,2BAA2B;IAC9C,cAAc,EAAE,wBAAwB;IACxC,oBAAoB,EAAE,wBAAwB;IAC9C,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,iBAAiB;IACvB,qBAAqB,EAAE,kBAAkB;IACzC,kBAAkB,EAAE,qBAAqB;IACzC,aAAa,EAAE,iBAAiB;IAChC,0BAA0B,EAAE,uBAAuB;IACnD,aAAa,EAAE,kBAAkB;IACjC,oBAAoB,EAAE,cAAc;IACpC,MAAM,EAAE,qBAAqB;IAC7B,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,kBAAkB;IAC/B,IAAI,EAAE,aAAa;IACnB,gBAAgB,EAAE,6BAA6B;IAC/C,aAAa,EAAE,0BAA0B;IACzC,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,uBAAuB;IAC5B,UAAU,EAAE,iBAAiB;IAC7B,YAAY,EAAE,qBAAqB;IACnC,UAAU,EAAE,gBAAgB;IAC5B,UAAU,EAAE,yBAAyB;IACrC,YAAY,EAAE,oCAAoC;CACnD,CAAC"}
|
|
@@ -26,5 +26,10 @@ export declare class ConfigService {
|
|
|
26
26
|
ensureInitialized(): ArcliConfig;
|
|
27
27
|
setValue(rawKey: string, rawValue: string): ArcliConfig;
|
|
28
28
|
unsetValue(rawKey: string): ArcliConfig;
|
|
29
|
+
/**
|
|
30
|
+
* Aplica el cambio sobre una copia y la guarda solo si queda valida: un valor invalido no puede dejar el CLI
|
|
31
|
+
* inutilizable. Una config que ya estaba rota se puede arreglar cambiando o borrando la clave que falla.
|
|
32
|
+
*/
|
|
33
|
+
private saveIfValid;
|
|
29
34
|
private resolveKey;
|
|
30
35
|
}
|
|
@@ -6,6 +6,7 @@ import { parseConfigValue } from './config-value-parser.js';
|
|
|
6
6
|
const CONFIG_KEY_ALIASES = {
|
|
7
7
|
alicuota: 'alicuotaPorDefecto',
|
|
8
8
|
aliasCbu: 'aliasCbu',
|
|
9
|
+
comprobantesPorLista: 'comprobantesPorLista',
|
|
9
10
|
cbu: 'cbu',
|
|
10
11
|
'cert.produccion': 'cert.produccion',
|
|
11
12
|
'cert.testing': 'cert.testing',
|
|
@@ -87,16 +88,21 @@ export class ConfigService {
|
|
|
87
88
|
const key = this.resolveKey(rawKey);
|
|
88
89
|
const canonicalKey = CONFIG_KEY_ALIASES[key];
|
|
89
90
|
const parsedValue = parseConfigValue(canonicalKey, rawValue);
|
|
90
|
-
this.
|
|
91
|
-
const config = this.getConfig();
|
|
92
|
-
this.store.store = config;
|
|
93
|
-
return config;
|
|
91
|
+
return this.saveIfValid((draft) => setAtPath(draft, canonicalKey, parsedValue));
|
|
94
92
|
}
|
|
95
93
|
unsetValue(rawKey) {
|
|
96
94
|
const key = this.resolveKey(rawKey);
|
|
97
95
|
const canonicalKey = CONFIG_KEY_ALIASES[key];
|
|
98
|
-
this.
|
|
99
|
-
|
|
96
|
+
return this.saveIfValid((draft) => deleteAtPath(draft, canonicalKey));
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Aplica el cambio sobre una copia y la guarda solo si queda valida: un valor invalido no puede dejar el CLI
|
|
100
|
+
* inutilizable. Una config que ya estaba rota se puede arreglar cambiando o borrando la clave que falla.
|
|
101
|
+
*/
|
|
102
|
+
saveIfValid(change) {
|
|
103
|
+
const draft = structuredClone(this.store.store);
|
|
104
|
+
change(draft);
|
|
105
|
+
const config = arcliConfigSchema.parse(draft);
|
|
100
106
|
this.store.store = config;
|
|
101
107
|
return config;
|
|
102
108
|
}
|
|
@@ -104,4 +110,22 @@ export class ConfigService {
|
|
|
104
110
|
return configPublicKeySchema.parse(rawKey.trim());
|
|
105
111
|
}
|
|
106
112
|
}
|
|
113
|
+
function setAtPath(target, path, value) {
|
|
114
|
+
const keys = path.split('.');
|
|
115
|
+
const last = keys.pop();
|
|
116
|
+
let node = target;
|
|
117
|
+
for (const key of keys) {
|
|
118
|
+
const next = node[key];
|
|
119
|
+
node = (next && typeof next === 'object' ? next : (node[key] = {}));
|
|
120
|
+
}
|
|
121
|
+
node[last] = value;
|
|
122
|
+
}
|
|
123
|
+
function deleteAtPath(target, path) {
|
|
124
|
+
const keys = path.split('.');
|
|
125
|
+
const last = keys.pop();
|
|
126
|
+
const parent = keys.reduce((node, key) => (node && typeof node === 'object' ? node[key] : undefined), target);
|
|
127
|
+
if (parent && typeof parent === 'object') {
|
|
128
|
+
delete parent[last];
|
|
129
|
+
}
|
|
130
|
+
}
|
|
107
131
|
//# sourceMappingURL=config.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/modules/config/config.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/modules/config/config.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { toArgentineCalendarDate } from '../../lib/dates/arca-date.js';
|
|
1
2
|
import { badge, renderLogo, sectionHeading, toneText } from '../../ui/index.js';
|
|
2
3
|
import { VOUCHER_FAMILIES, VOUCHER_KIND_MAP, VOUCHER_SHORTCUTS } from '../billing/voucher-kind-map.js';
|
|
3
4
|
const ISSUER_HINT = 'Estos ejemplos asumen que ya resolviste cuit emisor, credenciales y, en la version minima, tambien punto de venta por config.';
|
|
@@ -44,7 +45,10 @@ function formatExampleDate(value) {
|
|
|
44
45
|
return `${day}-${month}-${value.getFullYear()}`;
|
|
45
46
|
}
|
|
46
47
|
// Fechas relativas a hoy para que los ejemplos queden dentro de la ventana que acepta ARCA.
|
|
47
|
-
function resolveExampleDates(
|
|
48
|
+
function resolveExampleDates(now) {
|
|
49
|
+
const argentineToday = toArgentineCalendarDate(now);
|
|
50
|
+
// Fecha local armada con el dia argentino: las cuentas y el formato siguen en local.
|
|
51
|
+
const today = new Date(argentineToday.year, argentineToday.month - 1, argentineToday.day);
|
|
48
52
|
const monthStart = new Date(today.getFullYear(), today.getMonth(), 1);
|
|
49
53
|
const paymentDue = new Date(today.getFullYear(), today.getMonth(), today.getDate() + 10);
|
|
50
54
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"examples.js","sourceRoot":"","sources":["../../../src/modules/examples/examples.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEpG,MAAM,WAAW,GACf,+HAA+H,CAAC;AAElI,SAAS,aAAa,CAAC,UAAiC;IACtD,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAiC;IAC5D,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,CAAC,oBAAoB,EAAE,sCAAsC,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,oBAAoB,EAAE,iCAAiC,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAiC;IAC7D,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,yBAAyB,CAAC,UAAiC;IAClE,IAAI,CAAC,UAAU,CAAC,yBAAyB,EAAE,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACzC,OAAO,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QACxC,OAAO,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,0BAA0B,EAAE,CAAC;QACrD,OAAO,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAED,OAAO,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAU7C,SAAS,iBAAiB,CAAC,KAAW;IACpC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAE5D,OAAO,GAAG,GAAG,IAAI,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;AAClD,CAAC;AAED,4FAA4F;AAC5F,SAAS,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"examples.js","sourceRoot":"","sources":["../../../src/modules/examples/examples.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Interpreta montos escritos como en Argentina: `150000`, `150.000`, `1500,50`, `1.500,50` o `1500.50`.
|
|
3
|
-
* Con coma, los puntos son separadores de miles. Sin coma, un punto seguido de exactamente
|
|
4
|
-
* 3 digitos (o varios puntos) tambien son miles; si no, el punto es decimal.
|
|
5
|
-
*/
|
|
1
|
+
/** Monto escrito en el modo interactivo, con las mismas reglas que los flags: `1.500,50`. */
|
|
6
2
|
export declare function parseAmountInput(raw: string): number | undefined;
|
|
3
|
+
/** Cotizacion escrita en el modo interactivo: como un monto, pero con hasta 6 decimales. */
|
|
4
|
+
export declare function parseExchangeRateInput(raw: string): number | undefined;
|
|
@@ -1,29 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* Con coma, los puntos son separadores de miles. Sin coma, un punto seguido de exactamente
|
|
4
|
-
* 3 digitos (o varios puntos) tambien son miles; si no, el punto es decimal.
|
|
5
|
-
*/
|
|
1
|
+
import { EXCHANGE_RATE_DECIMALS, parseArgentineAmount } from '../../lib/numbers/argentine-amount.js';
|
|
2
|
+
/** Monto escrito en el modo interactivo, con las mismas reglas que los flags: `1.500,50`. */
|
|
6
3
|
export function parseAmountInput(raw) {
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
let normalized;
|
|
15
|
-
if (value.includes(',')) {
|
|
16
|
-
if (value.indexOf(',') !== value.lastIndexOf(',')) {
|
|
17
|
-
return undefined;
|
|
18
|
-
}
|
|
19
|
-
normalized = value.replace(/\./g, '').replace(',', '.');
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
const dots = value.split('.').length - 1;
|
|
23
|
-
const isThousands = dots > 1 || /^\d{1,3}\.\d{3}$/.test(value);
|
|
24
|
-
normalized = isThousands ? value.replace(/\./g, '') : value;
|
|
25
|
-
}
|
|
26
|
-
const amount = Number(normalized);
|
|
27
|
-
return Number.isFinite(amount) && amount > 0 ? Math.round(amount * 100) / 100 : undefined;
|
|
4
|
+
const result = parseArgentineAmount(raw);
|
|
5
|
+
return result.ok ? result.value : undefined;
|
|
6
|
+
}
|
|
7
|
+
/** Cotizacion escrita en el modo interactivo: como un monto, pero con hasta 6 decimales. */
|
|
8
|
+
export function parseExchangeRateInput(raw) {
|
|
9
|
+
const result = parseArgentineAmount(raw, { maxDecimals: EXCHANGE_RATE_DECIMALS });
|
|
10
|
+
return result.ok ? result.value : undefined;
|
|
28
11
|
}
|
|
29
12
|
//# sourceMappingURL=amount-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amount-input.js","sourceRoot":"","sources":["../../../src/modules/interactive/amount-input.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"amount-input.js","sourceRoot":"","sources":["../../../src/modules/interactive/amount-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAElG,6FAA6F;AAC7F,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAEzC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9C,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC,CAAC;IAElF,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9C,CAAC"}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
import { type ArcliConfig, type ConfigPublicKey } from '../config/config.schemas';
|
|
2
|
-
export type ConfigFieldGroup = 'credenciales' | 'defaults' | 'emisor' | 'pdf';
|
|
3
2
|
/** Un dato de la config que se puede cambiar desde el modo interactivo. */
|
|
4
3
|
export interface ConfigField {
|
|
5
4
|
/** Valores posibles para elegir de una lista; sin esto se escribe. */
|
|
6
5
|
readonly choices?: readonly string[];
|
|
7
|
-
readonly group: ConfigFieldGroup;
|
|
8
6
|
readonly hint?: string;
|
|
9
7
|
readonly key: ConfigPublicKey;
|
|
8
|
+
/** El mismo nombre que en `arcli config` (ver CONFIG_LABELS). */
|
|
10
9
|
readonly label: string;
|
|
11
10
|
/** Las rutas se muestran enmascaradas, igual que en `arcli config`. */
|
|
12
11
|
readonly path?: boolean;
|
|
13
12
|
readonly read: (config: ArcliConfig) => string | undefined;
|
|
14
13
|
}
|
|
15
|
-
export declare const CONFIG_GROUP_LABELS: Record<ConfigFieldGroup, string>;
|
|
16
14
|
export declare const CONFIG_FIELDS: readonly ConfigField[];
|
|
17
15
|
export declare function getConfigField(key: ConfigPublicKey): ConfigField;
|
|
18
16
|
/** Valor para mostrar al lado del nombre. */
|