@shopify/cli 3.76.2 → 3.77.1

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 (112) hide show
  1. package/dist/assets/hydrogen/bundle/analyzer.html +21 -17
  2. package/dist/assets/hydrogen/starter/CHANGELOG.md +116 -36
  3. package/dist/assets/hydrogen/starter/app/layout.tsx +46 -0
  4. package/dist/assets/hydrogen/starter/app/root.tsx +1 -42
  5. package/dist/assets/hydrogen/starter/app/routes/search.tsx +4 -3
  6. package/dist/assets/hydrogen/starter/app/routes.ts +7 -0
  7. package/dist/assets/hydrogen/starter/package.json +17 -15
  8. package/dist/assets/hydrogen/starter/tsconfig.json +1 -1
  9. package/dist/assets/hydrogen/starter/vite.config.ts +2 -1
  10. package/dist/assets/hydrogen/tailwind/package.json +1 -1
  11. package/dist/assets/hydrogen/vanilla-extract/package.json +2 -2
  12. package/dist/assets/hydrogen/virtual-routes/assets/debug-network.css +27 -10
  13. package/dist/assets/hydrogen/virtual-routes/assets/styles.css +13 -2
  14. package/dist/assets/hydrogen/virtual-routes/layout.jsx +39 -0
  15. package/dist/assets/hydrogen/virtual-routes/virtual-root-with-layout.jsx +63 -0
  16. package/dist/assets/hydrogen/virtual-routes/virtual-root.jsx +10 -8
  17. package/dist/assets/hydrogen/vite/package.json +1 -1
  18. package/dist/assets/hydrogen/vite/vite.config.js +1 -0
  19. package/dist/{chunk-SROPQDQ2.js → chunk-3LPRAP3C.js} +4 -4
  20. package/dist/{chunk-TYXJ553W.js → chunk-4QUBSR5N.js} +2 -2
  21. package/dist/{chunk-ZUCWDIGE.js → chunk-57Q6OQG4.js} +2 -2
  22. package/dist/{chunk-AZ3SNZKH.js → chunk-5Y3LMFTE.js} +3 -3
  23. package/dist/{chunk-2WTNMSEA.js → chunk-7N6KTS5H.js} +3 -3
  24. package/dist/{chunk-BJXULBKX.js → chunk-7TDJWEEF.js} +143 -28
  25. package/dist/{chunk-3UYXKXR6.js → chunk-7Z57GKMD.js} +21 -8
  26. package/dist/{chunk-IKXB6S5W.js → chunk-CYZVSCKE.js} +2 -2
  27. package/dist/{chunk-SO2JXJNK.js → chunk-DE23IXCV.js} +7 -7
  28. package/dist/{chunk-WFJKWPG7.js → chunk-DXETR7HO.js} +4 -4
  29. package/dist/{chunk-DZC6PFFO.js → chunk-F7YDVUG6.js} +2 -2
  30. package/dist/{chunk-7ZRFR7FA.js → chunk-FGOKII2H.js} +7 -7
  31. package/dist/{chunk-J64C3R6H.js → chunk-G2Z2JNWZ.js} +3 -3
  32. package/dist/{chunk-DTR7ATW4.js → chunk-HL6ZWA6P.js} +3 -3
  33. package/dist/{chunk-CBRJA5VT.js → chunk-IDLVFDLS.js} +4 -4
  34. package/dist/{chunk-EPUCFUDR.js → chunk-J2TFYL5Z.js} +3 -3
  35. package/dist/{chunk-OSETU22I.js → chunk-JA44NPON.js} +3 -3
  36. package/dist/{chunk-WYLW7KVV.js → chunk-KMLSEENO.js} +3 -3
  37. package/dist/{chunk-3DV6EZ24.js → chunk-KRRCKFNF.js} +7 -7
  38. package/dist/{chunk-VXUNILLD.js → chunk-LGVMVIUY.js} +6 -3
  39. package/dist/{chunk-LLYJXSNC.js → chunk-MJ5E3G6Z.js} +3 -3
  40. package/dist/{chunk-MIAZDAJI.js → chunk-NKPXKN63.js} +2 -2
  41. package/dist/{chunk-XAK5UQFR.js → chunk-NMVJRPWT.js} +2 -2
  42. package/dist/{chunk-J4VMFBCX.js → chunk-ODZP3BOI.js} +3 -3
  43. package/dist/{chunk-WOA7JN7E.js → chunk-OZYTPWJS.js} +12 -8
  44. package/dist/{chunk-6RHYOJ63.js → chunk-PFXZ73LI.js} +5 -5
  45. package/dist/{chunk-KTICPCDH.js → chunk-RXPX6QL6.js} +4 -4
  46. package/dist/{chunk-PNWJ2GZC.js → chunk-THDGA4UF.js} +5 -5
  47. package/dist/{chunk-AHNHLXEN.js → chunk-TIMSXB7V.js} +9 -6
  48. package/dist/{chunk-XOWOZYS5.js → chunk-V24VKC54.js} +3 -3
  49. package/dist/{chunk-JMXX7A4N.js → chunk-V2EXSXIB.js} +2 -2
  50. package/dist/{chunk-QP45KHVL.js → chunk-Y7SMROY2.js} +214 -121
  51. package/dist/{chunk-TKC27SYH.js → chunk-YKGXAR4K.js} +268 -241
  52. package/dist/{chunk-WXONIGO7.js → chunk-YUFBJAT6.js} +5 -2
  53. package/dist/{chunk-KI626P2Z.js → chunk-YW77LWOY.js} +3 -3
  54. package/dist/{chunk-3IUNQ4LM.js → chunk-ZPXCGFEZ.js} +4 -4
  55. package/dist/cli/commands/auth/logout.js +12 -12
  56. package/dist/cli/commands/auth/logout.test.js +13 -13
  57. package/dist/cli/commands/cache/clear.js +11 -11
  58. package/dist/cli/commands/debug/command-flags.js +11 -11
  59. package/dist/cli/commands/docs/generate.js +11 -11
  60. package/dist/cli/commands/docs/generate.test.js +11 -11
  61. package/dist/cli/commands/help.d.ts +1 -0
  62. package/dist/cli/commands/help.js +11 -11
  63. package/dist/cli/commands/kitchen-sink/async.js +12 -12
  64. package/dist/cli/commands/kitchen-sink/async.test.js +12 -12
  65. package/dist/cli/commands/kitchen-sink/index.js +14 -14
  66. package/dist/cli/commands/kitchen-sink/index.test.js +14 -14
  67. package/dist/cli/commands/kitchen-sink/prompts.js +12 -12
  68. package/dist/cli/commands/kitchen-sink/prompts.test.js +12 -12
  69. package/dist/cli/commands/kitchen-sink/static.js +12 -12
  70. package/dist/cli/commands/kitchen-sink/static.test.js +12 -12
  71. package/dist/cli/commands/notifications/generate.js +12 -12
  72. package/dist/cli/commands/notifications/list.js +12 -12
  73. package/dist/cli/commands/search.d.ts +1 -0
  74. package/dist/cli/commands/search.js +12 -12
  75. package/dist/cli/commands/upgrade.js +12 -12
  76. package/dist/cli/commands/version.js +12 -12
  77. package/dist/cli/commands/version.test.js +12 -12
  78. package/dist/cli/services/commands/notifications.js +7 -7
  79. package/dist/cli/services/commands/search.js +3 -3
  80. package/dist/cli/services/commands/search.test.js +3 -3
  81. package/dist/cli/services/commands/version.js +4 -4
  82. package/dist/cli/services/commands/version.test.js +5 -5
  83. package/dist/cli/services/kitchen-sink/async.js +3 -3
  84. package/dist/cli/services/kitchen-sink/prompts.js +3 -3
  85. package/dist/cli/services/kitchen-sink/static.js +3 -3
  86. package/dist/cli/services/upgrade.js +4 -4
  87. package/dist/cli/services/upgrade.test.js +5 -5
  88. package/dist/configs/all.yml +39 -3
  89. package/dist/configs/recommended.yml +36 -0
  90. package/dist/configs/theme-app-extension.yml +3 -3
  91. package/dist/{custom-oclif-loader-FMEBF4P4.js → custom-oclif-loader-OE7KHHEX.js} +3 -3
  92. package/dist/data/filters.json +270 -327
  93. package/dist/data/latest.json +1 -1
  94. package/dist/data/objects.json +1482 -3709
  95. package/dist/data/preset.json +6 -0
  96. package/dist/data/preset_blocks.json +6 -0
  97. package/dist/data/setting.json +167 -50
  98. package/dist/data/tags.json +45 -101
  99. package/dist/{error-handler-AMKMVQCR.js → error-handler-CLK6ULQD.js} +9 -9
  100. package/dist/hooks/postrun.js +7 -7
  101. package/dist/hooks/prerun.js +8 -8
  102. package/dist/index.js +6785 -2452
  103. package/dist/{local-2RXSPQ2I.js → local-YA7BWRS4.js} +3 -3
  104. package/dist/{morph-WRZ7XCTF.js → morph-UGAQHTEA.js} +9 -9
  105. package/dist/{node-X35R6UYP.js → node-66AIONQH.js} +15 -15
  106. package/dist/{node-package-manager-3GAIXEER.js → node-package-manager-BD2U7LUE.js} +4 -4
  107. package/dist/{path-GWAZZN2N.js → path-2K5HIMHZ.js} +2 -2
  108. package/dist/tsconfig.tsbuildinfo +1 -1
  109. package/dist/{ui-MTRH5XFP.js → ui-UIXIY6XH.js} +3 -3
  110. package/dist/{workerd-EHYW43DG.js → workerd-VYNSPDCR.js} +14 -14
  111. package/oclif.manifest.json +24 -19
  112. package/package.json +7 -7
