@swell/cli 2.0.1-alpha.9 → 2.0.2

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 (102) hide show
  1. package/dist/app-command.d.ts +1 -1
  2. package/dist/app-command.js +9 -9
  3. package/dist/commands/app/dev.d.ts +16 -0
  4. package/dist/commands/app/dev.js +28 -0
  5. package/dist/commands/app/frontend/deploy.d.ts +15 -0
  6. package/dist/commands/app/frontend/deploy.js +41 -0
  7. package/dist/commands/app/frontend/dev.d.ts +19 -0
  8. package/dist/commands/app/frontend/dev.js +108 -0
  9. package/dist/commands/app/info.js +14 -9
  10. package/dist/commands/app/init.d.ts +12 -0
  11. package/dist/commands/app/init.js +34 -0
  12. package/dist/commands/app/install.d.ts +4 -4
  13. package/dist/commands/app/install.js +36 -42
  14. package/dist/commands/app/pull.d.ts +15 -0
  15. package/dist/commands/app/pull.js +50 -0
  16. package/dist/commands/app/push.d.ts +11 -14
  17. package/dist/commands/app/push.js +64 -138
  18. package/dist/commands/app/release.d.ts +13 -0
  19. package/dist/commands/app/release.js +148 -0
  20. package/dist/commands/app/version.d.ts +5 -4
  21. package/dist/commands/app/version.js +63 -42
  22. package/dist/commands/app/watch.d.ts +2 -4
  23. package/dist/commands/app/watch.js +3 -83
  24. package/dist/commands/create/app.d.ts +35 -11
  25. package/dist/commands/create/app.js +143 -137
  26. package/dist/commands/create/content.d.ts +2 -2
  27. package/dist/commands/create/content.js +10 -10
  28. package/dist/commands/create/frontend.d.ts +12 -0
  29. package/dist/commands/create/frontend.js +38 -0
  30. package/dist/commands/create/function.d.ts +3 -3
  31. package/dist/commands/create/function.js +22 -22
  32. package/dist/commands/create/model.d.ts +2 -2
  33. package/dist/commands/create/model.js +11 -11
  34. package/dist/commands/create/notification.d.ts +4 -4
  35. package/dist/commands/create/notification.js +38 -40
  36. package/dist/commands/env.d.ts +12 -0
  37. package/dist/commands/env.js +31 -0
  38. package/dist/commands/login.d.ts +1 -1
  39. package/dist/commands/login.js +18 -24
  40. package/dist/commands/logs.js +0 -1
  41. package/dist/commands/theme/dev.d.ts +21 -0
  42. package/dist/commands/theme/dev.js +164 -0
  43. package/dist/commands/theme/init.d.ts +9 -0
  44. package/dist/commands/theme/init.js +15 -0
  45. package/dist/commands/theme/pull.d.ts +20 -0
  46. package/dist/commands/theme/pull.js +65 -0
  47. package/dist/commands/theme/push.d.ts +19 -0
  48. package/dist/commands/theme/push.js +89 -0
  49. package/dist/create-app-command.d.ts +20 -0
  50. package/dist/create-app-command.js +253 -0
  51. package/dist/create-collection-command.d.ts +9 -9
  52. package/dist/create-collection-command.js +23 -23
  53. package/dist/{create-command.d.ts → create-config-command.d.ts} +1 -1
  54. package/dist/{create-command.js → create-config-command.js} +7 -7
  55. package/dist/env/local.d.ts +8 -0
  56. package/dist/env/local.js +7 -0
  57. package/dist/env/production.d.ts +8 -0
  58. package/dist/env/production.js +7 -0
  59. package/dist/env/review.d.ts +8 -0
  60. package/dist/env/review.js +7 -0
  61. package/dist/env/staging.d.ts +8 -0
  62. package/dist/env/staging.js +7 -0
  63. package/dist/lib/api.d.ts +4 -2
  64. package/dist/lib/api.js +50 -21
  65. package/dist/lib/app-config.d.ts +13 -5
  66. package/dist/lib/app-config.js +62 -24
  67. package/dist/lib/apps/app-config.d.ts +17 -3
  68. package/dist/lib/apps/app-config.js +194 -66
  69. package/dist/lib/apps/index.d.ts +93 -12
  70. package/dist/lib/apps/index.js +155 -50
  71. package/dist/lib/apps/paths.d.ts +14 -7
  72. package/dist/lib/apps/paths.js +73 -28
  73. package/dist/lib/bundle.js +15 -3
  74. package/dist/lib/config.d.ts +9 -2
  75. package/dist/lib/config.js +49 -1
  76. package/dist/lib/constants.d.ts +5 -0
  77. package/dist/lib/constants.js +24 -6
  78. package/dist/lib/create/content.d.ts +2 -2
  79. package/dist/lib/create/content.js +1 -1
  80. package/dist/lib/create/function.d.ts +2 -2
  81. package/dist/lib/create/function.js +2 -2
  82. package/dist/lib/create/index.d.ts +1 -1
  83. package/dist/lib/create/index.js +11 -7
  84. package/dist/lib/create/model.d.ts +2 -2
  85. package/dist/lib/create/notification.d.ts +2 -2
  86. package/dist/lib/info.js +2 -2
  87. package/dist/lib/logs/index.js +1 -1
  88. package/dist/lib/sessions.js +2 -2
  89. package/dist/lib/stores.d.ts +9 -4
  90. package/dist/lib/stores.js +13 -8
  91. package/dist/lib/style.d.ts +2 -0
  92. package/dist/lib/style.js +2 -0
  93. package/dist/lib/swell-function-wrapper.d.ts +40 -1
  94. package/dist/lib/swell-function-wrapper.js +107 -22
  95. package/dist/push-app-command.d.ts +73 -0
  96. package/dist/push-app-command.js +743 -0
  97. package/dist/remote-app-command.d.ts +37 -11
  98. package/dist/remote-app-command.js +432 -169
  99. package/oclif.manifest.json +872 -123
  100. package/package.json +14 -1
  101. package/dist/commands/app/_pull.d.ts +0 -8
  102. package/dist/commands/app/_pull.js +0 -45
