shopify 3.94.3 → 4.0.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 (295) hide show
  1. package/bin/run.js +5 -1
  2. package/dist/analytics-6IHHYAV6.js +1 -0
  3. package/dist/analytics-KKVP5DT3.js +1 -0
  4. package/dist/bootstrap.d.ts +5 -0
  5. package/dist/bootstrap.js +3 -0
  6. package/dist/chunk-22PCRFG4.js +1 -0
  7. package/dist/chunk-26D72ZNV.js +1 -0
  8. package/dist/chunk-2APPXD5Z.js +2 -0
  9. package/dist/chunk-2I4PRX2I.js +1 -0
  10. package/dist/chunk-2VQJQ36C.js +103 -0
  11. package/dist/chunk-323UTVMM.js +1 -0
  12. package/dist/chunk-3DQIVE24.js +9 -0
  13. package/dist/chunk-3F6NZK7S.js +2 -0
  14. package/dist/chunk-3LVGAQB4.js +1 -0
  15. package/dist/chunk-3TNEIDOD.js +1 -0
  16. package/dist/chunk-3VZEETAV.js +1 -0
  17. package/dist/chunk-4G7J6HIV.js +1 -0
  18. package/dist/chunk-4HHXSMD7.js +10 -0
  19. package/dist/chunk-4LNCYIS3.js +1 -0
  20. package/dist/chunk-4ZGSSQC6.js +1 -0
  21. package/dist/chunk-52GC6XUT.js +1 -0
  22. package/dist/chunk-5CH3B62S.js +2 -0
  23. package/dist/chunk-5Y7GIF2W.js +1 -0
  24. package/dist/chunk-66RJ5T7A.js +102 -0
  25. package/dist/chunk-6B53BWJW.js +1 -0
  26. package/dist/chunk-6BMMB2UO.js +1 -0
  27. package/dist/chunk-6HBRBQAN.js +6 -0
  28. package/dist/chunk-6M3ZYNGO.js +451 -0
  29. package/dist/chunk-6TZAAS5H.js +1 -0
  30. package/dist/chunk-72F3YBNA.js +1 -0
  31. package/dist/chunk-74HYYXXE.js +17 -0
  32. package/dist/chunk-75VPUOC5.js +1 -0
  33. package/dist/chunk-7BGM2GAH.js +1 -0
  34. package/dist/chunk-7UYZQN4V.js +18 -0
  35. package/dist/chunk-A74GETYC.js +1 -0
  36. package/dist/chunk-AIV5RI3X.js +1 -0
  37. package/dist/chunk-ALKTLKQ6.js +5 -0
  38. package/dist/chunk-B2EHO7ZC.js +847 -0
  39. package/dist/chunk-B2IVY4V5.js +1 -0
  40. package/dist/chunk-BDVAE5MS.js +28 -0
  41. package/dist/chunk-CERXUPGC.js +14 -0
  42. package/dist/chunk-D3TSJA5S.js +1 -0
  43. package/dist/chunk-D6JARNEH.js +1 -0
  44. package/dist/chunk-DFMQWJQ3.js +3 -0
  45. package/dist/chunk-DJONKJSZ.js +1 -0
  46. package/dist/chunk-DJQVNH7P.js +567 -0
  47. package/dist/chunk-DU4WR4OP.js +1 -0
  48. package/dist/chunk-ELVFJ7BR.js +4 -0
  49. package/dist/chunk-ELYP4KFP.js +8 -0
  50. package/dist/chunk-FFQ5EWII.js +294 -0
  51. package/dist/chunk-FUOIGXI4.js +1 -0
  52. package/dist/chunk-GD7FWXJ5.js +2 -0
  53. package/dist/chunk-GFEAKSGV.js +374 -0
  54. package/dist/chunk-GFJ7UV74.js +1 -0
  55. package/dist/chunk-GNPS5SBU.js +1 -0
  56. package/dist/chunk-GOJ2QHSR.js +1 -0
  57. package/dist/chunk-HSK7YMRE.js +359 -0
  58. package/dist/chunk-HUZUORYM.js +19 -0
  59. package/dist/chunk-HZA6IAA4.js +1 -0
  60. package/dist/chunk-IASVAERO.js +1 -0
  61. package/dist/chunk-IIIVWD4R.js +1 -0
  62. package/dist/chunk-INEU4XKS.js +6 -0
  63. package/dist/chunk-IOLVEXM6.js +1 -0
  64. package/dist/chunk-IU2ZQ6TE.js +2 -0
  65. package/dist/chunk-IX5ICOBV.js +7 -0
  66. package/dist/chunk-J3KVONB3.js +6 -0
  67. package/dist/chunk-JGXWQULI.js +1 -0
  68. package/dist/chunk-JHPRFW5B.js +19 -0
  69. package/dist/chunk-JLBH7RCF.js +4 -0
  70. package/dist/chunk-JPGO36XP.js +1 -0
  71. package/dist/chunk-JUVAGMIH.js +1 -0
  72. package/dist/chunk-JVIKCGDY.js +1 -0
  73. package/dist/chunk-K2WUCOQJ.js +32 -0
  74. package/dist/chunk-K5YV6UVF.js +4 -0
  75. package/dist/chunk-KBQ4LGFB.js +1 -0
  76. package/dist/chunk-KGXQS7LS.js +1 -0
  77. package/dist/chunk-KL5Z3T6L.js +1 -0
  78. package/dist/chunk-KLMDWDT2.js +1 -0
  79. package/dist/chunk-KNVM7N3U.js +1 -0
  80. package/dist/chunk-KWJ562F2.js +12 -0
  81. package/dist/chunk-LALIKZPS.js +5 -0
  82. package/dist/chunk-LAZJ47DZ.js +6 -0
  83. package/dist/chunk-LDGAHMS7.js +159 -0
  84. package/dist/chunk-LNHLDRC5.js +1 -0
  85. package/dist/chunk-LW7U753G.js +1 -0
  86. package/dist/chunk-LX3ZOW52.js +12 -0
  87. package/dist/chunk-LXFJDCNG.js +1 -0
  88. package/dist/chunk-MBAFWQSZ.js +7 -0
  89. package/dist/chunk-MOA33ZFO.js +1 -0
  90. package/dist/chunk-MQNYGGAM.js +1 -0
  91. package/dist/chunk-N5YIPQ6J.js +1 -0
  92. package/dist/chunk-N7RBSKYT.js +1 -0
  93. package/dist/chunk-NF2ABOOU.js +1 -0
  94. package/dist/chunk-NRAFVIU3.js +1 -0
  95. package/dist/chunk-OCOY5MV2.js +1 -0
  96. package/dist/chunk-ODNGDO4H.js +50 -0
  97. package/dist/chunk-OHY4ZL3U.js +2 -0
  98. package/dist/chunk-OLZHWPZP.js +1 -0
  99. package/dist/chunk-OUOYKNMY.js +1 -0
  100. package/dist/chunk-OXPWCC7I.js +64 -0
  101. package/dist/chunk-P5VVOLGV.js +1 -0
  102. package/dist/chunk-P6XE4MH5.js +1 -0
  103. package/dist/chunk-P7R7FBY2.js +3 -0
  104. package/dist/chunk-PD5ZHJWI.js +1 -0
  105. package/dist/chunk-PIBY5DDZ.js +1 -0
  106. package/dist/chunk-Q7ING5F5.js +1 -0
  107. package/dist/chunk-QFWIDATO.js +1 -0
  108. package/dist/chunk-QRRNOVJ3.js +1 -0
  109. package/dist/chunk-QSTEVZFQ.js +1 -0
  110. package/dist/chunk-R466TU3N.js +2 -0
  111. package/dist/chunk-RF2DPBA6.js +1 -0
  112. package/dist/chunk-RFG5RMPL.js +1 -0
  113. package/dist/chunk-RM5SJJN6.js +559 -0
  114. package/dist/chunk-RVNMVBPM.js +1 -0
  115. package/dist/chunk-SBEZBZM7.js +144 -0
  116. package/dist/chunk-SGQ6D3LU.js +15 -0
  117. package/dist/chunk-SRCQVUMC.js +1 -0
  118. package/dist/chunk-TFSBQ4RY.js +5 -0
  119. package/dist/chunk-TQYMC7TH.js +1 -0
  120. package/dist/chunk-UGDBJTLP.js +6 -0
  121. package/dist/chunk-UGXYQ23Y.js +1411 -0
  122. package/dist/chunk-UWJ73J4B.js +1 -0
  123. package/dist/chunk-V2CNCPIE.js +2 -0
  124. package/dist/chunk-VBUZWRUL.js +1 -0
  125. package/dist/chunk-VS3T5YOG.js +264 -0
  126. package/dist/chunk-VWYM4OWK.js +1 -0
  127. package/dist/chunk-VY6SNDKW.js +3 -0
  128. package/dist/chunk-WDC3KIZT.js +2 -0
  129. package/dist/chunk-WFXRSKRK.js +1 -0
  130. package/dist/chunk-WXVZJJOR.js +16 -0
  131. package/dist/chunk-WZBSLU4Q.js +6 -0
  132. package/dist/chunk-XBXMPFXM.js +1 -0
  133. package/dist/chunk-XEFQQPL4.js +1 -0
  134. package/dist/chunk-XLELNRFF.js +3 -0
  135. package/dist/chunk-XNO6DZYP.js +1 -0
  136. package/dist/chunk-Y5JKV2AI.js +1 -0
  137. package/dist/chunk-YC6G4MHD.js +3 -0
  138. package/dist/chunk-YI232QLS.js +1 -0
  139. package/dist/chunk-YMWHHINU.js +1 -0
  140. package/dist/chunk-YOZNRLFC.js +1 -0
  141. package/dist/chunk-YZDDTYTU.js +11 -0
  142. package/dist/chunk-Z35BTAM6.js +2 -0
  143. package/dist/chunk-ZR76GGZ6.js +5 -0
  144. package/dist/chunk-ZTMSBSYD.js +1 -0
  145. package/dist/chunk-ZV6NCNI4.js +586 -0
  146. package/dist/chunk-ZVJVDCIM.js +1 -0
  147. package/dist/cli/commands/app/app-logs/sources.js +2 -0
  148. package/dist/cli/commands/app/build.js +1 -0
  149. package/dist/cli/commands/app/bulk/cancel.js +1 -0
  150. package/dist/cli/commands/app/bulk/execute.js +9 -0
  151. package/dist/cli/commands/app/bulk/status.js +5 -0
  152. package/dist/cli/commands/app/config/link.js +4 -0
  153. package/dist/cli/commands/app/config/pull.js +1 -0
  154. package/dist/cli/commands/app/config/use.js +1 -0
  155. package/dist/cli/commands/app/config/validate.js +3 -0
  156. package/dist/cli/commands/app/demo/watcher.js +1 -0
  157. package/dist/cli/commands/app/deploy.js +22 -0
  158. package/dist/cli/commands/app/dev/clean.js +5 -0
  159. package/dist/cli/commands/app/dev.js +320 -0
  160. package/dist/cli/commands/app/env/pull.js +11 -0
  161. package/dist/cli/commands/app/env/show.js +1 -0
  162. package/dist/cli/commands/app/execute.js +1 -0
  163. package/dist/cli/commands/app/function/build.js +1 -0
  164. package/dist/cli/commands/app/function/info.js +16 -0
  165. package/dist/cli/commands/app/function/replay.js +5 -0
  166. package/dist/cli/commands/app/function/run.js +1 -0
  167. package/dist/cli/commands/app/function/schema.js +1 -0
  168. package/dist/cli/commands/app/function/typegen.js +1 -0
  169. package/dist/cli/commands/app/generate/extension.js +5 -0
  170. package/dist/cli/commands/app/import-custom-data-definitions.js +4 -0
  171. package/dist/cli/commands/app/import-extensions.js +1 -0
  172. package/dist/cli/commands/app/info.js +11 -0
  173. package/dist/cli/commands/app/init.js +10 -0
  174. package/dist/cli/commands/app/logs.js +2 -0
  175. package/dist/cli/commands/app/release.js +4 -0
  176. package/dist/cli/commands/app/versions/list.js +1 -0
  177. package/dist/cli/commands/app/webhook/trigger.js +25 -0
  178. package/dist/cli/commands/auth/login.js +1 -20
  179. package/dist/cli/commands/auth/logout.js +1 -12
  180. package/dist/cli/commands/cache/clear.js +1 -11
  181. package/dist/cli/commands/config/autoupgrade/constants.d.ts +0 -1
  182. package/dist/cli/commands/config/autoupgrade/constants.js +1 -6
  183. package/dist/cli/commands/config/autoupgrade/off.js +1 -22
  184. package/dist/cli/commands/config/autoupgrade/on.js +1 -22
  185. package/dist/cli/commands/config/autoupgrade/status.js +1 -30
  186. package/dist/cli/commands/debug/command-flags.js +1 -79
  187. package/dist/cli/commands/docs/generate.js +1 -157
  188. package/dist/cli/commands/doctor-release/doctor-release.js +1 -25
  189. package/dist/cli/commands/doctor-release/theme/index.js +1 -56
  190. package/dist/cli/commands/help.js +1 -26
  191. package/dist/cli/commands/kitchen-sink/async.js +1 -16
  192. package/dist/cli/commands/kitchen-sink/index.js +1 -21
  193. package/dist/cli/commands/kitchen-sink/prompts.js +1 -16
  194. package/dist/cli/commands/kitchen-sink/static.js +1 -16
  195. package/dist/cli/commands/notifications/generate.js +1 -11
  196. package/dist/cli/commands/notifications/list.js +1 -33
  197. package/dist/cli/commands/organization/list.js +1 -0
  198. package/dist/cli/commands/search.js +1 -27
  199. package/dist/cli/commands/theme/check.js +1 -0
  200. package/dist/cli/commands/theme/console.js +15 -0
  201. package/dist/cli/commands/theme/delete.js +7 -0
  202. package/dist/cli/commands/theme/dev.js +26 -0
  203. package/dist/cli/commands/theme/duplicate.js +32 -0
  204. package/dist/cli/commands/theme/info.js +1 -0
  205. package/dist/cli/commands/theme/init.js +8 -0
  206. package/dist/cli/commands/theme/language-server.js +1 -0
  207. package/dist/cli/commands/theme/list.js +1 -0
  208. package/dist/cli/commands/theme/metafields/pull.js +3 -0
  209. package/dist/cli/commands/theme/open.js +8 -0
  210. package/dist/cli/commands/theme/package.js +7 -0
  211. package/dist/cli/commands/theme/preview.js +1 -0
  212. package/dist/cli/commands/theme/profile.js +3 -0
  213. package/dist/cli/commands/theme/publish.js +7 -0
  214. package/dist/cli/commands/theme/pull.js +3 -0
  215. package/dist/cli/commands/theme/push.js +28 -0
  216. package/dist/cli/commands/theme/rename.js +6 -0
  217. package/dist/cli/commands/theme/share.js +3 -0
  218. package/dist/cli/commands/upgrade.js +1 -17
  219. package/dist/cli/commands/version.js +1 -10
  220. package/dist/command-registry.d.ts +8 -0
  221. package/dist/command-registry.js +1 -0
  222. package/dist/conf-store-U5ZITKJN.js +1 -0
  223. package/dist/custom-oclif-loader-DVFFWCBV.js +1 -0
  224. package/dist/deprecations-TU5UQJVV.js +1 -0
  225. package/dist/dist-2Z5TND4U.js +1 -0
  226. package/dist/dist-GYHFDHKP.js +1 -0
  227. package/dist/environments-Z5PR7DSI.js +1 -0
  228. package/dist/error-IJGNYKZ3.js +1 -0
  229. package/dist/error-handler-WSCGNS2P.js +1 -0
  230. package/dist/fs-5BDEA2KD.js +1 -0
  231. package/dist/hooks/app-init.d.ts +9 -0
  232. package/dist/hooks/app-init.js +1 -0
  233. package/dist/hooks/did-you-mean.d.ts +1 -0
  234. package/dist/hooks/did-you-mean.js +1 -0
  235. package/dist/hooks/hydrogen-init.d.ts +7 -0
  236. package/dist/hooks/hydrogen-init.js +1 -0
  237. package/dist/hooks/plugin-plugins.d.ts +1 -0
  238. package/dist/hooks/plugin-plugins.js +1 -0
  239. package/dist/hooks/postrun.js +1 -1
  240. package/dist/hooks/prerun.js +1 -1
  241. package/dist/hooks/public-metadata.d.ts +1 -0
  242. package/dist/hooks/public-metadata.js +1 -0
  243. package/dist/hooks/sensitive-metadata.d.ts +1 -0
  244. package/dist/hooks/sensitive-metadata.js +1 -0
  245. package/dist/hooks/tunnel-provider.d.ts +1 -0
  246. package/dist/hooks/tunnel-provider.js +1 -0
  247. package/dist/hooks/tunnel-start.d.ts +1 -0
  248. package/dist/hooks/tunnel-start.js +1 -0
  249. package/dist/http-proxy-node16-Q5DZMBHC.js +38 -0
  250. package/dist/index.js +254 -3668
  251. package/dist/is-global-V4ZRHQG2.js +1 -0
  252. package/dist/latest-version-EFWBOTWM.js +49 -0
  253. package/dist/lib-5L7UKDEK.js +1 -0
  254. package/dist/lib-C3VO2BQW.js +1 -0
  255. package/dist/lib-QB6I6CTC.js +1 -0
  256. package/dist/local-6QPX4GCJ.js +1 -0
  257. package/dist/local-storage-JLXBZVWO.js +1 -0
  258. package/dist/metadata-UDMOTRS7.js +1 -0
  259. package/dist/{morph-DQREIZD2.js → morph-EMYAITFM.js} +1 -1
  260. package/dist/node-package-manager-HAFRYGUM.js +1 -0
  261. package/dist/notifications-system-MP7WDOCS.js +1 -0
  262. package/dist/npa-ICFSA3NL.js +1 -0
  263. package/dist/output-YGMHXEIS.js +1 -0
  264. package/dist/{path-HUAU3YBW.js → path-CWUNINMX.js} +1 -1
  265. package/dist/{prettier-PGDJ5B7I.js → prettier-NVRHEAFO.js} +1 -1
  266. package/dist/system-KLXD4FXF.js +1 -0
  267. package/dist/tsconfig.tsbuildinfo +1 -1
  268. package/dist/typescript-K5CWIA4V.js +1 -0
  269. package/dist/ui-GHG3UGB3.js +1 -0
  270. package/dist/upgrade-OPZGPM5J.js +1 -0
  271. package/dist/version-D5PJZIRW.js +1 -0
  272. package/dist/version-KRQBMYCH.js +1 -0
  273. package/dist/workerd-L2EJKIAQ.js +18 -0
  274. package/oclif.manifest.json +5247 -6056
  275. package/package.json +17 -41
  276. package/dist/chunk-45T5XUIM.js +0 -1
  277. package/dist/chunk-52KHWFYF.js +0 -1
  278. package/dist/chunk-66TIGB4U.js +0 -415
  279. package/dist/chunk-675GKVCB.js +0 -3
  280. package/dist/chunk-7ES6PV7M.js +0 -847
  281. package/dist/chunk-BF7JM4FH.js +0 -396
  282. package/dist/chunk-FU2Y2M3M.js +0 -5
  283. package/dist/chunk-IDQ4X47Z.js +0 -3
  284. package/dist/chunk-JBSYWYIP.js +0 -2
  285. package/dist/chunk-PBKIXB7L.js +0 -63
  286. package/dist/chunk-SVA22NZQ.js +0 -607
  287. package/dist/error-handler-LC7FITE7.js +0 -1
  288. package/dist/http-proxy-node16-TTURN6MD.js +0 -38
  289. package/dist/lib-3WHF5XD3.js +0 -1
  290. package/dist/local-TWIGLQ7X.js +0 -1
  291. package/dist/node-package-manager-3UCLJPGW.js +0 -1
  292. package/dist/npa-OKDXXRCU.js +0 -1
  293. package/dist/ui-UYE67X4Y.js +0 -1
  294. package/dist/workerd-37BZZEVW.js +0 -18
  295. /package/dist/{chunk-KADPE3PY.js → chunk-7MUKLZOL.js} +0 -0
