@shopify/cli 3.69.4 → 3.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (563) hide show
  1. package/{dist/assets/cli-ruby/LICENSE → LICENSE} +0 -2
  2. package/dist/{lib-CPSRXLFM.js → chunk-2HGYYNE5.js} +5 -2
  3. package/dist/chunk-3AOK7V27.js +3792 -0
  4. package/dist/{chunk-PNN7RS7Y.js → chunk-3NSN5Z4N.js} +100 -11
  5. package/dist/{chunk-EJGKAHVK.js → chunk-455HYBGX.js} +3 -3
  6. package/dist/{chunk-BMTELIUS.js → chunk-4G7SL7SU.js} +4 -4
  7. package/dist/{chunk-OWCYMR5Y.js → chunk-5F2WGMCL.js} +4 -4
  8. package/dist/{chunk-2NCWYVM4.js → chunk-5JZ5AGAQ.js} +652 -654
  9. package/dist/chunk-5OHM64KO.js +104 -0
  10. package/dist/{chunk-F54UWMGQ.js → chunk-675SL4FV.js} +3 -3
  11. package/dist/{chunk-WHP4CEBJ.js → chunk-AXNBVGJC.js} +20 -25
  12. package/dist/{chunk-KM4TMAQ2.js → chunk-BEVHUPQZ.js} +13 -9
  13. package/dist/{chunk-6XKWVDB6.js → chunk-CBBS4CV7.js} +3 -3
  14. package/dist/{chunk-YNL4XNMX.js → chunk-GJ7EWRH4.js} +4 -4
  15. package/dist/{chunk-N3U3EHOE.js → chunk-GV72NRZZ.js} +3 -3
  16. package/dist/{chunk-ZGHNMRBX.js → chunk-HSTSRNLJ.js} +121 -66
  17. package/dist/{chunk-ISDSND4L.js → chunk-IGH7XTG6.js} +2 -2
  18. package/dist/chunk-IJG6JLEF.js +28 -0
  19. package/dist/chunk-IJSEKDUR.js +28 -0
  20. package/dist/{chunk-VQ3R5DHS.js → chunk-JTWM7VKM.js} +4 -4
  21. package/dist/{chunk-VHEJRU4K.js → chunk-K6UZ5NEO.js} +7 -7
  22. package/dist/{chunk-JHVVETTP.js → chunk-KBDH6IDK.js} +19 -11
  23. package/dist/{chunk-7B5FNNVB.js → chunk-KJJGDUT2.js} +4 -4
  24. package/dist/{chunk-334DJQUN.js → chunk-KOHDI3KN.js} +7 -3
  25. package/dist/{chunk-MX4RJDBM.js → chunk-KYB6A4PE.js} +1 -2
  26. package/dist/{chunk-ORDEDRCZ.js → chunk-LMK5VFZE.js} +3 -3
  27. package/dist/{chunk-2JRUKBKX.js → chunk-LSQU4XJZ.js} +32 -218
  28. package/dist/{chunk-YPWRQ5AU.js → chunk-MG6EVKFQ.js} +3 -3
  29. package/dist/{chunk-K3GASX6Y.js → chunk-MHLSPYVQ.js} +3 -3
  30. package/dist/{chunk-27ILOE3X.js → chunk-OJOHMVV7.js} +6 -6
  31. package/dist/{chunk-7NPDPZ22.js → chunk-PDNTPE4N.js} +4355 -5172
  32. package/dist/{chunk-Y3MSANL5.js → chunk-RQJF2YRM.js} +2 -2
  33. package/dist/{chunk-S2IXL3EU.js → chunk-RXYE2GI3.js} +2 -2
  34. package/dist/chunk-SVWWKVUI.js +165 -0
  35. package/dist/{chunk-BRO6DC7D.js → chunk-T2BV6JEL.js} +18 -24
  36. package/dist/{chunk-6IATSQ3X.js → chunk-UDRKRTS4.js} +3 -3
  37. package/dist/{chunk-RYTZQSHH.js → chunk-VNZQKLLO.js} +2 -2
  38. package/dist/{chunk-UQUVQV3X.js → chunk-WLNYFGYY.js} +4 -4
  39. package/dist/{chunk-A3JXD7N7.js → chunk-WNDN5FAY.js} +4 -4
  40. package/dist/chunk-WZW6P6AO.js +105 -0
  41. package/dist/{chunk-TLZ4ZBH3.js → chunk-XOSZOZ3F.js} +7 -5
  42. package/dist/{chunk-TV5WOUSX.js → chunk-YNXUXQFM.js} +2 -2
  43. package/dist/{chunk-HV364V3E.js → chunk-YZA6BRN3.js} +2 -2
  44. package/dist/cli/commands/auth/logout.js +20 -20
  45. package/dist/cli/commands/auth/logout.test.js +22 -22
  46. package/dist/cli/commands/{demo/print-ai-prompt.d.ts → cache/clear.d.ts} +1 -1
  47. package/dist/cli/commands/cache/clear.js +33 -0
  48. package/dist/cli/commands/debug/command-flags.js +19 -19
  49. package/dist/cli/commands/docs/generate.js +19 -19
  50. package/dist/cli/commands/docs/generate.test.js +20 -20
  51. package/dist/cli/commands/help.js +19 -19
  52. package/dist/cli/commands/kitchen-sink/async.js +20 -20
  53. package/dist/cli/commands/kitchen-sink/async.test.js +21 -21
  54. package/dist/cli/commands/kitchen-sink/index.js +22 -22
  55. package/dist/cli/commands/kitchen-sink/index.test.js +25 -25
  56. package/dist/cli/commands/kitchen-sink/prompts.js +20 -20
  57. package/dist/cli/commands/kitchen-sink/prompts.test.js +21 -21
  58. package/dist/cli/commands/kitchen-sink/static.js +20 -20
  59. package/dist/cli/commands/kitchen-sink/static.test.js +21 -21
  60. package/dist/cli/commands/notifications/generate.d.ts +6 -0
  61. package/dist/cli/commands/notifications/generate.js +34 -0
  62. package/dist/cli/commands/{demo/catalog.d.ts → notifications/list.d.ts} +1 -1
  63. package/dist/cli/commands/notifications/list.js +34 -0
  64. package/dist/cli/commands/search.js +20 -20
  65. package/dist/cli/commands/upgrade.js +20 -20
  66. package/dist/cli/commands/upgrade.test.js +1 -2
  67. package/dist/cli/commands/version.js +20 -20
  68. package/dist/cli/commands/version.test.js +21 -21
  69. package/dist/cli/services/commands/notifications.d.ts +2 -0
  70. package/dist/cli/services/commands/notifications.js +29 -0
  71. package/dist/cli/services/commands/search.js +9 -10
  72. package/dist/cli/services/commands/search.test.js +10 -11
  73. package/dist/cli/services/commands/version.js +10 -11
  74. package/dist/cli/services/commands/version.test.js +12 -13
  75. package/dist/cli/services/kitchen-sink/async.js +9 -10
  76. package/dist/cli/services/kitchen-sink/prompts.js +9 -10
  77. package/dist/cli/services/kitchen-sink/static.js +9 -10
  78. package/dist/cli/services/upgrade.js +10 -11
  79. package/dist/cli/services/upgrade.test.js +15 -16
  80. package/dist/configs/all.yml +15 -0
  81. package/dist/configs/recommended.yml +9 -0
  82. package/dist/{custom-oclif-loader-TBU3GENB.js → custom-oclif-loader-U43F5H7M.js} +13 -14
  83. package/dist/data/filters.json +137 -19
  84. package/dist/data/latest.json +1 -1
  85. package/dist/data/manifest_theme.json +1 -0
  86. package/dist/data/objects.json +203 -1625
  87. package/dist/data/preset_blocks.json +78 -0
  88. package/dist/data/section.json +1 -42
  89. package/dist/data/shopify_system_translations.json +58 -2
  90. package/dist/data/tags.json +10 -0
  91. package/dist/data/theme_block.json +1 -19
  92. package/dist/{del-7ZS2Z64N.js → del-K5ZJEWTD.js} +3 -3
  93. package/dist/{error-handler-IL72ACEX.js → error-handler-GSXEX5NX.js} +17 -18
  94. package/dist/hooks/postrun.js +14 -15
  95. package/dist/hooks/prerun.js +16 -19
  96. package/dist/index.js +34605 -31345
  97. package/dist/lib-PPXZBVZX.js +6 -0
  98. package/dist/{lib-JHUCJTHS.js → lib-XYCLX35G.js} +5 -5
  99. package/dist/{local-OE2I46PA.js → local-STC6NEOC.js} +11 -10
  100. package/dist/{morph-UIXWG2S7.js → morph-SEECJQ2W.js} +3 -3
  101. package/dist/{node-SDBKEHIV.js → node-I54BR73K.js} +21 -21
  102. package/dist/{node-package-manager-LPDV6HZY.js → node-package-manager-DUWCXRNZ.js} +10 -11
  103. package/dist/{out-ZDSLKX4N.js → out-MHEKZJWS.js} +2 -2
  104. package/dist/{path-T2RCZTRE.js → path-5SZGULBR.js} +2 -3
  105. package/dist/tsconfig.tsbuildinfo +1 -1
  106. package/dist/{ui-WB42ZV4M.js → ui-GZXRHEXO.js} +9 -10
  107. package/dist/{workerd-YWTPL4SF.js → workerd-WQ2CUXFS.js} +23 -23
  108. package/oclif.manifest.json +393 -223
  109. package/package.json +7 -8
  110. package/assets/demo-catalog.json +0 -655
  111. package/dist/assets/cli-ruby/.devcontainer.json +0 -5
  112. package/dist/assets/cli-ruby/.rubocop.yml +0 -102
  113. package/dist/assets/cli-ruby/.rubocop_todo.yml +0 -24
  114. package/dist/assets/cli-ruby/CHANGELOG.md +0 -634
  115. package/dist/assets/cli-ruby/CONTRIBUTING.md +0 -3
  116. package/dist/assets/cli-ruby/Codespace.dockerfile +0 -35
  117. package/dist/assets/cli-ruby/Gemfile +0 -32
  118. package/dist/assets/cli-ruby/README.md +0 -30
  119. package/dist/assets/cli-ruby/Rakefile +0 -167
  120. package/dist/assets/cli-ruby/SECURITY.md +0 -59
  121. package/dist/assets/cli-ruby/Tests.dockerfile +0 -35
  122. package/dist/assets/cli-ruby/assets/logo.png +0 -0
  123. package/dist/assets/cli-ruby/bin/console +0 -11
  124. package/dist/assets/cli-ruby/bin/load_shopify.rb +0 -22
  125. package/dist/assets/cli-ruby/bin/shopify +0 -67
  126. package/dist/assets/cli-ruby/bin/shopify.bat +0 -3
  127. package/dist/assets/cli-ruby/bin/update-deps +0 -97
  128. package/dist/assets/cli-ruby/dev.yml +0 -29
  129. package/dist/assets/cli-ruby/docs/README.md +0 -13
  130. package/dist/assets/cli-ruby/docs/contributors/testing.md +0 -27
  131. package/dist/assets/cli-ruby/docs/users/installation.md +0 -3
  132. package/dist/assets/cli-ruby/docs/users/migrate-from-themekit.md +0 -18
  133. package/dist/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.1.0.gz.sha256 +0 -1
  134. package/dist/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.2.0.gz.sha256 +0 -1
  135. package/dist/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.2.1.gz.sha256 +0 -1
  136. package/dist/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.3.0.gz.sha256 +0 -1
  137. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.1.0.gz.sha256 +0 -1
  138. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.2.0.gz.sha256 +0 -1
  139. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.2.1.gz.sha256 +0 -1
  140. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.3.0.gz.sha256 +0 -1
  141. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.1.0.gz.sha256 +0 -1
  142. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.2.0.gz.sha256 +0 -1
  143. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.2.1.gz.sha256 +0 -1
  144. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.3.0.gz.sha256 +0 -1
  145. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.1.0.gz.sha256 +0 -1
  146. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.2.0.gz.sha256 +0 -1
  147. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.2.1.gz.sha256 +0 -1
  148. package/dist/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.3.0.gz.sha256 +0 -1
  149. package/dist/assets/cli-ruby/ext/javy/javy.rb +0 -204
  150. package/dist/assets/cli-ruby/ext/javy/version +0 -1
  151. package/dist/assets/cli-ruby/ext/shopify-extensions/extconf.rb +0 -21
  152. package/dist/assets/cli-ruby/ext/shopify-extensions/shopify_extensions.rb +0 -152
  153. package/dist/assets/cli-ruby/ext/shopify-extensions/version +0 -1
  154. package/dist/assets/cli-ruby/features/support/assertions.rb +0 -17
  155. package/dist/assets/cli-ruby/features/support/cli.rb +0 -7
  156. package/dist/assets/cli-ruby/features/support/process.rb +0 -27
  157. package/dist/assets/cli-ruby/features/support/requires.rb +0 -3
  158. package/dist/assets/cli-ruby/lib/docgen/class_template.md.erb +0 -81
  159. package/dist/assets/cli-ruby/lib/docgen/index_template.md.erb +0 -5
  160. package/dist/assets/cli-ruby/lib/docgen/markdown.rb +0 -101
  161. package/dist/assets/cli-ruby/lib/graphql/admin_introspection.graphql +0 -87
  162. package/dist/assets/cli-ruby/lib/graphql/all_organizations.graphql +0 -19
  163. package/dist/assets/cli-ruby/lib/graphql/all_orgs_with_apps.graphql +0 -30
  164. package/dist/assets/cli-ruby/lib/graphql/api_versions.graphql +0 -6
  165. package/dist/assets/cli-ruby/lib/graphql/convert_dev_to_test_store.graphql +0 -10
  166. package/dist/assets/cli-ruby/lib/graphql/create_app.graphql +0 -20
  167. package/dist/assets/cli-ruby/lib/graphql/create_customer.graphql +0 -9
  168. package/dist/assets/cli-ruby/lib/graphql/create_draft_order.graphql +0 -8
  169. package/dist/assets/cli-ruby/lib/graphql/create_product.graphql +0 -9
  170. package/dist/assets/cli-ruby/lib/graphql/extension_create.graphql +0 -37
  171. package/dist/assets/cli-ruby/lib/graphql/extension_update_draft.graphql +0 -19
  172. package/dist/assets/cli-ruby/lib/graphql/fetch_specifications.graphql +0 -14
  173. package/dist/assets/cli-ruby/lib/graphql/find_organization.graphql +0 -18
  174. package/dist/assets/cli-ruby/lib/graphql/find_organization_with_apps.graphql +0 -20
  175. package/dist/assets/cli-ruby/lib/graphql/get_app_by_api_key.graphql +0 -9
  176. package/dist/assets/cli-ruby/lib/graphql/get_app_urls.graphql +0 -6
  177. package/dist/assets/cli-ruby/lib/graphql/get_extension_registrations.graphql +0 -28
  178. package/dist/assets/cli-ruby/lib/graphql/get_variant_id.graphql +0 -16
  179. package/dist/assets/cli-ruby/lib/graphql/update_dashboard_urls.graphql +0 -8
  180. package/dist/assets/cli-ruby/lib/project_types/extension/cli.rb +0 -75
  181. package/dist/assets/cli-ruby/lib/project_types/extension/commands/extension_command.rb +0 -29
  182. package/dist/assets/cli-ruby/lib/project_types/extension/commands/serve.rb +0 -164
  183. package/dist/assets/cli-ruby/lib/project_types/extension/errors.rb +0 -9
  184. package/dist/assets/cli-ruby/lib/project_types/extension/extension_project.rb +0 -151
  185. package/dist/assets/cli-ruby/lib/project_types/extension/extension_project_keys.rb +0 -12
  186. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo.rb +0 -50
  187. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_config.rb +0 -59
  188. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_dependencies.rb +0 -28
  189. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_runtime.rb +0 -15
  190. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_serve.rb +0 -115
  191. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_setup.rb +0 -54
  192. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_setup_step.rb +0 -31
  193. package/dist/assets/cli-ruby/lib/project_types/extension/features/argo_setup_steps.rb +0 -51
  194. package/dist/assets/cli-ruby/lib/project_types/extension/features/runtimes/admin.rb +0 -29
  195. package/dist/assets/cli-ruby/lib/project_types/extension/features/runtimes/base.rb +0 -19
  196. package/dist/assets/cli-ruby/lib/project_types/extension/features/runtimes/checkout_post_purchase.rb +0 -23
  197. package/dist/assets/cli-ruby/lib/project_types/extension/features/runtimes/checkout_ui_extension.rb +0 -29
  198. package/dist/assets/cli-ruby/lib/project_types/extension/loaders/project.rb +0 -50
  199. package/dist/assets/cli-ruby/lib/project_types/extension/loaders/specification_handler.rb +0 -22
  200. package/dist/assets/cli-ruby/lib/project_types/extension/messages/message_loading.rb +0 -34
  201. package/dist/assets/cli-ruby/lib/project_types/extension/messages/messages.rb +0 -320
  202. package/dist/assets/cli-ruby/lib/project_types/extension/models/app.rb +0 -14
  203. package/dist/assets/cli-ruby/lib/project_types/extension/models/lazy_specification_handler.rb +0 -12
  204. package/dist/assets/cli-ruby/lib/project_types/extension/models/specification.rb +0 -41
  205. package/dist/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/default.rb +0 -145
  206. package/dist/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/theme_app_extension.rb +0 -134
  207. package/dist/assets/cli-ruby/lib/project_types/extension/models/specifications.rb +0 -91
  208. package/dist/assets/cli-ruby/lib/project_types/extension/models/validation_error.rb +0 -17
  209. package/dist/assets/cli-ruby/lib/project_types/extension/models/version.rb +0 -15
  210. package/dist/assets/cli-ruby/lib/project_types/extension/tasks/configure_features.rb +0 -73
  211. package/dist/assets/cli-ruby/lib/project_types/extension/tasks/configure_options.rb +0 -21
  212. package/dist/assets/cli-ruby/lib/project_types/extension/tasks/converters/validation_error_converter.rb +0 -25
  213. package/dist/assets/cli-ruby/lib/project_types/extension/tasks/converters/version_converter.rb +0 -28
  214. package/dist/assets/cli-ruby/lib/project_types/extension/tasks/fetch_specifications.rb +0 -21
  215. package/dist/assets/cli-ruby/lib/project_types/node/cli.rb +0 -12
  216. package/dist/assets/cli-ruby/lib/project_types/node/forms/create.rb +0 -45
  217. package/dist/assets/cli-ruby/lib/project_types/node/messages/messages.rb +0 -33
  218. package/dist/assets/cli-ruby/lib/project_types/php/cli.rb +0 -16
  219. package/dist/assets/cli-ruby/lib/project_types/php/forms/create.rb +0 -44
  220. package/dist/assets/cli-ruby/lib/project_types/php/messages/messages.rb +0 -29
  221. package/dist/assets/cli-ruby/lib/project_types/rails/cli.rb +0 -15
  222. package/dist/assets/cli-ruby/lib/project_types/rails/forms/create.rb +0 -75
  223. package/dist/assets/cli-ruby/lib/project_types/rails/gem.rb +0 -110
  224. package/dist/assets/cli-ruby/lib/project_types/rails/messages/messages.rb +0 -101
  225. package/dist/assets/cli-ruby/lib/project_types/script/cli.rb +0 -27
  226. package/dist/assets/cli-ruby/lib/project_types/script/commands/connect.rb +0 -16
  227. package/dist/assets/cli-ruby/lib/project_types/script/commands/create.rb +0 -24
  228. package/dist/assets/cli-ruby/lib/project_types/script/commands/javy.rb +0 -24
  229. package/dist/assets/cli-ruby/lib/project_types/script/commands/push.rb +0 -26
  230. package/dist/assets/cli-ruby/lib/project_types/script/loaders/project.rb +0 -46
  231. package/dist/assets/cli-ruby/lib/project_types/script/loaders/specification_handler.rb +0 -22
  232. package/dist/assets/cli-ruby/lib/project_types/script/messages/messages.rb +0 -11
  233. package/dist/assets/cli-ruby/lib/project_types/theme/cli.rb +0 -33
  234. package/dist/assets/cli-ruby/lib/project_types/theme/commands/common/root_helper.rb +0 -94
  235. package/dist/assets/cli-ruby/lib/project_types/theme/commands/common/shop_helper.rb +0 -13
  236. package/dist/assets/cli-ruby/lib/project_types/theme/commands/console.rb +0 -23
  237. package/dist/assets/cli-ruby/lib/project_types/theme/commands/delete.rb +0 -70
  238. package/dist/assets/cli-ruby/lib/project_types/theme/commands/init.rb +0 -46
  239. package/dist/assets/cli-ruby/lib/project_types/theme/commands/list.rb +0 -33
  240. package/dist/assets/cli-ruby/lib/project_types/theme/commands/open.rb +0 -73
  241. package/dist/assets/cli-ruby/lib/project_types/theme/commands/package.rb +0 -73
  242. package/dist/assets/cli-ruby/lib/project_types/theme/commands/publish.rb +0 -49
  243. package/dist/assets/cli-ruby/lib/project_types/theme/commands/pull.rb +0 -118
  244. package/dist/assets/cli-ruby/lib/project_types/theme/commands/push.rb +0 -160
  245. package/dist/assets/cli-ruby/lib/project_types/theme/commands/serve.rb +0 -91
  246. package/dist/assets/cli-ruby/lib/project_types/theme/commands/share.rb +0 -62
  247. package/dist/assets/cli-ruby/lib/project_types/theme/commands/token.rb +0 -22
  248. package/dist/assets/cli-ruby/lib/project_types/theme/conversions/base_glob.rb +0 -65
  249. package/dist/assets/cli-ruby/lib/project_types/theme/conversions/ignore_glob.rb +0 -15
  250. package/dist/assets/cli-ruby/lib/project_types/theme/conversions/include_glob.rb +0 -15
  251. package/dist/assets/cli-ruby/lib/project_types/theme/forms/confirm_store.rb +0 -15
  252. package/dist/assets/cli-ruby/lib/project_types/theme/forms/select.rb +0 -34
  253. package/dist/assets/cli-ruby/lib/project_types/theme/messages/messages.rb +0 -429
  254. package/dist/assets/cli-ruby/lib/project_types/theme/models/specification_handlers/theme.rb +0 -19
  255. package/dist/assets/cli-ruby/lib/project_types/theme/presenters/theme_presenter.rb +0 -48
  256. package/dist/assets/cli-ruby/lib/project_types/theme/presenters/themes_presenter.rb +0 -29
  257. package/dist/assets/cli-ruby/lib/project_types/theme/ui/sync_progress_bar.rb +0 -20
  258. package/dist/assets/cli-ruby/lib/rubygems_plugin.rb +0 -26
  259. package/dist/assets/cli-ruby/lib/shopify_cli/admin_api.rb +0 -160
  260. package/dist/assets/cli-ruby/lib/shopify_cli/api.rb +0 -130
  261. package/dist/assets/cli-ruby/lib/shopify_cli/command/project_command.rb +0 -31
  262. package/dist/assets/cli-ruby/lib/shopify_cli/command/sub_command.rb +0 -20
  263. package/dist/assets/cli-ruby/lib/shopify_cli/command.rb +0 -166
  264. package/dist/assets/cli-ruby/lib/shopify_cli/commands.rb +0 -21
  265. package/dist/assets/cli-ruby/lib/shopify_cli/constants.rb +0 -101
  266. package/dist/assets/cli-ruby/lib/shopify_cli/context.rb +0 -709
  267. package/dist/assets/cli-ruby/lib/shopify_cli/core/cli_version.rb +0 -20
  268. package/dist/assets/cli-ruby/lib/shopify_cli/core/entry_point.rb +0 -64
  269. package/dist/assets/cli-ruby/lib/shopify_cli/core/executor.rb +0 -23
  270. package/dist/assets/cli-ruby/lib/shopify_cli/core/finalize.rb +0 -13
  271. package/dist/assets/cli-ruby/lib/shopify_cli/core/monorail.rb +0 -122
  272. package/dist/assets/cli-ruby/lib/shopify_cli/core.rb +0 -8
  273. package/dist/assets/cli-ruby/lib/shopify_cli/db.rb +0 -114
  274. package/dist/assets/cli-ruby/lib/shopify_cli/environment.rb +0 -217
  275. package/dist/assets/cli-ruby/lib/shopify_cli/exception_reporter.rb +0 -80
  276. package/dist/assets/cli-ruby/lib/shopify_cli/feature.rb +0 -95
  277. package/dist/assets/cli-ruby/lib/shopify_cli/file_system_listener.rb +0 -30
  278. package/dist/assets/cli-ruby/lib/shopify_cli/form.rb +0 -42
  279. package/dist/assets/cli-ruby/lib/shopify_cli/git.rb +0 -320
  280. package/dist/assets/cli-ruby/lib/shopify_cli/github/issue_url_generator.rb +0 -30
  281. package/dist/assets/cli-ruby/lib/shopify_cli/github.rb +0 -5
  282. package/dist/assets/cli-ruby/lib/shopify_cli/helpers/haikunator.rb +0 -92
  283. package/dist/assets/cli-ruby/lib/shopify_cli/helpers.rb +0 -5
  284. package/dist/assets/cli-ruby/lib/shopify_cli/http_request.rb +0 -43
  285. package/dist/assets/cli-ruby/lib/shopify_cli/identity_auth/env_auth_token.rb +0 -34
  286. package/dist/assets/cli-ruby/lib/shopify_cli/identity_auth.rb +0 -332
  287. package/dist/assets/cli-ruby/lib/shopify_cli/js_system.rb +0 -115
  288. package/dist/assets/cli-ruby/lib/shopify_cli/lazy_delegator.rb +0 -55
  289. package/dist/assets/cli-ruby/lib/shopify_cli/messages/messages.rb +0 -863
  290. package/dist/assets/cli-ruby/lib/shopify_cli/method_object.rb +0 -123
  291. package/dist/assets/cli-ruby/lib/shopify_cli/migrator/migration.rb +0 -27
  292. package/dist/assets/cli-ruby/lib/shopify_cli/migrator/migrations/1631709766_noop.rb +0 -13
  293. package/dist/assets/cli-ruby/lib/shopify_cli/migrator/migrations/1633691650_merge_reporting_configuration.rb +0 -41
  294. package/dist/assets/cli-ruby/lib/shopify_cli/migrator.rb +0 -46
  295. package/dist/assets/cli-ruby/lib/shopify_cli/options.rb +0 -40
  296. package/dist/assets/cli-ruby/lib/shopify_cli/partners_api/app_extensions/job.rb +0 -36
  297. package/dist/assets/cli-ruby/lib/shopify_cli/partners_api/app_extensions.rb +0 -46
  298. package/dist/assets/cli-ruby/lib/shopify_cli/partners_api/organizations.rb +0 -45
  299. package/dist/assets/cli-ruby/lib/shopify_cli/partners_api.rb +0 -91
  300. package/dist/assets/cli-ruby/lib/shopify_cli/project.rb +0 -199
  301. package/dist/assets/cli-ruby/lib/shopify_cli/project_type.rb +0 -66
  302. package/dist/assets/cli-ruby/lib/shopify_cli/reporting_configuration_controller.rb +0 -29
  303. package/dist/assets/cli-ruby/lib/shopify_cli/resolve_constant.rb +0 -25
  304. package/dist/assets/cli-ruby/lib/shopify_cli/resources/env_file.rb +0 -108
  305. package/dist/assets/cli-ruby/lib/shopify_cli/resources.rb +0 -5
  306. package/dist/assets/cli-ruby/lib/shopify_cli/result.rb +0 -448
  307. package/dist/assets/cli-ruby/lib/shopify_cli/shopifolk.rb +0 -82
  308. package/dist/assets/cli-ruby/lib/shopify_cli/task.rb +0 -20
  309. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/confirm_store.rb +0 -18
  310. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/create_api_client.rb +0 -40
  311. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_authenticated.rb +0 -19
  312. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_dev_store.rb +0 -41
  313. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_env.rb +0 -90
  314. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_git_dependency.rb +0 -14
  315. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_loopback_url.rb +0 -20
  316. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/ensure_project_type.rb +0 -14
  317. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/select_org_and_shop.rb +0 -81
  318. package/dist/assets/cli-ruby/lib/shopify_cli/tasks/update_dashboard_urls.rb +0 -57
  319. package/dist/assets/cli-ruby/lib/shopify_cli/tasks.rb +0 -44
  320. package/dist/assets/cli-ruby/lib/shopify_cli/theme/backoff_helper.rb +0 -47
  321. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/cdn_fonts.rb +0 -82
  322. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/certificate_manager.rb +0 -79
  323. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/errors.rb +0 -9
  324. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/header_hash.rb +0 -98
  325. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hooks/file_change_hook.rb +0 -77
  326. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/remote_file_deleter.rb +0 -62
  327. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/remote_file_reloader.rb +0 -63
  328. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/hot-reload-no-script.html +0 -27
  329. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/hot_reload.js +0 -48
  330. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/sse_client.js +0 -43
  331. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/theme.js +0 -114
  332. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/theme_extension.js +0 -121
  333. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/script_injector.rb +0 -57
  334. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/sections_index.rb +0 -50
  335. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload.rb +0 -75
  336. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/local_assets.rb +0 -101
  337. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/proxy.rb +0 -313
  338. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/proxy_param_builder.rb +0 -84
  339. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/reload_mode.rb +0 -34
  340. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/remote_watcher/json_files_update_job.rb +0 -35
  341. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/remote_watcher.rb +0 -44
  342. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/sse.rb +0 -75
  343. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/watcher.rb +0 -64
  344. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server/web_server.rb +0 -140
  345. package/dist/assets/cli-ruby/lib/shopify_cli/theme/dev_server.rb +0 -332
  346. package/dist/assets/cli-ruby/lib/shopify_cli/theme/development_theme.rb +0 -101
  347. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/app_extension.rb +0 -40
  348. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hooks/file_change_hook.rb +0 -76
  349. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hot_reload/script_injector.rb +0 -30
  350. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hot_reload.rb +0 -13
  351. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/local_assets.rb +0 -31
  352. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/proxy_param_builder.rb +0 -94
  353. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/watcher.rb +0 -49
  354. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server.rb +0 -175
  355. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/host_theme.rb +0 -109
  356. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/ignore_helper.rb +0 -35
  357. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer/extension_serve_job.rb +0 -120
  358. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer/operation.rb +0 -25
  359. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer.rb +0 -100
  360. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/ui/host_theme_progress_bar.rb +0 -35
  361. package/dist/assets/cli-ruby/lib/shopify_cli/theme/extension/ui/host_theme_raw_progress_bar.rb +0 -40
  362. package/dist/assets/cli-ruby/lib/shopify_cli/theme/file.rb +0 -133
  363. package/dist/assets/cli-ruby/lib/shopify_cli/theme/filter/path_matcher.rb +0 -38
  364. package/dist/assets/cli-ruby/lib/shopify_cli/theme/ignore_filter.rb +0 -112
  365. package/dist/assets/cli-ruby/lib/shopify_cli/theme/ignore_helper.rb +0 -37
  366. package/dist/assets/cli-ruby/lib/shopify_cli/theme/include_filter.rb +0 -67
  367. package/dist/assets/cli-ruby/lib/shopify_cli/theme/mime_type.rb +0 -34
  368. package/dist/assets/cli-ruby/lib/shopify_cli/theme/notifier.rb +0 -52
  369. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/api.rb +0 -109
  370. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/auth_dev_server.rb +0 -93
  371. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/auth_middleware.rb +0 -97
  372. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/remote_evaluator.rb +0 -166
  373. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/resources/success.html +0 -78
  374. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/resources/template.liquid +0 -15
  375. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl/snippet.rb +0 -81
  376. package/dist/assets/cli-ruby/lib/shopify_cli/theme/repl.rb +0 -88
  377. package/dist/assets/cli-ruby/lib/shopify_cli/theme/root.rb +0 -62
  378. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/checksums.rb +0 -66
  379. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/downloader.rb +0 -63
  380. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/error_reporter.rb +0 -45
  381. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/merger.rb +0 -53
  382. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/operation.rb +0 -49
  383. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/standard_reporter.rb +0 -32
  384. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/unsupported_script_warning.rb +0 -90
  385. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk.rb +0 -133
  386. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_item.rb +0 -64
  387. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_job.rb +0 -139
  388. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_request.rb +0 -30
  389. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/apply_to_all.rb +0 -41
  390. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/apply_to_all_form.rb +0 -37
  391. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/base_strategy_form.rb +0 -64
  392. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/select_delete_strategy.rb +0 -29
  393. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/select_update_strategy.rb +0 -30
  394. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/json_delete_handler.rb +0 -49
  395. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/json_update_handler.rb +0 -71
  396. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader.rb +0 -231
  397. package/dist/assets/cli-ruby/lib/shopify_cli/theme/syncer.rb +0 -391
  398. package/dist/assets/cli-ruby/lib/shopify_cli/theme/theme.rb +0 -212
  399. package/dist/assets/cli-ruby/lib/shopify_cli/theme/theme_access_api.rb +0 -89
  400. package/dist/assets/cli-ruby/lib/shopify_cli/theme/theme_admin_api.rb +0 -101
  401. package/dist/assets/cli-ruby/lib/shopify_cli/thread_pool/job.rb +0 -35
  402. package/dist/assets/cli-ruby/lib/shopify_cli/thread_pool.rb +0 -49
  403. package/dist/assets/cli-ruby/lib/shopify_cli/transform_data_structure.rb +0 -87
  404. package/dist/assets/cli-ruby/lib/shopify_cli/utilities.rb +0 -21
  405. package/dist/assets/cli-ruby/lib/shopify_cli/version.rb +0 -3
  406. package/dist/assets/cli-ruby/lib/shopify_cli.rb +0 -182
  407. package/dist/assets/cli-ruby/shipit.rubygems.yml +0 -3
  408. package/dist/assets/cli-ruby/shopify-cli.gemspec +0 -46
  409. package/dist/assets/cli-ruby/shopify-dev +0 -16
  410. package/dist/assets/cli-ruby/test/minitest_ext.rb +0 -115
  411. package/dist/assets/cli-ruby/test/project_types/extension/extension_test_helpers.rb +0 -70
  412. package/dist/assets/cli-ruby/test/shopify-cli/migrator/migrations/migration_helper.rb +0 -20
  413. package/dist/assets/cli-ruby/test/test_helpers.rb +0 -16
  414. package/dist/assets/cli-ruby/utilities/constants.rb +0 -7
  415. package/dist/assets/cli-ruby/utilities/docker/container.rb +0 -104
  416. package/dist/assets/cli-ruby/utilities/docker.rb +0 -89
  417. package/dist/assets/cli-ruby/utilities/utilities.rb +0 -6
  418. package/dist/assets/cli-ruby/vendor/deps/cli-kit/REVISION +0 -1
  419. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/autocall.rb +0 -21
  420. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/base_command.rb +0 -49
  421. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/command_registry.rb +0 -94
  422. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/config.rb +0 -133
  423. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/error_handler.rb +0 -123
  424. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/executor.rb +0 -79
  425. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/ini.rb +0 -102
  426. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/levenshtein.rb +0 -82
  427. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/logger.rb +0 -82
  428. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/resolver.rb +0 -60
  429. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/ruby_backports/enumerable.rb +0 -6
  430. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/support/test_helper.rb +0 -244
  431. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/support.rb +0 -9
  432. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/system.rb +0 -243
  433. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/util.rb +0 -193
  434. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/version.rb +0 -5
  435. package/dist/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit.rb +0 -60
  436. package/dist/assets/cli-ruby/vendor/deps/cli-ui/REVISION +0 -1
  437. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/ansi.rb +0 -157
  438. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/color.rb +0 -84
  439. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/formatter.rb +0 -193
  440. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_stack.rb +0 -98
  441. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/box.rb +0 -166
  442. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/bracket.rb +0 -139
  443. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style.rb +0 -120
  444. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame.rb +0 -269
  445. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/glyph.rb +0 -84
  446. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/os.rb +0 -73
  447. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/printer.rb +0 -59
  448. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/progress.rb +0 -90
  449. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/progress_plain.rb +0 -50
  450. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt/interactive_options.rb +0 -484
  451. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb +0 -29
  452. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt.rb +0 -282
  453. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner/async.rb +0 -40
  454. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner/spin_group.rb +0 -263
  455. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner.rb +0 -66
  456. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/stdout_router.rb +0 -232
  457. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/terminal.rb +0 -46
  458. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/truncater.rb +0 -102
  459. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/version.rb +0 -5
  460. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets/base.rb +0 -27
  461. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets/status.rb +0 -61
  462. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets.rb +0 -77
  463. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/wrap.rb +0 -56
  464. package/dist/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui.rb +0 -234
  465. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/LICENSE +0 -22
  466. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/README.md +0 -67
  467. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/Rakefile +0 -54
  468. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/lib/ruby2_keywords.rb +0 -57
  469. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/ruby2_keywords.gemspec +0 -18
  470. package/dist/assets/cli-ruby/vendor/deps/ruby2_keywords/test/test_keyword.rb +0 -41
  471. package/dist/assets/cli-ruby/vendor/deps/smart_properties/REVISION +0 -1
  472. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/errors.rb +0 -114
  473. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/property.rb +0 -168
  474. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/property_collection.rb +0 -83
  475. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/validations/ancestor.rb +0 -27
  476. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/validations.rb +0 -8
  477. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/version.rb +0 -3
  478. package/dist/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties.rb +0 -174
  479. package/dist/assets/cli-ruby/vendor/deps/webrick/Gemfile +0 -3
  480. package/dist/assets/cli-ruby/vendor/deps/webrick/LICENSE.txt +0 -22
  481. package/dist/assets/cli-ruby/vendor/deps/webrick/README.md +0 -61
  482. package/dist/assets/cli-ruby/vendor/deps/webrick/Rakefile +0 -10
  483. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/accesslog.rb +0 -157
  484. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/cgi.rb +0 -313
  485. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/compat.rb +0 -36
  486. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/config.rb +0 -158
  487. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/cookie.rb +0 -172
  488. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/htmlutils.rb +0 -30
  489. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/authenticator.rb +0 -117
  490. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/basicauth.rb +0 -116
  491. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/digestauth.rb +0 -395
  492. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htdigest.rb +0 -132
  493. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htgroup.rb +0 -97
  494. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htpasswd.rb +0 -158
  495. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/userdb.rb +0 -53
  496. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth.rb +0 -96
  497. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpproxy.rb +0 -354
  498. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httprequest.rb +0 -636
  499. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpresponse.rb +0 -564
  500. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/https.rb +0 -152
  501. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpserver.rb +0 -294
  502. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/abstract.rb +0 -152
  503. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/cgi_runner.rb +0 -47
  504. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/cgihandler.rb +0 -126
  505. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/erbhandler.rb +0 -88
  506. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/filehandler.rb +0 -552
  507. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb +0 -47
  508. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet.rb +0 -23
  509. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpstatus.rb +0 -194
  510. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httputils.rb +0 -512
  511. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpversion.rb +0 -76
  512. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/log.rb +0 -156
  513. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/server.rb +0 -381
  514. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/ssl.rb +0 -215
  515. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/utils.rb +0 -265
  516. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick/version.rb +0 -18
  517. package/dist/assets/cli-ruby/vendor/deps/webrick/lib/webrick.rb +0 -232
  518. package/dist/assets/cli-ruby/vendor/deps/webrick/webrick.gemspec +0 -74
  519. package/dist/assets/cli-ruby/vendor/gen/lib/gen/commands/help.rb +0 -20
  520. package/dist/assets/cli-ruby/vendor/gen/lib/gen/commands/new.rb +0 -21
  521. package/dist/assets/cli-ruby/vendor/gen/lib/gen/commands.rb +0 -18
  522. package/dist/assets/cli-ruby/vendor/gen/lib/gen/entry_point.rb +0 -10
  523. package/dist/assets/cli-ruby/vendor/gen/lib/gen/generator.rb +0 -165
  524. package/dist/assets/cli-ruby/vendor/gen/lib/gen.rb +0 -39
  525. package/dist/assets/cli-ruby/vendor/gen/template/Gemfile +0 -10
  526. package/dist/assets/cli-ruby/vendor/gen/template/README.md +0 -1
  527. package/dist/assets/cli-ruby/vendor/gen/template/bin/testunit +0 -23
  528. package/dist/assets/cli-ruby/vendor/gen/template/bin/update-deps +0 -97
  529. package/dist/assets/cli-ruby/vendor/gen/template/dev-gems.yml +0 -3
  530. package/dist/assets/cli-ruby/vendor/gen/template/dev-vendor.yml +0 -4
  531. package/dist/assets/cli-ruby/vendor/gen/template/exe/__app__-gems +0 -17
  532. package/dist/assets/cli-ruby/vendor/gen/template/exe/__app__-vendor +0 -18
  533. package/dist/assets/cli-ruby/vendor/gen/template/lib/__app__/commands/example.rb +0 -19
  534. package/dist/assets/cli-ruby/vendor/gen/template/lib/__app__/commands/help.rb +0 -21
  535. package/dist/assets/cli-ruby/vendor/gen/template/lib/__app__/commands.rb +0 -18
  536. package/dist/assets/cli-ruby/vendor/gen/template/lib/__app__/entry_point.rb +0 -10
  537. package/dist/assets/cli-ruby/vendor/gen/template/lib/__app__.rb +0 -33
  538. package/dist/assets/cli-ruby/vendor/gen/template/test/example_test.rb +0 -17
  539. package/dist/assets/cli-ruby/vendor/gen/template/test/test_helper.rb +0 -22
  540. package/dist/assets/cli-ruby/vendor/lib/semantic/LICENSE +0 -20
  541. package/dist/assets/cli-ruby/vendor/lib/semantic/semantic.rb +0 -4
  542. package/dist/assets/cli-ruby/vendor/lib/semantic/version.rb +0 -179
  543. package/dist/assets/demo-catalog.json +0 -655
  544. package/dist/chunk-CPEFXM7T.js +0 -45
  545. package/dist/chunk-FVUAIT37.js +0 -312
  546. package/dist/chunk-FWX3KCDM.js +0 -116
  547. package/dist/chunk-FX2HB3CJ.js +0 -58
  548. package/dist/chunk-GYP4MV72.js +0 -59
  549. package/dist/chunk-NLUGD7PZ.js +0 -2731
  550. package/dist/chunk-P7JUHQKL.js +0 -115
  551. package/dist/chunk-QSUS3GJF.js +0 -3838
  552. package/dist/chunk-T2GATXSP.js +0 -112
  553. package/dist/cli/commands/demo/catalog.js +0 -34
  554. package/dist/cli/commands/demo/generate-file.d.ts +0 -11
  555. package/dist/cli/commands/demo/generate-file.js +0 -35
  556. package/dist/cli/commands/demo/index.d.ts +0 -10
  557. package/dist/cli/commands/demo/index.js +0 -34
  558. package/dist/cli/commands/demo/print-ai-prompt.js +0 -35
  559. package/dist/cli/services/demo.d.ts +0 -26440
  560. package/dist/cli/services/demo.js +0 -25
  561. package/dist/cli/services/demo.test.js +0 -42
  562. package/dist/constants-T7JXE5K7.js +0 -24
  563. package/dist/system-SGABHAU2.js +0 -29