@@ -1,5 +1,38 @@
1
1
  {
2
2
  "commands": {
3
+ "env": {
4
+ "aliases": [],
5
+ "args": {
6
+ "name": {
7
+ "description": "name of the environment (production, staging, local, review)",
8
+ "name": "name"
9
+ },
10
+ "reviewBranch": {
11
+ "description": "name of a review branch",
12
+ "name": "reviewBranch"
13
+ }
14
+ },
15
+ "description": "Internal: Display the current environment configuration.",
16
+ "examples": [
17
+ "<%= config.bin %> <%= command.id %>"
18
+ ],
19
+ "flags": {},
20
+ "hasDynamicHelp": false,
21
+ "hidden": true,
22
+ "hiddenAliases": [],
23
+ "id": "env",
24
+ "pluginAlias": "@swell/cli",
25
+ "pluginName": "@swell/cli",
26
+ "pluginType": "core",
27
+ "strict": true,
28
+ "enableJsonFlag": false,
29
+ "isESM": true,
30
+ "relativePath": [
31
+ "dist",
32
+ "commands",
33
+ "env.js"
34
+ ]
35
+ },
3
36
  "login": {
4
37
  "aliases": [],
5
38
  "args": {},
@@ -8,6 +41,13 @@
8
41
  "<%= config.bin %> <%= command.id %>"
9
42
  ],
10
43
  "flags": {
44
+ "force": {
45
+ "char": "f",
46
+ "description": "show all available stores and switch the current session if needed",
47
+ "name": "force",
48
+ "allowNo": false,
49
+ "type": "boolean"
50
+ },
11
51
  "store": {
12
52
  "char": "s",
13
53
  "description": "store to login to",
@@ -15,13 +55,6 @@
15
55
  "hasDynamicHelp": false,
16
56
  "multiple": false,
17
57
  "type": "option"
18
- },
19
- "force": {
20
- "char": "f",
21
- "description": "show all available stores and switch the current session if needed",
22
- "name": "force",
23
- "allowNo": false,
24
- "type": "boolean"
25
58
  }
26
59
  },
27
60
  "hasDynamicHelp": false,
@@ -258,83 +291,111 @@
258
291
  "whoami.js"
259
292
  ]
260
293
  },
