@mailmodo/cli 0.0.42 → 0.0.43

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.
@@ -113,7 +113,7 @@ export default class Contacts extends BaseCommand {
113
113
  this.log(`\n Export status: ${status ?? 'unknown'}. No download URL yet.\n`);
114
114
  return;
115
115
  }
116
- const fileResult = await this.apiClient.getPublicFile(downloadUrl.trim());
116
+ const fileResult = await this.withApiSpinner({ json: jsonOutput, text: ' Downloading CSV file...' }, () => this.apiClient.getPublicFile(downloadUrl.trim()));
117
117
  if (!fileResult.ok) {
118
118
  this.error(`Download failed: ${fileResult.status} ${fileResult.error ?? ''}\n` +
119
119
  ` URL: ${fileResult.debug.fullUrl}`);
@@ -261,7 +261,7 @@ export default class Settings extends BaseCommand {
261
261
  const mimeType = mimeTypes[ext ?? ''] ?? 'application/octet-stream';
262
262
  const formData = new FormData();
263
263
  formData.append('logo', new Blob([new Uint8Array(fileBuffer)], { type: mimeType }), logoPath.split(/[/\\]/).pop() || 'logo.png');
264
- const response = await this.apiClient.postFormData(API_ENDPOINTS.ASSETS_LOGO, formData);
264
+ const response = await this.withApiSpinner({ json: false, text: ' Uploading logo file...' }, () => this.apiClient.postFormData(API_ENDPOINTS.ASSETS_LOGO, formData));
265
265
  if (!response.ok) {
266
266
  this.handleApiError(response);
267
267
  }
@@ -280,45 +280,6 @@
280
280
  "index.js"
281
281
  ]
282
282
  },
283
- "emails": {
284
- "aliases": [],
285
- "args": {},
286
- "description": "List and view configured email sequences",
287
- "examples": [
288
- "<%= config.bin %> emails",
289
- "<%= config.bin %> emails --json"
290
- ],
291
- "flags": {
292
- "json": {
293
- "description": "Output as JSON",
294
- "name": "json",
295
- "allowNo": false,
296
- "type": "boolean"
297
- },
298
- "yes": {
299
- "char": "y",
300
- "description": "Skip confirmation prompts",
301
- "name": "yes",
302
- "allowNo": false,
303
- "type": "boolean"
304
- }
305
- },
306
- "hasDynamicHelp": false,
307
- "hiddenAliases": [],
308
- "id": "emails",
309
- "pluginAlias": "@mailmodo/cli",
310
- "pluginName": "@mailmodo/cli",
311
- "pluginType": "core",
312
- "strict": true,
313
- "enableJsonFlag": false,
314
- "isESM": true,
315
- "relativePath": [
316
- "dist",
317
- "commands",
318
- "emails",
319
- "index.js"
320
- ]
321
- },
322
283
  "init": {
323
284
  "aliases": [],
324
285
  "args": {},
@@ -365,13 +326,13 @@
365
326
  "index.js"
366
327
  ]
367
328
  },
