@factucat/cli 0.2.4 → 0.2.6

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/README.md CHANGED
@@ -40,6 +40,13 @@ First generate an API key in FactuCat:
40
40
 
41
41
  The full token is only shown once after creation.
42
42
 
43
+ Keys select the API environment automatically (same as the SDK):
44
+
45
+ - `fc_test_…` → `https://sandbox.factucat.com`
46
+ - `fc_live_…` (and other prefixes) → `https://factucat.com`
47
+
48
+ Override only when needed with `FACTUCAT_BASE_URL` or a `baseUrl` in the CLI config.
49
+
43
50
  Then save it locally:
44
51
 
45
52
  ```bash
package/dist/bin.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=bin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":""}
package/dist/bin.js ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ import { main } from './index.js';
3
+ void main();
4
+ //# sourceMappingURL=bin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEjC,KAAK,IAAI,EAAE,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,9 @@
1
- #!/usr/bin/env node
2
- export {};
1
+ import { getSdk } from './lib/sdk.js';
2
+ export declare function readRawOptionValue(argv: Array<string>, optionName: string): string | undefined;
3
+ export declare function normalizeNumericCodeOptionFromArgv(argv: Array<string>, optionName: string, fallbackValue: unknown, width: number): string | undefined;
4
+ export declare function resolveInvoiceReference(input: {
5
+ sdk: Awaited<ReturnType<typeof getSdk>>;
6
+ invoiceRef: string;
7
+ }): Promise<string>;
8
+ export declare function main(rawArgv?: Array<string>): Promise<void>;
3
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAwMrC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,sBAsBzE;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EACnB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,OAAO,EACtB,KAAK,EAAE,MAAM,sBAMd;AAuDD,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAA;IACvC,UAAU,EAAE,MAAM,CAAA;CACnB,mBA0EA;AAqZD,wBAAsB,IAAI,CAAC,OAAO,GAAE,KAAK,CAAC,MAAM,CAAgB,iBA+2B/D"}
package/dist/index.js CHANGED
@@ -1,14 +1,26 @@
1
- #!/usr/bin/env node
2
1
  import { randomUUID } from 'node:crypto';
2
+ import { readFileSync } from 'node:fs';
3
3
  import { mkdir, stat, writeFile } from 'node:fs/promises';
4
4
  import { dirname, resolve } from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
5
6
  import { confirm, intro, isCancel, outro, select, spinner, text } from '@clack/prompts';
6
7
  import { cac } from 'cac';
7
- import { readConfig, writeConfig } from './lib/config.js';
8
+ import { FactuCatApiError } from '@factucat/sdk';
9
+ import { getEffectiveApiKey, readConfig, resolveApiOrigin, writeConfig, } from './lib/config.js';
8
10
  import { getCurrentDraftId, setCurrentDraftId } from './lib/current-draft.js';
9
11
  import { exitCodeFromError, getErrorMessage } from './lib/errors.js';
10
12
  import { printHuman, printJson } from './lib/output.js';
11
13
  import { getSdk } from './lib/sdk.js';
14
+ const CLI_VERSION = (() => {
15
+ try {
16
+ const packageJsonPath = resolve(dirname(fileURLToPath(import.meta.url)), '..', 'package.json');
17
+ const pkg = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
18
+ return typeof pkg.version === 'string' ? pkg.version : '0.0.0';
19
+ }
20
+ catch {
21
+ return '0.0.0';
22
+ }
23
+ })();
12
24
  const HELP_TEXT = `factucat
13
25
 
14
26
  Uso:
@@ -33,7 +45,7 @@ Comandos:
33
45
  invoice items
34
46
  invoice discard
35
47
  invoice stamp
36
- invoice get <invoiceRef>
48
+ invoice get <invoiceRef> # invoiceId, UUID SAT o folio
37
49
  invoice download xml <invoiceRef>
38
50
  invoice download pdf <invoiceRef>
39
51
  customer list
@@ -139,6 +151,27 @@ function normalizeNumericCodeOption(value, width) {
139
151
  }
140
152
  return /^\d+$/.test(normalized) ? normalized.padStart(width, '0') : normalized;
141
153
  }