@@ -1,75 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ShopifyCLI
4
- module Theme
5
- class DevServer
6
- class HotReload
7
- def initialize(ctx, app, broadcast_hooks: [], script_injector: nil, watcher:, mode:)
8
- @ctx = ctx
9
- @app = app
10
- @mode = mode
11
- @broadcast_hooks = broadcast_hooks
12
- @script_injector = script_injector
13
- @streams = SSE::Streams.new
14
- @watcher = watcher
15
- @watcher.add_observer(self, :notify_streams_of_file_change)
16
- end
17
-
18
- def call(env)
19
- path = env["PATH_INFO"]
20
- if path == "/hot-reload"
21
- create_stream
22
- else
23
- status, headers, body = @app.call(env)
24
-
25
- if request_is_html?(headers) && leads_to_injectable_body?(path)
26
- body = inject_hot_reload_javascript(body)
27
- end
28
-
29
- [status, headers, body]
30
- end
31
- end
32
-
33
- def close
34
- @streams.close
35
- end
36
-
37
- def notify_streams_of_file_change(modified, added, removed)
38
- @broadcast_hooks.each do |hook|
39
- hook.call(modified, added, removed, streams: @streams)
40
- end
41
- end
42
-
43
- private
44
-
45
- def request_is_html?(headers)
46
- headers["content-type"]&.start_with?("text/html")
47
- end
48
-
49
- def leads_to_injectable_body?(path)
50
- path !~ /.+\/sandbox/
51
- end
52
-
53
- def inject_hot_reload_javascript(body)
54
- @script_injector&.inject(body: body, dir: __dir__, mode: @mode)
55
- end
56
-
57
- def create_stream
58
- stream = @streams.new
59
-
60
- @ctx.debug("[HotReload] Connected to SSE stream")
61
-
62
- [
63
- 200,
64
- {
65
- "Content-Type" => "text/event-stream",
66
- "Cache-Control" => "no-cache",
67
- "webrick.chunked" => true,
68
- },
69
- stream,
70
- ]
71
- end
72
- end
73
- end
74
- end
75
- end
@@ -1,101 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ShopifyCLI
4
- module Theme
5
- class DevServer
6
- class LocalAssets
7
- SUPPORTED_EXTENSIONS = [:js, :css].join("|")
8
- CDN_REGEX = %r{(//cdn)\.shopify\.com/s/.+?/(assets/.+?\.(?:#{SUPPORTED_EXTENSIONS}))}
9
- VANITY_CDN_REGEX = %r{(/cdn)/shop/.+?/(assets/.+?\.(?:#{SUPPORTED_EXTENSIONS}))}
10
-
11
- class FileBody
12
- def initialize(path)
13
- @path = path
14
- end
15
-
16
- # Naive implementation. Only used in unit tests.
17
- def each
18
- yield @path.read
19
- end
20
-
21
- # Rack will stream a body that responds to `to_path`
22
- def to_path
23
- @path.to_path
24
- end
25
- end
26
-
27
- def initialize(ctx, app, target)
28
- @ctx = ctx
29
- @app = app
30
- @target = target
31
- end
32
-
33
- def call(env)
34
- path_info = env["PATH_INFO"]
35
- if path_info.start_with?("/assets")
36
- # Serve from disk
37
- serve_file(path_info)
38
- else
39
- # Proxy the request, and replace the URLs in the response
40
- status, headers, body = @app.call(env)
41
- body = replace_asset_urls(body) unless path_info.start_with?("/fonts")
42
- [status, headers, body]
43
- end
44
- end
45
-
46
- def shop_regex
47
- %r{(http:|https:)?//#{shop}/(assets/.+?\.(?:#{SUPPORTED_EXTENSIONS}))}
48
- end
49
-
50
- private
51
-
52
- def replace_asset_urls(body)
53
- replaced_body = body.join
54
- [CDN_REGEX, VANITY_CDN_REGEX, shop_regex].each do |regex|
55
- replaced_body = replaced_body.gsub(regex) do |match|
56
- path = Regexp.last_match[2]
57
- @target.static_asset_paths.include?(path) ? "/#{path}" : match
58
- end
59
- end
60
-
61
- [replaced_body]
62
- rescue ArgumentError => error
63
- return [body.join] if error.message.include?("invalid byte sequence")
64
-
65
- raise error
66
- end
67
-
68
- def serve_fail(status, body)
69
- [
70
- status,
71
- {
72
- "Content-Type" => "text/plain",
73
- "Content-Length" => body.size.to_s,
74
- },
75
- [body],
76
- ]
77
- end
78
-
79
- def serve_file(path_info)
80
- path = @target.root.join(path_info[1..-1])
81
- if path.file? && path.readable? && @target.static_asset_file?(path)
82
- [
83
- 200,
84
- {
85
- "Content-Type" => MimeType.by_filename(path).to_s,
86
- "Content-Length" => path.size.to_s,
87
- },
88
- FileBody.new(path),
89
- ]
90
- else
91
- serve_fail(404, "Not found")
92
- end
93
- end
94
-
95
- def shop
96
- @shop ||= ShopifyCLI::Theme::ThemeAdminAPI.new(@ctx).get_shop_or_abort
97
- end
98
- end
99
- end
100
- end
101
- end
@@ -1,313 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "stringio"
4
- require "time"
5
- require "cgi"
6
- require "net/http"
7
-
8
- require_relative "header_hash"
9
- require_relative "proxy_param_builder"
10
-
11
- module ShopifyCLI
12
- module Theme
13
- class DevServer
14
- HOP_BY_HOP_HEADERS = [
15
- "connection",
16
- "keep-alive",
17
- "proxy-authenticate",
18
- "proxy-authorization",
19
- "te",
20
- "trailer",
21
- "transfer-encoding",
22
- "upgrade",
23
- "content-security-policy",
24
- "content-length",
25
- ]
26
-
27
- class Proxy
28
- SESSION_COOKIE_NAME = "_shopify_essential"
29
- SESSION_COOKIE_REGEXP = /#{SESSION_COOKIE_NAME}=([^;]*)(;|$)/
30
- SESSION_COOKIE_MAX_AGE = 60 * 60 * 23 # 1 day - leeway of 1h
31
- IGNORED_ENDPOINTS = %w[
32
- shopify/monorail
33
- mini-profiler-resources
34
- web-pixels-manager
35
- wpm
36
- ]
37
-
38
- def initialize(ctx, theme, param_builder, cache_cleaned = false)
39
- @ctx = ctx
40
- @theme = theme
41
- @param_builder = param_builder
42
- @cache_cleaned = cache_cleaned
43
-
44
- @core_endpoints = Set.new
45
- @secure_session_id = nil
46
- @last_session_cookie_refresh = nil
47
- end
48
-
49
- def call(env)
50
- return [204, {}, []] if IGNORED_ENDPOINTS.any? { |endpoint| env["PATH_INFO"].include?(endpoint) }
51
-
52
- headers = extract_http_request_headers(env)
53
- is_chrome = headers["User-Agent"] =~ /[Cc]hrome/
54
- headers["Host"] = shop
55
- headers["Cookie"] = add_session_cookie(headers["Cookie"])
56
- headers["Accept-Encoding"] = "none"
57
- headers["User-Agent"] = "Shopify CLI"
58
- query = URI.decode_www_form(env["QUERY_STRING"])
59
- replace_templates = build_replacement_param(env)
60
-
61
- response = set_preview_theme_id(env, query, headers)
62
- return serve_response(response, env) if response
63
-
64
- response = if replace_templates.any?
65
- # Pass to SFR the recently modified templates in `replace_templates` or
66
- # `replace_extension_templates` body param
67
- headers["Authorization"] = "Bearer #{bearer_token}"
68
- form_data = URI.decode_www_form(env["rack.input"].read).to_h
69
- request(
70
- "POST", env["PATH_INFO"],
71
- headers: headers,
72
- query: query,
73
- form_data: form_data.merge(replace_templates).merge(_method: env["REQUEST_METHOD"])
74
- )
75
- else
76
- request(
77
- env["REQUEST_METHOD"], env["PATH_INFO"],
78
- headers: headers,
79
- query: query,
80
- body_stream: (env["rack.input"] if has_body?(headers))
81
- )
82
- end
83
-
84
- headers = get_response_headers(response, env)
85
- headers = modify_headers(headers) unless is_chrome
86
-
87
- unless headers["x-storefront-renderer-rendered"]
88
- @core_endpoints << env["PATH_INFO"]
89
- end
90
-
91
- serve_response(response, env, headers)
92
- end
93
-
94
- def secure_session_id
95
- if secure_session_id_expired?
96
- @ctx.debug("Refreshing preview _shopify_essential cookie")
97
- response = request("HEAD", "/", query: [[:preview_theme_id, theme_id]])
98
- @secure_session_id = extract_shopify_essential_from_response_headers(response)
99
- @last_session_cookie_refresh = Time.now
100
- end
101
-
102
- @secure_session_id
103
- end
104
-
105
- private
106
-
107
- def serve_response(response, env, headers = get_response_headers(response, env))
108
- body = patch_body(env, response.body)
109
- body = [body] unless body.respond_to?(:each)
110
- [response.code, headers, body]
111
- end
112
-
113
- def set_preview_theme_id(env, query, headers)
114
- if env["PATH_INFO"].start_with?("/password")
115
- @cache_cleaned = false
116
- return
117
- end
118
-
119
- return if @cache_cleaned
120
-
121
- @cache_cleaned = true
122
-
123
- query = query.dup
124
- query << ["preview_theme_id", theme_id]
125
-
126
- request(
127
- env["REQUEST_METHOD"], env["PATH_INFO"],
128
- headers: headers,
129
- query: query,
130
- body_stream: (env["rack.input"] if has_body?(headers))
131
- )
132
- end
133
-
134
- def patch_body(env, body)
135
- return [""] unless body
136
-
137
- # Patch custom font asset urls
138
- body = body.gsub(
139
- %r{(url\((["']))?(http:|https:)?//#{shop}(?!/cdn/fonts)(/.*?\.(woff2?|eot|ttf))(\?[^'"\)]*)?(\2\))?\s*}
140
- ) do |_|
141
- match = Regexp.last_match
142
- "#{match[1]}http://#{host(env)}#{match[4]}#{match[6]}#{match[7]} "
143
- end
144
-
145
- # Patch data-base-url attributes
146
- body = body.gsub(%r{(data-base-url=(["']))(http:|https:)?//#{shop}(.*?)(\2)}) do |_|
147
- match = Regexp.last_match
148
- "#{match[1]}http://#{host(env)}#{match[4]}#{match[5]}"
149
- end
150
-
151
- body
152
- end
153
-
154
- def host(env)
155
- env["HTTP_HOST"]
156
- end
157
-
158
- def has_body?(headers)
159
- headers["Content-Length"] || headers["Transfer-Encoding"]
160
- end
161
-
162
- def bearer_token
163
- Environment.storefront_renderer_auth_token ||
164
- ShopifyCLI::DB.get(:storefront_renderer_production_exchange_token) ||
165
- raise(KeyError, "storefront_renderer_production_exchange_token missing")
166
- end
167
-
168
- def extract_http_request_headers(env)
169
- headers = HeaderHash.new
170
-
171
- env.each do |name, value|
172
- next if value.nil?
173
-
174
- if /^HTTP_[A-Z0-9_]+$/.match?(name) || name == "CONTENT_TYPE" || name == "CONTENT_LENGTH"
175
- headers[reconstruct_header_name(name)] = value
176
- end
177
- end
178
-
179
- x_forwarded_for = (headers["X-Forwarded-For"].to_s.split(/, +/) << env["REMOTE_ADDR"]).join(", ")
180
- headers["X-Forwarded-For"] = x_forwarded_for
181
-
182
- headers
183
- end
184
-
185
- def normalize_headers(headers)
186
- mapped = headers.map do |k, v|
187
- [k, v.is_a?(Array) ? v.join("\n") : v]
188
- end
189
- HeaderHash.new(Hash[mapped])
190
- end
191
-
192
- def reconstruct_header_name(name)
193
- name.sub(/^HTTP_/, "").gsub("_", "-")
194
- end
195
-
196
- def add_session_cookie(cookie_header)
197
- cookie_header = if cookie_header
198
- cookie_header.dup
199
- else
200
- +""
201
- end
202
-
203
- expected_session_cookie = "#{SESSION_COOKIE_NAME}=#{secure_session_id};"
204
-
205
- unless cookie_header.include?(SESSION_COOKIE_NAME)
206
- cookie_header << "; " unless cookie_header.empty?
207
- cookie_header << expected_session_cookie
208
- end
209
-
210
- cookie_header
211
- end
212
-
213
- def secure_session_id_expired?
214
- return true unless @secure_session_id && @last_session_cookie_refresh
215
-
216
- Time.now - @last_session_cookie_refresh >= SESSION_COOKIE_MAX_AGE
217
- end
218
-
219
- def extract_shopify_essential_from_response_headers(headers)
220
- return unless headers["set-cookie"]
221
-
222
- headers["set-cookie"][SESSION_COOKIE_REGEXP, 1]
223
- end
224
-
225
- def get_response_headers(response, env)
226
- response_headers = normalize_headers(
227
- response.respond_to?(:headers) ? response.headers : response.to_hash,
228
- )
229
- # According to https://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-14#section-7.1.3.1Acc
230
- # should remove hop-by-hop header fields
231
- # (Taken from Rack::Proxy)
232
- response_headers.reject! { |k| HOP_BY_HOP_HEADERS.include?(k.downcase) }
233
-
234
- if response_headers["location"]&.include?("myshopify.com") ||
235
- response_headers["location"]&.include?("spin.dev")
236
- response_headers["location"].gsub!(%r{(https://#{shop})}, "http://#{host(env)}")
237
- end
238
-
239
- new_session_id = extract_shopify_essential_from_response_headers(response_headers)
240
- if new_session_id
241
- @ctx.debug("Renew _shopify_essential cookie by the response")
242
- @secure_session_id = secure_session_id
243
- end
244
-
245
- response_headers
246
- end
247
-
248
- def request(method, path, headers: nil, query: [], form_data: nil, body_stream: nil)
249
- uri = URI.join("https://#{shop}", path)
250
-
251
- if proxy_via_theme_access_app?(path)
252
- headers = headers ? headers.slice("ACCEPT", "CONTENT-TYPE", "CONTENT-LENGTH", "Cookie") : {}
253
- headers.merge!({
254
- "X-Shopify-Access-Token" => Environment.admin_auth_token,
255
- "X-Shopify-Shop" => shop,
256
- })
257
- uri = URI.join("https://#{ShopifyCLI::Constants::ThemeKitAccess::BASE_URL}", "cli/sfr#{path}")
258
- end
259
-
260
- uri.query = URI.encode_www_form(query + [[:_fd, 0], [:pb, 0]])
261
-
262
- @ctx.debug("Proxying #{method} #{uri}")
263
-
264
- Net::HTTP.start(uri.host, 443, use_ssl: true) do |http|
265
- req_class = Net::HTTP.const_get(method.capitalize)
266
- req = req_class.new(uri)
267
- req.initialize_http_header(headers) if headers
268
- req.set_form_data(form_data) if form_data
269
- req.body_stream = body_stream if body_stream
270
- response = http.request(req)
271
- @ctx.debug("`-> #{response.code} request_id: #{response["x-request-id"]}")
272
- response
273
- end
274
- end
275
-
276
- def shop
277
- @shop ||= @theme.shop
278
- end
279
-
280
- def theme_id
281
- @theme_id ||= @theme.id
282
- end
283
-
284
- def build_replacement_param(env)
285
- @param_builder
286
- .with_core_endpoints(@core_endpoints)
287
- .with_rack_env(env)
288
- .build
289
- end
290
-
291
- def proxy_via_theme_access_app?(path)
292
- return false unless Environment.theme_access_password?
293
- return false if path == "/localization"
294
- return false if path.start_with?("/cart/")
295
-
296
- true
297
- end
298
-
299
- def modify_headers(headers)
300
- if headers["set-cookie"]&.include?("storefront_digest")
301
- headers["set-cookie"] = modify_set_cookie_header_for_safari(headers["set-cookie"])
302
- end
303
-
304
- headers
305
- end
306
-
307
- def modify_set_cookie_header_for_safari(set_cookie_header)
308
- set_cookie_header.gsub("secure;", "secure: false;")
309
- end
310
- end
311
- end
312
- end
313
- end
@@ -1,84 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "cgi"
4
-
5
- module ShopifyCLI
6
- module Theme
7
- class DevServer
8
- class ProxyParamBuilder
9
- def build
10
- # Core doesn't support replace_templates
11
- return {} if core?(current_path)
12
-
13
- (syncer_templates + request_templates)
14
- .select { |file| file.liquid? || file.json? }
15
- .uniq(&:relative_path)
16
- .map { |file| as_param(file) }
17
- .to_h
18
- end
19
-
20
- def with_core_endpoints(core_endpoints)
21
- @core_endpoints = core_endpoints
22
- self
23
- end
24
-
25
- def with_syncer(syncer)
26
- @syncer = syncer
27
- self
28
- end
29
-
30
- def with_rack_env(rack_env)
31
- @rack_env = rack_env
32
- self
33
- end
34
-
35
- def with_theme(theme)
36
- @theme = theme
37
- self
38
- end
39
-
40
- private
41
-
42
- def as_param(file)
43
- ["replace_templates[#{file.relative_path}]", file.read]
44
- end
45
-
46
- def syncer_templates
47
- @syncer&.pending_updates || []
48
- end
49
-
50
- def request_templates
51
- cookie_sections
52
- .map { |section| @theme[section] unless @theme.nil? }
53
- .compact
54
- end
55
-
56
- def cookie_sections
57
- CGI::Cookie.parse(cookie)["hot_reload_files"].join.split(",") || []
58
- rescue StandardError
59
- []
60
- end
61
-
62
- def core?(path)
63
- core_endpoints.include?(path)
64
- end
65
-
66
- def current_path
67
- rack_env["PATH_INFO"]
68
- end
69
-
70
- def cookie
71
- rack_env["HTTP_COOKIE"]
72
- end
73
-
74
- def core_endpoints
75
- @core_endpoints || []
76
- end
77
-
78
- def rack_env
79
- @rack_env || {}
80
- end
81
- end
82
- end
83
- end
84
- end
@@ -1,34 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ShopifyCLI
4
- module Theme
5
- class DevServer
6
- class ReloadMode
7
- MODES = [:"hot-reload", :"full-page", :off]
8
-
9
- class << self
10
- def default
11
- :"hot-reload"
12
- end
13
-
14
- def get!(mode)
15
- MODES.find { |m| m == mode.to_sym } || raise_error(mode)
16
- end
17
-
18
- private
19
-
20
- def raise_error(invalid_mode)
21
- error_message = ShopifyCLI::Context.message("theme.serve.reload_mode_is_not_valid", invalid_mode)
22
- help_message = ShopifyCLI::Context.message("theme.serve.try_a_valid_reload_mode", valid_modes)
23
-
24
- ShopifyCLI::Context.abort(error_message, help_message)
25
- end
26
-
27
- def valid_modes
28
- MODES.map { |v| "`#{v}`" }.join(", ")
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "shopify_cli/thread_pool/job"
4
-
5
- module ShopifyCLI
6
- module Theme
7
- class DevServer
8
- class RemoteWatcher
9
- class JsonFilesUpdateJob < ShopifyCLI::ThreadPool::Job
10
- def initialize(theme, syncer, interval)
11
- super(interval)
12
-
13
- @theme = theme
14
- @syncer = syncer
15
- end
16
-
17
- def perform!
18
- @syncer.fetch_checksums!
19
- @syncer.enqueue_get(json_files)
20
- end
21
-
22
- private
23
-
24
- def json_files
25
- @theme
26
- .json_files
27
- .reject { |file| @syncer.pending_updates.include?(file) }
28
- .reject { |file| @syncer.broken_file?(file) }
29
- .reject { |file| @syncer.ignore_file?(file) }
30
- end
31
- end
32
- end
33
- end
34
- end
35
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "shopify_cli/thread_pool"
4
-
5
- require_relative "remote_watcher/json_files_update_job"
6
-
7
- module ShopifyCLI
8
- module Theme
9
- class DevServer
10
- class RemoteWatcher
11
- SYNC_INTERVAL = 3 # seconds
12
-
13
- class << self
14
- def to(theme:, syncer:)
15
- new(theme, syncer)
16
- end
17
- end
18
-
19
- def start
20
- thread_pool.schedule(recurring_job)
21
- end
22
-
23
- def stop
24
- thread_pool.shutdown
25
- end
26
-
27
- private
28
-
29
- def initialize(theme, syncer)
30
- @theme = theme
31
- @syncer = syncer
32
- end
33
-
34
- def thread_pool
35
- @thread_pool ||= ShopifyCLI::ThreadPool.new(pool_size: 1)
36
- end
37
-
38
- def recurring_job
39
- JsonFilesUpdateJob.new(@theme, @syncer, SYNC_INTERVAL)
40
- end
41
- end
42
- end
43
- end
44
- end