@@ -0,0 +1,7 @@
1
+ import{a as h,b as y}from"../../../chunk-KNVM7N3U.js";import{a as w}from"../../../chunk-B2IVY4V5.js";import{a as O,c as b}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{d as T,k as D,q as F}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-YMWHHINU.js";import{e as g,q as v}from"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as u}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{A as p,v as d}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as A}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{V as c}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as _,g as a}from"../../../chunk-VPRTJUIN.js";a();a();async function I(t,e,r){let n=e.themes;e.development&&(n=[(await new w(t).find()).id.toString()]);let m=t.storeFqdn,i=await S(t,{...e,themes:n,development:!1});if(!e.force&&!r&&!await C(i,m))return;await Promise.all(i.map(o=>(g(o)&&T(),v(o.id,t))));let l=e.environment?[{subdued:`Environment: ${e.environment}
2
+
3
+ `}]:[];d({body:c(i,o=>[...l,`The following themes were deleted from ${m}:`,y(o)],o=>[...l,"The theme",...h(o),`was deleted from ${m}.`])})}async function S(t,e){if(e.selectTheme||e.themes.length>0)return b(t,e);let r=t.storeFqdn;return[await O(t,{header:`Select a theme to delete from ${r}`,filter:{development:e.development}})]}async function C(t,e){let n={message:c(t,m=>[`Delete the following themes from ${e}?`],m=>["Delete",...h(m),`from ${e}?`]),confirmationMessage:"Yes, confirm changes",cancellationMessage:"Cancel"};return t.length>1&&(n.infoTable={"":t.map(h)}),p(n)}var s=_(A(),1);var f=class extends F{static{this.summary="Delete remote themes from the connected store. This command can't be undone."}static{this.descriptionWithMarkdown=`Deletes a theme from your store.
4
+
5
+ You can specify multiple themes by ID. If no theme is specified, then you're prompted to select the theme that you want to delete from the list of themes in your store.
6
+
7
+ You're asked to confirm that you want to delete the specified themes before they are deleted. You can skip this confirmation using the \`--force\` flag.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...u,...D,development:s.Flags.boolean({char:"d",description:"Delete your development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),"show-all":s.Flags.boolean({char:"a",description:"Include others development themes in theme list.",env:"SHOPIFY_FLAG_SHOW_ALL"}),force:s.Flags.boolean({char:"f",description:"Skip confirmation.",env:"SHOPIFY_FLAG_FORCE"}),theme:s.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID",multiple:!0})}}static{this.multiEnvironmentsFlags=["store","password",["development","theme"]]}async command(e,r,n){let{environment:m,development:i,force:l,theme:o}=e,k=o??[];await I(r,{selectTheme:e["show-all"],environment:m,development:i,themes:k,force:l},n)}};export{f as default};
@@ -0,0 +1,26 @@
1
+ import{a as v}from"../../../chunk-VWYM4OWK.js";import{a as u}from"../../../chunk-OHY4ZL3U.js";import"../../../chunk-NF2ABOOU.js";import"../../../chunk-74HYYXXE.js";import"../../../chunk-2VQJQ36C.js";import"../../../chunk-LW7U753G.js";import"../../../chunk-KWJ562F2.js";import"../../../chunk-2I4PRX2I.js";import{d as c}from"../../../chunk-KNVM7N3U.js";import{a as p}from"../../../chunk-B2IVY4V5.js";import{a as f}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as d,q as m}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-KL5Z3T6L.js";import"../../../chunk-3VZEETAV.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-YMWHHINU.js";import"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-R466TU3N.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{xa as h}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as l}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as F}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as w,g as a}from"../../../chunk-VPRTJUIN.js";a();var t=w(F(),1);var s=class extends m{static{this.summary="Uploads the current theme as a development theme to the connected store, then prints theme editor and preview URLs to your terminal. While running, changes will push to the store in real time."}static{this.descriptionWithMarkdown=`
2
+ Uploads the current theme as the specified theme, or a [development theme](https://shopify.dev/docs/themes/tools/cli#development-themes), to a store so you can preview it.
3
+
4
+ This command returns the following information:
5
+
6
+ - A link to your development theme at http://127.0.0.1:9292. This URL can hot reload local changes to CSS and sections, or refresh the entire page when a file changes, enabling you to preview changes in real time using the store's data.
7
+
8
+ You can specify a different network interface and port using \`--host\` and \`--port\`.
9
+
10
+ - A link to the [editor](https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.
11
+
12
+ - A [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with other developers.
13
+
14
+ If you already have a development theme for your current environment, then this command replaces the development theme with your local theme. You can override this using the \`--theme-editor-sync\` flag.
15
+
16
+ > Note: You can't preview checkout customizations using http://127.0.0.1:9292.
17
+
18
+ Development themes are deleted when you run \`shopify auth logout\`. If you need a preview link that can be used after you log out, then you should [share](https://shopify.dev/docs/api/shopify-cli/theme/theme-share) your theme or [push](https://shopify.dev/docs/api/shopify-cli/theme/theme-push) to an unpublished theme on your store.
19
+
20
+ You can run this command only in a directory that matches the [default Shopify theme folder structure](https://shopify.dev/docs/themes/tools/cli#directory-structure).`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...l,...d,host:t.Flags.string({description:"Set which network interface the web server listens on. The default value is 127.0.0.1.",env:"SHOPIFY_FLAG_HOST"}),"live-reload":t.Flags.string({description:`The live reload mode switches the server behavior when a file is modified:
21
+ - hot-reload Hot reloads local changes to CSS and sections (default)
22
+ - full-page Always refreshes the entire page
23
+ - off Deactivate live reload`,default:"hot-reload",options:["hot-reload","full-page","off"],env:"SHOPIFY_FLAG_LIVE_RELOAD"}),"error-overlay":t.Flags.string({description:`Controls the visibility of the error overlay when an theme asset upload fails:
24
+ - silent Prevents the error overlay from appearing.
25
+ - default Displays the error overlay.
26
+ `,options:["silent","default"],default:"default",env:"SHOPIFY_FLAG_ERROR_OVERLAY"}),poll:t.Flags.boolean({hidden:!0,description:"Force polling to detect file changes.",env:"SHOPIFY_FLAG_POLL"}),"theme-editor-sync":t.Flags.boolean({description:"Synchronize Theme Editor updates in the local theme files.",env:"SHOPIFY_FLAG_THEME_EDITOR_SYNC"}),port:t.Flags.string({description:"Local port to serve theme preview from.",env:"SHOPIFY_FLAG_PORT"}),theme:t.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),listing:t.Flags.string({description:"The listing preset to use for multi-preset themes. Applies preset files from listings/[preset-name] directory.",env:"SHOPIFY_FLAG_LISTING"}),nodelete:t.Flags.boolean({char:"n",description:"Prevents files from being deleted in the remote theme when a file has been deleted locally. This applies to files that are deleted while the command is running, and files that have been deleted locally before the command is run.",env:"SHOPIFY_FLAG_NODELETE"}),only:t.Flags.string({char:"o",multiple:!0,description:"Hot reload only files that match the specified pattern.",env:"SHOPIFY_FLAG_ONLY"}),ignore:t.Flags.string({char:"x",multiple:!0,description:"Skip hot reloading any files that match the specified pattern.",env:"SHOPIFY_FLAG_IGNORE"}),force:t.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"}),notify:t.Flags.string({description:"The file path or URL. The file path is to a file that you want updated on idle. The URL path is where you want a webhook posted to report on file changes.",env:"SHOPIFY_FLAG_NOTIFY"}),open:t.Flags.boolean({description:"Automatically launch the theme preview in your default web browser.",env:"SHOPIFY_FLAG_OPEN",default:!1}),"store-password":t.Flags.string({description:"The password for storefronts with password protection.",env:"SHOPIFY_FLAG_STORE_PASSWORD"}),"allow-live":t.Flags.boolean({description:"Allow development on a live theme.",char:"a",env:"SHOPIFY_FLAG_ALLOW_LIVE",default:!1})}}static{this.multiEnvironmentsFlags=null}async command(o,i){let{ignore:y=[],only:g=[]}=o;h("theme-command:dev:single-env:authenticated");let r,e;if(o.theme){let n={filter:{theme:o.theme}};r=await f(i,n),e={...o,theme:r.id.toString(),store:i.storeFqdn}}else{r=await new p(i).findOrCreate();let n=o["theme-editor-sync"]&&r.createdAtRuntime;e={...o,theme:r.id.toString(),store:i.storeFqdn,"overwrite-json":n}}await c(r,"start development mode",o["allow-live"])&&(await u({adminSession:i,commandConfig:this.config,directory:e.path,store:e.store,password:e.password,storePassword:e["store-password"],theme:r,listing:e.listing,host:e.host,port:e.port,"live-reload":e["live-reload"],"error-overlay":e["error-overlay"],force:e.force,open:e.open,"theme-editor-sync":e["theme-editor-sync"],noDelete:e.nodelete,ignore:y,only:g,notify:e.notify}),await v({path:e.path,password:e.password,store:e.store,force:e.force,verbose:e.verbose,noColor:e["no-color"],silent:!0}))}};export{s as default};
@@ -0,0 +1,32 @@
1
+ import{a as A}from"../../../chunk-2I4PRX2I.js";import{a as h}from"../../../chunk-KNVM7N3U.js";import{a as E,b as N}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as c,m as q,q as v}from"../../../chunk-DFMQWJQ3.js";import{a as O}from"../../../chunk-QFWIDATO.js";import{r as F}from"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{O as b}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as D,c as S}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{A as I,S as T,v as w,x as m}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as j}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Mb as n}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as P,g as d}from"../../../chunk-VPRTJUIN.js";d();d();async function C(t,o,e){let{name:r,verbose:u,noColor:l,json:a,force:J}=e,g=T()||J;if(A({verbose:u,noColor:l}),g&&!o){let s="A theme ID is required to duplicate a theme, specify one with the --theme flag";a?n(JSON.stringify({message:s,errors:[]})):m({body:[s]});return}let i=o?await N(t,o):await E(t,{header:"Select a theme to duplicate",filter:{theme:o}});if(!i){let s=`No theme with ID ${o} could be found. Use shopify theme list to find a theme ID.`;a?n(JSON.stringify({message:s,errors:[]})):m({body:[s]});return}if(i?.role==="development"){let s="Development themes can't be duplicated. Use shopify theme push to upload it to the store first.";a?n(JSON.stringify({message:s,errors:[]})):m({body:[s]});return}if(!g&&!await I({message:`Do you want to duplicate '${i.name}' on ${t.storeFqdn}?`,confirmationMessage:`Yes, duplicate '${i.name}'`,cancellationMessage:"No, cancel duplicate"}))return;let y=await F(i.id,r,t);a?M(i,t,y):x(i,t,y)}function x(t,o,e){if(e.userErrors&&e.userErrors.length>0){let r=e.userErrors.map(u=>u.message).join(", ");m({body:["The theme",...h(t),"could not be duplicated due to errors: ",{subdued:r},{char:"."},...e.requestId?[`
2
+ Request ID: `,{subdued:e.requestId}]:[]]})}else e.theme?w({body:["The theme",...h(t),"has been duplicated",{char:"."}],nextSteps:[[{link:{label:"View the duplicated theme",url:O(e.theme,o)}}]]}):m({body:["The theme",...h(t),"unexpectedly could not be duplicated",{char:"."},...e.requestId?[`
3
+ Request ID: `,{subdued:e.requestId}]:[]]})}function M(t,o,e){if(e.userErrors&&e.userErrors.length>0)n(JSON.stringify({message:`The theme '${t.name}' could not be duplicated due to errors`,errors:e.userErrors.map(r=>r.message),requestId:e.requestId}));else if(e.theme){let{id:r,name:u,role:l}=e.theme,a={theme:{id:r,name:u,role:l,shop:o.storeFqdn}};n(JSON.stringify(a))}else n(JSON.stringify({message:`The theme '${t.name}' unexpectedly could not be duplicated `,errors:[],requestId:e.requestId}))}var p=P(j(),1);var f=class t extends v{static{this.summary="Duplicates a theme from your theme library."}static{this.usage=["theme duplicate","theme duplicate --theme 10 --name 'New Theme'"]}static{this.descriptionWithMarkdown=`If you want to duplicate your local theme, you need to run \`shopify theme push\` first.
4
+
5
+ If no theme ID is specified, you're prompted to select the theme that you want to duplicate from the list of themes in your store. You're asked to confirm that you want to duplicate the specified theme.
6
+
7
+ Prompts and confirmations are not shown when duplicate is run in a CI environment or the \`--force\` flag is used, therefore you must specify a theme ID using the \`--theme\` flag.
8
+
9
+ You can optionally name the duplicated theme using the \`--name\` flag.
10
+
11
+ If you use the \`--json\` flag, then theme information is returned in JSON format, which can be used as a machine-readable input for scripts or continuous integration.
12
+
13
+ Sample JSON output:
14
+
15
+ \`\`\`json
16
+ {
17
+ "theme": {
18
+ "id": 108267175958,
19
+ "name": "A Duplicated Theme",
20
+ "role": "unpublished",
21
+ "shop": "mystore.myshopify.com"
22
+ }
23
+ }
24
+ \`\`\`
25
+
26
+ \`\`\`json
27
+ {
28
+ "message": "The theme 'Summer Edition' could not be duplicated due to errors",
29
+ "errors": ["Maximum number of themes reached"],
30
+ "requestId": "12345-abcde-67890"
31
+ }
32
+ \`\`\``}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...D,...S,password:c.password,theme:p.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),name:p.Flags.string({char:"n",description:"Name of the newly duplicated theme.",env:"SHOPIFY_FLAG_NAME"}),store:c.store,environment:c.environment,force:p.Flags.boolean({char:"f",description:"Force the duplicate operation to run without prompts or confirmations.",env:"SHOPIFY_FLAG_FORCE"})}}async run(){let{flags:o}=await this.parse(t),e=q(o),r=await b(e,o.password);await C(r,o.theme,o)}};export{f as default};
@@ -0,0 +1 @@
1
+ import{a as w}from"../../../chunk-B2IVY4V5.js";import{a as E}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{a as c,b as a,k as b,q as _}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-YMWHHINU.js";import{a as I,b as S}from"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{ua as s,xa as h}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as g,c as T}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{g as m,u as l}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import{d as v}from"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as $}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Mb as f}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as P,g as i}from"../../../chunk-VPRTJUIN.js";i();i();function L(n,e){return{theme:{id:n.id,name:n.name,role:n.role,shop:e.storeFqdn,preview_url:I(n,e),editor_url:S(n,e)}}}function O(n){let{platform:e,arch:t}=m(),o=c(),r=null;return o&&(r=Number(a())||null),{store:o??"Not configured",development_theme_id:r,cli_version:n.cliVersion,os:`${e}-${t}`,shell:process.env.SHELL??"unknown",node_version:process.version}}async function A(n,e){let t;if(e.development)t=await new w(n).findOrCreate();else{let o={filter:{theme:e.theme}};t=await E(n,o)}return t?L(t,n):void 0}async function y(n){return[V(),await x(n)]}function V(){let n=c()??"Not configured",e=a();return h(`theme-command:info:dev-theme-loaded:${e}`),C("Theme Configuration",[["Store",n],["Development Theme ID",e?`#${e}`:{subdued:"Not set"}]])}async function x(n){let{platform:e,arch:t}=m();return C("Tooling and System",[["Shopify CLI",n.cliVersion],["OS",`${e}-${t}`],["Shell",process.env.SHELL??"unknown"],["Node version",process.version]])}function C(n,e){return{title:n,body:{tabularData:e,firstColumnSubdued:!0}}}async function D(n,e){let t=Object.entries(n.theme).map(([o,r])=>{if(o==="editor_url"||o==="preview_url"){let F=String(r),N=o==="editor_url"?"Open in Theme Editor":"Preview Theme";return[u(o),{link:{url:F,label:N}}]}else return o==="id"?[u(o),`#${r}`]:[u(o),`${r}`]});return{customSections:[...e.environment?[{title:"Theme information",body:[{subdued:`Environment name: ${e.environment}`}]}]:[],{title:"Theme Details",body:{tabularData:t,firstColumnSubdued:!0}}]}}function u(n){return n.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}var p=P($(),1);var d=class extends _{static{this.description="Displays information about your theme environment, including your current store. Can also retrieve information about a specific theme."}static{this.flags={...g,...T,...b,development:p.Flags.boolean({char:"d",description:"Retrieve info from your development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),theme:p.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"})}}static{this.multiEnvironmentsFlags=["store","password"]}async command(e,t){if(s("theme-command:info"),e.theme||e.development){let o=await A(t,e);if(!o)throw new v("Theme not found!");if(e.json)return f(JSON.stringify(o,null,2));let r=await D(o,e);l(r)}else{if(e.json)return f(JSON.stringify(O({cliVersion:this.config.version}),null,2));let o=await y({cliVersion:this.config.version});l({customSections:o})}s("theme-command:info")}};export{d as default};
@@ -0,0 +1,8 @@
1
+ import{k as L,q as P}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-KBQ4LGFB.js";import{c as g,l as v}from"../../../chunk-P7R7FBY2.js";import"../../../chunk-VBUZWRUL.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as _}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{D as y,F as C,R,w as T,z as k}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import{d as N}from"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as j}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Aa as S,Ca as b,Ta as E,Va as F,ka as A,ma as f,ua as h}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import{d as r}from"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as $,g as p}from"../../../chunk-VPRTJUIN.js";p();p();var d="https://github.com/Shopify/skeleton-theme.git",q="https://github.com/Shopify/theme-liquid-docs.git",I={all:"All",github:"VS Code (GitHub Copilot)",cursor:"Cursor",claude:"Claude"};async function O(e,t){await U(e,t)}async function G(e,t){await U(e,t,!0)}async function U(e,t,i){await y([{title:`Cloning ${e} into ${t}`,task:async()=>{await g({repoUrl:e,destination:t,latestTag:i,shallow:!0}),await v(t),e===d&&(await Promise.all(Object.keys(I).map(async s=>x(r(t,`.${s}`)))),await x(r(t,".git")))}}])}async function x(e){await E(e)&&await b(e)}async function M(){return await k({message:"Which LLM instruction file would you like to include in your theme?",choices:[...Object.entries(I).map(([t,i])=>({label:i,value:t})),{label:"Skip",value:null}]})}async function D(e,t){let i=[];await y([{title:`Adding AI instructions into ${e}`,task:async()=>{await A(async s=>{await g({repoUrl:q,destination:s,shallow:!0});let l=t==="all"?Object.keys(I).filter(o=>o!=="all"):[t];try{let o=r(s,"ai","github","copilot-instructions.md"),a=await f(o),n=r(e,"AGENTS.md"),m=`# AGENTS.md
2
+
3
+ ${a}`;await h(n,m),(await Promise.all(l.map(u=>H(e,n,u)))).forEach(u=>{u.copiedFile&&i.push(u.copiedFile)})}catch{throw new N("Failed to create AI instructions")}})}}]),i.length>0&&T({headline:"Files created instead of symlinks.",body:`Shopify CLI attempted to create symbolic links between AGENTS.md and ${i.join(", ")}, but your system doesn't have Developer Mode enabled or symlinks are disabled. Separate files were created instead.`})}async function H(e,t,i){if(i==="cursor")return{};let l={github:"copilot-instructions.md",claude:"CLAUDE.md"}[i],o=r(e,l);try{return await S(t,o),{}}catch(a){if(a instanceof Error){let n=await f(t);return await h(o,n),{copiedFile:l}}else throw a}}var c=$(j(),1);var w=class extends P{static{this.summary="Clones a Git repository to use as a starting point for building a new theme."}static{this.descriptionWithMarkdown=`Clones a Git repository to your local machine to use as the starting point for building a theme.
4
+
5
+ If no Git repository is specified, then this command creates a copy of Shopify's [Skeleton theme](${d}), with the specified name in the current folder. If no name is provided, then you're prompted to enter one.
6
+
7
+ > Caution: If you're building a theme for the Shopify Theme Store, then you can use our example theme as a starting point. However, the theme that you submit needs to be [substantively different from existing themes](https://shopify.dev/docs/themes/store/requirements#uniqueness) so that it provides added value for users.
8
+ `}static{this.description=this.descriptionWithoutMarkdown()}static{this.usage="theme init [name] [flags]"}static{this.args={name:c.Args.string({name:"name",description:"Name of the new theme",required:!1})}}static{this.flags={..._,path:L.path,"clone-url":c.Flags.string({char:"u",default:d,description:"The Git URL to clone from. Defaults to Shopify's Skeleton theme.",env:"SHOPIFY_FLAG_CLONE_URL"}),latest:c.Flags.boolean({char:"l",description:"Downloads the latest release of the `clone-url`",env:"SHOPIFY_FLAG_LATEST"})}}static{this.multiEnvironmentsFlags=null}async command(t,i,s,l){let o=l.name??await this.promptName(t.path),a=t["clone-url"],n=r(t.path,o);if(t.latest?await G(a,n):await O(a,n),!R())return;let m=await M();m&&await D(n,m)}async promptName(t){let i=await F({suffix:"theme",directory:t,family:"creative"});return C({message:"Name of the new theme",defaultValue:i})}};export{w as default};
@@ -0,0 +1 @@
1
+ import{q as r}from"../../../chunk-DFMQWJQ3.js";import{a as i}from"../../../chunk-RM5SJJN6.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as e}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as o,g as s}from"../../../chunk-VPRTJUIN.js";s();var a=o(i(),1),t=class extends r{static{this.summary="Start a Language Server Protocol server."}static{this.descriptionWithMarkdown="Starts the [Language Server](https://shopify.dev/docs/themes/tools/cli/language-server)."}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...e}}static{this.multiEnvironmentsFlags=null}async command(){(0,a.startServer)()}};export{t as default};
@@ -0,0 +1 @@
1
+ import{a as m,b as S,c as v,d as L}from"../../../chunk-RVNMVBPM.js";import{b as O,k as b,q as y}from"../../../chunk-DFMQWJQ3.js";import{a as F}from"../../../chunk-4G7J6HIV.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as h,c as g}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{u as c}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as _}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Mb as d}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as E,g as s}from"../../../chunk-VPRTJUIN.js";s();s();function w(e,t){return{title:e,body:{tabularData:t}}}async function T(e,t){let n=t.storeFqdn,u=new L({...m.reduce((o,r)=>(o[r]=e.role===r,o),{}),theme:e.id?.toString()??e.name}),i=await S(t),A=O(),I=F(n);if(u.any()&&(i=v(n,i,u)),e.json)return d(JSON.stringify(i,null,2));let D=i.map(({id:o,name:r,role:p})=>{let a="";return p&&(a=`[${p}]`,[A,I].includes(`${o}`)&&(a+=" [current]")),[r,a,`#${o}`]}),R=[["name","role","id"],["\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500","\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500","\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"],...D];c({customSections:[...e.environment?[{title:`${n} theme library`,body:[{subdued:`Environment name: ${e.environment}`}]}]:[],w("",R)]})}var l=E(_(),1);var f=class extends y{static{this.description="Lists the themes in your store, along with their IDs and statuses."}static{this.flags={...h,...g,...b,role:l.Flags.custom({description:"Only list themes with the given role.",options:m,env:"SHOPIFY_FLAG_ROLE"})(),name:l.Flags.string({description:"Only list themes that contain the given name.",env:"SHOPIFY_FLAG_NAME"}),id:l.Flags.integer({description:"Only list theme with the given ID.",env:"SHOPIFY_FLAG_ID"})}}static{this.multiEnvironmentsFlags=["store","password"]}async command(t,n){await T(t,n)}};export{f as default};
@@ -0,0 +1,3 @@
1
+ import{a}from"../../../../chunk-VWYM4OWK.js";import"../../../../chunk-2VQJQ36C.js";import"../../../../chunk-KWJ562F2.js";import"../../../../chunk-2I4PRX2I.js";import"../../../../chunk-KNVM7N3U.js";import{k as i,q as s}from"../../../../chunk-DFMQWJQ3.js";import"../../../../chunk-3VZEETAV.js";import"../../../../chunk-IX5ICOBV.js";import"../../../../chunk-RFG5RMPL.js";import"../../../../chunk-KBQ4LGFB.js";import"../../../../chunk-R466TU3N.js";import"../../../../chunk-UGXYQ23Y.js";import"../../../../chunk-QSTEVZFQ.js";import"../../../../chunk-5Y7GIF2W.js";import"../../../../chunk-TQYMC7TH.js";import"../../../../chunk-HUZUORYM.js";import"../../../../chunk-B2EHO7ZC.js";import"../../../../chunk-4LNCYIS3.js";import"../../../../chunk-LAZJ47DZ.js";import"../../../../chunk-PRKBO42R.js";import"../../../../chunk-GOJ2QHSR.js";import"../../../../chunk-7BGM2GAH.js";import"../../../../chunk-XNO6DZYP.js";import{b as r}from"../../../../chunk-323UTVMM.js";import"../../../../chunk-3TNEIDOD.js";import"../../../../chunk-4HHXSMD7.js";import"../../../../chunk-YZDDTYTU.js";import"../../../../chunk-MOA33ZFO.js";import"../../../../chunk-JUVAGMIH.js";import"../../../../chunk-BDVAE5MS.js";import"../../../../chunk-P6XE4MH5.js";import"../../../../chunk-KLMDWDT2.js";import"../../../../chunk-5CH3B62S.js";import"../../../../chunk-QUTQDXSL.js";import"../../../../chunk-IASVAERO.js";import"../../../../chunk-JPGO36XP.js";import"../../../../chunk-PD5ZHJWI.js";import{r as n}from"../../../../chunk-LDGAHMS7.js";import"../../../../chunk-ZR76GGZ6.js";import"../../../../chunk-EENHXSWU.js";import"../../../../chunk-FUOIGXI4.js";import"../../../../chunk-6M3ZYNGO.js";import"../../../../chunk-QYR5VPQA.js";import"../../../../chunk-V2CNCPIE.js";import"../../../../chunk-GFEAKSGV.js";import"../../../../chunk-CERXUPGC.js";import"../../../../chunk-T4M5CWAO.js";import"../../../../chunk-PRVQAHWI.js";import"../../../../chunk-YC6G4MHD.js";import"../../../../chunk-N7RBSKYT.js";import"../../../../chunk-IU2ZQ6TE.js";import"../../../../chunk-PIBY5DDZ.js";import{e as m,g as o}from"../../../../chunk-VPRTJUIN.js";o();var l=m(n(),1),t=class extends s{static{this.summary="Download metafields definitions from your shop into a local file."}static{this.descriptionWithMarkdown=`Retrieves metafields from Shopify Admin.
2
+
3
+ If the metafields file already exists, it will be overwritten.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...r,...i,force:l.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"})}}static{this.multiEnvironmentsFlags=null}async command(e){let d={path:e.path,password:e.password,store:e.store,force:e.force,verbose:e.verbose,noColor:e["no-color"]};await a(d)}};export{t as default};
@@ -0,0 +1,8 @@
1
+ import{a as w}from"../../../chunk-KNVM7N3U.js";import{a as u}from"../../../chunk-B2IVY4V5.js";import{a as y}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as c,q as v}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-YMWHHINU.js";import{a as d,b as f}from"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as p}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{J as m,u as a}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as b}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as O,g as i}from"../../../chunk-VPRTJUIN.js";i();i();async function g(t,e){let r=new u(t),F=(await(e.development?r.find():r.fetch()))?.id,n=await y(t,{header:"Select a theme to open",filter:{live:e.live,theme:e.development?`${F}`:e.theme}}),l=d(n,t),s=f(n,t);a({body:["Preview information for theme",...w(n),`
2
+
3
+ `,{list:{items:[{link:{label:"Preview your theme",url:l}},{link:{label:"Customize your theme at the theme editor",url:s}}]}}]}),e.editor?await m(s):await m(l)}var o=O(b(),1);var h=class extends v{static{this.summary="Opens the preview of your remote theme."}static{this.descriptionWithMarkdown=`Returns links that let you preview the specified theme. The following links are returned:
4
+
5
+ - A link to the [editor](https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.
6
+ - A [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with other developers.
7
+
8
+ If you don't specify a theme, then you're prompted to select the theme to open from the list of the themes in your store.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...p,...c,development:o.Flags.boolean({char:"d",description:"Open your development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),editor:o.Flags.boolean({char:"E",description:"Open the theme editor for the specified theme in the browser.",env:"SHOPIFY_FLAG_EDITOR"}),live:o.Flags.boolean({char:"l",description:"Open your live (published) theme.",env:"SHOPIFY_FLAG_LIVE"}),theme:o.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"})}}static{this.multiEnvironmentsFlags=null}async command(e,r){await g(r,e)}};export{h as default};
@@ -0,0 +1,7 @@
1
+ import{k as d,q as g}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-KBQ4LGFB.js";import{a as p}from"../../../chunk-OXPWCC7I.js";import"../../../chunk-LX3ZOW52.js";import"../../../chunk-NKQBEFPS.js";import{aa as k}from"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as f}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{v as l}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import{d as a}from"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Ta as h,ma as c}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import{f as r,n as m}from"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as P,g as o}from"../../../chunk-VPRTJUIN.js";o();o();var u=P(k(),1),_=["assets/**","blocks/**","config/**","layout/**","listings/**/*","locales/**","sections/**","snippets/**","templates/**","templates/customers/**","release-notes.md","update_extension.json"].join("|");async function y(e){let t=await w(e),s=`${e}/${t}`,n=`${e}/(${_})`;await p({inputDirectory:e,outputZipPath:s,matchFilePattern:n}),l({body:["Your local theme was packaged in",{filePath:m(s)}]})}async function w(e){let t=r(e,"config/settings_schema.json");if(!await h(t))throw new a("Provide a config/settings_schema.json to package your theme.");let s=await F(t);if(s===void 0||s.theme_name===void 0)throw new a("Provide a theme_info.theme_name configuration in config/settings_schema.json.");return`${[s.theme_name,s.theme_version].filter(Boolean).join("-")}.zip`}async function F(e){let t=(0,u.parseJSON)(await c(e),null,!0);if(!t)throw new a("The file config/settings_schema.json contains an error. Please check if the file is valid JSON and includes the theme_info.theme_name configuration.");return t.find(s=>s.name==="theme_info")}var i=class extends g{static{this.summary="Package your theme into a .zip file, ready to upload to the Online Store."}static{this.descriptionWithMarkdown=`Packages your local theme files into a ZIP file that can be uploaded to Shopify.
2
+
3
+ Only folders that match the [default Shopify theme folder structure](https://shopify.dev/docs/storefronts/themes/tools/cli#directory-structure) are included in the package.
4
+
5
+ The package includes the \`listings\` directory if present (required for multi-preset themes per [Theme Store requirements](https://shopify.dev/docs/storefronts/themes/store/requirements#adding-presets-to-your-theme-zip-submission)).
6
+
7
+ The ZIP file uses the name \`theme_name-theme_version.zip\`, based on parameters in your [settings_schema.json](https://shopify.dev/docs/storefronts/themes/architecture/config/settings-schema-json) file.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...f,path:d.path}}static{this.multiEnvironmentsFlags=null}async command(t){await y(t.path)}};export{i as default};
@@ -0,0 +1 @@
1
+ import{b as _}from"../../../chunk-OHY4ZL3U.js";import"../../../chunk-NF2ABOOU.js";import"../../../chunk-74HYYXXE.js";import"../../../chunk-2VQJQ36C.js";import"../../../chunk-LW7U753G.js";import{j as f,l as h,n as I}from"../../../chunk-KWJ562F2.js";import"../../../chunk-KNVM7N3U.js";import{a as F}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as S,q as T}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-KL5Z3T6L.js";import"../../../chunk-3VZEETAV.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{o as w,ua as v}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as P}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{v as g}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import{d as o}from"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as x}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Nb as O,Ua as u,ma as c}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as $,g as d}from"../../../chunk-VPRTJUIN.js";d();d();d();async function y({session:e,overridesContent:r,themeId:t}){v("theme-preview:create");let m=`${h(e)}/theme_preview.json?preview_theme_id=${t}`,n=await f(e,{headers:{"Content-Type":"application/json"}}),i=await w(m,{method:"POST",body:r,headers:n});if(!i.ok)throw new o(`Theme preview request failed with status ${i.status}: ${i.statusText}`);let s=await R(i);return v("theme-preview:create"),s}async function b({session:e,overridesContent:r,themeId:t,previewIdentifier:a}){v("theme-preview:update");let n=`${h(e)}/theme_preview.json?preview_theme_id=${t}&preview_identifier=${encodeURIComponent(a)}`,i=await f(e,{headers:{"Content-Type":"application/json"}}),s=await w(n,{method:"POST",body:r,headers:i});if(!s.ok)throw new o(`Theme preview request failed with status ${s.status}: ${s.statusText}`);let J=await R(s);return v("theme-preview:update"),J}async function R(e){let r=await e.json();if(r.error)throw new o(`Theme preview failed: ${r.error}`);if(!r.url||!r.preview_identifier)throw new o("Theme preview returned an unexpected response");return{url:r.url,preview_identifier:r.preview_identifier}}async function A(e){if(!u(e.overrideJson))throw new o(`Override file not found: ${e.overrideJson}`);let r=await c(e.overrideJson),t;try{t=JSON.parse(r)}catch(i){let s=i instanceof Error?i.message:String(i);throw new o(`Failed to parse override file: ${e.overrideJson}`,s)}let a=await I(e.themeId,e.adminSession,e.password),m=JSON.stringify(t),n=e.previewIdentifier?await b({session:a,overridesContent:m,themeId:e.themeId,previewIdentifier:e.previewIdentifier}):await y({session:a,overridesContent:m,themeId:e.themeId});e.json?O(JSON.stringify({url:n.url,preview_identifier:n.preview_identifier})):g({body:[{list:{title:e.previewIdentifier?"Preview updated":"Preview is ready",items:[{link:{url:n.url}},`Preview ID: ${n.preview_identifier}`]}}]}),e.open&&_(n.url,"theme preview")}var p=$(x(),1);var l=class extends T{static{this.summary="Applies JSON overrides to a theme and returns a preview URL."}static{this.descriptionWithMarkdown="Applies a JSON overrides file to a theme and creates or updates a preview. This lets you quickly preview changes.\n\n The command returns a preview URL and a preview identifier. You can reuse the preview identifier with `--preview-id` to update an existing preview instead of creating a new one."}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...P,...S,theme:p.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID",required:!0}),overrides:p.Flags.string({description:"Path to a JSON overrides file.",env:"SHOPIFY_FLAG_OVERRIDES",required:!0}),"preview-id":p.Flags.string({description:"An existing preview identifier to update instead of creating a new preview.",env:"SHOPIFY_FLAG_PREVIEW_ID"}),open:p.Flags.boolean({description:"Automatically launch the theme preview in your default web browser.",env:"SHOPIFY_FLAG_OPEN",default:!1}),json:p.Flags.boolean({description:"Output the preview URL and identifier as JSON.",env:"SHOPIFY_FLAG_JSON",default:!1})}}static{this.multiEnvironmentsFlags=null}async command(r,t){let a=await F(t,{filter:{theme:r.theme}});await A({adminSession:t,overrideJson:r.overrides,themeId:a.id.toString(),previewIdentifier:r["preview-id"],open:r.open,password:r.password,json:r.json})}};export{l as default};
@@ -0,0 +1,3 @@
1
+ import{a as R}from"../../../chunk-LW7U753G.js";import{c as k,i as O,n as j}from"../../../chunk-KWJ562F2.js";import{e as x}from"../../../chunk-KNVM7N3U.js";import{a as b}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as A,q as v}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as y,c as L}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{J as F}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import{d as T}from"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as I}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{$a as $,Mb as S,Qb as a,la as w,ua as g}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import{d as m,i as u}from"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as _,g as l}from"../../../chunk-VPRTJUIN.js";l();l();l();import{fileURLToPath as D}from"node:url";async function q(...r){let e=await $("package.json",{cwd:D(import.meta.url),type:"file"});if(!e)throw new Error("Failed to find CLI root path");return e.endsWith("/packages/theme/package.json")?m(u(e),"assets",...r):m(u(e),"dist","assets",...r)}async function E(r,e,i,t,n,p){let f=await k(r)?await R(p,r.storeFqdn):void 0;if(n)throw new T("Unable to use Admin API or Theme Access tokens with the profile command","You must authenticate manually by not passing the --password flag.");let c=await j(e,r,n,f),o=await O(c,{method:"GET",path:i,query:[],themeId:e,headers:{Accept:"application/vnd.speedscope+json"}});if(o.status!==200){let h=await o.text();throw new Error(`Bad response: ${o.status}: ${h}`)}let s=await o.text();t?S(s):await U(s)}async function U(r){let e=process.env.WSL_DISTRO_NAME,i=e?`//wsl$/${e}`:"",t=await q("speedscope","index.html");a(`[Theme Profile] Resolved URL to open: ${t}`);let n="liquid-profile",p=Buffer.from(r).toString("base64"),f=`speedscope.loadFileFromBase64(${JSON.stringify(n)}, ${JSON.stringify(p)})`,c=`speedscope-${Number(new Date)}-${process.pid}`,o=m(w(),`${c}.js`);a(`[Theme Profile] writing JS file to: ${o}`),await g(o,f),a(`[Theme Profile] JS file created successfully: ${o}`),t=`${i}${t}`,o=`${i}${o}`,t+=`#localProfilePath=${o}`;let s=m(w(),`${c}.html`);a(`[Theme Profile] writing HTML file to: ${s}`),await g(s,`<script>window.location=${JSON.stringify(t)}</script>`),a(`[Theme Profile] HTML file created successfully: ${s}`),s=`${i}${s}`,t=`file://${s}`,a(`[Theme Profile] Opening URL: ${t}`);let h=await F(t);a(`[Theme Profile] URL opened successfully: ${h}`)}var d=_(I(),1);var P=class extends v{static{this.summary="Profile the Liquid rendering of a theme page."}static{this.usage=["theme profile","theme profile --url /products/classic-leather-jacket"]}static{this.descriptionWithMarkdown=`Profile the Shopify Liquid on a given page.
2
+
3
+ This command will open a web page with the Speedscope profiler detailing the time spent executing Liquid on the given page.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...y,...A,theme:d.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),url:d.Flags.string({description:"The url to be used as context",env:"SHOPIFY_FLAG_URL",default:"/"}),"store-password":d.Flags.string({description:"The password for storefronts with password protection.",env:"SHOPIFY_FLAG_STORE_PASSWORD"}),...L}}static{this.multiEnvironmentsFlags=null}async command(e,i){let{password:t}=e,n;e.theme?n={filter:{theme:e.theme}}:n={filter:{live:!0}};let p=await b(i,n),f=[{title:`Generating Liquid profile for ${i.storeFqdn} ${e.url}`,task:async()=>{await E(i,p.id.toString(),e.url,e.json,t,e["store-password"])}}];await x(f)}};export{P as default};
@@ -0,0 +1,7 @@
1
+ import{a as d}from"../../../chunk-KNVM7N3U.js";import{a as b}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as u,q as p}from"../../../chunk-DFMQWJQ3.js";import{a as f}from"../../../chunk-QFWIDATO.js";import{p as c}from"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as l}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{A as h,v as a}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as v}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as g,g as i}from"../../../chunk-VPRTJUIN.js";i();i();async function y(o,t,r){let e=await b(o,{header:"Select a theme to publish",filter:{development:!1,live:!1,theme:t.theme}}),s=f({...e,role:"live"},o);!t.force&&!r&&!await h({message:`Do you want to make '${e.name}' the new live theme on ${o.storeFqdn}?`,confirmationMessage:`Yes, make '${e.name}' the new live theme`,cancellationMessage:"No, cancel publish"})||(await c(e.id,o),a({headline:t.environment?`Environment: ${t.environment}`:void 0,body:["The theme",...d(e),"is now live at",{link:{label:s,url:s}},{char:"."}]}))}var m=g(v(),1);var n=class extends p{static{this.summary="Set a remote theme as the live theme."}static{this.descriptionWithMarkdown=`Publishes an unpublished theme from your theme library.
2
+
3
+ If no theme ID is specified, then you're prompted to select the theme that you want to publish from the list of themes in your store.
4
+
5
+ You can run this command only in a directory that matches the [default Shopify theme folder structure](https://shopify.dev/docs/themes/tools/cli#directory-structure).
6
+
7
+ If you want to publish your local theme, then you need to run \`shopify theme push\` first. You're asked to confirm that you want to publish the specified theme. You can skip this confirmation using the \`--force\` flag.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...l,...u,force:m.Flags.boolean({char:"f",description:"Skip confirmation.",env:"SHOPIFY_FLAG_FORCE"}),theme:m.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"})}}static{this.multiEnvironmentsFlags=["store","password","theme"]}async command(t,r,e){await y(r,t,e)}};export{n as default};
@@ -0,0 +1,3 @@
1
+ import{b as $}from"../../../chunk-NF2ABOOU.js";import{a as H,j as R,l as Y}from"../../../chunk-2VQJQ36C.js";import"../../../chunk-KWJ562F2.js";import{a as V}from"../../../chunk-2I4PRX2I.js";import{a as G,c as p}from"../../../chunk-KNVM7N3U.js";import{a as x}from"../../../chunk-B2IVY4V5.js";import{a as M}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as O,l as I,m as _,p as W,q as L}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-3VZEETAV.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-YMWHHINU.js";import{a as A,b as D}from"../../../chunk-QFWIDATO.js";import{k,n as P}from"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import{h as C,k as E}from"../../../chunk-P7R7FBY2.js";import"../../../chunk-VBUZWRUL.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{O as T,ua as m}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as S}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{D as F,v}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as z}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{Wa as w}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import{q as f}from"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as j,g as c}from"../../../chunk-VPRTJUIN.js";c();c();c();async function q(e,t,o,n,r,l){let i=J(o,n,r),a=Q(o,e,n,t),s=[...i,...a,{title:"Theme download complete",task:async()=>{}}];s.length>0&&await F(s,{renderOptions:{stdout:l?.stdout??process.stdout},noProgressBar:r.multiEnvironment})}function J(e,t,o){if(o.nodelete)return[];let n=new Set(e.map(i=>i.key));return t.applyIgnoreFilters([...t.files.values()]).map(({key:i})=>i).filter(i=>!n.has(i)).map(i=>({title:`Cleaning your local directory (removing ${i})`,task:async()=>t.delete(i)}))}function Q(e,t,o,n){let r=o.applyIgnoreFilters(e);r=r.filter(s=>{let u=s.checksum;return o.files.get(s.key)?.checksum!==u});let l=r.map(s=>s.key),i=s=>s.total===0?"[100%]":`[${Math.round(s.current/s.total*100)}%]`;return $(l,W,(s,u)=>({title:`Downloading files from remote theme ${i({current:u,total:l.length})}`,task:async()=>X(t,o,s,n)}))}async function X(e,t,o,n){let r=await k(e.id,o,n);r&&await Promise.all(r.map(l=>t.write(l)))}async function B(e,t,o,n){m("theme-service:pull:setup"),V({verbose:e.verbose,noColor:e.noColor});let r=t??await T(_({store:e.store}),e.password),l=new x(r),i=await(e.development?l.find():l.fetch()),{path:a,nodelete:s,live:u,development:h,only:K,ignore:N,force:g,environment:b}=e;if(!await te(a??f(),g??!1,b?.[0],o))return;let U=await M(r,{header:"Select a theme to open",filter:{live:u,theme:h?`${i?.id}`:e.theme}});m("theme-service:pull:setup"),await Z(U,r,{environment:b?.[0],force:g??!1,ignore:N??[],multiEnvironment:o,nodelete:s??!1,only:K??[],path:a??f()},n)}async function Z(e,t,o,n){m("theme-service:pull:file-system");let r=R(o.path,{filters:o}),[l]=await Promise.all([P(e.id,t),r.ready()]),i=H(l);m("theme-service:pull:file-system"),await q(e,t,i,r,o,n);let a=o.environment?`Environment: ${o.environment}`:"";v({headline:a,body:["The theme",...G(e),"has been pulled."],nextSteps:[[{link:{label:"View your theme",url:A(e,t)}}],[{link:{label:"Customize your theme at the theme editor",url:D(e,t)}}]]})}async function ee(e){return(await w("*",{cwd:e,deep:1,onlyFiles:!1})).length===0}async function te(e,t,o,n){return t?!0:!(!await ee(e)&&!await Y(e)&&!await p(t,void 0,o,n)||await C(e)&&!await E(e)&&!await p(t,"The current Git directory has uncommitted changes.",o,n))}var d=j(z(),1);var y=class extends L{static{this.summary="Download your remote theme files locally."}static{this.descriptionWithMarkdown=`Retrieves theme files from Shopify.
2
+
3
+ If no theme is specified, then you're prompted to select the theme to pull from the list of the themes in your store.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...S,...O,...I("download"),theme:d.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),development:d.Flags.boolean({char:"d",description:"Pull theme files from your remote development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),live:d.Flags.boolean({char:"l",description:"Pull theme files from your remote live theme.",env:"SHOPIFY_FLAG_LIVE"}),nodelete:d.Flags.boolean({char:"n",description:"Prevent deleting local files that don't exist remotely.",env:"SHOPIFY_FLAG_NODELETE"}),force:d.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"})}}static{this.multiEnvironmentsFlags=["store","password","path",["live","development","theme"]]}async command(t,o,n,r,l){m("theme-command:pull"),await B({...t,noColor:t["no-color"]},o,n,l),m("theme-command:pull")}};export{y as default};
@@ -0,0 +1,28 @@
1
+ import{a as l}from"../../../chunk-TFSBQ4RY.js";import"../../../chunk-JHPRFW5B.js";import"../../../chunk-74HYYXXE.js";import"../../../chunk-2VQJQ36C.js";import"../../../chunk-KWJ562F2.js";import"../../../chunk-2I4PRX2I.js";import"../../../chunk-KNVM7N3U.js";import"../../../chunk-B2IVY4V5.js";import"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as i,l as h,q as a}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-3VZEETAV.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-YMWHHINU.js";import"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{ua as o}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as s,c as m}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as f}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as u,g as n}from"../../../chunk-VPRTJUIN.js";n();var e=u(f(),1);var r=class extends a{static{this.summary="Uploads your local theme files to the connected store, overwriting the remote version if specified."}static{this.usage=["theme push","theme push --unpublished --json"]}static{this.descriptionWithMarkdown=`Uploads your local theme files to Shopify, overwriting the remote version if specified.
2
+
3
+ If no theme is specified, then you're prompted to select the theme to overwrite from the list of the themes in your store.
4
+
5
+ You can run this command only in a directory that matches the [default Shopify theme folder structure](https://shopify.dev/docs/themes/tools/cli#directory-structure).
6
+
7
+ This command returns the following information:
8
+
9
+ - A link to the [editor](https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.
10
+ - A [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with others.
11
+
12
+ If you use the \`--json\` flag, then theme information is returned in JSON format, which can be used as a machine-readable input for scripts or continuous integration.
13
+
14
+ Sample output:
15
+
16
+ \`\`\`json
17
+ {
18
+ "theme": {
19
+ "id": 108267175958,
20
+ "name": "MyTheme",
21
+ "role": "unpublished",
22
+ "shop": "mystore.myshopify.com",
23
+ "editor_url": "https://mystore.myshopify.com/admin/themes/108267175958/editor",
24
+ "preview_url": "https://mystore.myshopify.com/?preview_theme_id=108267175958"
25
+ }
26
+ }
27
+ \`\`\`
28
+ `}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...s,...i,...h("upload"),...m,theme:e.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),development:e.Flags.boolean({char:"d",description:"Push theme files from your remote development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),"development-context":e.Flags.string({char:"c",description:"Unique identifier for a development theme context (e.g., PR number, branch name). Reuses an existing development theme with this context name, or creates one if none exists.",env:"SHOPIFY_FLAG_DEVELOPMENT_CONTEXT",dependsOn:["development"],exclusive:["theme"]}),live:e.Flags.boolean({char:"l",description:"Push theme files from your remote live theme.",env:"SHOPIFY_FLAG_LIVE"}),unpublished:e.Flags.boolean({char:"u",description:"Create a new unpublished theme and push to it.",env:"SHOPIFY_FLAG_UNPUBLISHED"}),nodelete:e.Flags.boolean({char:"n",description:"Prevent deleting remote files that don't exist locally.",env:"SHOPIFY_FLAG_NODELETE"}),"allow-live":e.Flags.boolean({char:"a",description:"Allow push to a live theme.",env:"SHOPIFY_FLAG_ALLOW_LIVE"}),publish:e.Flags.boolean({char:"p",description:"Publish as the live theme after uploading.",env:"SHOPIFY_FLAG_PUBLISH"}),force:e.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"}),strict:e.Flags.boolean({description:"Require theme check to pass without errors before pushing. Warnings are allowed.",env:"SHOPIFY_FLAG_STRICT_PUSH"}),listing:e.Flags.string({description:"The listing preset to use for multi-preset themes. Applies preset files from listings/[preset-name] directory.",env:"SHOPIFY_FLAG_LISTING"}),environment:i.environment}}static{this.multiEnvironmentsFlags=["store","password","path",["live","development","theme"]]}async command(t,p,d,y,c){o("theme-command:push"),await l({...t,allowLive:t["allow-live"],noColor:t["no-color"],developmentContext:t["development-context"]},p,d,c),o("theme-command:push")}};export{r as default};
@@ -0,0 +1,6 @@
1
+ import{a as c}from"../../../chunk-KNVM7N3U.js";import{a as f}from"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as l,q as p}from"../../../chunk-DFMQWJQ3.js";import{f as h,o as d}from"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as s}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import{v as a}from"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as g}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as u,g as o}from"../../../chunk-VPRTJUIN.js";o();o();async function v(e,m){let n=e.name??await h("New name for the theme"),i=await f(m,{header:"Select a theme to rename",filter:{theme:e.theme,development:e.development,live:e.live}});await d(i.id,{name:n},m),a({body:[...e.environment?[{subdued:`Environment: ${e.environment}
2
+
3
+ `}]:[],"The theme",...c(i),"was renamed to",`'${n}'`]})}var t=u(g(),1);var r=class extends p{static{this.summary="Renames an existing theme."}static{this.descriptionWithMarkdown=`Renames a theme in your store.
4
+
5
+ If no theme is specified, then you're prompted to select the theme that you want to rename from the list of themes in your store.
6
+ `}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...s,...l,name:t.Flags.string({char:"n",description:"The new name for the theme.",env:"SHOPIFY_FLAG_NEW_NAME",required:!1}),development:t.Flags.boolean({char:"d",description:"Rename your development theme.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),theme:t.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),live:t.Flags.boolean({char:"l",description:"Rename your remote live theme.",env:"SHOPIFY_FLAG_LIVE"})}}static{this.multiEnvironmentsFlags=["store","password","name",["live","development","theme"]]}async command(m,n){await v(m,n)}};export{r as default};
@@ -0,0 +1,3 @@
1
+ import{a as h}from"../../../chunk-TFSBQ4RY.js";import"../../../chunk-JHPRFW5B.js";import"../../../chunk-74HYYXXE.js";import"../../../chunk-2VQJQ36C.js";import"../../../chunk-KWJ562F2.js";import"../../../chunk-2I4PRX2I.js";import"../../../chunk-KNVM7N3U.js";import"../../../chunk-B2IVY4V5.js";import"../../../chunk-26D72ZNV.js";import"../../../chunk-RVNMVBPM.js";import{k as m,q as n}from"../../../chunk-DFMQWJQ3.js";import"../../../chunk-3VZEETAV.js";import"../../../chunk-IX5ICOBV.js";import"../../../chunk-YMWHHINU.js";import"../../../chunk-QFWIDATO.js";import"../../../chunk-RFG5RMPL.js";import"../../../chunk-KBQ4LGFB.js";import"../../../chunk-UGXYQ23Y.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-TQYMC7TH.js";import"../../../chunk-HUZUORYM.js";import{ua as t}from"../../../chunk-B2EHO7ZC.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-LAZJ47DZ.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-GOJ2QHSR.js";import"../../../chunk-7BGM2GAH.js";import"../../../chunk-XNO6DZYP.js";import{b as a}from"../../../chunk-323UTVMM.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-4HHXSMD7.js";import"../../../chunk-YZDDTYTU.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import"../../../chunk-BDVAE5MS.js";import"../../../chunk-P6XE4MH5.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-IASVAERO.js";import"../../../chunk-JPGO36XP.js";import"../../../chunk-PD5ZHJWI.js";import{r as f}from"../../../chunk-LDGAHMS7.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-FUOIGXI4.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-V2CNCPIE.js";import{T as s}from"../../../chunk-GFEAKSGV.js";import"../../../chunk-CERXUPGC.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-YC6G4MHD.js";import"../../../chunk-N7RBSKYT.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import{e as u,g as i}from"../../../chunk-VPRTJUIN.js";i();var r=u(f(),1);var o=class extends n{static{this.summary="Creates a shareable, unpublished, and new theme on your theme library with a randomized name."}static{this.descriptionWithMarkdown=`Uploads your theme as a new, unpublished theme in your theme library. The theme is given a randomized name.
2
+
3
+ This command returns a [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with others.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...a,...m,force:r.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"}),listing:r.Flags.string({description:"The listing preset to use for multi-preset themes. Applies preset files from listings/[preset-name] directory.",env:"SHOPIFY_FLAG_LISTING"})}}static{this.multiEnvironmentsFlags=["store","password","path"]}async command(e,p,d,F,l){let c={environment:e.environment,force:e.force,noColor:e["no-color"],password:e.password,path:e.path,store:e.store,theme:s("creative"),unpublished:!0,listing:e.listing};t("theme-command:share"),await h(c,p,d,l),t("theme-command:share")}};export{o as default};
@@ -1,17 +1 @@
1
- var _a;
2
- import Command from '@shopify/cli-kit/node/base-command';
3
- import { promptAutoUpgrade, runCLIUpgrade } from '@shopify/cli-kit/node/upgrade';
4
- import { addPublicMetadata } from '@shopify/cli-kit/node/metadata';
5
- class Upgrade extends Command {
6
- async run() {
7
- const accepted = await promptAutoUpgrade();
8
- await addPublicMetadata(() => ({ env_auto_upgrade_accepted: accepted }));
9
- await runCLIUpgrade();
10
- }
11
- }
12
- _a = Upgrade;
13
- Upgrade.summary = 'Upgrades Shopify CLI.';
14
- Upgrade.descriptionWithMarkdown = 'Upgrades Shopify CLI using your package manager.';
15
- Upgrade.description = _a.descriptionWithoutMarkdown();
16
- export default Upgrade;
17
- //# sourceMappingURL=upgrade.js.map
1
+ import{a}from"../../chunk-LNHLDRC5.js";import"../../chunk-ELVFJ7BR.js";import"../../chunk-52GC6XUT.js";import"../../chunk-XLELNRFF.js";import"../../chunk-B2EHO7ZC.js";import"../../chunk-4LNCYIS3.js";import"../../chunk-LAZJ47DZ.js";import"../../chunk-PRKBO42R.js";import"../../chunk-GOJ2QHSR.js";import"../../chunk-7BGM2GAH.js";import"../../chunk-XNO6DZYP.js";import"../../chunk-3TNEIDOD.js";import"../../chunk-4HHXSMD7.js";import"../../chunk-YZDDTYTU.js";import"../../chunk-MOA33ZFO.js";import"../../chunk-JUVAGMIH.js";import"../../chunk-BDVAE5MS.js";import"../../chunk-P6XE4MH5.js";import"../../chunk-KLMDWDT2.js";import"../../chunk-5CH3B62S.js";import"../../chunk-QUTQDXSL.js";import"../../chunk-IASVAERO.js";import"../../chunk-JPGO36XP.js";import"../../chunk-PD5ZHJWI.js";import"../../chunk-LDGAHMS7.js";import"../../chunk-ZR76GGZ6.js";import"../../chunk-EENHXSWU.js";import"../../chunk-FUOIGXI4.js";import"../../chunk-6M3ZYNGO.js";import"../../chunk-QYR5VPQA.js";import"../../chunk-V2CNCPIE.js";import"../../chunk-GFEAKSGV.js";import"../../chunk-CERXUPGC.js";import"../../chunk-T4M5CWAO.js";import"../../chunk-PRVQAHWI.js";import"../../chunk-YC6G4MHD.js";import"../../chunk-N7RBSKYT.js";import"../../chunk-IU2ZQ6TE.js";import"../../chunk-PIBY5DDZ.js";import"../../chunk-VPRTJUIN.js";export{a as default};
@@ -1,10 +1 @@
1
- import { versionService } from '../services/commands/version.js';
2
- import Command from '@shopify/cli-kit/node/base-command';
3
- class Version extends Command {
4
- async run() {
5
- await versionService();
6
- }
7
- }
8
- Version.description = 'Shopify CLI version currently installed.';
9
- export default Version;
10
- //# sourceMappingURL=version.js.map
1
+ import{a}from"../../chunk-Y5JKV2AI.js";import"../../chunk-7BGM2GAH.js";import"../../chunk-YZDDTYTU.js";import"../../chunk-MOA33ZFO.js";import"../../chunk-JUVAGMIH.js";import"../../chunk-BDVAE5MS.js";import"../../chunk-P6XE4MH5.js";import"../../chunk-KLMDWDT2.js";import"../../chunk-5CH3B62S.js";import"../../chunk-QUTQDXSL.js";import"../../chunk-IASVAERO.js";import"../../chunk-JPGO36XP.js";import"../../chunk-PD5ZHJWI.js";import"../../chunk-LDGAHMS7.js";import"../../chunk-ZR76GGZ6.js";import"../../chunk-EENHXSWU.js";import"../../chunk-FUOIGXI4.js";import"../../chunk-6M3ZYNGO.js";import"../../chunk-QYR5VPQA.js";import"../../chunk-V2CNCPIE.js";import"../../chunk-GFEAKSGV.js";import"../../chunk-CERXUPGC.js";import"../../chunk-T4M5CWAO.js";import"../../chunk-PRVQAHWI.js";import"../../chunk-YC6G4MHD.js";import"../../chunk-N7RBSKYT.js";import"../../chunk-IU2ZQ6TE.js";import"../../chunk-PIBY5DDZ.js";import"../../chunk-VPRTJUIN.js";export{a as default};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Load a command class by its ID.
3
+ *
4
+ * Looks up the command in the oclif manifest to find the owning package,
5
+ * derives the file path from the command ID, and imports only that file.
6
+ * Falls back to importing the full package for external plugins.
7
+ */
8
+ export declare function loadCommand(id: string): Promise<any | undefined>;
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-OUOYKNMY.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-VPRTJUIN.js";export{a as loadCommand};
@@ -0,0 +1 @@
1
+ import{d as a,e as b,f as c,g as d,h as e,i as f,j as g,k as h,l as i,m as j,n as k,o as l,p as m,q as n,r as o,s as p,t as q,u as r}from"./chunk-GOJ2QHSR.js";import"./chunk-4HHXSMD7.js";import"./chunk-5CH3B62S.js";import"./chunk-JPGO36XP.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{j as cacheClear,i as cacheRetrieve,g as cacheRetrieveOrRepopulate,h as cacheStore,n as getAutoUpgradeEnabled,q as getCachedPartnerAccountStatus,p as getConfigStoreForPartnerStatus,d as getCurrentSessionId,a as getSessions,f as removeCurrentSessionId,c as removeSessions,l as runAtMinimumInterval,m as runWithRateLimit,o as setAutoUpgradeEnabled,r as setCachedPartnerAccountStatus,e as setCurrentSessionId,b as setSessions,k as timeIntervalToMilliseconds};
@@ -0,0 +1 @@
1
+ import{r as e}from"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-PIBY5DDZ.js";import{e as d,g as r}from"./chunk-VPRTJUIN.js";r();var u=d(e(),1),i=class extends u.Config{setLazyCommandLoader(n){this.lazyCommandLoader=n}async runCommand(n,a=[],t=null){if(this.lazyCommandLoader){let m=t??this.findCommand(n);if(m){let o=await this.lazyCommandLoader(n);if(o){o.id=n,o.plugin=m.plugin??this.rootPlugin,await this.runHook("prerun",{argv:a,Command:o});let s=await o.run(a,this);return await this.runHook("postrun",{argv:a,Command:o,result:s}),s}}}return super.runCommand(n,a,t)}};export{i as ShopifyConfig};
@@ -0,0 +1 @@
1
+ import{a as r}from"./chunk-4LNCYIS3.js";import{w as a}from"./chunk-BDVAE5MS.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-IASVAERO.js";import"./chunk-JPGO36XP.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-V2CNCPIE.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import{g as n}from"./chunk-VPRTJUIN.js";n();var f=t=>{let e=r();if(e){let o=t.id.includes("theme");s(e,o)}};function s(t,e){let i=`Upgrade to the latest CLI version by ${new Intl.DateTimeFormat("default",{year:"numeric",month:"long",day:"numeric"}).format(t)}.`;a({headline:i,body:"This command requires an upgrade to continue working as intended.",nextSteps:[["Run",{command:"upgrade"},"to",{link:{label:"upgrade Shopify CLI",url:e?"https://shopify.dev/docs/themes/tools/cli#upgrade-shopify-cli":"https://shopify.dev/docs/apps/tools/cli#upgrade-shopify-cli"}}]]})}export{f as postrun};
@@ -0,0 +1 @@
1
+ import{a,b,c,d}from"./chunk-WXVZJJOR.js";import"./chunk-4HHXSMD7.js";import"./chunk-YZDDTYTU.js";import"./chunk-MOA33ZFO.js";import"./chunk-JUVAGMIH.js";import"./chunk-BDVAE5MS.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-IASVAERO.js";import"./chunk-JPGO36XP.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-V2CNCPIE.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{c as DidYouMeanCommands,d as DidYouMeanHook,a as findAlternativeCommand,b as shouldRunCommand};
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk-VS3T5YOG.js";import"./chunk-OLZHWPZP.js";import"./chunk-HSK7YMRE.js";import"./chunk-3VZEETAV.js";import"./chunk-DJONKJSZ.js";import"./chunk-P7R7FBY2.js";import"./chunk-LX3ZOW52.js";import"./chunk-WDC3KIZT.js";import"./chunk-ELYP4KFP.js";import"./chunk-7MUKLZOL.js";import"./chunk-VBUZWRUL.js";import"./chunk-QSTEVZFQ.js";import"./chunk-5Y7GIF2W.js";import"./chunk-B2EHO7ZC.js";import"./chunk-4LNCYIS3.js";import"./chunk-LAZJ47DZ.js";import"./chunk-PRKBO42R.js";import"./chunk-GOJ2QHSR.js";import"./chunk-7BGM2GAH.js";import"./chunk-XNO6DZYP.js";import"./chunk-3TNEIDOD.js";import"./chunk-4HHXSMD7.js";import"./chunk-YZDDTYTU.js";import"./chunk-MOA33ZFO.js";import"./chunk-JUVAGMIH.js";import"./chunk-BDVAE5MS.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-IASVAERO.js";import"./chunk-JPGO36XP.js";import"./chunk-HZA6IAA4.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-V2CNCPIE.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{a as COMMANDS,b as HOOKS};
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk-KBQ4LGFB.js";import"./chunk-HUZUORYM.js";import"./chunk-BDVAE5MS.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-IASVAERO.js";import"./chunk-JPGO36XP.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-V2CNCPIE.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{b as environmentFilePath,a as loadEnvironment};
@@ -0,0 +1 @@
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l}from"./chunk-JPGO36XP.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";var export_ExtendableError=l.ExtendableError;export{d as AbortError,f as AbortSilentError,g as BugError,b as CancelExecution,export_ExtendableError as ExtendableError,e as ExternalError,c as FatalError,a as FatalErrorType,k as cleanSingleStackTracePath,i as errorMapper,h as handler,j as shouldReportErrorAsUnexpected};
@@ -0,0 +1 @@
1
+ import{Ea as a,Fa as b,Ga as c,Ha as d,Ia as e}from"./chunk-B2EHO7ZC.js";import"./chunk-4LNCYIS3.js";import"./chunk-LAZJ47DZ.js";import"./chunk-PRKBO42R.js";import"./chunk-GOJ2QHSR.js";import"./chunk-7BGM2GAH.js";import"./chunk-XNO6DZYP.js";import"./chunk-3TNEIDOD.js";import"./chunk-4HHXSMD7.js";import"./chunk-JUVAGMIH.js";import"./chunk-BDVAE5MS.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-IASVAERO.js";import"./chunk-JPGO36XP.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-V2CNCPIE.js";import"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{e as addBugsnagMetadata,c as cleanStackFrameFilePath,a as errorHandler,d as registerCleanBugsnagErrorsFromWithinPlugins,b as sendErrorToBugsnag};
@@ -0,0 +1 @@
1
+ import{$a as S,Aa as r,Ba as s,Ca as t,Da as u,Ea as v,Fa as w,Ga as x,Ha as y,Ia as z,Ja as A,Ka as B,La as C,Ma as D,Na as E,Oa as F,Pa as G,Qa as H,Ra as I,Sa as J,Ta as K,Ua as L,Va as M,Wa as N,Xa as O,Ya as P,Za as Q,_a as R,ab as T,bb as U,cb as V,db as W,ja as a,ka as b,la as c,ma as d,na as e,oa as f,pa as g,qa as h,ra as i,sa as j,ta as k,ua as l,va as m,wa as n,xa as o,ya as p,za as q}from"./chunk-GFEAKSGV.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YC6G4MHD.js";import"./chunk-N7RBSKYT.js";import"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import"./chunk-VPRTJUIN.js";export{j as appendFile,k as appendFileSync,G as chmod,W as copyDirectoryContents,g as copyFile,B as createFileReadStream,C as createFileWriteStream,R as defaultEOL,Q as detectEOL,K as fileExists,L as fileExistsSync,H as fileHasExecutablePermissions,I as fileHasWritePermissions,D as fileLastUpdated,E as fileLastUpdatedTimestamp,f as fileRealPath,x as fileSize,y as fileSizeSync,S as findPathUp,T as findPathUpSync,M as generateRandomNameForSubdirectory,N as glob,O as globSync,b as inTemporaryDirectory,v as isDirectory,w as isDirectorySync,U as matchGlob,u as mkTmpDir,n as mkdir,o as mkdirSync,F as moveFile,P as pathToFileURL,d as readFile,e as readFileSync,V as readdir,p as removeFile,s as removeFileSync,q as renameFile,t as rmdir,a as stripUpPath,r as symlink,c as tempDirectory,h as touchFile,i as touchFileSync,J as unixFileIsOwnedByCurrentUser,A as unlinkFile,z as unlinkFileSync,l as writeFile,m as writeFileSync};
@@ -0,0 +1,9 @@
1
+ import { Hook } from '@oclif/core';
2
+ /**
3
+ * Inlined version of the `\@shopify/app` init hook.
4
+ * The original hook imports `\@shopify/app` → local-storage → cli-kit error chain (~1s).
5
+ * This inlined version avoids those imports entirely. It lazily imports the
6
+ * LocalStorage class only at call time, and uses Node's native crypto.
7
+ */
8
+ declare const init: Hook<'init'>;
9
+ export default init;
@@ -0,0 +1 @@
1
+ import{g as o}from"../chunk-VPRTJUIN.js";o();import{randomUUID as r}from"crypto";var a=async e=>{let{LocalStorage:t}=await import("../local-storage-JLXBZVWO.js");new t({projectName:"shopify-cli-app-command"}).clear(),process.env.COMMAND_RUN_ID=r()},c=a;export{c as default};
@@ -0,0 +1 @@
1
+ export { DidYouMeanHook as default } from '@shopify/plugin-did-you-mean';
@@ -0,0 +1 @@
1
+ import{d as a}from"../chunk-WXVZJJOR.js";import"../chunk-4HHXSMD7.js";import"../chunk-YZDDTYTU.js";import"../chunk-MOA33ZFO.js";import"../chunk-JUVAGMIH.js";import"../chunk-BDVAE5MS.js";import"../chunk-P6XE4MH5.js";import"../chunk-KLMDWDT2.js";import"../chunk-5CH3B62S.js";import"../chunk-QUTQDXSL.js";import"../chunk-IASVAERO.js";import"../chunk-JPGO36XP.js";import"../chunk-PD5ZHJWI.js";import"../chunk-LDGAHMS7.js";import"../chunk-ZR76GGZ6.js";import"../chunk-EENHXSWU.js";import"../chunk-FUOIGXI4.js";import"../chunk-6M3ZYNGO.js";import"../chunk-QYR5VPQA.js";import"../chunk-V2CNCPIE.js";import"../chunk-GFEAKSGV.js";import"../chunk-CERXUPGC.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-YC6G4MHD.js";import"../chunk-N7RBSKYT.js";import"../chunk-IU2ZQ6TE.js";import"../chunk-PIBY5DDZ.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
@@ -0,0 +1,7 @@
1
+ import { Hook } from '@oclif/core';
2
+ /**
3
+ * Hydrogen init hook — only loads `@shopify/cli-hydrogen` when running a hydrogen command.
4
+ * This avoids the ~300ms+ import cost for non-hydrogen commands.
5
+ */
6
+ declare const hook: Hook<'init'>;
7
+ export default hook;
@@ -0,0 +1 @@
1
+ import{g as n}from"../chunk-VPRTJUIN.js";n();var o=async i=>{if(!i.id?.startsWith("hydrogen:")||i.id==="hydrogen:init")return;let{HOOKS:t}=await import("../dist-GYHFDHKP.js");t.init&&typeof t.init=="function"&&await t.init.call(void 0,i)},a=o;export{a as default};
@@ -0,0 +1 @@
1
+ export { hooks as default } from '@oclif/plugin-plugins';
@@ -0,0 +1 @@
1
+ import{b as a}from"../chunk-7UYZQN4V.js";import"../chunk-Z35BTAM6.js";import"../chunk-75VPUOC5.js";import"../chunk-HZA6IAA4.js";import"../chunk-PD5ZHJWI.js";import"../chunk-LDGAHMS7.js";import"../chunk-ZR76GGZ6.js";import"../chunk-EENHXSWU.js";import"../chunk-FUOIGXI4.js";import"../chunk-6M3ZYNGO.js";import"../chunk-QYR5VPQA.js";import"../chunk-PIBY5DDZ.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
@@ -1 +1 @@
1
- import{d as a}from"../chunk-675GKVCB.js";import"../chunk-7ES6PV7M.js";import"../chunk-PRKBO42R.js";import"../chunk-PBKIXB7L.js";import"../chunk-66TIGB4U.js";import"../chunk-SVA22NZQ.js";import"../chunk-FU2Y2M3M.js";import"../chunk-QYR5VPQA.js";import"../chunk-EENHXSWU.js";import"../chunk-JBSYWYIP.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
1
+ import{b as a}from"../chunk-KGXQS7LS.js";import"../chunk-V2CNCPIE.js";import"../chunk-GFEAKSGV.js";import"../chunk-CERXUPGC.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-YC6G4MHD.js";import"../chunk-N7RBSKYT.js";import"../chunk-IU2ZQ6TE.js";import"../chunk-PIBY5DDZ.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
@@ -1 +1 @@
1
- import{e as c}from"../chunk-IDQ4X47Z.js";import{Ca as s,a}from"../chunk-7ES6PV7M.js";import"../chunk-PRKBO42R.js";import{O as i}from"../chunk-PBKIXB7L.js";import{Ed as m,lb as t}from"../chunk-66TIGB4U.js";import"../chunk-SVA22NZQ.js";import"../chunk-FU2Y2M3M.js";import"../chunk-QYR5VPQA.js";import"../chunk-EENHXSWU.js";import"../chunk-JBSYWYIP.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as e}from"../chunk-VPRTJUIN.js";e();e();var d=async n=>{let r=f({id:n.Command.id,aliases:n.Command.aliases,pluginAlias:n.Command.plugin?.alias}),o=n.argv;h(),m(`Running command ${r.command}`),await s({commandContent:r,args:o,commandClass:n.Command}),c(n.Command.id)};function f(n){let r=p(n.pluginAlias);return r??(r=l(n.id,n.aliases)),r}function l(n,r){return{command:n.replace(/:/g," "),topic:C(n),alias:g(r)}}function p(n){if(n?.startsWith("@shopify/create-"))return{command:n.substring(n.indexOf("/")+1)}}function C(n){if(n.lastIndexOf(":")!==-1)return n.slice(0,n.lastIndexOf(":")).replace(/:/g," ")}function g(n){let r=n.find(o=>o.split(":").every(u=>process.argv.includes(u)));if(r)return r.replace(/:/g," ")}function h(){let n=a;t(n)||i("@shopify/cli",n,{cacheExpiryInHours:24})}export{d as default};
1
+ import{g as o}from"../chunk-VPRTJUIN.js";o();o();var s=async n=>{let a=c({id:n.Command.id,aliases:n.Command.aliases,pluginAlias:n.Command.plugin?.alias}),i=n.argv,[{outputDebug:e},r,t]=await Promise.all([import("../output-YGMHXEIS.js"),import("../analytics-KKVP5DT3.js"),import("../notifications-system-MP7WDOCS.js")]);f(),e(`Running command ${a.command}`),await r.startAnalytics({commandContent:a,args:i,commandClass:n.Command}),t.fetchNotificationsInBackground(n.Command.id)};function c(n){let a=d(n.pluginAlias);return a??(a=m(n.id,n.aliases)),a}function m(n,a){return{command:n.replace(/:/g," "),topic:l(n),alias:u(a)}}function d(n){if(n?.startsWith("@shopify/create-"))return{command:n.substring(n.indexOf("/")+1)}}function l(n){if(n.lastIndexOf(":")!==-1)return n.slice(0,n.lastIndexOf(":")).replace(/:/g," ")}function u(n){let a=n.find(i=>i.split(":").every(e=>process.argv.includes(e)));if(a)return a.replace(/:/g," ")}async function f(){let[{CLI_KIT_VERSION:n},{isPreReleaseVersion:a},{checkForNewVersion:i}]=await Promise.all([import("../version-KRQBMYCH.js"),import("../version-D5PJZIRW.js"),import("../node-package-manager-HAFRYGUM.js")]),e=n;a(e)||i("@shopify/cli",e,{cacheExpiryInHours:24})}export{s as default};
@@ -0,0 +1 @@
1
+ export { default } from '@shopify/app/hooks/public-metadata';
@@ -0,0 +1 @@
1
+ import{a as f}from"../chunk-IOLVEXM6.js";import"../chunk-NRAFVIU3.js";import"../chunk-IASVAERO.js";import"../chunk-YC6G4MHD.js";import"../chunk-N7RBSKYT.js";import"../chunk-IU2ZQ6TE.js";import{g as e}from"../chunk-VPRTJUIN.js";e();export{f as default};
@@ -0,0 +1 @@
1
+ export { default } from '@shopify/app/hooks/sensitive-metadata';
@@ -0,0 +1 @@
1
+ import{a as f}from"../chunk-3LVGAQB4.js";import"../chunk-NRAFVIU3.js";import"../chunk-IASVAERO.js";import"../chunk-YC6G4MHD.js";import"../chunk-N7RBSKYT.js";import"../chunk-IU2ZQ6TE.js";import{g as e}from"../chunk-VPRTJUIN.js";e();export{f as default};
@@ -0,0 +1 @@
1
+ export { default } from '@shopify/plugin-cloudflare/hooks/provider';
@@ -0,0 +1 @@
1
+ import{d as f}from"../chunk-72F3YBNA.js";import"../chunk-XNO6DZYP.js";import"../chunk-JPGO36XP.js";import"../chunk-LDGAHMS7.js";import"../chunk-ZR76GGZ6.js";import"../chunk-EENHXSWU.js";import"../chunk-FUOIGXI4.js";import"../chunk-6M3ZYNGO.js";import"../chunk-QYR5VPQA.js";import"../chunk-GFEAKSGV.js";import"../chunk-CERXUPGC.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-YC6G4MHD.js";import"../chunk-N7RBSKYT.js";import"../chunk-IU2ZQ6TE.js";import"../chunk-PIBY5DDZ.js";import{g as e}from"../chunk-VPRTJUIN.js";e();export{f as default};
@@ -0,0 +1 @@
1
+ export { default } from '@shopify/plugin-cloudflare/hooks/tunnel';