154
+ export function readRawOptionValue(argv, optionName) {
155
+ let lastValue;
156
+ for (let index = 3; index < argv.length; index += 1) {
157
+ const token = argv[index];
158
+ if (token === '--') {
159
+ break;
160
+ }
161
+ if (token === optionName) {
162
+ lastValue = argv[index + 1];
163
+ index += 1;
164
+ continue;
165
+ }
166
+ if (token.startsWith(`${optionName}=`)) {
167
+ lastValue = token.slice(optionName.length + 1);
168
+ }
169
+ }
170
+ return lastValue;
171
+ }
172
+ export function normalizeNumericCodeOptionFromArgv(argv, optionName, fallbackValue, width) {
173
+ return normalizeNumericCodeOption(readRawOptionValue(argv, optionName) ?? fallbackValue, width);
174
+ }
142
175
  function canPromptInteractively(options) {
143
176
  return !options.json && !options.noInput && process.stdin.isTTY && process.stdout.isTTY;
144
177
  }
@@ -173,13 +206,43 @@ async function saveDownloadedArtifact(input) {
173
206
  function isUuidLike(value) {
174
207
  return /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value.trim());
175
208
  }
176
- async function resolveInvoiceReference(input) {
209
+ export async function resolveInvoiceReference(input) {
177
210
  const normalizedRef = input.invoiceRef.trim();
178
211
  if (!normalizedRef) {
179
- throw new Error('Debes indicar un folio o invoiceId válido.');
212
+ throw new Error('Debes indicar un invoiceId, UUID SAT o folio válido.');
180
213
  }
181
214
  if (isUuidLike(normalizedRef)) {
182
- return normalizedRef;
215
+ try {
216
+ const invoice = await input.sdk.getInvoice(normalizedRef);
217
+ return invoice.id;
218
+ }
219
+ catch (error) {
220
+ if (!(error instanceof FactuCatApiError) ||
221
+ (error.code !== 'not_found' && error.status !== 404)) {
222
+ throw error;
223
+ }
224
+ }
225
+ // UUID-like but not an invoiceId: resolve as satUuid via list + detail.
226
+ const target = normalizedRef.toLowerCase();
227
+ const limit = 50;
228
+ let offset = 0;
229
+ for (let page = 0; page < 10; page += 1) {
230
+ const invoices = await input.sdk.listInvoices({ limit, offset });
231
+ if (invoices.length === 0) {
232
+ break;
233
+ }
234
+ for (const item of invoices) {
235
+ const invoice = await input.sdk.getInvoice(item.id);
236
+ if (invoice.satUuid?.trim().toLowerCase() === target) {
237
+ return invoice.id;
238
+ }
239
+ }
240
+ if (invoices.length < limit) {
241
+ break;
242
+ }
243
+ offset += limit;
244
+ }
245
+ throw new Error(`No encontré una factura con el invoiceId o UUID SAT \`${normalizedRef}\`.`);
183
246
  }
184
247
  const invoices = await input.sdk.listInvoices({
185
248
  query: normalizedRef,
@@ -194,7 +257,7 @@ async function resolveInvoiceReference(input) {
194
257
  return exactMatches[0].id;
195
258
  }
196
259
  if (exactMatches.length > 1) {
197
- throw new Error(`Hay varias facturas con el folio \`${normalizedRef}\`. Usa el UUID de la factura para desambiguar.`);
260
+ throw new Error(`Hay varias facturas con el folio \`${normalizedRef}\`. Usa el invoiceId o UUID SAT para desambiguar.`);
198
261
  }
199
262
  throw new Error(`No encontré una factura con el folio o invoiceId \`${normalizedRef}\`.`);
200
263
  }
@@ -289,6 +352,7 @@ function formatDraftPreview(draft) {
289
352
  'Comprobante:',
290
353
  formatOptionalValue(' Tipo CFDI', draft.cfdiType),
291
354
  formatOptionalValue(' Uso CFDI', draft.cfdiUse),
355
+ formatOptionalValue(' Exportación', draft.exportacion),
292
356
  formatOptionalValue(' Método de pago', draft.paymentMethod),
293
357
  formatOptionalValue(' Forma de pago', draft.paymentForm),
294
358
  formatOptionalValue(' Moneda', draft.currency),
@@ -449,18 +513,18 @@ function parseVatFlag(value) {
449
513
  const normalized = value.trim();
450
514
  const parsed = Number(normalized);
451
515
  if (Number.isNaN(parsed)) {
452
- throw new Error('IVA inválido. Usa 0, 10 o 16.');
516
+ throw new Error('IVA inválido. Usa 0, 8 o 16.');
453
517
  }
454
- if (parsed === 0 || parsed === 0.1 || parsed === 0.16) {
518
+ if (parsed === 0 || parsed === 0.08 || parsed === 0.16) {
455
519
  return parsed;
456
520
  }
457
- if (parsed === 10) {
458
- return 0.1;
521
+ if (parsed === 8) {
522
+ return 0.08;
459
523
  }
460
524
  if (parsed === 16) {
461
525
  return 0.16;
462
526
  }
463
- throw new Error('IVA inválido. Usa 0, 10 o 16.');
527
+ throw new Error('IVA inválido. Usa 0, 8 o 16.');
464
528
  }
465
529
  function parseIsrWithholdingFlag(value) {
466
530
  const normalized = value.trim();
@@ -479,19 +543,22 @@ function parseIsrWithholdingFlag(value) {
479
543
  }
480
544
  throw new Error('ISR retenido inválido. Usa 0, 1.25 o 10.');
481
545
  }
482
- async function main() {
483
- const { argv, showHelp } = normalizeArgv(process.argv);
546
+ export async function main(rawArgv = process.argv) {
547
+ const { argv, showHelp } = normalizeArgv(rawArgv);
484
548
  if (showHelp) {
485
549
  printHuman(HELP_TEXT.trim().split('\n'));
486
550
  return;
487
551
  }
488
552
  const cli = cac('factucat');
553
+ cli.version(CLI_VERSION);
489
554
  cli
490
555
  .command('auth-api-key-set', 'Guardar API key')
491
556
  .option('--value <apiKey>', 'API key a guardar')
492
557
  .action(async (options) => {
493
- const stdinValue = await readStdinValue();
494
- let value = options.value?.trim() || stdinValue;
558
+ const valueFromFlag = options.value?.trim();
559
+ // Skip stdin when --value is set so agents/CI with open non-TTY stdin do not hang.
560
+ const stdinValue = valueFromFlag ? undefined : await readStdinValue();
561
+ let value = valueFromFlag || stdinValue;
495
562
  if (!value) {
496
563
  if (!process.stdin.isTTY || !process.stdout.isTTY) {
497
564
  throw new Error('No se detectó terminal interactiva. Usa `--value <apiKey>` o envía la API key por stdin.');
@@ -537,14 +604,31 @@ async function main() {
537
604
  outro('API key eliminada.');
538
605
  });
539
606
  withJsonFlag(cli.command('auth-status', 'Validar autenticación')).action(async (options) => {
607
+ const config = await readConfig();
608
+ const apiKey = getEffectiveApiKey(config);
609
+ if (!apiKey) {
610
+ throw new Error('No hay API key configurada. Usa `factucat auth api-key set` o FACTUCAT_API_KEY.');
611
+ }
612
+ const origin = resolveApiOrigin({ apiKey, config });
540
613
  const sdk = await getSdk();
541
614
  const me = await sdk.getMe();
542
615
  if (options.json) {
543
- printJson(me);
616
+ printJson({
617
+ ...me,
618
+ baseUrl: origin.baseUrl,
619
+ environment: origin.source,
620
+ });
544
621
  return;
545
622
  }
623
+ const environmentLabel = origin.source === 'sandbox'
624
+ ? 'sandbox'
625
+ : origin.source === 'production'
626
+ ? 'producción'
627
+ : `override (${origin.baseUrl})`;
546
628
  printHuman([
547
629
  'Autenticación correcta.',
630
+ `Entorno: ${environmentLabel}`,
631
+ `Base URL: ${origin.baseUrl}`,
548
632
  `Actor: ${me.actorType}`,
549
633
  `Owner user: ${getOwnerUserLabel(me)}`,
550
634
  `Scopes: ${me.scopes.join(', ')}`,
@@ -658,8 +742,8 @@ async function main() {
658
742
  const input = {
659
743
  receiverRfc: normalizeStringOption(options.rfc),
660
744
  receiverLegalName: normalizeStringOption(options.legalName),
661
- receiverPostalCode: normalizeNumericCodeOption(options.postalCode, 5),
662
- receiverTaxRegime: normalizeNumericCodeOption(options.taxRegime, 3),
745
+ receiverPostalCode: normalizeNumericCodeOptionFromArgv(argv, '--postal-code', options.postalCode, 5),
746
+ receiverTaxRegime: normalizeNumericCodeOptionFromArgv(argv, '--tax-regime', options.taxRegime, 3),
663
747
  receiverEmail: normalizeStringOption(options.email),
664
748
  };
665
749
  const draft = await sdk.setDraftReceiver(draftId, input, {
@@ -675,6 +759,7 @@ async function main() {
675
759
  .command('invoice-set-meta', 'Actualizar metadatos del borrador. Si usas USD sin --exchange-rate, se consulta automáticamente el DOF.')
676
760
  .option('--draft-id <draftId>', 'ID del borrador')
677
761
  .option('--cfdi-use <cfdiUse>', 'Uso CFDI')
762
+ .option('--exportacion <exportacion>', 'Clave SAT c_Exportacion: 01, 02, 03 o 04')
678
763
  .option('--payment-method <paymentMethod>', 'Método de pago')
679
764
  .option('--payment-form <paymentForm>', 'Forma de pago')
680
765
  .option('--currency <currency>', 'Moneda')
@@ -685,8 +770,9 @@ async function main() {
685
770
  const draftId = await resolveDraftId(options.draftId);
686
771
  const input = {
687
772
  cfdiUse: normalizeStringOption(options.cfdiUse),
773
+ exportacion: normalizeNumericCodeOptionFromArgv(argv, '--exportacion', options.exportacion, 2),
688
774
  paymentMethod: normalizeStringOption(options.paymentMethod),
689
- paymentForm: normalizeNumericCodeOption(options.paymentForm, 2),
775
+ paymentForm: normalizeNumericCodeOptionFromArgv(argv, '--payment-form', options.paymentForm, 2),
690
776
  currency: normalizeStringOption(options.currency),
691
777
  exchangeRate: options.exchangeRate === undefined ? undefined : Number(options.exchangeRate),
692
778
  vatRate: options.vatRate === undefined
@@ -920,7 +1006,7 @@ async function main() {
920
1006
  }),
921
1007
  ]);
922
1008
  });
923
- withJsonFlag(cli.command('invoice-get <invoiceRef>', 'Obtener factura por UUID o folio')).action(async (invoiceRef, options) => {
1009
+ withJsonFlag(cli.command('invoice-get <invoiceRef>', 'Obtener factura por invoiceId, UUID SAT o folio')).action(async (invoiceRef, options) => {
924
1010
  const sdk = await getSdk();
925
1011
  const invoiceId = await resolveInvoiceReference({ sdk, invoiceRef });
926
1012
  const invoice = await sdk.getInvoice(invoiceId);
@@ -935,7 +1021,7 @@ async function main() {
935
1021
  `Total: ${invoice.total} ${invoice.currency}`,
936
1022
  ]);
937
1023
  });
938
- withJsonFlag(cli.command('invoice-download-xml <invoiceRef>', 'Descargar XML timbrado por UUID o folio').option('--output <path>', 'Ruta destino. Puede ser archivo o carpeta. Si lo omites, se guarda en el directorio actual.')).action(async (invoiceRef, options) => {
1024
+ withJsonFlag(cli.command('invoice-download-xml <invoiceRef>', 'Descargar XML timbrado por invoiceId, UUID SAT o folio').option('--output <path>', 'Ruta destino. Puede ser archivo o carpeta. Si lo omites, se guarda en el directorio actual.')).action(async (invoiceRef, options) => {
939
1025
  const sdk = await getSdk();
940
1026
  const invoiceId = await resolveInvoiceReference({ sdk, invoiceRef });
941
1027
  const xml = await sdk.downloadInvoiceXml(invoiceId);
@@ -950,7 +1036,7 @@ async function main() {
950
1036
  });
951
1037
  printHuman([`Archivo guardado en: ${savedPath}`, xml.mimeType]);
952
1038
  });
953
- withJsonFlag(cli.command('invoice-download-pdf <invoiceRef>', 'Descargar PDF timbrado por UUID o folio').option('--output <path>', 'Ruta destino. Puede ser archivo o carpeta. Si lo omites, se guarda en el directorio actual.')).action(async (invoiceRef, options) => {
1039
+ withJsonFlag(cli.command('invoice-download-pdf <invoiceRef>', 'Descargar PDF timbrado por invoiceId, UUID SAT o folio').option('--output <path>', 'Ruta destino. Puede ser archivo o carpeta. Si lo omites, se guarda en el directorio actual.')).action(async (invoiceRef, options) => {
954
1040
  const sdk = await getSdk();
955
1041
  const invoiceId = await resolveInvoiceReference({ sdk, invoiceRef });
956
1042
  const pdf = await sdk.downloadInvoicePdf(invoiceId);
@@ -1006,8 +1092,8 @@ async function main() {
1006
1092
  const input = {
1007
1093
  legalName: String(options.legalName),
1008
1094
  rfc: String(options.rfc),
1009
- postalCode: normalizeNumericCodeOption(options.postalCode, 5) ?? '',
1010
- taxRegime: normalizeNumericCodeOption(options.taxRegime, 3) ?? '',
1095
+ postalCode: normalizeNumericCodeOptionFromArgv(argv, '--postal-code', options.postalCode, 5) ?? '',
1096
+ taxRegime: normalizeNumericCodeOptionFromArgv(argv, '--tax-regime', options.taxRegime, 3) ?? '',
1011
1097
  email: normalizeStringOption(options.email),
1012
1098
  whatsappPhone: normalizeStringOption(options.whatsappPhone),
1013
1099
  currency: normalizeStringOption(options.currency) ?? 'MXN',
@@ -1042,5 +1128,4 @@ async function main() {
1042
1128
  process.exitCode = exitCodeFromError(error);
1043
1129
  }
1044
1130
  }
1045
- void main();
1046
1131
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,26 @@ export type CliConfig = {
3
3
  baseUrl?: string;
4
4
  currentDraftId?: string;
5
5
  };
6
- export declare function getDefaultBaseUrl(): string;
6
+ /**
7
+ * Explicit API origin override (env or config). When unset, the SDK selects
8
+ * sandbox/prod from the API key prefix (`fc_test_` → sandbox, else prod).
9
+ */
10
+ export declare function getExplicitBaseUrl(config?: CliConfig): string | undefined;
11
+ /** @deprecated Prefer getExplicitBaseUrl; kept for callers that only need env. */
12
+ export declare function getDefaultBaseUrl(): string | undefined;
13
+ export declare function resolveApiOrigin(input: {
14
+ apiKey: string;
15
+ config?: CliConfig;
16
+ }): {
17
+ baseUrl: string;
18
+ source: "explicit";
19
+ } | {
20
+ baseUrl: string;
21
+ source: "sandbox";
22
+ } | {
23
+ baseUrl: string;
24
+ source: "production";
25
+ };
7
26
  export declare function readConfig(): Promise<CliConfig>;
8
27
  export declare function writeConfig(config: CliConfig): Promise<void>;
9
28
  export declare function clearConfig(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAQD,wBAAgB,iBAAiB,WAEhC;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAOrD;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,SAAS,iBAGlD;AAED,wBAAsB,WAAW,kBAEhC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,sBAEnD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAQD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,GAAE,SAAc,sBAYxD;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,uBAEhC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB;;;;;;;;;EAiBA;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAOrD;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,SAAS,iBAGlD;AAED,wBAAsB,WAAW,kBAEhC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,sBAEnD"}
@@ -3,8 +3,40 @@ import os from 'node:os';
3
3
  import path from 'node:path';
4
4
  const CONFIG_DIR = path.join(process.env.XDG_CONFIG_HOME ?? path.join(os.homedir(), '.config'), 'factucat');
5
5
  const CONFIG_PATH = path.join(CONFIG_DIR, 'config.json');
6
+ /**
7
+ * Explicit API origin override (env or config). When unset, the SDK selects
8
+ * sandbox/prod from the API key prefix (`fc_test_` → sandbox, else prod).
9
+ */
10
+ export function getExplicitBaseUrl(config = {}) {
11
+ const fromEnv = process.env.FACTUCAT_BASE_URL?.trim();
12
+ if (fromEnv) {
13
+ return fromEnv.replace(/\/+$/, '');
14
+ }
15
+ const fromConfig = config.baseUrl?.trim();
16
+ if (fromConfig) {
17
+ return fromConfig.replace(/\/+$/, '');
18
+ }
19
+ return undefined;
20
+ }
21
+ /** @deprecated Prefer getExplicitBaseUrl; kept for callers that only need env. */
6
22
  export function getDefaultBaseUrl() {
7
- return process.env.FACTUCAT_BASE_URL ?? 'https://factucat.com';
23
+ return getExplicitBaseUrl();
24
+ }
25
+ export function resolveApiOrigin(input) {
26
+ const explicit = getExplicitBaseUrl(input.config ?? {});
27
+ if (explicit) {
28
+ return { baseUrl: explicit, source: 'explicit' };
29
+ }
30
+ if (input.apiKey.startsWith('fc_test_')) {
31
+ return {
32
+ baseUrl: 'https://sandbox.factucat.com',
33
+ source: 'sandbox',
34
+ };
35
+ }
36
+ return {
37
+ baseUrl: 'https://factucat.com',
38
+ source: 'production',
39
+ };
8
40
  }
9
41
  export async function readConfig() {
10
42
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAQ5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,EACjE,UAAU,CACX,CAAA;AACD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;AAExD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,sBAAsB,CAAA;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAA;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAiB;IACjD,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5C,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAA;AACtD,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAQ5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,EACjE,UAAU,CACX,CAAA;AACD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;AAExD;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAoB,EAAE;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAA;IACrD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,CAAA;IACzC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,iBAAiB;IAC/B,OAAO,kBAAkB,EAAE,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAGhC;IACC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IACvD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAmB,EAAE,CAAA;IAC3D,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,8BAA8B;YACvC,MAAM,EAAE,SAAkB;SAC3B,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,sBAAsB;QAC/B,MAAM,EAAE,YAAqB;KAC9B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAA;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAiB;IACjD,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5C,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAA;AACtD,CAAC"}
@@ -1,3 +1,3 @@
1
- export declare function exitCodeFromError(error: unknown): 2 | 3 | 4 | 1;
1
+ export declare function exitCodeFromError(error: unknown): 2 | 3 | 4 | 5 | 1;
2
2
  export declare function getErrorMessage(error: unknown): string;
3
3
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAEA,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,iBAmB/C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,UAM7C"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAEA,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,qBAsB/C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,UA2B7C"}
@@ -10,6 +10,9 @@ export function exitCodeFromError(error) {
10
10
  if (error.code === 'validation_error' || error.code === 'bad_request') {
11
11
  return 4;
12
12
  }
13
+ if (error.code === 'plan_required') {
14
+ return 5;
15
+ }
13
16
  return 1;
14
17
  }
15
18
  if (error instanceof FactuCatNetworkError) {
@@ -18,6 +21,21 @@ export function exitCodeFromError(error) {
18
21
  return 1;
19
22
  }
20
23
  export function getErrorMessage(error) {
24
+ if (error instanceof FactuCatApiError) {
25
+ if (error.code === 'plan_required') {
26
+ const base = error.message ||
27
+ 'Tu plan actual no incluye la API pública de FactuCat.';
28
+ const upgrade = 'Actualiza a un plan con API (Miau Pro o plan API) desde Suscripción en la configuración de FactuCat: https://factucat.com/settings/subscription';
29
+ const requestId = error.requestId && error.requestId !== 'unknown'
30
+ ? ` (requestId: ${error.requestId})`
31
+ : '';
32
+ return `${base} ${upgrade}${requestId}`;
33
+ }
34
+ if (error.requestId && error.requestId !== 'unknown') {
35
+ return `${error.message} (requestId: ${error.requestId})`;
36
+ }
37
+ return error.message;
38
+ }
21
39
  if (error instanceof Error) {
22
40
  return error.message;
23
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEtE,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACzE,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACtE,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAA;IACtB,CAAC;IAED,OAAO,8BAA8B,CAAA;AACvC,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEtE,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACzE,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACtE,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,MAAM,IAAI,GACR,KAAK,CAAC,OAAO;gBACb,uDAAuD,CAAA;YACzD,MAAM,OAAO,GACX,iJAAiJ,CAAA;YACnJ,MAAM,SAAS,GACb,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;gBAC9C,CAAC,CAAC,gBAAgB,KAAK,CAAC,SAAS,GAAG;gBACpC,CAAC,CAAC,EAAE,CAAA;YACR,OAAO,GAAG,IAAI,IAAI,OAAO,GAAG,SAAS,EAAE,CAAA;QACzC,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACrD,OAAO,GAAG,KAAK,CAAC,OAAO,gBAAgB,KAAK,CAAC,SAAS,GAAG,CAAA;QAC3D,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,CAAA;IACtB,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAA;IACtB,CAAC;IAED,OAAO,8BAA8B,CAAA;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"AAGA,wBAAsB,MAAM,iDAe3B"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"AAOA,wBAAsB,MAAM,iDAiB3B"}
package/dist/lib/sdk.js CHANGED
@@ -1,13 +1,14 @@
1
1
  import { createFactuCatSdk } from '@factucat/sdk';
2
- import { getDefaultBaseUrl, getEffectiveApiKey, readConfig } from './config.js';
2
+ import { getEffectiveApiKey, getExplicitBaseUrl, readConfig, } from './config.js';
3
3
  export async function getSdk() {
4
4
  const config = await readConfig();
5
5
  const apiKey = getEffectiveApiKey(config);
6
6
  if (!apiKey) {
7
7
  throw new Error('No hay API key configurada. Usa `factucat auth api-key set` o FACTUCAT_API_KEY.');
8
8
  }
9
+ const explicitBaseUrl = getExplicitBaseUrl(config);
9
10
  return createFactuCatSdk({
10
- baseUrl: config.baseUrl ?? getDefaultBaseUrl(),
11
+ ...(explicitBaseUrl ? { baseUrl: explicitBaseUrl } : {}),
11
12
  apiKey,
12
13
  userAgent: '@factucat/cli',
13
14
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE/E,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;IACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAA;IACH,CAAC;IAED,OAAO,iBAAiB,CAAC;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,iBAAiB,EAAE;QAC9C,MAAM;QACN,SAAS,EAAE,eAAe;KAC3B,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,GACX,MAAM,aAAa,CAAA;AAEpB,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;IACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAA;IACH,CAAC;IAED,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAElD,OAAO,iBAAiB,CAAC;QACvB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM;QACN,SAAS,EAAE,eAAe;KAC3B,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@factucat/cli",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "private": false,
5
5
  "description": "CLI for Mexican CFDI 4.0 invoicing with FactuCat Cloud",
6
6
  "type": "module",
@@ -16,12 +16,12 @@
16
16
  ],
17
17
  "repository": {
18
18
  "type": "git",
19
- "url": "git+https://github.com/ocruzv/factucat.git",
19
+ "url": "git+https://github.com/factucat/factucat.git",
20
20
  "directory": "packages/cli"
21
21
  },
22
- "homepage": "https://github.com/ocruzv/factucat/tree/main/packages/cli",
22
+ "homepage": "https://github.com/factucat/factucat/tree/main/packages/cli",
23
23
  "bugs": {
24
- "url": "https://github.com/ocruzv/factucat/issues"
24
+ "url": "https://github.com/factucat/factucat/issues"
25
25
  },
26
26
  "publishConfig": {
27
27
  "access": "public"
@@ -30,7 +30,7 @@
30
30
  "dist"
31
31
  ],
32
32
  "bin": {
33
- "factucat": "./dist/index.js"
33
+ "factucat": "./dist/bin.js"
34
34
  },
35
35
  "main": "./dist/index.js",
36
36
  "types": "./dist/index.d.ts",
@@ -46,12 +46,13 @@
46
46
  "dependencies": {
47
47
  "@clack/prompts": "^1.1.0",
48
48
  "cac": "^7.0.0",
49
- "@factucat/public-api-contracts": "0.2.1",
50
- "@factucat/sdk": "0.2.2"
49
+ "@factucat/public-api-contracts": "0.3.0",
50
+ "@factucat/sdk": "0.3.0"
51
51
  },
52
52
  "scripts": {
53
53
  "build": "tsc -p tsconfig.build.json",
54
- "lint": "eslint \"src/**/*.ts\" --ignore-pattern \"src/**/*.d.ts\"",
55
- "factucat": "tsx src/index.ts"
54
+ "lint": "eslint \"src/**/*.ts\" --ignore-pattern \"src/**/*.d.ts\" --ignore-pattern \"src/**/*.test.ts\"",
55
+ "factucat": "tsx src/bin.ts",
56
+ "test": "vitest run"
56
57
  }
57
58
  }