@shopify/cli 4.5.2 → 4.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. package/dist/analytics-3ICKUTK2.js +1 -0
  2. package/dist/analytics-73NVZI4Z.js +1 -0
  3. package/dist/assets/hydrogen/starter/package.json +1 -1
  4. package/dist/bootstrap.js +1 -1
  5. package/dist/{chokidar-VDIVGBZH.js → chokidar-5RWEYTNQ.js} +1 -1
  6. package/dist/{chunk-SH6Q5CLM.js → chunk-25Z36VJG.js} +1 -1
  7. package/dist/{chunk-OC5PD4ID.js → chunk-2AVFG5KT.js} +1 -1
  8. package/dist/chunk-2DMTEIS3.js +2 -0
  9. package/dist/chunk-2GB3EAD3.js +153 -0
  10. package/dist/{chunk-UQWFDL3F.js → chunk-2KD4LHRT.js} +1 -1
  11. package/dist/{chunk-4VJ5VBSR.js → chunk-2NB4P6BB.js} +1 -1
  12. package/dist/{chunk-75DBVSVI.js → chunk-2OYQHHKC.js} +1 -1
  13. package/dist/{chunk-OMXKQY2L.js → chunk-2VJKXWLG.js} +1 -1
  14. package/dist/{chunk-V6QZF5YS.js → chunk-3Q5ESVIY.js} +1 -1
  15. package/dist/{chunk-TPGREOWO.js → chunk-3XCIUG5P.js} +1 -1
  16. package/dist/chunk-445NFHXL.js +3 -0
  17. package/dist/{chunk-WN5VTUWJ.js → chunk-4BPFJDH3.js} +1 -1
  18. package/dist/chunk-4E5RGEJO.js +1 -0
  19. package/dist/{chunk-LGFOE4XL.js → chunk-4IHSAT76.js} +1 -1
  20. package/dist/chunk-4TANJ4JK.js +1 -0
  21. package/dist/{chunk-VCWESQBC.js → chunk-534U3DKZ.js} +2 -2
  22. package/dist/{chunk-KIAMA3L2.js → chunk-56T6YCU2.js} +1 -1
  23. package/dist/chunk-5HJTCBBV.js +317 -0
  24. package/dist/{chunk-523SJVNT.js → chunk-5INBKZRD.js} +1 -1
  25. package/dist/{chunk-DIPTSBQM.js → chunk-5Q4WAGQL.js} +1 -1
  26. package/dist/{chunk-35FS2NTM.js → chunk-5QDM4XIK.js} +1 -1
  27. package/dist/chunk-65CEF3SM.js +8 -0
  28. package/dist/{chunk-NSADN5S2.js → chunk-6HQMZ324.js} +141 -141
  29. package/dist/{chunk-QEVGRNUE.js → chunk-6KAWCN3I.js} +3 -3
  30. package/dist/{chunk-GDHD3TGC.js → chunk-6QDOCBD4.js} +1 -1
  31. package/dist/{chunk-LVLDPYH5.js → chunk-6ZPHB5U2.js} +1 -1
  32. package/dist/{chunk-XS7WK4YK.js → chunk-7AWKXTNS.js} +1 -1
  33. package/dist/chunk-7EE7YOCR.js +16 -0
  34. package/dist/{chunk-L42FYXFW.js → chunk-7L5AIZOP.js} +4 -4
  35. package/dist/chunk-7MD5MIGN.js +103 -0
  36. package/dist/{chunk-N6IFIMC6.js → chunk-7TXWKLPY.js} +1 -1
  37. package/dist/{chunk-ZUWEGJA7.js → chunk-7US4TVO2.js} +1 -1
  38. package/dist/{chunk-7TQ6HVHN.js → chunk-A7IDVXF7.js} +1 -1
  39. package/dist/chunk-AFM3UZQO.js +684 -0
  40. package/dist/{chunk-5GVE4ILZ.js → chunk-AHLNB45E.js} +1 -1
  41. package/dist/{chunk-JOKLZMTP.js → chunk-ARCAYYRW.js} +1 -1
  42. package/dist/{chunk-JADXT2DY.js → chunk-B3U6GDHL.js} +1 -1
  43. package/dist/chunk-BCZMDFI2.js +370 -0
  44. package/dist/chunk-BDDROQGK.js +26 -0
  45. package/dist/{chunk-P6LVSNTT.js → chunk-BKJMVAI7.js} +1 -1
  46. package/dist/chunk-BOAGJ6P5.js +1 -0
  47. package/dist/{chunk-TSEPNC3O.js → chunk-BPDUBZMU.js} +1 -1
  48. package/dist/chunk-BQOKTPUU.js +1 -0
  49. package/dist/{chunk-6VR22Z5R.js → chunk-C7LFLIRT.js} +3 -3
  50. package/dist/chunk-CELVG4AL.js +6 -0
  51. package/dist/{chunk-BQARKSGG.js → chunk-CNI7ZUST.js} +1 -1
  52. package/dist/{chunk-YKNMNGV7.js → chunk-CONJQV7M.js} +1 -1
  53. package/dist/chunk-CTNBSUVU.js +83 -0
  54. package/dist/chunk-CV5ELBVU.js +1 -0
  55. package/dist/{chunk-DI5ZPWNA.js → chunk-DC7TXY4K.js} +1 -1
  56. package/dist/{chunk-ODSMT2ZC.js → chunk-DXUISRMZ.js} +1 -1
  57. package/dist/chunk-EHV7EKB3.js +2 -0
  58. package/dist/{chunk-SZM6ANMN.js → chunk-EQNJ2NQD.js} +2 -2
  59. package/dist/{chunk-NIVGP4LB.js → chunk-EVIO6OWW.js} +1 -1
  60. package/dist/chunk-EZBB2ULE.js +1 -0
  61. package/dist/{chunk-Z6VNPAY7.js → chunk-FBVNXRVB.js} +1 -1
  62. package/dist/chunk-FFSDGRAN.js +1 -0
  63. package/dist/{chunk-YXNKDX56.js → chunk-FG5QXIQH.js} +1 -1
  64. package/dist/{chunk-6ZWMXMNM.js → chunk-FGG6HXIZ.js} +1 -1
  65. package/dist/{chunk-3EJGRQTH.js → chunk-FJCZ4F6J.js} +1 -1
  66. package/dist/{chunk-2ACN7JIZ.js → chunk-FKH5ZF2C.js} +1 -1
  67. package/dist/{chunk-LSCDB36D.js → chunk-GD5IRJBE.js} +1 -1
  68. package/dist/{chunk-ZAN7AZTX.js → chunk-GJEG7VGX.js} +1 -1
  69. package/dist/{chunk-XUAAQI5N.js → chunk-GT6BJ2GK.js} +1 -1
  70. package/dist/chunk-GWNV44NZ.js +18 -0
  71. package/dist/{chunk-ZT4PUH7L.js → chunk-GXO2RRV2.js} +1 -1
  72. package/dist/{chunk-MC466GSO.js → chunk-H5I7BSNG.js} +1 -1
  73. package/dist/{chunk-6AWRW3GS.js → chunk-H5YC3EP6.js} +1 -1
  74. package/dist/chunk-HVMEBH24.js +6 -0
  75. package/dist/{chunk-5N7H4PJJ.js → chunk-HY3INWPI.js} +1 -1
  76. package/dist/{chunk-XXLGM6OZ.js → chunk-I6ST5X56.js} +1 -1
  77. package/dist/{chunk-RFOALCVH.js → chunk-ID6ASBGV.js} +1 -1
  78. package/dist/{chunk-R6A754UW.js → chunk-IDQT2UY7.js} +1 -1
  79. package/dist/chunk-IIOFR25P.js +3 -0
  80. package/dist/{chunk-FSVSM57K.js → chunk-IJEDTDSJ.js} +6 -6
  81. package/dist/{chunk-42RVM4EZ.js → chunk-ILICQWUF.js} +1 -1
  82. package/dist/chunk-IMWEC6NF.js +16 -0
  83. package/dist/{chunk-Q7DSLGTN.js → chunk-ITNFDLZ4.js} +1 -1
  84. package/dist/chunk-IU5U6KKO.js +4 -0
  85. package/dist/{chunk-YNX4DT2O.js → chunk-IXCDFXMB.js} +1 -1
  86. package/dist/chunk-J3D4KQOQ.js +1 -0
  87. package/dist/chunk-JJZNUFPD.js +44 -0
  88. package/dist/chunk-JRTJZAFJ.js +19 -0
  89. package/dist/chunk-JT7YTXJ7.js +1 -0
  90. package/dist/{chunk-EEEKSYWV.js → chunk-JX4HSDDG.js} +15 -15
  91. package/dist/chunk-K4M32VKU.js +5 -0
  92. package/dist/{chunk-XHTICMA7.js → chunk-K5GJNXDK.js} +1 -1
  93. package/dist/{chunk-5CV7GFWZ.js → chunk-KCNOFNS5.js} +1 -1
  94. package/dist/{chunk-3OCR7P3S.js → chunk-KM2R6O7V.js} +1 -1
  95. package/dist/{chunk-CX44CQFL.js → chunk-KNFDN3AP.js} +1 -1
  96. package/dist/{chunk-ZG7BVVT2.js → chunk-LD6ZCTZ3.js} +1 -1
  97. package/dist/{chunk-TM44Z7U7.js → chunk-LDWMX3KZ.js} +1 -1
  98. package/dist/{chunk-6K4DVV37.js → chunk-LEDVV6XK.js} +1 -1
  99. package/dist/chunk-LEEVJH4B.js +1 -0
  100. package/dist/{chunk-EOJNSPIH.js → chunk-LJZIIURR.js} +1 -1
  101. package/dist/{chunk-UHMRDG6J.js → chunk-LURVEPYP.js} +1 -1
  102. package/dist/{chunk-HQE5B2CF.js → chunk-LXOBW4AW.js} +1 -1
  103. package/dist/{chunk-AAK3WGD7.js → chunk-M5YGJYNI.js} +1 -1
  104. package/dist/{chunk-UMB4BWCK.js → chunk-MDQHEW7V.js} +1 -1
  105. package/dist/{chunk-ICRQZAXP.js → chunk-MMP3F6LO.js} +1 -1
  106. package/dist/{chunk-HOAVZLEG.js → chunk-MPYCIVRA.js} +1 -1
  107. package/dist/chunk-MY2H5XPY.js +7 -0
  108. package/dist/{chunk-SG5TRPJ7.js → chunk-N4RYVOXT.js} +1 -1
  109. package/dist/chunk-NB6HHZ36.js +1 -0
  110. package/dist/{chunk-UVIGXZMV.js → chunk-NEK2KNKR.js} +1 -1
  111. package/dist/{chunk-VJQJ5PTQ.js → chunk-NENUUNWB.js} +1 -1
  112. package/dist/{chunk-K4APB7O3.js → chunk-NJONAV7V.js} +1 -1
  113. package/dist/{chunk-7KWBVZPI.js → chunk-NKBSS7YL.js} +1 -1
  114. package/dist/{chunk-HSVZU7MP.js → chunk-NKT5U6IJ.js} +1 -1
  115. package/dist/{chunk-RLB5QHWG.js → chunk-NVQOAHID.js} +1 -1
  116. package/dist/{chunk-P7OSUECN.js → chunk-OHQTOHUX.js} +1 -1
  117. package/dist/chunk-P2P2MAZQ.js +1 -0
  118. package/dist/{chunk-KFUOVO3X.js → chunk-PCTVUTV3.js} +1 -1
  119. package/dist/{chunk-OJZT3NA2.js → chunk-PKR6HS4T.js} +1 -1
  120. package/dist/chunk-PKRDBS7O.js +5 -0
  121. package/dist/{chunk-BVWQZKNK.js → chunk-PMD6S7YG.js} +1 -1
  122. package/dist/{chunk-KPNNGJAW.js → chunk-PUOCHFFI.js} +1 -1
  123. package/dist/{chunk-ANH2V6DJ.js → chunk-Q2DPBMV4.js} +1 -1
  124. package/dist/{chunk-23LZNWB5.js → chunk-Q6XT3YKV.js} +1 -1
  125. package/dist/{chunk-TNUY66EE.js → chunk-QARALFHD.js} +1 -1
  126. package/dist/{chunk-XCGV3IJ5.js → chunk-QEL3F2NY.js} +1 -1
  127. package/dist/{chunk-P2SBE77Z.js → chunk-R2W5B7YI.js} +1 -1
  128. package/dist/chunk-REABQXMP.js +1 -0
  129. package/dist/{chunk-KQTVJMV6.js → chunk-RMF3YNWE.js} +1 -1
  130. package/dist/{chunk-TH6CLNGO.js → chunk-RTPVI7LE.js} +1 -1
  131. package/dist/{chunk-U3MSTPZP.js → chunk-SFZQFEZB.js} +1 -1
  132. package/dist/{chunk-7AY6HLQG.js → chunk-STCLJWHD.js} +1 -1
  133. package/dist/{chunk-7AYYQUJG.js → chunk-STJWHL36.js} +1 -1
  134. package/dist/{chunk-NYG2VQFQ.js → chunk-SZJHOXS6.js} +1 -1
  135. package/dist/{chunk-DZMXYETH.js → chunk-TEPMNVJN.js} +1 -1
  136. package/dist/{chunk-ML6SILEL.js → chunk-TNSMROUR.js} +1 -1
  137. package/dist/chunk-TR4OWSEX.js +77 -0
  138. package/dist/{chunk-AUAUAK6P.js → chunk-U3P5TIIR.js} +1 -1
  139. package/dist/{chunk-CEBDKIVH.js → chunk-UDDJQ34Y.js} +1 -1
  140. package/dist/chunk-UKQ7NE5V.js +1 -0
  141. package/dist/{chunk-KMQE7WFZ.js → chunk-UOQBCBKY.js} +1 -1
  142. package/dist/{chunk-RTINXD5Z.js → chunk-UQWT2PFO.js} +1 -1
  143. package/dist/{chunk-AATUQ2AY.js → chunk-UTK6V2NE.js} +80 -80
  144. package/dist/{chunk-XDV4PRFT.js → chunk-V26QBVCN.js} +1 -1
  145. package/dist/{chunk-T35C6NC7.js → chunk-VVEQ4IHW.js} +1 -1
  146. package/dist/chunk-VXBHTSMX.js +20 -0
  147. package/dist/chunk-W2357IN2.js +2 -0
  148. package/dist/chunk-W6ST525S.js +99 -0
  149. package/dist/chunk-WDCCITSG.js +1 -0
  150. package/dist/{chunk-5VRU3BT5.js → chunk-WE3VLC2S.js} +1 -1
  151. package/dist/chunk-WGMYSPR2.js +10 -0
  152. package/dist/chunk-WHT2RCAD.js +11 -0
  153. package/dist/{chunk-YWQPSMRZ.js → chunk-WOYI6SDK.js} +1 -1
  154. package/dist/{chunk-BUVP2UUA.js → chunk-WXJGZGQS.js} +1 -1
  155. package/dist/{chunk-DELISRUH.js → chunk-X4AZV5A2.js} +1 -1
  156. package/dist/{chunk-7PVNAILK.js → chunk-X5RH4ALT.js} +1 -1
  157. package/dist/{chunk-2TJ6LOCC.js → chunk-XBBP5BWC.js} +1 -1
  158. package/dist/{chunk-4UJNCOE6.js → chunk-XH32NPYG.js} +1 -1
  159. package/dist/{chunk-PEYYIWP6.js → chunk-XZ2KUBFJ.js} +1 -1
  160. package/dist/{chunk-TC3JOEMA.js → chunk-Y2PC2BBJ.js} +60 -60
  161. package/dist/{chunk-I5X3IP6T.js → chunk-Y7A7Z2V3.js} +1 -1
  162. package/dist/{chunk-UW6YEKST.js → chunk-YE7XCF44.js} +1 -1
  163. package/dist/{chunk-LXOBFJZO.js → chunk-YHH3JA36.js} +1 -1
  164. package/dist/chunk-YIFT67BD.js +4 -0
  165. package/dist/{chunk-34SINZ7L.js → chunk-YR7K4NQT.js} +1 -1
  166. package/dist/{chunk-VGSH33QU.js → chunk-Z36JS7OX.js} +1 -1
  167. package/dist/{chunk-WDSBR7KX.js → chunk-ZHPPBTNE.js} +1 -1
  168. package/dist/chunk-ZMSE5SQB.js +1 -0
  169. package/dist/cli/commands/app/app-logs/sources.js +1 -1
  170. package/dist/cli/commands/app/build.js +1 -1
  171. package/dist/cli/commands/app/bulk/cancel.js +1 -1
  172. package/dist/cli/commands/app/bulk/execute.js +1 -1
  173. package/dist/cli/commands/app/bulk/status.js +1 -1
  174. package/dist/cli/commands/app/config/link.js +1 -1
  175. package/dist/cli/commands/app/config/pull.js +1 -1
  176. package/dist/cli/commands/app/config/use.js +1 -1
  177. package/dist/cli/commands/app/config/validate.js +1 -1
  178. package/dist/cli/commands/app/demo/watcher.js +1 -1
  179. package/dist/cli/commands/app/deploy.js +1 -1
  180. package/dist/cli/commands/app/dev/clean.js +1 -1
  181. package/dist/cli/commands/app/dev.js +1 -1
  182. package/dist/cli/commands/app/env/pull.js +1 -1
  183. package/dist/cli/commands/app/env/show.js +1 -1
  184. package/dist/cli/commands/app/execute.js +1 -1
  185. package/dist/cli/commands/app/function/build.js +1 -1
  186. package/dist/cli/commands/app/function/info.js +1 -1
  187. package/dist/cli/commands/app/function/replay.js +1 -1
  188. package/dist/cli/commands/app/function/run.js +1 -1
  189. package/dist/cli/commands/app/function/schema.js +1 -1
  190. package/dist/cli/commands/app/function/typegen.js +1 -1
  191. package/dist/cli/commands/app/generate/extension.js +1 -1
  192. package/dist/cli/commands/app/graphiql.js +1 -1
  193. package/dist/cli/commands/app/import-custom-data-definitions.js +1 -1
  194. package/dist/cli/commands/app/import-extensions.js +1 -1
  195. package/dist/cli/commands/app/info.js +1 -1
  196. package/dist/cli/commands/app/init.js +1 -1
  197. package/dist/cli/commands/app/logs.js +1 -1
  198. package/dist/cli/commands/app/release.js +1 -1
  199. package/dist/cli/commands/app/versions/list.js +1 -1
  200. package/dist/cli/commands/app/webhook/trigger.js +1 -1
  201. package/dist/cli/commands/auth/login.js +1 -1
  202. package/dist/cli/commands/auth/logout.js +1 -1
  203. package/dist/cli/commands/cache/clear.js +1 -1
  204. package/dist/cli/commands/config/autoupgrade/off.js +1 -1
  205. package/dist/cli/commands/config/autoupgrade/on.js +1 -1
  206. package/dist/cli/commands/config/autoupgrade/status.js +1 -1
  207. package/dist/cli/commands/debug/command-flags.js +1 -1
  208. package/dist/cli/commands/doc/fetch.js +1 -1
  209. package/dist/cli/commands/doc/search.js +1 -1
  210. package/dist/cli/commands/docs/generate.js +1 -1
  211. package/dist/cli/commands/doctor-release/doctor-release.js +1 -1
  212. package/dist/cli/commands/doctor-release/theme/index.js +1 -1
  213. package/dist/cli/commands/help.js +1 -1
  214. package/dist/cli/commands/kitchen-sink/async.js +1 -1
  215. package/dist/cli/commands/kitchen-sink/index.js +1 -1
  216. package/dist/cli/commands/kitchen-sink/prompts.js +1 -1
  217. package/dist/cli/commands/kitchen-sink/static.js +1 -1
  218. package/dist/cli/commands/notifications/generate.js +1 -1
  219. package/dist/cli/commands/notifications/list.js +1 -1
  220. package/dist/cli/commands/organization/list.js +1 -1
  221. package/dist/cli/commands/search.js +1 -1
  222. package/dist/cli/commands/theme/check.js +1 -1
  223. package/dist/cli/commands/theme/console.js +1 -1
  224. package/dist/cli/commands/theme/delete.js +1 -1
  225. package/dist/cli/commands/theme/dev.js +1 -1
  226. package/dist/cli/commands/theme/duplicate.js +1 -1
  227. package/dist/cli/commands/theme/info.js +1 -1
  228. package/dist/cli/commands/theme/init.js +1 -1
  229. package/dist/cli/commands/theme/language-server.js +1 -1
  230. package/dist/cli/commands/theme/list.js +1 -1
  231. package/dist/cli/commands/theme/metafields/pull.js +1 -1
  232. package/dist/cli/commands/theme/open.js +1 -1
  233. package/dist/cli/commands/theme/package.js +1 -1
  234. package/dist/cli/commands/theme/preview.js +1 -1
  235. package/dist/cli/commands/theme/profile.js +1 -1
  236. package/dist/cli/commands/theme/publish.js +1 -1
  237. package/dist/cli/commands/theme/pull.js +1 -1
  238. package/dist/cli/commands/theme/push.js +1 -1
  239. package/dist/cli/commands/theme/rename.js +1 -1
  240. package/dist/cli/commands/theme/share.js +1 -1
  241. package/dist/cli/commands/upgrade.js +1 -1
  242. package/dist/cli/commands/version.js +1 -1
  243. package/dist/cli/help.js +1 -1
  244. package/dist/command-registry.js +1 -1
  245. package/dist/conf-store-YW3NWYCN.js +1 -0
  246. package/dist/custom-oclif-loader-4ZAXX5MR.js +1 -0
  247. package/dist/deprecations-VW7UIMZX.js +1 -0
  248. package/dist/dist-I3VCRVOE.js +1 -0
  249. package/dist/dist-MP4AU5F4.js +1 -0
  250. package/dist/environments-5P57CTOG.js +1 -0
  251. package/dist/error-U7DOQOWG.js +1 -0
  252. package/dist/error-handler-AOEXPYI7.js +1 -0
  253. package/dist/{fs-B4UJTUCD.js → fs-K5NT4W2Q.js} +1 -1
  254. package/dist/hooks/app-init.js +1 -1
  255. package/dist/hooks/did-you-mean.js +1 -1
  256. package/dist/hooks/hydrogen-init.js +1 -1
  257. package/dist/hooks/plugin-plugins.js +1 -1
  258. package/dist/hooks/postrun.js +1 -1
  259. package/dist/hooks/prerun.js +1 -1
  260. package/dist/hooks/public-metadata.js +1 -1
  261. package/dist/hooks/sensitive-metadata.js +1 -1
  262. package/dist/hooks/tunnel-provider.js +1 -1
  263. package/dist/hooks/tunnel-start.js +1 -1
  264. package/dist/{http-proxy-node16-X2WAMUT5.js → http-proxy-node16-A6AKKRQH.js} +1 -1
  265. package/dist/index.js +15 -15
  266. package/dist/is-global-CFYYUAIJ.js +1 -0
  267. package/dist/{latest-version-32HXMWJ7.js → latest-version-LDWU5F7A.js} +7 -7
  268. package/dist/lib-2BR2WN7L.js +1 -0
  269. package/dist/lib-JKLF33A7.js +1 -0
  270. package/dist/{lib-NOROGV6N.js → lib-P3APEIHY.js} +1 -1
  271. package/dist/local-BRRQOCGY.js +1 -0
  272. package/dist/local-storage-FVSI2IBZ.js +1 -0
  273. package/dist/{metadata-FREAI3KR.js → metadata-HVSGVFUQ.js} +1 -1
  274. package/dist/{morph-QZGREMO2.js → morph-ABSWZEVT.js} +4 -4
  275. package/dist/node-package-manager-6JURLQKU.js +1 -0
  276. package/dist/notifications-system-BTEFKXCS.js +1 -0
  277. package/dist/out-53ABAVL7.js +1 -0
  278. package/dist/{output-VUR2QZPW.js → output-EXMTVS2V.js} +1 -1
  279. package/dist/system-DUJDILSL.js +1 -0
  280. package/dist/tsconfig.tsbuildinfo +1 -1
  281. package/dist/ui-AX6ZMY6P.js +1 -0
  282. package/dist/upgrade-5TEVQNLY.js +1 -0
  283. package/dist/version-7LKOAVDW.js +1 -0
  284. package/dist/version-PRFBZAWQ.js +1 -0
  285. package/dist/{workerd-KPQTFQD4.js → workerd-MFV7EBVM.js} +1 -1
  286. package/oclif.manifest.json +612 -2
  287. package/package.json +11 -11
  288. package/dist/analytics-M7ZU437S.js +0 -1
  289. package/dist/analytics-ZRM4FEOE.js +0 -1
  290. package/dist/assets/dev-console/extensions/dev-console/assets/apple-touch-icon-BXMqQaSW.png +0 -0
  291. package/dist/assets/dev-console/extensions/dev-console/assets/favicon-16x16-B6uL8SrV.png +0 -0
  292. package/dist/assets/dev-console/extensions/dev-console/assets/favicon-32x32-CGwlpz_y.png +0 -0
  293. package/dist/assets/dev-console/extensions/dev-console/assets/favicon-ByUl89Ab.ico +0 -0
  294. package/dist/assets/dev-console/extensions/dev-console/assets/index-Bm_GpKQW.js +0 -51
  295. package/dist/assets/dev-console/extensions/dev-console/assets/index-DISeE29z.css +0 -1
  296. package/dist/assets/dev-console/extensions/dev-console/assets/site-B9Ae890R.webmanifest +0 -19
  297. package/dist/assets/dev-console/index.html +0 -21
  298. package/dist/chunk-2O22LZKV.js +0 -44
  299. package/dist/chunk-3IFZECSI.js +0 -22
  300. package/dist/chunk-4MLEL3VK.js +0 -283
  301. package/dist/chunk-4P54DKG4.js +0 -3
  302. package/dist/chunk-4ROX2TCK.js +0 -1
  303. package/dist/chunk-5C7HDTHJ.js +0 -1
  304. package/dist/chunk-5VC4XXYH.js +0 -1
  305. package/dist/chunk-7RJPTSL6.js +0 -7
  306. package/dist/chunk-ADKFAPED.js +0 -21
  307. package/dist/chunk-B5MFFERE.js +0 -1
  308. package/dist/chunk-BLSWUNOK.js +0 -16
  309. package/dist/chunk-DN3BB4IO.js +0 -103
  310. package/dist/chunk-EAOT5CK5.js +0 -2
  311. package/dist/chunk-G6BFXMOV.js +0 -2
  312. package/dist/chunk-GMAZ2BQY.js +0 -26
  313. package/dist/chunk-HYF3VJYS.js +0 -3
  314. package/dist/chunk-IIFRDOYG.js +0 -1
  315. package/dist/chunk-KB6H5LQJ.js +0 -4
  316. package/dist/chunk-LKZ7ARYS.js +0 -18
  317. package/dist/chunk-MYQTAM77.js +0 -2
  318. package/dist/chunk-NGCPVRDM.js +0 -1
  319. package/dist/chunk-NJOO5XJV.js +0 -1
  320. package/dist/chunk-NNOSZ447.js +0 -1
  321. package/dist/chunk-NVA2354A.js +0 -5
  322. package/dist/chunk-NWH3TAHK.js +0 -1
  323. package/dist/chunk-OCBGHOH2.js +0 -19
  324. package/dist/chunk-P7U6BWKN.js +0 -1
  325. package/dist/chunk-QFXJNFMI.js +0 -1
  326. package/dist/chunk-R7QYSC6T.js +0 -567
  327. package/dist/chunk-RE652L3G.js +0 -1
  328. package/dist/chunk-SSDEWKDZ.js +0 -6
  329. package/dist/chunk-T6CC5WUU.js +0 -159
  330. package/dist/chunk-TB7HFPBB.js +0 -370
  331. package/dist/chunk-TIU7MMRT.js +0 -836
  332. package/dist/chunk-TTEY5PLR.js +0 -10
  333. package/dist/chunk-U4HLIXRH.js +0 -4
  334. package/dist/chunk-UAYIFFYJ.js +0 -11
  335. package/dist/chunk-UHIP5CFI.js +0 -1
  336. package/dist/chunk-UMFVRG33.js +0 -5
  337. package/dist/chunk-WTRKTFVE.js +0 -2
  338. package/dist/chunk-X3VG75LO.js +0 -1
  339. package/dist/chunk-XSUZPWYV.js +0 -5
  340. package/dist/chunk-Z33MWGCG.js +0 -1
  341. package/dist/chunk-ZIM2G3EP.js +0 -1
  342. package/dist/chunk-ZSYMRT3S.js +0 -4
  343. package/dist/conf-store-HOA62HKK.js +0 -1
  344. package/dist/custom-oclif-loader-3AICQCNU.js +0 -1
  345. package/dist/deprecations-2FTB7JEW.js +0 -1
  346. package/dist/dist-63JMGNUL.js +0 -1
  347. package/dist/dist-6TY6L7OW.js +0 -1
  348. package/dist/environments-XVYTKHRZ.js +0 -1
  349. package/dist/error-SDU6RPQQ.js +0 -1
  350. package/dist/error-handler-4YEBBCUH.js +0 -1
  351. package/dist/is-global-5LFZDDNH.js +0 -1
  352. package/dist/lib-QJDPPAWN.js +0 -1
  353. package/dist/lib-UCG2DNMS.js +0 -1
  354. package/dist/local-VTYGIJVD.js +0 -1
  355. package/dist/local-storage-A6NBLBB2.js +0 -1
  356. package/dist/node-package-manager-N5SUT2WN.js +0 -1
  357. package/dist/notifications-system-P3SUTD25.js +0 -1
  358. package/dist/out-CDCY25QC.js +0 -1
  359. package/dist/system-OXF2P5CT.js +0 -1
  360. package/dist/ui-N2C5FC3G.js +0 -1
  361. package/dist/upgrade-AJ36IT7H.js +0 -1
  362. package/dist/version-DSFP332V.js +0 -1
  363. package/dist/version-HUOO3XOE.js +0 -1