368
- "login": {
329
+ "emails": {
369
330
  "aliases": [],
370
331
  "args": {},
371
- "description": "Authenticate with Mailmodo using your API key",
332
+ "description": "List and view configured email sequences",
372
333
  "examples": [
373
- "<%= config.bin %> login",
374
- "MAILMODO_API_KEY=YOUR_API_KEY <%= config.bin %> login"
334
+ "<%= config.bin %> emails",
335
+ "<%= config.bin %> emails --json"
375
336
  ],
376
337
  "flags": {
377
338
  "json": {
@@ -390,7 +351,7 @@
390
351
  },
391
352
  "hasDynamicHelp": false,
392
353
  "hiddenAliases": [],
393
- "id": "login",
354
+ "id": "emails",
394
355
  "pluginAlias": "@mailmodo/cli",
395
356
  "pluginName": "@mailmodo/cli",
396
357
  "pluginType": "core",
@@ -400,16 +361,17 @@
400
361
  "relativePath": [
401
362
  "dist",
402
363
  "commands",
403
- "login",
364
+ "emails",
404
365
  "index.js"
405
366
  ]
406
367
  },
407
- "logout": {
368
+ "login": {
408
369
  "aliases": [],
409
370
  "args": {},
410
- "description": "Sign out by removing saved credentials from this machine",
371
+ "description": "Authenticate with Mailmodo using your API key",
411
372
  "examples": [
412
- "<%= config.bin %> logout"
373
+ "<%= config.bin %> login",
374
+ "MAILMODO_API_KEY=YOUR_API_KEY <%= config.bin %> login"
413
375
  ],
414
376
  "flags": {
415
377
  "json": {
@@ -428,7 +390,7 @@
428
390
  },
429
391
  "hasDynamicHelp": false,
430
392
  "hiddenAliases": [],
431
- "id": "logout",
393
+ "id": "login",
432
394
  "pluginAlias": "@mailmodo/cli",
433
395
  "pluginName": "@mailmodo/cli",
434
396
  "pluginType": "core",
@@ -438,7 +400,7 @@
438
400
  "relativePath": [
439
401
  "dist",
440
402
  "commands",
441
- "logout",
403
+ "login",
442
404
  "index.js"
443
405
  ]
444
406
  },
@@ -512,14 +474,12 @@
512
474
  "index.js"
513
475
  ]
514
476
  },
515
- "settings": {
477
+ "logout": {
516
478
  "aliases": [],
517
479
  "args": {},
518
- "description": "View and update project settings",
480
+ "description": "Sign out by removing saved credentials from this machine",
519
481
  "examples": [
520
- "<%= config.bin %> settings",
521
- "<%= config.bin %> settings --set brand_color=#0F3460",
522
- "<%= config.bin %> settings --json"
482
+ "<%= config.bin %> logout"
523
483
  ],
524
484
  "flags": {
525
485
  "json": {
@@ -534,18 +494,11 @@
534
494
  "name": "yes",
535
495
  "allowNo": false,
536
496
  "type": "boolean"
537
- },
538
- "set": {
539
- "description": "Set a setting (format: key=value)",
540
- "name": "set",
541
- "hasDynamicHelp": false,
542
- "multiple": false,
543
- "type": "option"
544
497
  }
545
498
  },
546
499
  "hasDynamicHelp": false,
547
500
  "hiddenAliases": [],
548
- "id": "settings",
501
+ "id": "logout",
549
502
  "pluginAlias": "@mailmodo/cli",
550
503
  "pluginName": "@mailmodo/cli",
551
504
  "pluginType": "core",
@@ -555,17 +508,23 @@
555
508
  "relativePath": [
556
509
  "dist",
557
510
  "commands",
558
- "settings",
511
+ "logout",
559
512
  "index.js"
560
513
  ]
561
514
  },
562
- "status": {
515
+ "preview": {
563
516
  "aliases": [],
564
- "args": {},
565
- "description": "View email performance metrics and quota usage",
517
+ "args": {
518
+ "id": {
519
+ "description": "Email template ID to preview",
520
+ "name": "id"
521
+ }
522
+ },
523
+ "description": "Preview an email in browser, as text, or send a test",
566
524
  "examples": [
567
- "<%= config.bin %> status",
568
- "<%= config.bin %> status --json"
525
+ "<%= config.bin %> preview welcome",
526
+ "<%= config.bin %> preview welcome --text",
527
+ "<%= config.bin %> preview welcome --send me@example.com"
569
528
  ],
570
529
  "flags": {
571
530
  "json": {
@@ -580,11 +539,24 @@
580
539
  "name": "yes",
581
540
  "allowNo": false,
582
541
  "type": "boolean"
542
+ },
543
+ "send": {
544
+ "description": "Send test email to this address",
545
+ "name": "send",
546
+ "hasDynamicHelp": false,
547
+ "multiple": false,
548
+ "type": "option"
549
+ },
550
+ "text": {
551
+ "description": "Output plain text version (for AI agents)",
552
+ "name": "text",
553
+ "allowNo": false,
554
+ "type": "boolean"
583
555
  }
584
556
  },
585
557
  "hasDynamicHelp": false,
586
558
  "hiddenAliases": [],
587
- "id": "status",
559
+ "id": "preview",
588
560
  "pluginAlias": "@mailmodo/cli",
589
561
  "pluginName": "@mailmodo/cli",
590
562
  "pluginType": "core",
@@ -594,23 +566,18 @@
594
566
  "relativePath": [
595
567
  "dist",
596
568
  "commands",
597
- "status",
569
+ "preview",
598
570
  "index.js"
599
571
  ]
600
572
  },
601
- "preview": {
573
+ "settings": {
602
574
  "aliases": [],
603
- "args": {
604
- "id": {
605
- "description": "Email template ID to preview",
606
- "name": "id"
607
- }
608
- },
609
- "description": "Preview an email in browser, as text, or send a test",
575
+ "args": {},
576
+ "description": "View and update project settings",
610
577
  "examples": [
611
- "<%= config.bin %> preview welcome",
612
- "<%= config.bin %> preview welcome --text",
613
- "<%= config.bin %> preview welcome --send me@example.com"
578
+ "<%= config.bin %> settings",
579
+ "<%= config.bin %> settings --set brand_color=#0F3460",
580
+ "<%= config.bin %> settings --json"
614
581
  ],
615
582
  "flags": {
616
583
  "json": {
@@ -626,23 +593,56 @@
626
593
  "allowNo": false,
627
594
  "type": "boolean"
628
595
  },
629
- "send": {
630
- "description": "Send test email to this address",
631
- "name": "send",
596
+ "set": {
597
+ "description": "Set a setting (format: key=value)",
598
+ "name": "set",
632
599
  "hasDynamicHelp": false,
633
600
  "multiple": false,
634
601
  "type": "option"
602
+ }
603
+ },
604
+ "hasDynamicHelp": false,
605
+ "hiddenAliases": [],
606
+ "id": "settings",
607
+ "pluginAlias": "@mailmodo/cli",
608
+ "pluginName": "@mailmodo/cli",
609
+ "pluginType": "core",
610
+ "strict": true,
611
+ "enableJsonFlag": false,
612
+ "isESM": true,
613
+ "relativePath": [
614
+ "dist",
615
+ "commands",
616
+ "settings",
617
+ "index.js"
618
+ ]
619
+ },
620
+ "status": {
621
+ "aliases": [],
622
+ "args": {},
623
+ "description": "View email performance metrics and quota usage",
624
+ "examples": [
625
+ "<%= config.bin %> status",
626
+ "<%= config.bin %> status --json"
627
+ ],
628
+ "flags": {
629
+ "json": {
630
+ "description": "Output as JSON",
631
+ "name": "json",
632
+ "allowNo": false,
633
+ "type": "boolean"
635
634
  },
636
- "text": {
637
- "description": "Output plain text version (for AI agents)",
638
- "name": "text",
635
+ "yes": {
636
+ "char": "y",
637
+ "description": "Skip confirmation prompts",
638
+ "name": "yes",
639
639
  "allowNo": false,
640
640
  "type": "boolean"
641
641
  }
642
642
  },
643
643
  "hasDynamicHelp": false,
644
644
  "hiddenAliases": [],
645
- "id": "preview",
645
+ "id": "status",
646
646
  "pluginAlias": "@mailmodo/cli",
647
647
  "pluginName": "@mailmodo/cli",
648
648
  "pluginType": "core",
@@ -652,10 +652,10 @@
652
652
  "relativePath": [
653
653
  "dist",
654
654
  "commands",
655
- "preview",
655
+ "status",
656
656
  "index.js"
657
657
  ]
658
658
  }
659
659
  },
660
- "version": "0.0.42"
660
+ "version": "0.0.43"
661
661
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mailmodo/cli",
3
3
  "description": "Email lifecycle automation for the AI-native builder generation.",
4
- "version": "0.0.42",
4
+ "version": "0.0.43",
5
5
  "author": "provishalk",
6
6
  "bin": {
7
7
  "mailmodo": "bin/run.js"