261
- "app:_pull": {
294
+ "app:_uninstall": {
262
295
  "aliases": [],
263
- "args": {
264
- "appId": {
265
- "description": "app id to pull",
266
- "name": "appId"
267
- }
268
- },
296
+ "args": {},
297
+ "description": "Uninstalls an existing App",
269
298
  "examples": [
270
299
  "<%= config.bin %> <%= command.id %>"
271
300
  ],
272
301
  "flags": {
273
302
  "app-path": {
274
- "description": "path to the app directory",
303
+ "description": "path to your app directory",
275
304
  "name": "app-path",
276
305
  "hasDynamicHelp": false,
277
306
  "multiple": false,
278
307
  "type": "option"
308
+ },
309
+ "env": {
310
+ "description": "environment to uninstall the app from",
311
+ "name": "env",
312
+ "default": "test",
313
+ "hasDynamicHelp": false,
314
+ "multiple": false,
315
+ "type": "option"
316
+ },
317
+ "store": {
318
+ "char": "s",
319
+ "description": "store id to uninstall the app from",
320
+ "name": "store",
321
+ "hasDynamicHelp": false,
322
+ "multiple": false,
323
+ "type": "option"
279
324
  }
280
325
  },
281
326
  "hasDynamicHelp": false,
282
327
  "hiddenAliases": [],
283
- "id": "app:_pull",
328
+ "id": "app:_uninstall",
284
329
  "pluginAlias": "@swell/cli",
285
330
  "pluginName": "@swell/cli",
286
331
  "pluginType": "core",
287
332
  "strict": true,
288
- "summary": "Pull app configuration from remote.",
289
333
  "enableJsonFlag": false,
334
+ "delayOrientation": false,
335
+ "orientation": {
336
+ "env": "test"
337
+ },
290
338
  "isESM": true,
291
339
  "relativePath": [
292
340
  "dist",
293
341
  "commands",
294
342
  "app",
295
- "_pull.js"
343
+ "_uninstall.js"
296
344
  ]
297
345
  },
298
- "app:_uninstall": {
346
+ "app:dev": {
299
347
  "aliases": [],
300
348
  "args": {},
301
- "description": "Uninstalls an existing App",
302
349
  "examples": [
303
- "<%= config.bin %> <%= command.id %>"
350
+ "swell app dev",
351
+ "swell app dev --storefront-id <id>",
352
+ "swell app dev --port 3000"
304
353
  ],
305
354
  "flags": {
306
355
  "app-path": {
307
- "description": "path to the app directory",
356
+ "description": "path to your app directory",
308
357
  "name": "app-path",
309
358
  "hasDynamicHelp": false,
310
359
  "multiple": false,
311
360
  "type": "option"
312
361
  },
313
- "env": {
314
- "description": "environment to uninstall the app from",
315
- "name": "env",
316
- "default": "test",
362
+ "no-push": {
363
+ "description": "skip pushing app files initially",
364
+ "name": "no-push",
365
+ "allowNo": false,
366
+ "type": "boolean"
367
+ },
368
+ "port": {
369
+ "char": "p",
370
+ "description": "override the default port to run the app locally",
371
+ "name": "port",
317
372
  "hasDynamicHelp": false,
318
373
  "multiple": false,
319
374
  "type": "option"
320
375
  },
321
- "store": {
322
- "char": "s",
323
- "description": "store id to uninstall the app from",
324
- "name": "store",
376
+ "storefront-id": {
377
+ "description": "for storefront apps, identify a storefront to preview and push theme files to",
378
+ "name": "storefront-id",
325
379
  "hasDynamicHelp": false,
326
380
  "multiple": false,
327
381
  "type": "option"
382
+ },
383
+ "storefront-select": {
384
+ "description": "for storefront apps, prompt to select a storefront to preview",
385
+ "name": "storefront-select",
386
+ "allowNo": false,
387
+ "type": "boolean"
328
388
  }
329
389
  },
330
390
  "hasDynamicHelp": false,
331
391
  "hiddenAliases": [],
332
- "id": "app:_uninstall",
392
+ "id": "app:dev",
333
393
  "pluginAlias": "@swell/cli",
334
394
  "pluginName": "@swell/cli",
335
395
  "pluginType": "core",
336
396
  "strict": true,
337
- "enableJsonFlag": false,
397
+ "summary": "Run an app in dev mode from your local machine.",
398
+ "delayOrientation": true,
338
399
  "orientation": {
339
400
  "env": "test"
340
401
  },
@@ -343,7 +404,7 @@
343
404
  "dist",
344
405
  "commands",
345
406
  "app",
346
- "_uninstall.js"
407
+ "dev.js"
347
408
  ]
348
409
  },
349
410
  "app:info": {
@@ -367,7 +428,7 @@
367
428
  ],
368
429
  "flags": {
369
430
  "app-path": {
370
- "description": "path to the app directory",
431
+ "description": "path to your app directory",
371
432
  "name": "app-path",
372
433
  "hasDynamicHelp": false,
373
434
  "multiple": false,
@@ -383,6 +444,7 @@
383
444
  "strict": true,
384
445
  "summary": "Show information about your Swell app.",
385
446
  "enableJsonFlag": false,
447
+ "delayOrientation": false,
386
448
  "isESM": true,
387
449
  "relativePath": [
388
450
  "dist",
@@ -391,18 +453,81 @@
391
453
  "info.js"
392
454
  ]
393
455
  },
456
+ "app:init": {
457
+ "aliases": [],
458
+ "args": {
459
+ "id": {
460
+ "default": "",
461
+ "description": "id of the app to create",
462
+ "name": "id"
463
+ }
464
+ },
465
+ "description": "Initialize app swell.json in the current directory.",
466
+ "examples": [
467
+ {
468
+ "command": "swell app init",
469
+ "description": "Initialize app following command prompts."
470
+ },
471
+ {
472
+ "command": "swell app init -y",
473
+ "description": "Initialize app and accept all default values."
474
+ }
475
+ ],
476
+ "flags": {
477
+ "frontend": {
478
+ "description": "create a starter framework for a hosted frontend",
479
+ "name": "frontend",
480
+ "hasDynamicHelp": false,
481
+ "multiple": false,
482
+ "options": [
483
+ "nextjs",
484
+ "astro"
485
+ ],
486
+ "type": "option"
487
+ },
488
+ "storefront-app": {
489
+ "description": "id of an installed storefront app to create a theme for, if applicable",
490
+ "name": "storefront-app",
491
+ "hasDynamicHelp": false,
492
+ "multiple": false,
493
+ "type": "option"
494
+ },
495
+ "yes": {
496
+ "char": "y",
497
+ "description": "accept all default values",
498
+ "name": "yes",
499
+ "allowNo": false,
500
+ "type": "boolean"
501
+ }
502
+ },
503
+ "hasDynamicHelp": false,
504
+ "hiddenAliases": [],
505
+ "id": "app:init",
506
+ "pluginAlias": "@swell/cli",
507
+ "pluginName": "@swell/cli",
508
+ "pluginType": "core",
509
+ "strict": true,
510
+ "enableJsonFlag": false,
511
+ "isESM": true,
512
+ "relativePath": [
513
+ "dist",
514
+ "commands",
515
+ "app",
516
+ "init.js"
517
+ ]
518
+ },
394
519
  "app:install": {
395
520
  "aliases": [],
396
521
  "args": {},
397
522
  "description": "Without a version specified, install the latest version of the app.\n\nWithout a store specified, install the app in the Live environment of the current store.",
398
523
  "examples": [
399
- "swell install",
400
- "swell install -v 3.2.7",
401
- "swell install -v 1.0.0 -s my-store-id"
524
+ "swell app install",
525
+ "swell app install -v 3.2.7",
526
+ "swell app install -v 1.0.0 -s my-store-id"
402
527
  ],
403
528
  "flags": {
404
529
  "app-path": {
405
- "description": "path to the app directory",
530
+ "description": "path to your app directory",
406
531
  "name": "app-path",
407
532
  "hasDynamicHelp": false,
408
533
  "multiple": false,
@@ -442,6 +567,10 @@
442
567
  "strict": true,
443
568
  "summary": "Install an existing app in another store environment.",
444
569
  "enableJsonFlag": false,
570
+ "delayOrientation": false,
571
+ "orientation": {
572
+ "env": "test"
573
+ },
445
574
  "isESM": true,
446
575
  "relativePath": [
447
576
  "dist",
@@ -450,35 +579,91 @@
450
579
  "install.js"
451
580
  ]
452
581
  },
453
- "app:push": {
582
+ "app:pull": {
454
583
  "aliases": [],
455
584
  "args": {
456
- "file": {
457
- "description": "relative path to a configuration file or directory to push",
458
- "name": "file"
585
+ "appId": {
586
+ "default": "",
587
+ "description": "app id to pull",
588
+ "name": "appId"
589
+ },
590
+ "targetPath": {
591
+ "default": "",
592
+ "description": "path to download app files into",
593
+ "name": "targetPath"
459
594
  }
460
595
  },
461
- "description": "Push all app configurations, a specific file, or a specific configuration\ntype to an app in your store's test environment. If the app does not exist yet,\nit will be created and its global ID saved to a .swellrc file.\n\n- If no file is specified, all configuration files will be pushed to the store.\n This includes the app icon (assets/icon.png) and swell.json.\n- If a file is specified, only that file will be pushed to the store.\n- If a directory is specified, only files in that directory will be pushed.\n\nApp configuration directories:\nassets/\ncontent/\nfunctions/\nmodels/\nnotifications/\nsettings/\nwebhooks/",
596
+ "description": "Pull all app files, a specific file, or a specific configuration\ntype from an app in your store's test environment to your local machine.\n\nIf APPID is not specified, you will be prompted with a list of apps to choose from.\n\nApp file directories:\nassets/\ncontent/\nfrontend/\nfunctions/\nmodels/\nnotifications/\nsettings/\ntheme/\nwebhooks/\nfrontend/",
462
597
  "examples": [
463
- "swell app push",
464
- "swell app push -f content",
465
- "swell app push -f models/products.json"
598
+ "swell app pull",
599
+ "swell app pull example_app",
600
+ "swell app pull example_app example-folder",
601
+ "swell app pull --force"
466
602
  ],
467
603
  "flags": {
468
604
  "app-path": {
469
- "description": "path to the app directory",
605
+ "description": "path to your app directory",
470
606
  "name": "app-path",
471
607
  "hasDynamicHelp": false,
472
608
  "multiple": false,
473
609
  "type": "option"
474
610
  },
611
+ "force": {
612
+ "description": "force pull all files",
613
+ "name": "force",
614
+ "allowNo": false,
615
+ "type": "boolean"
616
+ }
617
+ },
618
+ "hasDynamicHelp": false,
619
+ "hiddenAliases": [],
620
+ "id": "app:pull",
621
+ "pluginAlias": "@swell/cli",
622
+ "pluginName": "@swell/cli",
623
+ "pluginType": "core",
624
+ "strict": true,
625
+ "summary": "Pull app files from Swell to your local machine.",
626
+ "isESM": true,
627
+ "relativePath": [
628
+ "dist",
629
+ "commands",
630
+ "app",
631
+ "pull.js"
632
+ ]
633
+ },
634
+ "app:push": {
635
+ "aliases": [],
636
+ "args": {
475
637
  "file": {
476
- "char": "f",
477
638
  "description": "relative path to a configuration file or directory to push",
478
- "name": "file",
639
+ "name": "file"
640
+ }
641
+ },
642
+ "description": "Push all app files, a specific file, or a specific configuration\ntype to an app in your store's test environment.\n\nIf the app does not exist, it will be created and its global ID saved to a .swellrc file.\n\n- If no file is specified, all configuration files will be pushed to the store.\n This includes the app icon (assets/icon.png) and swell.json.\n- If a file is specified, only that file will be pushed to the store.\n- If a directory is specified, only files in that directory will be pushed.\n\nApp file directories:\nassets/\ncontent/\nfrontend/\nfunctions/\nmodels/\nnotifications/\nsettings/\ntheme/\nwebhooks/",
643
+ "examples": [
644
+ "swell app push",
645
+ "swell app push content",
646
+ "swell app push models/products.json"
647
+ ],
648
+ "flags": {
649
+ "app-path": {
650
+ "description": "path to your app directory",
651
+ "name": "app-path",
479
652
  "hasDynamicHelp": false,
480
653
  "multiple": false,
481
654
  "type": "option"
655
+ },
656
+ "force": {
657
+ "description": "force push all configurations",
658
+ "name": "force",
659
+ "allowNo": false,
660
+ "type": "boolean"
661
+ },
662
+ "no-deploy": {
663
+ "description": "skip deploying app frontend",
664
+ "name": "no-deploy",
665
+ "allowNo": false,
666
+ "type": "boolean"
482
667
  }
483
668
  },
484
669
  "hasDynamicHelp": false,
@@ -488,8 +673,8 @@
488
673
  "pluginName": "@swell/cli",
489
674
  "pluginType": "core",
490
675
  "strict": true,
491
- "summary": "Push configuration files to your Swell app.",
492
- "enableJsonFlag": false,
676
+ "summary": "Push local files to your Swell app.",
677
+ "delayOrientation": true,
493
678
  "orientation": {
494
679
  "env": "test"
495
680
  },
@@ -501,6 +686,78 @@
501
686
  "push.js"
502
687
  ]
503
688
  },
689
+ "app:release": {
690
+ "aliases": [],
691
+ "args": {
692
+ "version": {
693
+ "description": "semver version to release",
694
+ "name": "version"
695
+ }
696
+ },
697
+ "description": "App released are reviewed by the Swell team for quality and functionality before publishing.\n\nIf the version does not exist, you will be prompted to create it.\n\nUse the --amend flag to update the description or release notes of an existing release version.\n\nUse the --supported=false flag to indicate the version is not officially supported by the developer.\n \nThe app must be connected to a partner account with access to publish.",
698
+ "examples": [
699
+ "swell app release",
700
+ "swell app release 2.0.0",
701
+ "swell app release 2.0.0 --amend --release-notes ./releases/v2.0.0.md"
702
+ ],
703
+ "flags": {
704
+ "app-path": {
705
+ "description": "path to your app directory",
706
+ "name": "app-path",
707
+ "hasDynamicHelp": false,
708
+ "multiple": false,
709
+ "type": "option"
710
+ },
711
+ "amend": {
712
+ "description": "amend the description or release notes of an existing release",
713
+ "name": "amend",
714
+ "allowNo": false,
715
+ "type": "boolean"
716
+ },
717
+ "message": {
718
+ "char": "m",
719
+ "description": "description of the changes in this version for internal use",
720
+ "name": "message",
721
+ "hasDynamicHelp": false,
722
+ "multiple": false,
723
+ "type": "option"
724
+ },
725
+ "no-git-tag": {
726
+ "description": "if the version is being created, do not create a git tag",
727
+ "name": "no-git-tag",
728
+ "allowNo": false,
729
+ "type": "boolean"
730
+ },
731
+ "not-supported": {
732
+ "description": "indicates the version is not officially supported by the developer",
733
+ "name": "not-supported",
734
+ "allowNo": false,
735
+ "type": "boolean"
736
+ },
737
+ "release-notes": {
738
+ "description": "relative path to a file containing release notes",
739
+ "name": "release-notes",
740
+ "hasDynamicHelp": false,
741
+ "multiple": false,
742
+ "type": "option"
743
+ }
744
+ },
745
+ "hasDynamicHelp": false,
746
+ "hiddenAliases": [],
747
+ "id": "app:release",
748
+ "pluginAlias": "@swell/cli",
749
+ "pluginName": "@swell/cli",
750
+ "pluginType": "core",
751
+ "strict": true,
752
+ "summary": "Release a new version of your an app for publishing to the App Store.",
753
+ "isESM": true,
754
+ "relativePath": [
755
+ "dist",
756
+ "commands",
757
+ "app",
758
+ "release.js"
759
+ ]
760
+ },
504
761
  "app:version": {
505
762
  "aliases": [],
506
763
  "args": {
@@ -509,7 +766,7 @@
509
766
  "name": "nextVersion"
510
767
  }
511
768
  },
512
- "description": "When executed without specifying NEXTVERSION, the command will display the current\nversion of your app.\n\nIf a NEXTVERSION is provided, the command will validate and compute the version\naccording to Semver rules by only allowing incremental updates.\n\nThe version change will be committed to the Git repository using the provided\nmessage or a default similar to the tag, e.g. \"v1.0.1\".\n\nBy default, it creates a Git tag for the specified version. You can disable this\nbehavior by using the --git-tag=false option.",
769
+ "description": "When executed without specifying NEXTVERSION, the command will display the current\nversion of your app.\n\nIf a NEXTVERSION is provided, the command will validate and compute the version\naccording to Semver rules by only allowing incremental updates.\n\nThe version change will be committed to the Git repository using the provided\nmessage or a default similar to the tag, e.g. \"v1.0.1\".\n\nBy default, it creates a Git tag for the specified version. You can disable this\nbehavior by using the --no-git-tag option.",
513
770
  "examples": [
514
771
  "swell app version",
515
772
  "swell app version minor",
@@ -517,25 +774,31 @@
517
774
  ],
518
775
  "flags": {
519
776
  "app-path": {
520
- "description": "path to the app directory",
777
+ "description": "path to your app directory",
521
778
  "name": "app-path",
522
779
  "hasDynamicHelp": false,
523
780
  "multiple": false,
524
781
  "type": "option"
525
782
  },
526
- "git-tag": {
527
- "description": "create a git tag for this version (default true)",
528
- "name": "git-tag",
783
+ "amend": {
784
+ "description": "amend the description an existing version",
785
+ "name": "amend",
529
786
  "allowNo": false,
530
787
  "type": "boolean"
531
788
  },
532
789
  "message": {
533
790
  "char": "m",
534
- "description": "description of the changes in this version",
791
+ "description": "description of the changes in this version for internal use",
535
792
  "name": "message",
536
793
  "hasDynamicHelp": false,
537
794
  "multiple": false,
538
795
  "type": "option"
796
+ },
797
+ "no-git-tag": {
798
+ "description": "do not create a git tag for this version",
799
+ "name": "no-git-tag",
800
+ "allowNo": false,
801
+ "type": "boolean"
539
802
  }
540
803
  },
541
804
  "hasDynamicHelp": false,
@@ -546,7 +809,6 @@
546
809
  "pluginType": "core",
547
810
  "strict": true,
548
811
  "summary": "Increment the version of your Swell app.",
549
- "enableJsonFlag": false,
550
812
  "isESM": true,
551
813
  "relativePath": [
552
814
  "dist",
@@ -566,7 +828,7 @@
566
828
  ],
567
829
  "flags": {
568
830
  "app-path": {
569
- "description": "path to the app directory",
831
+ "description": "path to your app directory",
570
832
  "name": "app-path",
571
833
  "hasDynamicHelp": false,
572
834
  "multiple": false,
@@ -588,7 +850,6 @@
588
850
  "pluginType": "core",
589
851
  "strict": true,
590
852
  "summary": "Watch for changes and push app configurations.",
591
- "enableJsonFlag": false,
592
853
  "orientation": {
593
854
  "env": "test"
594
855
  },
@@ -609,7 +870,7 @@
609
870
  "name": "id"
610
871
  }
611
872
  },
612
- "description": "Initialize an app with config file and folder structure.",
873
+ "description": "Create an app.",
613
874
  "examples": [
614
875
  {
615
876
  "command": "swell create app",
@@ -629,26 +890,58 @@
629
890
  }
630
891
  ],
631
892
  "flags": {
632
- "pkg": {
633
- "char": "p",
634
- "description": "use npm or yarn to install default dependencies, or none to disable",
635
- "name": "pkg",
636
- "default": "npm",
893
+ "frontend": {
894
+ "description": "create a starter framework for a hosted frontend",
895
+ "name": "frontend",
637
896
  "hasDynamicHelp": false,
638
897
  "multiple": false,
639
898
  "options": [
640
- "npm",
641
- "yarn",
642
- "none"
899
+ "nextjs",
900
+ "astro"
643
901
  ],
644
902
  "type": "option"
645
903
  },
904
+ "storefront-app": {
905
+ "description": "id of an installed storefront app to create a theme for, if applicable",
906
+ "name": "storefront-app",
907
+ "hasDynamicHelp": false,
908
+ "multiple": false,
909
+ "type": "option"
910
+ },
646
911
  "yes": {
647
912
  "char": "y",
648
913
  "description": "accept all default values",
649
914
  "name": "yes",
650
915
  "allowNo": false,
651
916
  "type": "boolean"
917
+ },
918
+ "pkg": {
919
+ "char": "p",
920
+ "description": "use npm or yarn to install default dependencies, or none to disable",
921
+ "name": "pkg",
922
+ "default": "npm",
923
+ "hasDynamicHelp": false,
924
+ "multiple": false,
925
+ "options": [
926
+ "npm",
927
+ "yarn",
928
+ "none"
929
+ ],
930
+ "type": "option"
931
+ },
932
+ "type": {
933
+ "char": "t",
934
+ "description": "create a specific app type",
935
+ "name": "type",
936
+ "hasDynamicHelp": false,
937
+ "multiple": false,
938
+ "options": [
939
+ "admin",
940
+ "integration",
941
+ "storefront",
942
+ "theme"
943
+ ],
944
+ "type": "option"
652
945
  }
653
946
  },
654
947
  "hasDynamicHelp": false,
@@ -697,21 +990,12 @@
697
990
  ],
698
991
  "flags": {
699
992
  "app-path": {
700
- "description": "path to the app directory",
993
+ "description": "path to your app directory",
701
994
  "name": "app-path",
702
995
  "hasDynamicHelp": false,
703
996
  "multiple": false,
704
997
  "type": "option"
705
998
  },
706
- "label": {
707
- "char": "l",
708
- "description": "content model label",
709
- "name": "label",
710
- "default": "",
711
- "hasDynamicHelp": false,
712
- "multiple": false,
713
- "type": "option"
714
- },
715
999
  "description": {
716
1000
  "char": "d",
717
1001
  "description": "content model description",
@@ -730,10 +1014,10 @@
730
1014
  "multiple": false,
731
1015
  "type": "option"
732
1016
  },
733
- "views": {
734
- "char": "v",
735
- "description": "list of content model views delimited by commas, i.e. list,edit,new",
736
- "name": "views",
1017
+ "label": {
1018
+ "char": "l",
1019
+ "description": "content model label",
1020
+ "name": "label",
737
1021
  "default": "",
738
1022
  "hasDynamicHelp": false,
739
1023
  "multiple": false,
@@ -744,6 +1028,15 @@
744
1028
  "name": "overwrite",
745
1029
  "allowNo": false,
746
1030
  "type": "boolean"
1031
+ },
1032
+ "views": {
1033
+ "char": "v",
1034
+ "description": "list of content model views delimited by commas, i.e. list,edit,new",
1035
+ "name": "views",
1036
+ "default": "",
1037
+ "hasDynamicHelp": false,
1038
+ "multiple": false,
1039
+ "type": "option"
747
1040
  }
748
1041
  },
749
1042
  "hasDynamicHelp": false,
@@ -761,6 +1054,77 @@
761
1054
  "content.js"
762
1055
  ]
763
1056
  },
1057
+ "create:frontend": {
1058
+ "aliases": [],
1059
+ "args": {},
1060
+ "description": "Initialize a frontend app framework and folder structure.",
1061
+ "examples": [
1062
+ {
1063
+ "command": "swell create frontend",
1064
+ "description": "Create frontend app following command prompts."
1065
+ },
1066
+ {
1067
+ "command": "swell create frontend -y",
1068
+ "description": "Create frontend app and accept all default values."
1069
+ }
1070
+ ],
1071
+ "flags": {
1072
+ "frontend": {
1073
+ "description": "create a starter framework for a hosted frontend",
1074
+ "name": "frontend",
1075
+ "hasDynamicHelp": false,
1076
+ "multiple": false,
1077
+ "options": [
1078
+ "nextjs",
1079
+ "astro"
1080
+ ],
1081
+ "type": "option"
1082
+ },
1083
+ "storefront-app": {
1084
+ "description": "id of an installed storefront app to create a theme for, if applicable",
1085
+ "name": "storefront-app",
1086
+ "hasDynamicHelp": false,
1087
+ "multiple": false,
1088
+ "type": "option"
1089
+ },
1090
+ "yes": {
1091
+ "char": "y",
1092
+ "description": "accept all default values",
1093
+ "name": "yes",
1094
+ "allowNo": false,
1095
+ "type": "boolean"
1096
+ },
1097
+ "pkg": {
1098
+ "char": "p",
1099
+ "description": "use npm or yarn to install default dependencies, or none to disable",
1100
+ "name": "pkg",
1101
+ "default": "npm",
1102
+ "hasDynamicHelp": false,
1103
+ "multiple": false,
1104
+ "options": [
1105
+ "npm",
1106
+ "yarn",
1107
+ "none"
1108
+ ],
1109
+ "type": "option"
1110
+ }
1111
+ },
1112
+ "hasDynamicHelp": false,
1113
+ "hiddenAliases": [],
1114
+ "id": "create:frontend",
1115
+ "pluginAlias": "@swell/cli",
1116
+ "pluginName": "@swell/cli",
1117
+ "pluginType": "core",
1118
+ "strict": true,
1119
+ "enableJsonFlag": false,
1120
+ "isESM": true,
1121
+ "relativePath": [
1122
+ "dist",
1123
+ "commands",
1124
+ "create",
1125
+ "frontend.js"
1126
+ ]
1127
+ },
764
1128
  "create:function": {
765
1129
  "aliases": [],
766
1130
  "args": {
@@ -799,7 +1163,7 @@
799
1163
  ],
800
1164
  "flags": {
801
1165
  "app-path": {
802
- "description": "path to the app directory",
1166
+ "description": "path to your app directory",
803
1167
  "name": "app-path",
804
1168
  "hasDynamicHelp": false,
805
1169
  "multiple": false,
@@ -823,6 +1187,12 @@
823
1187
  "multiple": false,
824
1188
  "type": "option"
825
1189
  },
1190
+ "overwrite": {
1191
+ "description": "overwrite existing function file",
1192
+ "name": "overwrite",
1193
+ "allowNo": false,
1194
+ "type": "boolean"
1195
+ },
826
1196
  "route": {
827
1197
  "char": "r",
828
1198
  "description": "access type used with route trigger",
@@ -844,12 +1214,6 @@
844
1214
  "hasDynamicHelp": false,
845
1215
  "multiple": false,
846
1216
  "type": "option"
847
- },
848
- "overwrite": {
849
- "description": "overwrite existing function file",
850
- "name": "overwrite",
851
- "allowNo": false,
852
- "type": "boolean"
853
1217
  }
854
1218
  },
855
1219
  "hasDynamicHelp": false,
@@ -922,21 +1286,12 @@
922
1286
  ],
923
1287
  "flags": {
924
1288
  "app-path": {
925
- "description": "path to the app directory",
1289
+ "description": "path to your app directory",
926
1290
  "name": "app-path",
927
1291
  "hasDynamicHelp": false,
928
1292
  "multiple": false,
929
1293
  "type": "option"
930
1294
  },
931
- "label": {
932
- "char": "l",
933
- "description": "data model label, i.e. Products",
934
- "name": "label",
935
- "default": "",
936
- "hasDynamicHelp": false,
937
- "multiple": false,
938
- "type": "option"
939
- },
940
1295
  "description": {
941
1296
  "char": "d",
942
1297
  "description": "data model description",
@@ -946,6 +1301,15 @@
946
1301
  "multiple": false,
947
1302
  "type": "option"
948
1303
  },
1304
+ "events": {
1305
+ "char": "e",
1306
+ "description": "list of data model events delimited by commas",
1307
+ "name": "events",
1308
+ "default": "created,updated,deleted",
1309
+ "hasDynamicHelp": false,
1310
+ "multiple": false,
1311
+ "type": "option"
1312
+ },
949
1313
  "fields": {
950
1314
  "char": "f",
951
1315
  "description": "list of data model fields delimited by commas",
@@ -955,11 +1319,11 @@
955
1319
  "multiple": false,
956
1320
  "type": "option"
957
1321
  },
958
- "events": {
959
- "char": "e",
960
- "description": "list of data model events delimited by commas",
961
- "name": "events",
962
- "default": "created,updated,deleted",
1322
+ "label": {
1323
+ "char": "l",
1324
+ "description": "data model label, i.e. Products",
1325
+ "name": "label",
1326
+ "default": "",
963
1327
  "hasDynamicHelp": false,
964
1328
  "multiple": false,
965
1329
  "type": "option"
@@ -1015,12 +1379,19 @@
1015
1379
  ],
1016
1380
  "flags": {
1017
1381
  "app-path": {
1018
- "description": "path to the app directory",
1382
+ "description": "path to your app directory",
1019
1383
  "name": "app-path",
1020
1384
  "hasDynamicHelp": false,
1021
1385
  "multiple": false,
1022
1386
  "type": "option"
1023
1387
  },
1388
+ "admin": {
1389
+ "char": "a",
1390
+ "description": "indicate when the notification is sent to store admins only",
1391
+ "name": "admin",
1392
+ "allowNo": false,
1393
+ "type": "boolean"
1394
+ },
1024
1395
  "description": {
1025
1396
  "char": "d",
1026
1397
  "description": "notification description",
@@ -1030,15 +1401,6 @@
1030
1401
  "multiple": false,
1031
1402
  "type": "option"
1032
1403
  },
1033
- "subject": {
1034
- "char": "s",
1035
- "description": "notification email subject",
1036
- "name": "subject",
1037
- "default": "",
1038
- "hasDynamicHelp": false,
1039
- "multiple": false,
1040
- "type": "option"
1041
- },
1042
1404
  "event": {
1043
1405
  "char": "e",
1044
1406
  "description": "data model event to trigger the notification event, i.e. created",
@@ -1048,13 +1410,6 @@
1048
1410
  "multiple": false,
1049
1411
  "type": "option"
1050
1412
  },
1051
- "admin": {
1052
- "char": "a",
1053
- "description": "indicate when the notification is sent to store admins only",
1054
- "name": "admin",
1055
- "allowNo": false,
1056
- "type": "boolean"
1057
- },
1058
1413
  "once": {
1059
1414
  "char": "o",
1060
1415
  "description": "indicate the notification should be sent only once when conditions are met, instead of repeating",
@@ -1067,6 +1422,15 @@
1067
1422
  "name": "overwrite",
1068
1423
  "allowNo": false,
1069
1424
  "type": "boolean"
1425
+ },
1426
+ "subject": {
1427
+ "char": "s",
1428
+ "description": "notification email subject",
1429
+ "name": "subject",
1430
+ "default": "",
1431
+ "hasDynamicHelp": false,
1432
+ "multiple": false,
1433
+ "type": "option"
1070
1434
  }
1071
1435
  },
1072
1436
  "hasDynamicHelp": false,
@@ -1084,7 +1448,392 @@
1084
1448
  "create",
1085
1449
  "notification.js"
1086
1450
  ]
1451
+ },
1452
+ "theme:dev": {
1453
+ "aliases": [],
1454
+ "args": {},
1455
+ "examples": [
1456
+ "swell theme dev",
1457
+ "swell theme dev --local",
1458
+ "swell theme dev --bundle",
1459
+ "swell theme dev --storefront-select",
1460
+ "swell theme dev --storefront-id <id>"
1461
+ ],
1462
+ "flags": {
1463
+ "app-path": {
1464
+ "description": "path to your app directory",
1465
+ "name": "app-path",
1466
+ "hasDynamicHelp": false,
1467
+ "multiple": false,
1468
+ "type": "option"
1469
+ },
1470
+ "bundle": {
1471
+ "description": "bundle assets",
1472
+ "name": "bundle",
1473
+ "allowNo": false,
1474
+ "type": "boolean"
1475
+ },
1476
+ "local": {
1477
+ "description": "connect to a running local storefront app dev server",
1478
+ "name": "local",
1479
+ "allowNo": false,
1480
+ "type": "boolean"
1481
+ },
1482
+ "no-push": {
1483
+ "description": "skip pushing theme files initially",
1484
+ "name": "no-push",
1485
+ "allowNo": false,
1486
+ "type": "boolean"
1487
+ },
1488
+ "storefront-id": {
1489
+ "description": "identify a storefront to preview and push theme files to",
1490
+ "name": "storefront-id",
1491
+ "hasDynamicHelp": false,
1492
+ "multiple": false,
1493
+ "type": "option"
1494
+ },
1495
+ "storefront-select": {
1496
+ "description": "prompt to select a storefront to preview and push theme files to",
1497
+ "name": "storefront-select",
1498
+ "allowNo": false,
1499
+ "type": "boolean"
1500
+ }
1501
+ },
1502
+ "hasDynamicHelp": false,
1503
+ "hiddenAliases": [],
1504
+ "id": "theme:dev",
1505
+ "pluginAlias": "@swell/cli",
1506
+ "pluginName": "@swell/cli",
1507
+ "pluginType": "core",
1508
+ "strict": true,
1509
+ "summary": "Run a theme in dev mode from your local machine.",
1510
+ "orientation": {
1511
+ "env": "test"
1512
+ },
1513
+ "isESM": true,
1514
+ "relativePath": [
1515
+ "dist",
1516
+ "commands",
1517
+ "theme",
1518
+ "dev.js"
1519
+ ]
1520
+ },
1521
+ "theme:init": {
1522
+ "aliases": [],
1523
+ "args": {
1524
+ "id": {
1525
+ "default": "",
1526
+ "description": "id of the app to create",
1527
+ "name": "id"
1528
+ }
1529
+ },
1530
+ "description": "Initialize theme swell.json in the current directory.",
1531
+ "examples": [
1532
+ {
1533
+ "command": "swell theme init",
1534
+ "description": "Initialize theme following command prompts."
1535
+ },
1536
+ {
1537
+ "command": "swell theme init -y",
1538
+ "description": "Initialize theme and accept all default values."
1539
+ }
1540
+ ],
1541
+ "flags": {
1542
+ "frontend": {
1543
+ "description": "create a starter framework for a hosted frontend",
1544
+ "name": "frontend",
1545
+ "hasDynamicHelp": false,
1546
+ "multiple": false,
1547
+ "options": [
1548
+ "nextjs",
1549
+ "astro"
1550
+ ],
1551
+ "type": "option"
1552
+ },
1553
+ "storefront-app": {
1554
+ "description": "id of an installed storefront app to create a theme for, if applicable",
1555
+ "name": "storefront-app",
1556
+ "hasDynamicHelp": false,
1557
+ "multiple": false,
1558
+ "type": "option"
1559
+ },
1560
+ "yes": {
1561
+ "char": "y",
1562
+ "description": "accept all default values",
1563
+ "name": "yes",
1564
+ "allowNo": false,
1565
+ "type": "boolean"
1566
+ }
1567
+ },
1568
+ "hasDynamicHelp": false,
1569
+ "hiddenAliases": [],
1570
+ "id": "theme:init",
1571
+ "pluginAlias": "@swell/cli",
1572
+ "pluginName": "@swell/cli",
1573
+ "pluginType": "core",
1574
+ "strict": true,
1575
+ "enableJsonFlag": false,
1576
+ "isESM": true,
1577
+ "relativePath": [
1578
+ "dist",
1579
+ "commands",
1580
+ "theme",
1581
+ "init.js"
1582
+ ]
1583
+ },
1584
+ "theme:pull": {
1585
+ "aliases": [],
1586
+ "args": {
1587
+ "appId": {
1588
+ "default": "",
1589
+ "description": "theme app id to pull",
1590
+ "name": "appId"
1591
+ },
1592
+ "targetPath": {
1593
+ "default": "",
1594
+ "description": "path to download theme files into",
1595
+ "name": "targetPath"
1596
+ }
1597
+ },
1598
+ "description": "Pull all theme files, a specific file, or a specific configuration\ntype from a theme in your store's test environment to your local machine.\n\nIf APPID is not specified, you will be prompted with a list of themes to choose from.\n\nTheme file directories:\nassets/\ntheme/",
1599
+ "examples": [
1600
+ "swell theme pull",
1601
+ "swell theme pull mytheme",
1602
+ "swell theme pull mytheme mytheme-folder",
1603
+ "swell theme pull --force",
1604
+ "swell theme pull --storefront-select",
1605
+ "swell theme pull --storefront-id <id>"
1606
+ ],
1607
+ "flags": {
1608
+ "force": {
1609
+ "description": "force pull all theme files",
1610
+ "name": "force",
1611
+ "allowNo": false,
1612
+ "type": "boolean"
1613
+ },
1614
+ "storefront-id": {
1615
+ "description": "identify a storefront to pull theme files from",
1616
+ "name": "storefront-id",
1617
+ "hasDynamicHelp": false,
1618
+ "multiple": false,
1619
+ "type": "option"
1620
+ },
1621
+ "storefront-select": {
1622
+ "description": "prompt to select a storefront to pull theme files to",
1623
+ "name": "storefront-select",
1624
+ "allowNo": false,
1625
+ "type": "boolean"
1626
+ },
1627
+ "sync-app": {
1628
+ "description": "pull app files in addition to theme files to",
1629
+ "name": "sync-app",
1630
+ "allowNo": false,
1631
+ "type": "boolean"
1632
+ }
1633
+ },
1634
+ "hasDynamicHelp": false,
1635
+ "hiddenAliases": [],
1636
+ "id": "theme:pull",
1637
+ "pluginAlias": "@swell/cli",
1638
+ "pluginName": "@swell/cli",
1639
+ "pluginType": "core",
1640
+ "summary": "Pull theme files from Swell to your local machine.",
1641
+ "isESM": true,
1642
+ "relativePath": [
1643
+ "dist",
1644
+ "commands",
1645
+ "theme",
1646
+ "pull.js"
1647
+ ],
1648
+ "delayOrientation": true,
1649
+ "orientation": {}
1650
+ },
1651
+ "theme:push": {
1652
+ "aliases": [],
1653
+ "args": {
1654
+ "file": {
1655
+ "description": "relative path to a configuration file or directory to push",
1656
+ "name": "file"
1657
+ }
1658
+ },
1659
+ "description": "Push all theme files, a specific file, or a specific configuration\ntype to an theme in your store's test environment.\n\nIf the theme does not exist, it will be created and its global ID saved to a .swellrc file.\n\n- If no file is specified, all configuration files will be pushed to the store.\n This includes the theme icon (assets/icon.png) and swell.json.\n- If a file is specified, only that file will be pushed to the store.\n- If a directory is specified, only files in that directory will be pushed.\n\nTheme file directories:\nassets/\ntheme/",
1660
+ "examples": [
1661
+ "swell theme push",
1662
+ "swell theme push assets",
1663
+ "swell theme push theme/sections",
1664
+ "swell theme push --sync-app",
1665
+ "swell theme push --force",
1666
+ "swell theme push --storefront-select",
1667
+ "swell theme push --storefront-id <id>"
1668
+ ],
1669
+ "flags": {
1670
+ "force": {
1671
+ "description": "force push all files",
1672
+ "name": "force",
1673
+ "allowNo": false,
1674
+ "type": "boolean"
1675
+ },
1676
+ "storefront-id": {
1677
+ "description": "identify a storefront to push theme files to",
1678
+ "name": "storefront-id",
1679
+ "hasDynamicHelp": false,
1680
+ "multiple": false,
1681
+ "type": "option"
1682
+ },
1683
+ "storefront-select": {
1684
+ "description": "prompt to select a storefront to push theme files to",
1685
+ "name": "storefront-select",
1686
+ "allowNo": false,
1687
+ "type": "boolean"
1688
+ },
1689
+ "sync-app": {
1690
+ "description": "push app files in addition to theme files",
1691
+ "name": "sync-app",
1692
+ "allowNo": false,
1693
+ "type": "boolean"
1694
+ }
1695
+ },
1696
+ "hasDynamicHelp": false,
1697
+ "hiddenAliases": [],
1698
+ "id": "theme:push",
1699
+ "pluginAlias": "@swell/cli",
1700
+ "pluginName": "@swell/cli",
1701
+ "pluginType": "core",
1702
+ "summary": "Push local files to your Swell theme.",
1703
+ "delayOrientation": true,
1704
+ "orientation": {},
1705
+ "isESM": true,
1706
+ "relativePath": [
1707
+ "dist",
1708
+ "commands",
1709
+ "theme",
1710
+ "push.js"
1711
+ ]
1712
+ },
1713
+ "app:frontend:deploy": {
1714
+ "aliases": [],
1715
+ "args": {},
1716
+ "description": "Creates a new build using the relevant command depending on your frontend framework.\nOnce the build succeeds, this command will invoke Cloudflare Wrangler to upload\nbuild assets using your own Cloudflare account. Once complete, Swell will update\nthe app's deployment URL and push the updated frontend files.",
1717
+ "examples": [
1718
+ "swell app frontend deploy",
1719
+ "swell app frontend deploy --force",
1720
+ "swell app frontend deploy --storefront-select",
1721
+ "swell app frontend deploy --storefront-id <id>"
1722
+ ],
1723
+ "flags": {
1724
+ "app-path": {
1725
+ "description": "path to your app directory",
1726
+ "name": "app-path",
1727
+ "hasDynamicHelp": false,
1728
+ "multiple": false,
1729
+ "type": "option"
1730
+ },
1731
+ "force": {
1732
+ "description": "force push and build all frontend files",
1733
+ "name": "force",
1734
+ "allowNo": false,
1735
+ "type": "boolean"
1736
+ },
1737
+ "storefront-id": {
1738
+ "description": "identify a storefront to preview deployment with",
1739
+ "name": "storefront-id",
1740
+ "hasDynamicHelp": false,
1741
+ "multiple": false,
1742
+ "type": "option"
1743
+ },
1744
+ "storefront-select": {
1745
+ "description": "prompt to select a storefront to preview deployment with",
1746
+ "name": "storefront-select",
1747
+ "allowNo": false,
1748
+ "type": "boolean"
1749
+ }
1750
+ },
1751
+ "hasDynamicHelp": false,
1752
+ "hiddenAliases": [],
1753
+ "id": "app:frontend:deploy",
1754
+ "pluginAlias": "@swell/cli",
1755
+ "pluginName": "@swell/cli",
1756
+ "pluginType": "core",
1757
+ "strict": true,
1758
+ "summary": "Push frontend files to your Swell app.",
1759
+ "orientation": {
1760
+ "env": "test"
1761
+ },
1762
+ "isESM": true,
1763
+ "relativePath": [
1764
+ "dist",
1765
+ "commands",
1766
+ "app",
1767
+ "frontend",
1768
+ "deploy.js"
1769
+ ]
1770
+ },
1771
+ "app:frontend:dev": {
1772
+ "aliases": [],
1773
+ "args": {},
1774
+ "examples": [
1775
+ "swell app frontend dev",
1776
+ "swell app frontend dev --no-push",
1777
+ "swell app frontend dev --port 3000",
1778
+ "swell app frontend dev --storefront-select",
1779
+ "swell app frontend dev --storefront-id <id>"
1780
+ ],
1781
+ "flags": {
1782
+ "app-path": {
1783
+ "description": "path to your app directory",
1784
+ "name": "app-path",
1785
+ "hasDynamicHelp": false,
1786
+ "multiple": false,
1787
+ "type": "option"
1788
+ },
1789
+ "no-push": {
1790
+ "description": "skip pushing app files initially",
1791
+ "name": "no-push",
1792
+ "allowNo": false,
1793
+ "type": "boolean"
1794
+ },
1795
+ "port": {
1796
+ "char": "p",
1797
+ "description": "override the default port to run the app locally",
1798
+ "name": "port",
1799
+ "hasDynamicHelp": false,
1800
+ "multiple": false,
1801
+ "type": "option"
1802
+ },
1803
+ "storefront-id": {
1804
+ "description": "identify a storefront to preview with and push theme files to",
1805
+ "name": "storefront-id",
1806
+ "hasDynamicHelp": false,
1807
+ "multiple": false,
1808
+ "type": "option"
1809
+ },
1810
+ "storefront-select": {
1811
+ "description": "prompt to select a storefront to preview with",
1812
+ "name": "storefront-select",
1813
+ "allowNo": false,
1814
+ "type": "boolean"
1815
+ }
1816
+ },
1817
+ "hasDynamicHelp": false,
1818
+ "hiddenAliases": [],
1819
+ "id": "app:frontend:dev",
1820
+ "pluginAlias": "@swell/cli",
1821
+ "pluginName": "@swell/cli",
1822
+ "pluginType": "core",
1823
+ "strict": true,
1824
+ "summary": "Run a frontend app in dev mode from your local machine.",
1825
+ "orientation": {
1826
+ "env": "test"
1827
+ },
1828
+ "isESM": true,
1829
+ "relativePath": [
1830
+ "dist",
1831
+ "commands",
1832
+ "app",
1833
+ "frontend",
1834
+ "dev.js"
1835
+ ]
1087
1836
  }
1088
1837
  },
1089
- "version": "2.0.1-alpha.9"
1838
+ "version": "2.0.2"
1090
1839
  }