@@ -0,0 +1,103 @@
1
+ import{a as U,b as xt}from"./chunk-KRZABRYT.js";import{a as ft,b as ht,f as _e,g as ae,h as A,i as ce,k as Et,n as Tt}from"./chunk-NKT5U6IJ.js";import{a as M,l as gt,m as yt}from"./chunk-Y7A7Z2V3.js";import{s as ie,t as W}from"./chunk-445NFHXL.js";import{a as O,b as N,e as nt,g as rt,i as ot,j as it,k as at,n as ct,p as lt,q as dt,r as oe,s as $,u as ut,w as pt}from"./chunk-Q7BOSHWX.js";import{aa as mt}from"./chunk-7L5AIZOP.js";import{b as Ke,sa as L,ua as H}from"./chunk-AFM3UZQO.js";import{P as st,u as et,w as _,x as te,y as tt}from"./chunk-JX4HSDDG.js";import{m as se}from"./chunk-2GB3EAD3.js";import{Fb as j,Hb as ne,Mb as re,O as Xe,Pb as F,Qb as D,Ta as P,Wa as C,Z as $e,bb as ke,ma as k,ua as be,wa as Ze,ya as Qe}from"./chunk-BCZMDFI2.js";import{d as E,g as V,j as Ve,k as q}from"./chunk-773TIA5M.js";import{e as Ge,g as f}from"./chunk-VKWPEFWQ.js";f();f();f();var rs=".shopifyignore",Rt=/templates\/\*(\.(json|liquid))?$/,St=new Set;function Le(e,t={}){let s=t.ignoreFromFile??[],n=t.ignore??[],r=t.only??[],[o=[],i=[]]=Ie(s),[a=[],p=[]]=Ie(n),[m=[],c=[]]=Ie(r),l=e.filter(B(o,".shopifyignore"));return l=l.filter(B(a,"--ignore")),l=l.filter(B(m,"--only",!0)),i.length>0&&(l=l.concat(e.filter(B(i,".shopifyignore",!0)))),p.length>0&&(l=l.concat(e.filter(B(p,"--ignore",!0)))),c.length>0&&(l=l.filter(B(c,"--only"))),Xe(l,h=>h.key)}function B(e,t,s=!1){return({key:n})=>{if(e.length===0)return!0;let r=e.some(i=>os(n,i)||cs(i)&&as(n,ls(i)));return(s?!r:r)?(F(`Ignoring theme file ${n} via ${t}...`),!1):!0}}async function wt(e){let t=E(e,rs);return await P(t)?(await k(t,{encoding:"utf8"})).split(/(\r\n|\r|\n)/).map(r=>r.trim()).filter(r=>r&&!r.startsWith("#")):[]}function Ie(e){let t=e.filter(n=>n.startsWith("!")).map(n=>n.slice(1));return[e.filter(n=>!n.startsWith("!")),t]}function os(e,t){let s={matchBase:!0,noglobstar:!0};return ke(e,t,s)?!0:(!t.includes("*")&&t.endsWith("/")&&!St.has(t)&&(St.add(t),_({headline:"Directory pattern may be misleading.",body:`For more reliable matching, consider using "${t}*" or "${t}*.<file_extension>" instead.`})),is(t)?ke(e,t.replace(Rt,"templates/**/*$1"),s):!1)}function is(e){return Rt.test(e)}function as(e,t){return t.test(e)}function cs(e){return e.startsWith("/")&&e.endsWith("/")}function ls(e){return new RegExp(e.slice(1,-1))}f();import Ft from"fs/promises";var le=class{constructor(t){this.notifyPath=t,this.isValidUrl=this.validateUrl(t),this.notifyPath===""&&D("Notification skipped: notifyPath is an empty string")}async notify(t){if(this.notifyPath!=="")try{F(`Notifying filechange listener at ${this.notifyPath}...`),this.isValidUrl?await this.notifyUrl(t):await this.notifyFile(t)}catch(s){L(s);let n=`Failed to notify filechange listener at ${this.notifyPath}`;s instanceof Error&&(n=n.concat(`: ${s.message}`)),D(n)}}async notifyUrl(t){let s=await fetch(this.notifyPath,{method:"POST",body:JSON.stringify({files:[t]}),headers:{"Content-Type":"application/json"}});if(!s.ok)throw new Error(s.statusText)}async notifyFile(t){await Ft.writeFile(this.notifyPath,t),await Ft.utimes(this.notifyPath,new Date,new Date)}validateUrl(t){try{let s=new URL(t);return s.protocol==="http:"||s.protocol==="https:"}catch{return!1}}};f();f();f();import ds from"node:events";var Pt=["assets/**/*.*","locales/**/*.json","blocks/**/*.liquid","snippets/**/*.liquid"];function vt(e){let t=new Map,s=new Set,n=new ds,r=(c,l)=>{n.emit(c,l)},o=async c=>{let l=await ue(e,c),u=de(c,l),h=typeof l=="string"?l:"",T=Buffer.isBuffer(l)?l.toString("base64"):"";return t.set(c,M({key:c,checksum:u,value:h,attachment:T})),l},i=C(Pt,{cwd:e,deep:3,ignore:W}).then(c=>Promise.all(c.map(o))),a=(c,l)=>{let u=V(e,l),h=o(u).then(()=>{let T=t.get(u);return s.add(T.key),T.value??T.attachment??""});st(5).then(()=>{s.delete(u)}).catch(()=>{}),r(c,{fileKey:u,onContent:T=>{h.then(v=>{v&&T(v)}).catch(()=>{})},onSync:T=>{}})},p=c=>{let l=V(e,c);s.delete(l),t.delete(l),r("unlink",{fileKey:l,onSync:u=>u()})},m=new Set(Pt.map(c=>E(e,c.split("/").shift()??"")));return{root:e,files:t,unsyncedFileKeys:s,ready:async()=>i.then(()=>{}),delete:async c=>{t.delete(c)},write:async c=>{t.set(c.key,c)},read:o,addEventListener:(c,l)=>{n.on(c,l)},startWatcher:async()=>{let{default:c}=await import("./chokidar-5RWEYTNQ.js");c.watch([...m],{ignored:W,persistent:!process.env.SHOPIFY_UNIT_TEST,ignoreInitial:!0}).on("add",a.bind(null,"add")).on("change",a.bind(null,"change")).on("unlink",p.bind(null))}}}f();f();var us="https://unpkg.com/@shopify/polaris@13.9.2/build/esm/styles.css";function $t(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function bt(e){return(0,String.raw)`<!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>${e.title}</title>
5
+ <link rel="stylesheet" href="${us}" />
6
+ </head>
7
+ <body>
8
+ <div style="display: flex; justify-content: center; padding-top: 2rem;">
9
+ <div style="width: 80%;">
10
+ <div class="Polaris-Banner Polaris-Banner--withinPage" tabindex="0" role="alert" aria-live="polite">
11
+ <div class="Polaris-Box" style="--pc-box-width:100%">
12
+ <div
13
+ class="Polaris-BlockStack"
14
+ style="--pc-block-stack-align:space-between;--pc-block-stack-order:column"
15
+ >
16
+ <div
17
+ class="Polaris-Box"
18
+ style="--pc-box-color: var(--p-color-text-critical-on-bg-fill); --pc-box-background: var(--p-color-bg-fill-critical); --pc-box-padding-block-start-xs: var(--p-space-300); --pc-box-padding-block-end-xs: var(--p-space-300); --pc-box-padding-inline-start-xs: var(--p-space-300); --pc-box-padding-inline-end-xs: var(--p-space-300); --pc-box-border-start-start-radius: var(--p-border-radius-300); --pc-box-border-start-end-radius: var(--p-border-radius-300);"
19
+ >
20
+ <div
21
+ class="Polaris-InlineStack"
22
+ style="--pc-inline-stack-align:space-between;--pc-inline-stack-block-align:center;--pc-inline-stack-wrap:nowrap;--pc-inline-stack-gap-xs:var(--p-space-200);--pc-inline-stack-flex-direction-xs:row"
23
+ >
24
+ <div
25
+ class="Polaris-InlineStack"
26
+ style="--pc-inline-stack-wrap:nowrap;--pc-inline-stack-gap-xs:var(--p-space-100);--pc-inline-stack-flex-direction-xs:row"
27
+ >
28
+ <span class="Polaris-Banner--textCriticalOnBgFill">
29
+ <span class="Polaris-Icon">
30
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
31
+ <path d="M10 6a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5a.75.75 0 0 1 .75-.75Z" />
32
+ <path d="M11 13a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z" />
33
+ <path
34
+ fill-rule="evenodd"
35
+ d="M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0Zm-1.5 0a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0Z"
36
+ />
37
+ </svg>
38
+ </span>
39
+ </span>
40
+ <h2 class="Polaris-Text--root Polaris-Text--headingSm Polaris-Text--break">
41
+ ${e.header}
42
+ </h2>
43
+ </div>
44
+ </div>
45
+ </div>
46
+ <div
47
+ class="Polaris-Box"
48
+ style="--pc-box-padding-block-start-xs:var(--p-space-300);--pc-box-padding-block-end-xs:var(--p-space-300);--pc-box-padding-block-end-md:var(--p-space-400);--pc-box-padding-inline-start-xs:var(--p-space-300);--pc-box-padding-inline-start-md:var(--p-space-400);--pc-box-padding-inline-end-xs:var(--p-space-300);--pc-box-padding-inline-end-md:var(--p-space-400)"
49
+ >
50
+ <div
51
+ class="Polaris-BlockStack"
52
+ style="--pc-block-stack-order:column;--pc-block-stack-gap-xs:var(--p-space-300)"
53
+ >
54
+ ${e.errors.map(s=>`
55
+ <div>
56
+ <span class="Polaris-Text--root Polaris-Text--headingSm">${$t(s.message)}</span>
57
+ <ul class="Polaris-List">
58
+ <li class="Polaris-List__Item">${$t(s.code)}</li>
59
+ </ul>
60
+ </div>`).join("")}
61
+ </div>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </body>
69
+ </html>`}f();f();var ps=/<head(\s[^>]*)?>/i,qe="https://cdn.shopify.com/storefront",ms=`${qe}/standard-events.js`,fs=`${qe}/standard-events.dev.js`,kt=`${qe}/standard-events-inspector.js`,_t="shopify-cli-standard-events-inspector",hs=new RegExp(`<script\\b[^>]*(?:\\bid=["']${je(_t)}["']|\\bsrc=["']${je(kt)}["'])[^>]*>`,"i"),gs=new RegExp(je(ms),"g");function pe(e){return hs.test(e)?e:e.replace(ps,t=>`${t}<script id="${_t}" src="${kt}" defer></script>`)}function It(e){return e.replace(gs,fs)}function je(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}f();var Lt=80;function X(e,t,s){if(!ys(e)||s.type==="theme-extension")return;let n=e.path.length>Lt?`${e.path.substring(0,Lt)}...`:e.path,o=t.headers.get("server-timing")?.match(/cfRequestDuration;dur=([\d.]+)/)?.[1],i=o?`${Math.round(Number(o))}ms`:"",a=Es(t.status),p=e.method.padStart(6);re(ne`• ${ie.format(new Date)} Request ${j.raw("\xBB")} ${p} ${a(String(t.status))} ${n} ${j.gray(i)}`)}function ys(e){let t=[z,J,"/checkouts","/payments"],s=[".js",".css",".json",".map"];if(t.some(o=>e.path.startsWith(o)))return!1;let[n]=e.path.split("?"),r=q(n);return!s.includes(r)}function Es(e){return e<300?j.green:e<400?j.yellow:j.errorText}var J="/cdn/",z="/ext/cdn/",Ce="/api/collect",Ts=/^\/cart\//,xs=/^\/cart(\/|\.js|\.json|$)/,Ae=/^\/checkouts\/(?!internal\/)/,jt=/^\/account(\/login\/multipass(\/[^/]+)?|\/logout)?\/?$/,Ss=new RegExp(`^${J}`),Rs=new RegExp(`^${z}`),ws=/^\/api\/(unstable|\d{4}-\d{2})\/graphql\.json/,Fs=["/.well-known","/shopify/monorail","/mini-profiler-resources","/web-pixels-manager","/web-pixels@","/wpm","/services/",Ce,"/cdn-cgi/challenge-platform"],qt="_shopify_essential",Ps=new RegExp(`${qt}=([^;]*)(;|$)`);function Ct(e,t){return $(async s=>{if(Fs.some(n=>s.path.startsWith(n)))return null;if(vs(s)){let n=s.path.split("?")[0]??"";return De(s,t).then(async r=>{if(X(s,r,t),r.ok){let o=n.split("/").at(-1)??"";if(t.localThemeFileSystem.files.has(`assets/${o}.liquid`)){let i=Z(await r.text(),t);return new Response(i,r)}}return r}).catch(async r=>{let{status:o,statusText:i,...a}=A(r,`Failed to proxy request to ${n}`);return o>=500&&!n.endsWith(".js.map")&&_(a),new Response(r.message,{status:o,statusText:i})})}})}function vs(e){if(e.method!=="GET"||e.path.match(Ts)||e.path.match(Ae)||e.path.match(jt)||e.path.match(Ss)||e.path.match(Rs))return!0;let[t]=e.path.split("?"),s=q(t),n=e.headers.get("accept")??"*/*";return s===".html"||n.includes("text/html")?!1:!!s||n!=="*/*"}function $s(e){let[t]=e.split("?");return!(xs.test(t)||Ae.test(t)||jt.test(t))}function me(e){return e.session.storeFqdn.replace(/\\/g,"\\\\").replace(/\./g,"\\.")}function bs(e){return ws.test(e.path)}function Z(e,t){let s=e,n=`(data-shs-beacon-endpoint=["'])https://${me(t)}${Ce}`,r=new RegExp(n,"g");s=s.replace(r,`$1${Ce}`);let o=new RegExp(`(https?:)?//${me(t)}${J}`,"g");s=s.replace(o,J);let i=/(?:https?:)?\/\/cdn\.shopify\.com\/(.*?\/(assets\/[^?#"'`>\s]+))/g,a=c=>c.startsWith("assets/"),p=new Set([...t.localThemeFileSystem.files.keys()].filter(a)),m=new Set([...t.localThemeExtensionFileSystem.files.keys()].filter(a));return s=s.replace(i,(c,l,u)=>{let h=u&&p.has(u),T=u&&m.has(u)&&l.startsWith("extensions/");return U(u).startsWith("image/")?c:T?`${z}${l}`:h?`${J}${l}`:c}),t.options.standardEventsDevBundle&&(s=It(s)),s}function ks(e,t){let s=`http://${t.options.host}:${t.options.port}`,n=new RegExp(`data-base-url=["']((?:https?:)?//${me(t)})[^"']*?["']`,"g");return e.replace(n,(r,o)=>r.replace(o,s))}function _s(e,t){let s=new RegExp(`Domain=${me(t)};\\s*`,"gi");return e.map(n=>n.replace(s,""))}async function Q(e,t,s){let n=Ht(e,t);if(n.status>=300&&n.status<400)return n;t.headers.get("content-type")?.includes("application/json")||n.headers.set("content-type","text/html; charset=utf-8");let i=await n.text();return i=Z(i,e),i=ks(i,e),e.options.standardEventsInspector&&(i=pe(i)),s&&(i=s(i)??i),new Response(i,n)}var At=["connection","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade","expect","content-security-policy","host"];function Ht(e,t){let s=new Response(t.body,t);s.headers.delete("content-length"),s.headers.delete("content-encoding");for(let i of At)s.headers.delete(i);s.headers.delete("access-control-allow-origin"),s.headers.delete("access-control-allow-credentials"),s.headers.delete("access-control-allow-methods"),s.headers.delete("access-control-allow-headers"),s.headers.delete("access-control-expose-headers"),s.headers.delete("access-control-max-age");let n=s.headers.get("Link");n&&s.headers.set("Link",Z(n,e));let r=s.headers.get("Location");if(r){let i=new URL(r,"https://shopify.dev");Ae.test(i.pathname)||(i.searchParams.delete("_fd"),i.searchParams.delete("pb"),s.headers.set("Location",i.href.replace(i.origin,"")))}let o=s.headers.getSetCookie();if(o?.length){s.headers.set("Set-Cookie",_s(o,e).join(","));let i=o.join(",").match(Ps)?.[1];i&&(e.session.sessionCookies[qt]=i)}return s}function He(e){let t=nt(e);for(let n of At)delete t[n];delete t["upgrade-insecure-requests"];let s=rt(e);return s&&(t["X-Forwarded-For"]=s),t}function De(e,t){let s=e.path.replace(new RegExp(z,"g"),"/"),n=e.path.startsWith(z)?"cdn.shopify.com":t.session.storeFqdn,r=new URL(s,`https://${n}`);if(r.hostname!==n)return Promise.reject(new Error(`Request failed: Hostname mismatch. Expected host: ${n}. Resulting URL hostname: ${r.hostname}`));let o=ot(e),i=He(e);return bs(e)||(/\/assets\/[^/]+\.(css|js)$/.test(r.pathname)&&/\?\d+$/.test(r.search)&&(r.search=`?v=${Date.now()}`),r.searchParams.set("_fd","0"),r.searchParams.set("pb","0"),i=ht({...i,...ft(),...n===t.session.storeFqdn?t.session.crawlerSignatureHeaders:{},referer:r.origin,Cookie:Et(t.session,{headers:i}),...t.type==="theme"&&$s(e.path)?{Authorization:`Bearer ${t.session.storefrontToken}`}:{}})),fetch(r,{method:e.method,body:o,duplex:o?"half":void 0,redirect:"manual",headers:i}).then(a=>Ht(t,a)).catch(a=>{throw ae(L(a),r)})}var Oe=0,Is=5;function Ot(e,t){return $(s=>{let[n="/",r=""]=s.path.split("?");return js(s)&&(t.lastRequestedPath=s.path),t.options.errorOverlay!=="silent"&&t.localThemeFileSystem.uploadErrors.size>0?Dt(t,{status:500,statusText:"Internal Server Error"},{title:"Failed to Upload Theme Files",header:"Upload Errors",errors:Array.from(t.localThemeFileSystem.uploadErrors.entries()).map(([i,a])=>({message:i,code:a.join(`
70
+ `)}))}):ce(t.session,{method:s.method,path:n,query:[...new URLSearchParams(r)],themeId:String(e.id),sectionId:"",headers:He(s),replaceExtensionTemplates:he(t),replaceTemplates:Ne(t,n,it(s,"localization")?.toLowerCase())}).then(async i=>{if(i.status>=400&&i.status<500&&!Ls(s)){let a=await qs(s,t,i);if(a)return X(s,a,t),a}return X(s,i,t),Q(t,i,a=>(Cs(i,a,String(e.id)),Oe=0,We(a,t)))}).catch(async i=>{if(i instanceof fe&&(F(`Theme ID mismatch: expected ${i.getExpectedThemeId()} but got ${i.getActualThemeId()}; refreshing session...`),H("theme-service:error-page:theme-id-mismatch"),t.session.refresh)){Oe++,Oe>Is&&(tt(new se(i.getMessage())),process.exit(1)),await t.session.refresh();let h=new URLSearchParams(r),T=new URLSearchParams([...h].filter(([Pe])=>!Pe.startsWith("__sfr"))),v=n+(T.toString()?`?${T}`:"");return new Response(null,{status:302,headers:{Location:v}})}let{status:a,statusText:p,cause:m,...c}=A(i,"Failed to render storefront"),[l,...u]=c.headline.split(`
71
+ `);return te(c),Dt(t,{status:a,statusText:p},{title:l,header:l,errors:[{message:[...u,m.message].join("<br>"),code:m.stack?.replace(`${m.message}
72
+ `,"")??""}]})})})}function Dt(e,t,s){let n=We(bt(s),e);return e.options.standardEventsInspector&&(n=pe(n)),H("theme-service:error-page:rendered"),new Response(n,{...t,headers:t.headers??{"Content-Type":"text/html; charset=utf-8"}})}function Ls(e){let t=new URLSearchParams(e.path.split("?")[1]);return["section_id","sections","app_block_id"].some(s=>t.has(s))}function js(e){return e.headers.get("sec-fetch-mode")==="navigate"}async function qs(e,t,s){F(`Render failed for ${e.path} with ${s.status} (x-request-id: ${s.headers.get("x-request-id")}), trying proxy...`);let n=await De(e,t).catch(r=>new Response(null,A(r)));if(n.status<400)return F(`Proxy status: ${n.status}. Returning proxy response.`),t.options.standardEventsInspector&&(n.headers.get("content-type")??"").includes("text/html")?Q(t,n):n;F(`Proxy status: ${n.status}. Returning render error.`)}function Cs(e,t,s){let n=t.match(/Shopify\.theme\s*=\s*{[^}]+?"id":\s*"?(\d+)"?(}|,)/)?.[1];if(n&&n!==s)throw new fe(s,n,e)}var fe=class extends Error{constructor(t,s,n){super([`Theme ID mismatch: expected ${t} but got ${s}.`,`Request ID: ${n.headers.get("x-request-id")}`,`URL: ${n.url}`,"This is likely related to an issue in upstream Shopify APIs.","Please try again in a few minutes and report this issue:","https://community.shopify.dev/c/shopify-cli-libraries/14"].join(`
73
+ `)),this.response=n,this.expectedThemeId=t,this.actualThemeId=s}getMessage(){return this.message}getResponse(){return this.response}getExpectedThemeId(){return this.expectedThemeId}getActualThemeId(){return this.actualThemeId}};f();f();function ge(e,t){let s=new RegExp(`{%-?\\s*${t}\\s*-?%}`),n=new RegExp(`{%-?\\s*end${t}\\s*-?%}`),r=s.exec(e);if(!r)return;let o=r.index+r[0].length;n.lastIndex=o;let i=n.exec(e);if(!i)return;let a=i.index;return e.slice(o,a)}f();function ye(e){let{pathname:t,search:s,searchParams:n}=new URL(e.path,"http://e.c");return{pathname:t,search:s,searchParams:n}}var As={stylesheet:new Map,javascript:new Map};function Nt(e,t){return $(async s=>{if(s.method!=="GET")return;if(Ns(s,t))return Ws(s,t);let{file:n,fileKey:r,isUnsynced:o}=Os(s,t);if(!r)return;let i=U(r);if(i.startsWith("image/")&&s.path.includes("&")&&!o)return;if(ct(s,"X-Local-Asset","true"),!n){o&&N(s,O({statusCode:404,statusMessage:"Not found"}));return}let a=n.value?Buffer.from(Z(n.value,t)):Buffer.from(n.attachment??"","base64");return oe(s,{getContents:()=>a,getMeta:()=>({type:i,size:a.length,mtime:n.stats?.mtime})})})}var Hs=/^(?:\/cdn\/(?!extensions\/).*?)?\/assets\/([^?]+)/,Ds=/^(?:\/(?:ext\/)?cdn\/extensions\/.*?)?\/assets\/([^?]+)/;function Os(e,t){let s=(n,r)=>{let o=e.path.match(n)?.[1];if(o){let i=E("assets",o),a=r.files.get(i),p=r.unsyncedFileKeys.has(i);if(a||p)return{file:a,isUnsynced:p,fileKey:i}}};return s(Hs,t.localThemeFileSystem)??s(Ds,t.localThemeExtensionFileSystem)??{isUnsynced:!1,fileKey:void 0,file:void 0}}function Ns(e,t){return t.type==="theme"&&e.path.includes("/compiled_assets")}function Ws(e,t){switch(ye(e).pathname.split("/").at(-1)){case"styles.css":return Ms(t,e);case"block-scripts.js":return Me(t,e,"block");case"snippet-scripts.js":return Me(t,e,"snippet");case"scripts.js":return Me(t,e,"section");case void 0:break;default:break}}function Ms(e,t){let s=Ee(e,"section"),n=Ee(e,"block"),r=Ee(e,"snippet"),o=[`/*** GENERATED LOCALLY ***/
74
+ `];for(let[,a]of[...s,...n,...r]){let p=Wt(a,"stylesheet");p&&o.push(p)}let i=o.join(`
75
+ `);return oe(t,{getContents:()=>i,getMeta:()=>({type:"text/css",size:Buffer.byteLength(i),mtime:new Date})})}function Me(e,t,s){let n=Ee(e,s),r=`${s}s`,o=[`
76
+ /*** GENERATED LOCALLY ***/
77
+
78
+ (function () {
79
+ var __${r}__ = {};
80
+
81
+ (function () {
82
+ var element = document.getElementById("${r}-script");
83
+ var attribute = element ? element.getAttribute("data-${r}") : "";
84
+ var ${r} = attribute.split(",").filter(Boolean);
85
+
86
+ for (var i = 0; i < ${r}.length; i++) {
87
+ __${r}__[${r}[i]] = true;
88
+ }
89
+ })();`];for(let[a,p]of n){let m=a.split("/").pop()?.replace(".liquid",""),c=Wt(p,"javascript")??"";m&&c&&o.push(`
90
+ (function () {
91
+ if (!__${r}__["${m}"] && !Shopify.designMode) return;
92
+ try {
93
+ ${c}
94
+ } catch (e) {
95
+ console.error(e);
96
+ }
97
+ })();`)}o.push("})();");let i=o.join(`
98
+ `);return oe(t,{getContents:()=>i,getMeta:()=>({type:"text/javascript",size:Buffer.byteLength(i),mtime:new Date})})}function Ee(e,t){return[...e.localThemeFileSystem.files.entries()].filter(([s])=>s.endsWith(".liquid")&&s.startsWith(`${t}s/`)).sort(([s],[n])=>s.localeCompare(n))}function Wt(e,t){let s=As[t],n=s.get(e.key);if(n?.checksum===e.checksum)return n.content;if(s.delete(e.key),!e.value)return;let r=[`/* ${e.key} */`],o=ge(e.value??"",t)?.trimEnd();if(o&&r.push(o),r.length>1){let i=r.join(`
99
+ `);return s.set(e.key,{checksum:e.checksum,content:i}),i}}f();import*as Mt from"node:os";function Us(e,t){let s=new Set,n=`:${t}`,r=e.toLowerCase().trim();if(s.add(`${r}${n}`),["localhost","127.0.0.1","::1","0.0.0.0"].includes(r)&&(s.add(`localhost${n}`),s.add(`127.0.0.1${n}`),s.add(`[::1]${n}`)),r==="0.0.0.0"||r==="::")for(let i of Object.values(Mt.networkInterfaces()))for(let a of i??[]){let p=a.address.toLowerCase().split("%")[0],c=a.family==="IPv6"?`[${p}]`:p;s.add(`${c}${n}`)}return s}function Bs(e){if(e)return e.toLowerCase().replace(/\.(?=:\d|$)/,"")}function Ut(e,t){let s=Us(e,t);return $(n=>{let r=n.node.req.headers.host,o=Bs(r);if(!o||!s.has(o))return N(n,O({statusCode:400,statusMessage:"Bad Request",message:"Invalid Host header"}))})}f();function Bt(){return Jt()}function Cr(){return Jt()}function Jt(){return{root:"",files:new Map,unsyncedFileKeys:new Set,uploadErrors:new Map,ready:()=>Promise.resolve(),delete:async e=>{},read:async e=>"",write:async e=>{},stat:async e=>({mtime:new Date,size:1}),addEventListener:()=>{},startWatcher:async()=>{}}}import{createServer as Js}from"node:http";async function Gr(e,t){let s=await Ys(e,t);return await Gs(e,s),zs(e,s)}function zs(e,t){let s=ut();s.use(Ut(t.options.host,t.options.port)),s.use(zt(e,t)),s.use(Nt(e,t)),s.use(Ct(e,t)),s.use(Ot(e,t));let n=Js(pt(s));return{dispatch:s.handler.bind(s),start:async()=>new Promise(r=>n.listen({port:t.options.port,host:t.options.host},()=>r({close:async()=>{await Promise.all([new Promise(o=>{n.closeAllConnections(),n.close(o)})])}})))}}async function Ys(e,t){let{adminSession:s,storefrontPassword:n,themeExtensionPort:r,themeExtensionDirectory:o,crawlerSignatureHeaders:i}=t,a="127.0.0.1",p=r??9293,m=Bt(),c=vt(o);return await c.ready(),{session:await Tt(e.id.toString(),s,void 0,n,i),localThemeFileSystem:m,localThemeExtensionFileSystem:c,directory:o,type:"theme-extension",lastRequestedPath:"",options:{themeEditorSync:!1,noDelete:!1,ignore:[],only:[],host:a,port:p,liveReload:"hot-reload",standardEventsDevBundle:!1,standardEventsInspector:!1,open:!1,errorOverlay:"default"}}}async function Gs(e,t){let s=t.localThemeExtensionFileSystem,n=({fileKey:r,onContent:o,onSync:i})=>{o(()=>{Te(e,t,i,{type:"update",key:r,payload:{isThemeExtension:!0}})})};return s.addEventListener("add",n),s.addEventListener("change",n),s.ready().then(async()=>s.startWatcher())}function he(e){let t={},s=e.localThemeExtensionFileSystem;for(let n of s.unsyncedFileKeys){let r=s.files.get(n),o=r?.value??r?.attachment;o&&(t[n]=o)}return t}var Re=Ge(mt(),1);import Vs from"node:events";var Ue=new Map,K=new Map;function Yt(e,t){let s=(0,Re.parseJSON)(t,null,!0);if(!s)return;let n=s?.sections;n&&!e.startsWith("locales/")?K.set(e,Object.entries(n||{}).map(([r,{type:o}])=>[o,r])):K.delete(e)}function Be(e){return!e.startsWith("assets/")&&[".liquid",".json"].includes(q(e))}function Ne(e,t,s){let n={},r=/^templates\/.+\.json$/,o=t?`${E("templates",t.replace(/^\//,"").replace(/\.html$/,"")||"index")}.json`:"",i=!!t&&e.localThemeFileSystem.files.has(o),a=/^locales\/.+\.json$/,p=!!s&&(e.localThemeFileSystem.files.has(`locales/${s}.json`)||e.localThemeFileSystem.files.has(`locales/${s}.default.json`));for(let m of e.localThemeFileSystem.unsyncedFileKeys)if(Be(m)){if(i&&r.test(m)){if(m!==o)continue}else if(a.test(m)){if(p){if(!m.startsWith(`locales/${s}.`))continue}else if(!m.includes(".default."))continue}n[m]=e.localThemeFileSystem.files.get(m)?.value??""}return n}function uo(e,t){let s=({fileKey:r,onContent:o,onSync:i})=>{let a=q(r);o(p=>{!en(r)&&Be(r)&&a===".json"&&Yt(r,p),Te(e,t,i,{type:"update",key:r,payload:Qs(r,t)})})},n=({fileKey:r,onSync:o})=>{K.delete(r),Te(e,t,o,{type:"delete",key:r})};return t.localThemeFileSystem.addEventListener("add",s),t.localThemeFileSystem.addEventListener("change",s),t.localThemeFileSystem.addEventListener("unlink",n),t.localThemeFileSystem.ready().then(async()=>{let r=[...t.localThemeFileSystem.files];return Promise.allSettled(r.map(async([o,i])=>{if(o.endsWith(".json")){let a=i.value??await t.localThemeFileSystem.read(o);a&&typeof a=="string"&&Yt(o,a)}else o.endsWith(".liquid")&&Zt(i)}))})}var Xs="1",Vt=new Vs;function Se(e){Vt.emit("hot-reload",{...e,version:Xs})}function zt(e,t){return $(s=>{let n=s.headers.get("accept")==="text/event-stream",r=ye(s).searchParams;if(n){let o=dt(s);return Vt.on("hot-reload",i=>{o.push(JSON.stringify(i)).catch(a=>{_({headline:"Failed to send HotReload event.",body:a.stack})})}),Se({type:"open",pid:String(process.pid),themeId:String(e.id)}),o.send().then(()=>o.flush())}if(r.has("hr-log")){let o=(0,Re.parseJSON)(r.get("hr-log")??"",null);return o&&(o.headline=`[HotReload] ${o.headline}`,o.type==="error"?te(o):o.type==="warn"?_(o):o.type==="info"?et(o):_({headline:`Unknown HotReload log type: ${o.type}`})),null}if(s.path===Xt)return k(we()).then(o=>at(s,o,"application/javascript")).catch(o=>N(s,O({cause:o})));if(r.has("section_id")||r.has("app_block_id")){let o=r.get("section_key")??"",i=r.get("section_id")??"",a=r.get("app_block_id")??"",p=s.path.split("?")[0]??"",m=new URLSearchParams(r);if(m.delete("section_key"),m.delete("section_id"),m.delete("app_block_id"),m.delete("_fd"),m.delete("pb"),i===""&&a==="")return;let c={};if(i){let l=t.localThemeFileSystem.unsyncedFileKeys;if(l.has(o)){let u=t.localThemeFileSystem.files.get(o)?.value;if(!u)return"";c[o]=u}for(let u of l)if(u.endsWith(".json")){for(let[h,T]of K.get(u)??[])if(i.endsWith(`__${T}`)){let v=t.localThemeFileSystem.files.get(u)?.value;v&&(c[u]=v);continue}}}return ce(t.session,{method:s.method,path:p??"/",query:[...m.entries()],themeId:String(e.id),sectionId:i,appBlockId:a,replaceTemplates:c,headers:lt(s),replaceExtensionTemplates:he(t)}).then(async l=>{if(!l.ok)throw H("theme-service:hot-reload:section:render-failed"),ae(l);return Q(t,l)}).catch(async l=>{let{status:u,statusText:h,...T}=A(L(l),"Failed to render section on Hot Reload");return H("theme-service:hot-reload:section:render-error"),a||_(T),new Response(null,{status:u,statusText:h})})}})}var ee=(e,t)=>Se({themeId:String(e),type:"full",key:t});function Te(e,t,s,n){let r=()=>ee(e.id,n.key);if(t.options.liveReload==="off")return;if(t.options.liveReload==="full-page"){s(r);return}let o=String(e.id);Se({sync:"local",themeId:o,...n}),s(()=>Se({sync:"remote",themeId:o,...n}),r)}function Zs(e,t){let s=new Set;if(e.endsWith(".json")){let n=t.localThemeFileSystem.files.get(e)?.value;if(n){let r=(0,Re.parseJSON)(n,null,!0)?.sections;for(let o of Object.keys(r??{}))s.add(o)}}else{let n=e.match(/^sections\/(.+)\.liquid$/)?.[1];if(n)for(let[r,o]of K)for(let[i,a]of o)i===n&&s.add(a)}return[...s]}function Qs(e,t){let[s]=e.split("/"),n=t.localThemeFileSystem.files.get(e);return{sectionNames:s==="sections"?Zs(e,t):[],replaceTemplates:Be(e)?Ne(t):{},updatedFileParts:n&&Zt(n)}}var xe="hot-reload-client",Ks="/cdn/shopifycloud/theme-hot-reload/theme-hot-reload.js",Gt=new RegExp(`<script id="${xe}"[^>]*>[^<]*</script>`),Xt="/@shopify/theme-hot-reload";function We(e,t){return t.options.liveReload==="off"?e.replace(Gt,""):process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD?e.replace(Gt,"").replace(/<\/head>/,`<script id="${xe}" src="${Xt}" defer></script></head>`):e.includes(`<script id="${xe}"`)?e:e.replace(/<\/head>/,`<script id="${xe}" src="${Ks}" defer></script></head>`)}function en(e){return e.startsWith("assets/")}function Zt(e){if(!(["sections/","snippets/","blocks/"].some(c=>e.key.startsWith(c))&&e.key.endsWith(".liquid")))return;let n={stylesheetTag:!1,javascriptTag:!1,schemaTag:!1,liquid:!1},r={checksum:e.checksum,liquid:"",stylesheetTag:"",javascriptTag:"",schemaTag:""},o=Ue.get(e.key);if(o?.checksum===e.checksum||(Ue.delete(e.key),!e.value))return n;let i=["stylesheet","javascript","schema"],a=c=>c?.replace(/\s+/g," ").trim(),p=e.value,m=(c,l)=>{p=p.replace(l,"");let u=a(l),h=`${c}Tag`;n[h]=!o||u!==o[h],r[h]=u};for(let c of i){let l=ge(e.value??"",c);l&&m(c,l)}return p=a(p.replace(/<!--[\s\S]*?-->/g,"").replace(/{%\s*comment\s*%}[\s\S]*?{%\s*endcomment\s*%}/g,"").replace(/{%\s*doc\s*%}[\s\S]*?{%\s*enddoc\s*%}/g,"")),r.liquid=p,n.liquid=!o||p!==o.liquid,Ue.set(e.key,r),n}f();var Qt=Ge(mt(),1);function tn(e){return(e.startsWith("templates/")||e.startsWith("sections/"))&&e.endsWith(".json")}async function Kt(e,t,s){if(tn(s)){let n=E(e,"listings",t,s);if(await P(n))return n}}async function es(e,t){let s=E(e,"config","settings_data.json"),n=await k(s,{encoding:"utf8"}),r=(0,Qt.parseJSON)(n,null,!0);return r?(r.current=$e(t),JSON.stringify(r,null,2)):n}async function Eo(e,t){let s=E(e,"listings"),n=E(s,t);if(await P(n))return;let o=[];await P(s)&&(o=await C("*",{cwd:s,onlyDirectories:!0,deep:1}));let i=o.length>0?`Available presets: ${o.map(a=>`"${$e(a)}"`).join(", ")}`:'No presets found under "listings/"';throw new se(`Listing preset "${t}" was not found. ${i}.`,`Add the preset to config/settings_data.json and its corresponding "listings/${t}" folder, or remove the --listing flag to use the default theme settings.`)}import sn from"node:events";import{fileURLToPath as nn}from"node:url";var rn=250,ts=["assets/**/*.*","config/**/*.json","layout/**/*.liquid","locales/**/*.json","sections/**/*.{liquid,json}","blocks/**/*.liquid","snippets/**/*.liquid","templates/**/*.{liquid,json}","templates/customers/**/*.{liquid,json}"],b={layoutLiquidRegex:/^layout\/.+\.liquid$/,sectionLiquidRegex:/^sections\/.+\.liquid$/,blockLiquidRegex:/^blocks\/.+\.liquid$/,configSchemaRegex:/^config\/settings_schema\.json$/,configDataRegex:/^config\/settings_data\.json$/,sectionJsonRegex:/^sections\/.+\.json$/,templateJsonRegex:/^templates\/.+\.json$/,jsonRegex:/^(?!config\/).*\.json$/,contextualizedJsonRegex:/\.context\.[^.]+\.json$/i,staticAssetRegex:/^assets\/(?!.*\.liquid$)/};function Ho(e,t){let s=new Map,n=new Map,r=new Set,o={ignoreFromFile:[],ignore:t?.filters?.ignore??[],only:t?.filters?.only??[]},i=new sn,a=(d,g)=>{i.emit(d,g)},p=t?.notify?new le(t.notify):void 0,m=async d=>{let g=t?.listing?await an(e,d,t.listing):await ue(e,d),y=de(d,g);return s.set(d,M({key:d,checksum:y,value:typeof g=="string"?g:"",attachment:Buffer.isBuffer(g)?g.toString("base64"):""})),g},c=C(ts,{cwd:e,deep:3,ignore:W}).then(d=>Promise.all([wt(e),...d.map(m)])).then(([d])=>{Array.isArray(d)&&o.ignoreFromFile.push(...d)}),l=d=>V(e,d),u=d=>Le([{key:d}],o).length===0;function h(d,g,y,x){if(process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD&&x===we()){ee(g,x);return}let R=l(x);if(t?.listing&&R.startsWith(`listings/${t.listing}/`)){let S=R.replace(`listings/${t.listing}/`,"");if(S.startsWith("templates/")||S.startsWith("sections/"))R=S;else return}T(R).then(()=>{switch(d){case"add":case"change":return v(d,g,y,R);case"unlink":return Pe(g,y,R,n)}}).catch(S=>{D(`Error handling file event for ${R}: ${S}`)})}function T(d){return p?.notify(d)??Promise.resolve()}let v=(d,g,y,x)=>{if(u(x))return;let R=s.get(x)?.checksum,S=m(x).then(async()=>{let w=s.get(x);if(w)return w.checksum!==R&&r.add(x),{value:w.value||void 0,attachment:w.attachment}}),I=S.then(w=>{if(w)return on(r,n,x,g,y)(w)}).catch(_e(x,"upload"));a(d,{fileKey:x,onContent:w=>{S.then(Y=>{r.has(x)&&w(Y?.value??Y?.attachment??"")}).catch(()=>{})},onSync:(w,Y)=>{I.then(G=>{G?w():Y?.()}).catch(()=>{})}})},Pe=(d,g,y,x)=>{if(u(y))return;x.delete(y),s.delete(y),r.add(y);let R=t?.noDelete?Promise.resolve():gt(Number(d),[y],g).then(async S=>{if(!S[0]?.success)throw new Error(`Failed to delete file "${y}" from remote theme.`);return r.delete(y),ss("delete",y),!0}).catch(S=>(_e(y,"delete")(S),!1));a("unlink",{fileKey:y,onSync:S=>{R.then(I=>{I&&S()}).catch(()=>{})}})},ve=new Set(ts.map(d=>E(e,d.split("/").shift()??"")));return t?.listing&&ve.add(E(e,"listings",t.listing)),process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD&&ve.add(we()),{root:e,files:s,unsyncedFileKeys:r,uploadErrors:n,ready:()=>c,delete:async d=>{s.delete(d),await cn(e,d)},write:async d=>{let g=(d.key.startsWith("templates/")||d.key.startsWith("sections/"))&&d.key.endsWith(".json");if(t?.listing&&g){let y=E("listings",t.listing,d.key),x=E(e,y),R=await P(x);s.set(d.key,M({key:d.key,checksum:d.checksum,value:d.value??"",attachment:d.attachment??""})),R?await Je(e,{...d,key:y}):await Je(e,d);return}s.set(d.key,M({key:d.key,checksum:d.checksum,value:d.value??"",attachment:d.attachment??""})),await Je(e,d)},read:m,applyIgnoreFilters:d=>Le(d,o),addEventListener:(d,g)=>{i.on(d,g)},startWatcher:async(d,g)=>{let{default:y}=await import("./chokidar-5RWEYTNQ.js"),x=y.watch([...ve],{ignored:W,persistent:!process.env.SHOPIFY_UNIT_TEST,ignoreInitial:!0}),R=new Map,S=(I,w)=>{let G=`${l(w)}:${I}`,Ye=R.get(G);Ye&&clearTimeout(Ye);let ns=setTimeout(()=>{R.delete(G),h(I,d,g,w)},rn);R.set(G,ns)};x.on("add",S.bind(null,"add")).on("change",S.bind(null,"change")).on("unlink",S.bind(null,"unlink")).on("error",I=>{D(`File watcher error: ${I}`),L("theme-service:file-watcher:error")})}}}function on(e,t,s,n,r){return async o=>{if(!e.has(s))return!1;let[i]=await yt(Number(n),[{key:s,...o}],r);if(!i?.success){let a=i?.errors?.asset??["Response was not successful."];throw t.set(s,a),ee(n,s),new Error(a.join(`
100
+ `))}return t.delete(s)&&ee(n,s),e.delete(s),ss("update",s),!0}}async function Je(e,{key:t,attachment:s,value:n}){let r=E(e,t);if(await ln(r),s){let o=Buffer.from(s,"base64");await be(r,o,{encoding:"base64"})}else await be(r,n??"")}async function ue(e,t){let s=Fe(t)?{encoding:"utf8"}:{},n=E(e,t);if(!await P(n)){F(`File ${n} can't be read because it doesn't exist...`);return}return k(n,s)}async function an(e,t,s){if(t==="config/settings_data.json")return es(e,s);let n=await Kt(e,s,t);if(n){let r=Fe(t)?{encoding:"utf8"}:{};return k(n,r)}return ue(e,t)}async function cn(e,t){let s=E(e,t);if(!await P(s)){F(`File ${s} can't be removed because it doesn't exist...`);return}await Qe(s)}function Do(e){let t=[],s=[],n=[],r=[],o=[],i=[],a=[],p=[],m=[],c=[],l=[];return e.forEach(u=>{let h=u.key;h.endsWith(".liquid")?b.sectionLiquidRegex.test(h)?t.push(u):b.blockLiquidRegex.test(h)?c.push(u):b.layoutLiquidRegex.test(h)?l.push(u):s.push(u):b.configSchemaRegex.test(h)?a.push(u):b.configDataRegex.test(h)?p.push(u):b.jsonRegex.test(h)?b.contextualizedJsonRegex.test(h)?i.push(u):b.sectionJsonRegex.test(h)?n.push(u):b.templateJsonRegex.test(h)?r.push(u):o.push(u):b.staticAssetRegex.test(h)&&m.push(u)}),{sectionLiquidFiles:t,otherLiquidFiles:s,sectionJsonFiles:n,templateJsonFiles:r,contextualizedJsonFiles:i,otherJsonFiles:o,configSchemaFile:a,configDataFile:p,staticAssetFiles:m,blockLiquidFiles:c,layoutFiles:l}}function Fe(e){return xt({liquid:"application/liquid",sass:"text/x-sass",scss:"text/x-scss"}),["application/javascript","application/json","application/liquid","text/css","text/x-sass","text/x-scss","image/svg+xml"].includes(U(e))}async function Oo(e){let t=new Set(await C("*",{cwd:e,deep:1,onlyDirectories:!0}));return["config","layout","templates"].every(n=>t.has(n))}async function ln(e){let t=dn(e);await P(t)||await Ze(t)}function dn(e){let t=Ve(e),s=e.lastIndexOf(t);return e.substring(0,s)}function ss(e,t){re(ne`• ${ie.format(new Date)} Synced ${j.raw("\xBB")} ${e} ${t}`)}function we(){let e=process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD;return!e||e==="true"?E(nn(import.meta.url.split("/cli/")[0]??""),"theme-hot-reload/dist/theme-hot-reload.js"):e}function de(e,t){return t?Buffer.isBuffer(t)?ze(t):fn(e)?un(t):pn(e,t):""}function un(e){let t=e;return t=t.replace(/\r\n/g,`
101
+ `),t=t.replace(/\/\*[\s\S]*?\*\//,""),t=mn(t),ze(t)}function pn(e,t){let s=t;return Fe(e)&&(s=s.replace(/\r\n/g,`
102
+ `)),ze(s)}function mn(e){let t=!1,s=!1,n="";for(let r of e)r==='"'&&!s&&(t=!t),!(!t&&(r===" "||r===`
103
+ `))&&(n+=r,s=r==="\\"&&!s);return n}function ze(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e);return Ke(t)}function Bo(e){let t=new Set(e.filter(({key:s})=>s.startsWith("assets/")&&s.endsWith(".liquid")).map(({key:s})=>s));return e.filter(({key:s})=>s.startsWith("assets/")?!t.has(`${s}.liquid`):!0)}function fn(e){return e.endsWith("/settings_data.json")}export{Bo as a,Ct as b,Ot as c,Nt as d,Ut as e,Cr as f,Gr as g,uo as h,zt as i,ee as j,Eo as k,Ho as l,Do as m,Oo as n};
@@ -1 +1 @@
1
- import{c as d}from"./chunk-I5X3IP6T.js";import{xa as i}from"./chunk-TIU7MMRT.js";import{A as s,D as a,w as m,x as u}from"./chunk-EEEKSYWV.js";import{g as c}from"./chunk-VKWPEFWQ.js";c();function f(e){return[`'${e.name}'`,{subdued:`(#${e.id})`}]}function y(e){return{list:{items:e.map(f)}}}async function T(e,r="It doesn't seem like you're running this command in a theme directory.",o,n){if(e)return!0;if(n)return u({headline:o?`Environment: ${o}`:"",body:r}),!1;if(m({body:r}),!process.stdout.isTTY)return!0;let t=await s({message:"Do you want to proceed?"});return i(`theme-service:confirm-directory:${t}`),t}async function v(e,r,o){if(e.role!==d||!process.stdout.isTTY||o)return!0;let n=`You're about to ${r} on your live theme "${e.name}". This will make changes visible to customers. Are you sure you want to proceed?`,t=await s({message:n,confirmationMessage:"Yes, proceed with live theme",cancellationMessage:"No, cancel"});return i(`theme-service:confirm-live-theme:${t}`),t}async function E(e,r,o=!1){e.length>0&&await a(e,{renderOptions:{stdout:r??process.stderr},noProgressBar:o})}export{f as a,y as b,T as c,v as d,E as e};
1
+ import{c as d}from"./chunk-Y7A7Z2V3.js";import{ua as i}from"./chunk-AFM3UZQO.js";import{A as s,D as a,w as m,x as u}from"./chunk-JX4HSDDG.js";import{g as c}from"./chunk-VKWPEFWQ.js";c();function f(e){return[`'${e.name}'`,{subdued:`(#${e.id})`}]}function y(e){return{list:{items:e.map(f)}}}async function T(e,r="It doesn't seem like you're running this command in a theme directory.",o,n){if(e)return!0;if(n)return u({headline:o?`Environment: ${o}`:"",body:r}),!1;if(m({body:r}),!process.stdout.isTTY)return!0;let t=await s({message:"Do you want to proceed?"});return i(`theme-service:confirm-directory:${t}`),t}async function v(e,r,o){if(e.role!==d||!process.stdout.isTTY||o)return!0;let n=`You're about to ${r} on your live theme "${e.name}". This will make changes visible to customers. Are you sure you want to proceed?`,t=await s({message:n,confirmationMessage:"Yes, proceed with live theme",cancellationMessage:"No, cancel"});return i(`theme-service:confirm-live-theme:${t}`),t}async function E(e,r,o=!1){e.length>0&&await a(e,{renderOptions:{stdout:r??process.stderr},noProgressBar:o})}export{f as a,y as b,T as c,v as d,E as e};
@@ -1,4 +1,4 @@
1
- import{a as v,b as J}from"./chunk-TM44Z7U7.js";import{a as C}from"./chunk-2ACN7JIZ.js";import{a as p}from"./chunk-N6IFIMC6.js";import{a as N}from"./chunk-STJ3LWFL.js";import{r as E}from"./chunk-I5X3IP6T.js";import{p as c,r as F,v as S}from"./chunk-4P54DKG4.js";import{O as w}from"./chunk-TIU7MMRT.js";import{b as q,c as D}from"./chunk-NGCPVRDM.js";import{A as T,S as O,v as I,x as u}from"./chunk-EEEKSYWV.js";import{Lb as a}from"./chunk-TB7HFPBB.js";import{r as M}from"./chunk-T6CC5WUU.js";import{e as A,g as h}from"./chunk-VKWPEFWQ.js";h();h();async function _(t,o,e){let{name:r,verbose:d,noColor:l,json:m,force:x}=e,g=O()||x;if(C({verbose:d,noColor:l}),g&&!o){let s="A theme ID is required to duplicate a theme, specify one with the --theme flag";m?a(JSON.stringify({message:s,errors:[]})):u({body:[s]});return}let i=o?await J(t,o):await v(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.`;m?a(JSON.stringify({message:s,errors:[]})):u({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.";m?a(JSON.stringify({message:s,errors:[]})):u({body:[s]});return}if(!g&&!await T({message:`Do you want to duplicate '${i.name}' on ${t.storeFqdn}?`,confirmationMessage:`Yes, duplicate '${i.name}'`,cancellationMessage:"No, cancel duplicate"}))return;let b=await E(i.id,r,t);m?j(i,t,b):P(i,t,b)}function P(t,o,e){if(e.userErrors&&e.userErrors.length>0){let r=e.userErrors.map(d=>d.message).join(", ");u({body:["The theme",...p(t),"could not be duplicated due to errors: ",{subdued:r},{char:"."},...e.requestId?[`
1
+ import{a as v,b as J}from"./chunk-LDWMX3KZ.js";import{a as C}from"./chunk-FKH5ZF2C.js";import{a as p}from"./chunk-7TXWKLPY.js";import{a as N}from"./chunk-STJ3LWFL.js";import{r as E}from"./chunk-Y7A7Z2V3.js";import{p as c,r as F,v as S}from"./chunk-445NFHXL.js";import{b as q,c as D}from"./chunk-4TANJ4JK.js";import{O as w}from"./chunk-AFM3UZQO.js";import{A as T,S as O,v as I,x as u}from"./chunk-JX4HSDDG.js";import{Lb as a}from"./chunk-BCZMDFI2.js";import{a as M}from"./chunk-CTNBSUVU.js";import{e as A,g as h}from"./chunk-VKWPEFWQ.js";h();h();async function _(t,o,e){let{name:r,verbose:d,noColor:l,json:m,force:x}=e,g=O()||x;if(C({verbose:d,noColor:l}),g&&!o){let s="A theme ID is required to duplicate a theme, specify one with the --theme flag";m?a(JSON.stringify({message:s,errors:[]})):u({body:[s]});return}let i=o?await J(t,o):await v(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.`;m?a(JSON.stringify({message:s,errors:[]})):u({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.";m?a(JSON.stringify({message:s,errors:[]})):u({body:[s]});return}if(!g&&!await T({message:`Do you want to duplicate '${i.name}' on ${t.storeFqdn}?`,confirmationMessage:`Yes, duplicate '${i.name}'`,cancellationMessage:"No, cancel duplicate"}))return;let b=await E(i.id,r,t);m?j(i,t,b):P(i,t,b)}function P(t,o,e){if(e.userErrors&&e.userErrors.length>0){let r=e.userErrors.map(d=>d.message).join(", ");u({body:["The theme",...p(t),"could not be duplicated due to errors: ",{subdued:r},{char:"."},...e.requestId?[`
2
2
  Request ID: `,{subdued:e.requestId}]:[]]})}else e.theme?I({body:["The theme",...p(t),"has been duplicated",{char:"."}],nextSteps:[[{link:{label:"View the duplicated theme",url:N(e.theme,o)}}]]}):u({body:["The theme",...p(t),"unexpectedly could not be duplicated",{char:"."},...e.requestId?[`
3
3
  Request ID: `,{subdued:e.requestId}]:[]]})}function j(t,o,e){if(e.userErrors&&e.userErrors.length>0)a(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:d,role:l}=e.theme,m={theme:{id:r,name:d,role:l,shop:o.storeFqdn}};a(JSON.stringify(m))}else a(JSON.stringify({message:`The theme '${t.name}' unexpectedly could not be duplicated `,errors:[],requestId:e.requestId}))}var f=A(M(),1);var y,n=class extends S{async run(){let{flags:o}=await this.parse(y),e=F(o),r=await w(e,o.password);await _(r,o.theme,o)}};y=n;n.summary="Duplicates a theme from your theme library.";n.usage=["theme duplicate","theme duplicate --theme 10 --name 'New Theme'"];n.descriptionWithMarkdown=`If you want to duplicate your local theme, you need to run \`shopify theme push\` first.
4
4
 
@@ -1 +1 @@
1
- import{b as a}from"./chunk-LSCDB36D.js";import{Fa as i}from"./chunk-TIU7MMRT.js";import{b as s}from"./chunk-UAYIFFYJ.js";import{r as m}from"./chunk-T6CC5WUU.js";import{e as d,g as e}from"./chunk-VKWPEFWQ.js";e();var n=d(m(),1);var t=class c extends s{static{this.description="List current notifications configured for the CLI."}static{this.hidden=!0}static{this.flags={"ignore-errors":n.Flags.boolean({hidden:!1,description:"Don't fail if an error occurs.",env:"SHOPIFY_FLAG_IGNORE_ERRORS"})}}async run(){let{flags:f}=await this.parse(c);try{await a()}catch(r){let o="Error fetching notifications";if(r instanceof Error&&(o=o.concat(`: ${r.message}`)),await i(o,"expected_error"),!f["ignore-errors"])throw r}}};export{t as a};
1
+ import{b as a}from"./chunk-GD5IRJBE.js";import{b as s}from"./chunk-WHT2RCAD.js";import{Ca as i}from"./chunk-AFM3UZQO.js";import{a as m}from"./chunk-CTNBSUVU.js";import{e as d,g as e}from"./chunk-VKWPEFWQ.js";e();var n=d(m(),1);var t=class c extends s{static{this.description="List current notifications configured for the CLI."}static{this.hidden=!0}static{this.flags={"ignore-errors":n.Flags.boolean({hidden:!1,description:"Don't fail if an error occurs.",env:"SHOPIFY_FLAG_IGNORE_ERRORS"})}}async run(){let{flags:f}=await this.parse(c);try{await a()}catch(r){let o="Error fetching notifications";if(r instanceof Error&&(o=o.concat(`: ${r.message}`)),await i(o,"expected_error"),!f["ignore-errors"])throw r}}};export{t as a};