@@ -19,6 +19,11 @@
19
19
  "description": "The preset name, which will show in the 'Add section' or 'Add block' picker of the theme editor.",
20
20
  "markdownDescription": "The preset name, which will show in the 'Add section' or 'Add block' picker of the theme editor.\n\n---\n\n[Shopify reference](https://shopify.dev/docs/themes/architecture/sections/section-schema#presets)"
21
21
  },
22
+ "category": {
23
+ "type": "string",
24
+ "description": "The category of the preset, which will show in the 'Add section' or 'Add block' picker of the theme editor.",
25
+ "markdownDescription": "The category of the preset, which will show in the 'Add section' or 'Add block' picker of the theme editor.\n\n---\n\n[Shopify reference](https://shopify.dev/docs/themes/architecture/sections/section-schema#presets)"
26
+ },
22
27
  "settings": {
23
28
  "$ref": "./default_setting_values.json"
24
29
  }
@@ -33,6 +38,7 @@
33
38
  ],
34
39
  "properties": {
35
40
  "name": true,
41
+ "category": true,
36
42
  "settings": true,
37
43
  "blocks": {
38
44
  "$ref": "./preset_blocks.json#/definitions/blocksArray"
@@ -16,6 +16,7 @@
16
16
  "properties": {
17
17
  "static": true,
18
18
  "type": true,
19
+ "name": true,
19
20
  "settings": true,
20
21
  "blocks": {
21
22
  "$ref": "#/definitions/blocksArray"
@@ -52,6 +53,7 @@
52
53
  "properties": {
53
54
  "static": true,
54
55
  "type": true,
56
+ "name": true,
55
57
  "settings": true,
56
58
  "blocks": {
57
59
  "$ref": "#/definitions/blocksHash"
@@ -72,6 +74,10 @@
72
74
  "type": "string",
73
75
  "description": "The block type."
74
76
  },
77
+ "name": {
78
+ "type": "string",
79
+ "description": "The block name."
80
+ },
75
81
  "settings": {
76
82
  "$ref": "./default_setting_values.json"
77
83
  },
@@ -228,7 +228,10 @@
228
228
  },
229
229
 
230
230
  "checkbox": {
231
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
231
+ "allOf": [
232
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
233
+ { "$ref": "#/definitions/conditionalSetting" }
234
+ ],
232
235
  "properties": {
233
236
  "type": {
234
237
  "const": "checkbox",
@@ -238,7 +241,8 @@
238
241
  "default": { "type": "boolean" },
239
242
  "label": true,
240
243
  "info": true,
241
- "id": true
244
+ "id": true,
245
+ "visible_if": true
242
246
  },
243
247
  "additionalProperties": false
244
248
  },
@@ -280,7 +284,10 @@
280
284
  },
281
285
 
282
286
  "color": {
283
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
287
+ "allOf": [
288
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
289
+ { "$ref": "#/definitions/conditionalSetting" }
290
+ ],
284
291
  "properties": {
285
292
  "type": {
286
293
  "const": "color",
@@ -290,14 +297,18 @@
290
297
  "default": { "type": "string" },
291
298
  "label": true,
292
299
  "info": true,
293
- "id": true
300
+ "id": true,
301
+ "visible_if": true
294
302
  },
295
303
  "additionalProperties": false
296
304
  },
297
305
 
298
306
  "color_background": {
299
307
  "type": "object",
300
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
308
+ "allOf": [
309
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
310
+ { "$ref": "#/definitions/conditionalSetting" }
311
+ ],
301
312
  "properties": {
302
313
  "type": {
303
314
  "const": "color_background",
@@ -307,13 +318,17 @@
307
318
  "default": { "type": "string" },
308
319
  "label": true,
309
320
  "info": true,
310
- "id": true
321
+ "id": true,
322
+ "visible_if": true
311
323
  },
312
324
  "additionalProperties": false
313
325
  },
314
326
 
315
327
  "color_scheme": {
316
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
328
+ "allOf": [
329
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
330
+ { "$ref": "#/definitions/conditionalSetting" }
331
+ ],
317
332
  "properties": {
318
333
  "type": {
319
334
  "const": "color_scheme",
@@ -323,7 +338,8 @@
323
338
  "default": { "type": "string" },
324
339
  "label": true,
325
340
  "info": true,
326
- "id": true
341
+ "id": true,
342
+ "visible_if": true
327
343
  },
328
344
  "additionalProperties": false
329
345
  },
@@ -345,6 +361,12 @@
345
361
  "properties": {
346
362
  "type": {
347
363
  "enum": ["header", "color", "color_background"]
364
+ },
365
+ "visible_if": {
366
+ "not": {
367
+ "type": "string"
368
+ },
369
+ "errorMessage": "The property visible_if is not allowed within color_scheme_group"
348
370
  }
349
371
  },
350
372
  "allOf": [
@@ -431,7 +453,10 @@
431
453
  },
432
454
 
433
455
  "font_picker": {
434
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
456
+ "allOf": [
457
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
458
+ { "$ref": "#/definitions/conditionalSetting" }
459
+ ],
435
460
  "properties": {
436
461
  "type": {
437
462
  "const": "font_picker",
@@ -445,14 +470,18 @@
445
470
  },
446
471
  "label": true,
447
472
  "info": true,
448
- "id": true
473
+ "id": true,
474
+ "visible_if": true
449
475
  },
450
476
  "required": ["default"],
451
477
  "additionalProperties": false
452
478
  },
453
479
 
454
480
  "html": {
455
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
481
+ "allOf": [
482
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
483
+ { "$ref": "#/definitions/conditionalSetting" }
484
+ ],
456
485
  "properties": {
457
486
  "type": {
458
487
  "const": "html",
@@ -468,13 +497,17 @@
468
497
  },
469
498
  "label": true,
470
499
  "info": true,
471
- "id": true
500
+ "id": true,
501
+ "visible_if": true
472
502
  },
473
503
  "additionalProperties": false
474
504
  },
475
505
 
476
506
  "image_picker": {
477
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
507
+ "allOf": [
508
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
509
+ { "$ref": "#/definitions/conditionalSetting" }
510
+ ],
478
511
  "properties": {
479
512
  "type": {
480
513
  "const": "image_picker",
@@ -484,13 +517,17 @@
484
517
  "default": true,
485
518
  "label": true,
486
519
  "info": true,
487
- "id": true
520
+ "id": true,
521
+ "visible_if": true
488
522
  },
489
523
  "additionalProperties": false
490
524
  },
491
525
 
492
526
  "inline_richtext": {
493
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
527
+ "allOf": [
528
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
529
+ { "$ref": "#/definitions/conditionalSetting" }
530
+ ],
494
531
  "properties": {
495
532
  "type": {
496
533
  "const": "inline_richtext",
@@ -500,13 +537,17 @@
500
537
  "default": { "type": "string" },
501
538
  "label": true,
502
539
  "info": true,
503
- "id": true
540
+ "id": true,
541
+ "visible_if": true
504
542
  },
505
543
  "additionalProperties": false
506
544
  },
507
545
 
508
546
  "link_list": {
509
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
547
+ "allOf": [
548
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
549
+ { "$ref": "#/definitions/conditionalSetting" }
550
+ ],
510
551
  "properties": {
511
552
  "type": {
512
553
  "const": "link_list",
@@ -516,13 +557,17 @@
516
557
  "default": true,
517
558
  "label": true,
518
559
  "info": true,
519
- "id": true
560
+ "id": true,
561
+ "visible_if": true
520
562
  },
521
563
  "additionalProperties": false
522
564
  },
523
565
 
524
566
  "liquid": {
525
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
567
+ "allOf": [
568
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
569
+ { "$ref": "#/definitions/conditionalSetting" }
570
+ ],
526
571
  "properties": {
527
572
  "type": {
528
573
  "const": "liquid",
@@ -532,7 +577,8 @@
532
577
  "default": { "type": "string" },
533
578
  "label": true,
534
579
  "info": true,
535
- "id": true
580
+ "id": true,
581
+ "visible_if": true
536
582
  },
537
583
  "additionalProperties": false
538
584
  },
@@ -583,7 +629,10 @@
583
629
  "additionalProperties": false
584
630
  },
585
631
  "number": {
586
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
632
+ "allOf": [
633
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
634
+ { "$ref": "#/definitions/conditionalSetting" }
635
+ ],
587
636
  "properties": {
588
637
  "type": {
589
638
  "const": "number",
@@ -597,7 +646,8 @@
597
646
  "default": { "type": "number" },
598
647
  "label": true,
599
648
  "info": true,
600
- "id": true
649
+ "id": true,
650
+ "visible_if": true
601
651
  },
602
652
  "additionalProperties": false
603
653
  },
@@ -655,7 +705,10 @@
655
705
  },
656
706
 
657
707
  "radio": {
658
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
708
+ "allOf": [
709
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
710
+ { "$ref": "#/definitions/conditionalSetting" }
711
+ ],
659
712
  "properties": {
660
713
  "type": {
661
714
  "const": "radio",
@@ -669,14 +722,18 @@
669
722
  "options": { "$ref": "#/definitions/options" },
670
723
  "label": true,
671
724
  "info": true,
672
- "id": true
725
+ "id": true,
726
+ "visible_if": true
673
727
  },
674
728
  "required": ["options"],
675
729
  "additionalProperties": false
676
730
  },
677
731
 
678
732
  "range": {
679
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
733
+ "allOf": [
734
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
735
+ { "$ref": "#/definitions/conditionalSetting" }
736
+ ],
680
737
  "properties": {
681
738
  "type": {
682
739
  "const": "range",
@@ -705,14 +762,18 @@
705
762
  },
706
763
  "label": true,
707
764
  "info": true,
708
- "id": true
765
+ "id": true,
766
+ "visible_if": true
709
767
  },
710
768
  "required": ["default", "min", "max"],
711
769
  "additionalProperties": false
712
770
  },
713
771
 
714
772
  "richtext": {
715
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
773
+ "allOf": [
774
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
775
+ { "$ref": "#/definitions/conditionalSetting" }
776
+ ],
716
777
  "properties": {
717
778
  "type": {
718
779
  "const": "richtext",
@@ -722,13 +783,17 @@
722
783
  "default": { "type": "string" },
723
784
  "label": true,
724
785
  "info": true,
725
- "id": true
786
+ "id": true,
787
+ "visible_if": true
726
788
  },
727
789
  "additionalProperties": false
728
790
  },
729
791
 
730
792
  "select": {
731
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
793
+ "allOf": [
794
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
795
+ { "$ref": "#/definitions/conditionalSetting" }
796
+ ],
732
797
  "properties": {
733
798
  "type": {
734
799
  "const": "select",
@@ -746,7 +811,8 @@
746
811
  "options": { "$ref": "#/definitions/options" },
747
812
  "label": true,
748
813
  "info": true,
749
- "id": true
814
+ "id": true,
815
+ "visible_if": true
750
816
  },
751
817
  "required": ["options"],
752
818
  "additionalProperties": false
@@ -783,7 +849,10 @@
783
849
  },
784
850
 
785
851
  "style.layout_panel": {
786
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
852
+ "allOf": [
853
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
854
+ { "$ref": "#/definitions/conditionalSetting" }
855
+ ],
787
856
  "properties": {
788
857
  "type": {
789
858
  "const": "style.layout_panel",
@@ -808,13 +877,17 @@
808
877
  },
809
878
  "label": true,
810
879
  "info": true,
811
- "id": true
880
+ "id": true,
881
+ "visible_if": true
812
882
  },
813
883
  "additionalProperties": false
814
884
  },
815
885
 
816
886
  "style.size_panel": {
817
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
887
+ "allOf": [
888
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
889
+ { "$ref": "#/definitions/conditionalSetting" }
890
+ ],
818
891
  "properties": {
819
892
  "type": {
820
893
  "const": "style.size_panel",
@@ -839,13 +912,17 @@
839
912
  },
840
913
  "label": true,
841
914
  "info": true,
842
- "id": true
915
+ "id": true,
916
+ "visible_if": true
843
917
  },
844
918
  "additionalProperties": false
845
919
  },
846
920
 
847
921
  "style.spacing_panel": {
848
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
922
+ "allOf": [
923
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
924
+ { "$ref": "#/definitions/conditionalSetting" }
925
+ ],
849
926
  "properties": {
850
927
  "type": {
851
928
  "const": "style.spacing_panel",
@@ -870,13 +947,17 @@
870
947
  },
871
948
  "label": true,
872
949
  "info": true,
873
- "id": true
950
+ "id": true,
951
+ "visible_if": true
874
952
  },
875
953
  "additionalProperties": false
876
954
  },
877
955
 
878
956
  "text": {
879
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
957
+ "allOf": [
958
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
959
+ { "$ref": "#/definitions/conditionalSetting" }
960
+ ],
880
961
  "properties": {
881
962
  "type": {
882
963
  "const": "text",
@@ -892,13 +973,17 @@
892
973
  },
893
974
  "label": true,
894
975
  "info": true,
895
- "id": true
976
+ "id": true,
977
+ "visible_if": true
896
978
  },
897
979
  "additionalProperties": false
898
980
  },
899
981
 
900
982
  "text_alignment": {
901
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
983
+ "allOf": [
984
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
985
+ { "$ref": "#/definitions/conditionalSetting" }
986
+ ],
902
987
  "properties": {
903
988
  "type": {
904
989
  "const": "text_alignment",
@@ -911,13 +996,17 @@
911
996
  },
912
997
  "label": true,
913
998
  "info": true,
914
- "id": true
999
+ "id": true,
1000
+ "visible_if": true
915
1001
  },
916
1002
  "additionalProperties": false
917
1003
  },
918
1004
 
919
1005
  "textarea": {
920
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
1006
+ "allOf": [
1007
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
1008
+ { "$ref": "#/definitions/conditionalSetting" }
1009
+ ],
921
1010
  "properties": {
922
1011
  "type": {
923
1012
  "const": "textarea",
@@ -933,13 +1022,17 @@
933
1022
  },
934
1023
  "label": true,
935
1024
  "info": true,
936
- "id": true
1025
+ "id": true,
1026
+ "visible_if": true
937
1027
  },
938
1028
  "additionalProperties": false
939
1029
  },
940
1030
 
941
1031
  "url": {
942
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
1032
+ "allOf": [
1033
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
1034
+ { "$ref": "#/definitions/conditionalSetting" }
1035
+ ],
943
1036
  "properties": {
944
1037
  "type": {
945
1038
  "const": "url",
@@ -949,13 +1042,17 @@
949
1042
  "default": { "type": "string" },
950
1043
  "label": true,
951
1044
  "info": true,
952
- "id": true
1045
+ "id": true,
1046
+ "visible_if": true
953
1047
  },
954
1048
  "additionalProperties": false
955
1049
  },
956
1050
 
957
1051
  "video": {
958
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
1052
+ "allOf": [
1053
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
1054
+ { "$ref": "#/definitions/conditionalSetting" }
1055
+ ],
959
1056
  "properties": {
960
1057
  "type": {
961
1058
  "const": "video",
@@ -965,13 +1062,17 @@
965
1062
  "default": true,
966
1063
  "label": true,
967
1064
  "info": true,
968
- "id": true
1065
+ "id": true,
1066
+ "visible_if": true
969
1067
  },
970
1068
  "additionalProperties": false
971
1069
  },
972
1070
 
973
1071
  "video_url": {
974
- "allOf": [{ "$ref": "#/definitions/inputSettingsStandardAttributes" }],
1072
+ "allOf": [
1073
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
1074
+ { "$ref": "#/definitions/conditionalSetting" }
1075
+ ],
975
1076
  "properties": {
976
1077
  "type": {
977
1078
  "const": "video_url",
@@ -994,14 +1095,18 @@
994
1095
  "default": true,
995
1096
  "label": true,
996
1097
  "info": true,
997
- "id": true
1098
+ "id": true,
1099
+ "visible_if": true
998
1100
  },
999
1101
  "required": ["accept"],
1000
1102
  "additionalProperties": false
1001
1103
  },
1002
1104
 
1003
1105
  "header": {
1004
- "allOf": [{ "$ref": "#/definitions/sidebarStandardSettings" }],
1106
+ "allOf": [
1107
+ { "$ref": "#/definitions/sidebarStandardSettings" },
1108
+ { "$ref": "#/definitions/conditionalSetting" }
1109
+ ],
1005
1110
  "properties": {
1006
1111
  "type": {
1007
1112
  "const": "header",
@@ -1009,7 +1114,8 @@
1009
1114
  "markdownDescription": "A setting of type `header` outputs a header element to help you better organize your input settings.\n\n---\n\n[Shopify reference](https://shopify.dev/docs/themes/architecture/settings/sidebar-settings#header)"
1010
1115
  },
1011
1116
  "info": { "$ref": "#/definitions/info" },
1012
- "content": true
1117
+ "content": true,
1118
+ "visible_if": true
1013
1119
  },
1014
1120
  "additionalProperties": false
1015
1121
  },
@@ -1038,6 +1144,17 @@
1038
1144
  }
1039
1145
  },
1040
1146
 
1147
+ "conditionalSetting": {
1148
+ "$comment": "Conditional setting property",
1149
+ "properties": {
1150
+ "visible_if": {
1151
+ "type": "string",
1152
+ "description": "A liquid expression that determines whether the setting should be visible.",
1153
+ "markdownDescription": "A liquid expression that determines whether the setting should be visible.\n\n---\n\n[Shopify reference](https://shopify.dev/docs/themes/architecture/settings/input-settings#visible_if)"
1154
+ }
1155
+ }
1156
+ },
1157
+
1041
1158
  "inputSettingsStandardAttributes": {
1042
1159
  "required": ["type", "id", "label"],
1043
1160
  "properties": {