@shopify/cli 4.1.0 → 4.2.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.
- package/dist/analytics-CX22YIUZ.js +1 -0
- package/dist/analytics-UBWQIQYF.js +1 -0
- package/dist/angular-UTTM4Y4S.js +4 -0
- package/dist/bootstrap.js +1 -1
- package/dist/{chunk-76R52ODR.js → chunk-23AMFHXC.js} +1 -1
- package/dist/{chunk-Q33IBIVJ.js → chunk-2EJCY4CE.js} +1 -1
- package/dist/{chunk-SXTMSGUE.js → chunk-2KH2S7PI.js} +1 -1
- package/dist/chunk-2N4O33VM.js +6 -0
- package/dist/{chunk-6RE2SNCU.js → chunk-2VLMN5QZ.js} +1 -1
- package/dist/chunk-2WNODIWJ.js +1 -0
- package/dist/chunk-2YXKZWYW.js +1 -0
- package/dist/{chunk-KZOBF55B.js → chunk-3BRUCKZ2.js} +1 -1
- package/dist/{chunk-URZPVSJZ.js → chunk-3V63X7WZ.js} +66 -66
- package/dist/chunk-3YWUSKWF.js +159 -0
- package/dist/chunk-42RMKTCJ.js +8 -0
- package/dist/{chunk-OBEWZXOQ.js → chunk-4EXYYBQ6.js} +1 -1
- package/dist/chunk-4KRT35A2.js +1 -0
- package/dist/chunk-4V4DQ6W7.js +836 -0
- package/dist/chunk-4Z2WYNTE.js +1 -0
- package/dist/chunk-57N2DFIF.js +1 -0
- package/dist/chunk-5TIJLYZU.js +3 -0
- package/dist/{chunk-MCVRONUY.js → chunk-6AJZKIZ3.js} +1 -1
- package/dist/{chunk-XULPJ6UG.js → chunk-6HZTMQD6.js} +1 -1
- package/dist/chunk-6LK6ZP3Q.js +1 -0
- package/dist/chunk-6SXOUZ7V.js +1 -0
- package/dist/chunk-6TEXPRI2.js +2 -0
- package/dist/{chunk-VICYNG2W.js → chunk-6TORWTD7.js} +1 -1
- package/dist/{chunk-WSDN25F5.js → chunk-6YAXFS6V.js} +1 -1
- package/dist/chunk-6YHJ554P.js +6 -0
- package/dist/chunk-6ZIOYXEF.js +3 -0
- package/dist/chunk-7BFDUVOG.js +1 -0
- package/dist/chunk-7DVOSOEP.js +11 -0
- package/dist/chunk-7JESXDF2.js +14 -0
- package/dist/chunk-7KJ5TBWG.js +5 -0
- package/dist/{chunk-7MUKLZOL.js → chunk-A3VYI4LO.js} +2 -2
- package/dist/{chunk-MHWV5RQV.js → chunk-A5SQCM63.js} +2 -2
- package/dist/chunk-A6X2IVGT.js +4 -0
- package/dist/{chunk-4DCQNGUV.js → chunk-AP3RFOPL.js} +10 -10
- package/dist/{chunk-XXVEHDVO.js → chunk-ATPFTRCC.js} +1 -1
- package/dist/chunk-AWQ5AR2K.js +5 -0
- package/dist/chunk-BECEP46I.js +16 -0
- package/dist/{chunk-M56NDIMD.js → chunk-BHWEA4V2.js} +1 -1
- package/dist/chunk-BPVZ7E63.js +1 -0
- package/dist/chunk-C2FFA4O4.js +1 -0
- package/dist/chunk-C3LZPAAH.js +3 -0
- package/dist/chunk-C6ABJCRG.js +1 -0
- package/dist/chunk-CCEA5CUX.js +1 -0
- package/dist/chunk-CE6FKJFS.js +1 -0
- package/dist/chunk-CW7WJZKR.js +28 -0
- package/dist/chunk-D3DDLLNF.js +2 -0
- package/dist/chunk-D656BV5Z.js +25 -0
- package/dist/chunk-DCBYHVKW.js +1 -0
- package/dist/{chunk-AGNMOFJS.js → chunk-DCK2FX6J.js} +1 -1
- package/dist/chunk-DERA4K6A.js +32 -0
- package/dist/chunk-DNLOSMHL.js +3 -0
- package/dist/chunk-E2YBU6D3.js +294 -0
- package/dist/{chunk-M2ZHFKPN.js → chunk-F47MFBKM.js} +1 -1
- package/dist/chunk-F6T3UBBL.js +1 -0
- package/dist/{chunk-BS3BKORT.js → chunk-FBVBO5YQ.js} +1 -1
- package/dist/chunk-FD5S2O6M.js +7 -0
- package/dist/chunk-FFYYJKF7.js +1 -0
- package/dist/{chunk-KHTV6PBV.js → chunk-FGVC22EY.js} +1 -1
- package/dist/{chunk-QA23HIH4.js → chunk-FP2NOZSD.js} +1 -1
- package/dist/chunk-FQDRVPCY.js +2 -0
- package/dist/{chunk-T542UQBY.js → chunk-FSTCEWXX.js} +1 -1
- package/dist/chunk-FTN7Y6HD.js +7 -0
- package/dist/{chunk-QBSKKQBN.js → chunk-GVITHCQJ.js} +1 -1
- package/dist/chunk-H4W4DFKK.js +1 -0
- package/dist/{chunk-UYXEA3Y6.js → chunk-HD5TYIDZ.js} +1 -1
- package/dist/chunk-HHXHOQQP.js +3 -0
- package/dist/chunk-HJSYHK4S.js +8 -0
- package/dist/chunk-HLMFVORT.js +1 -0
- package/dist/chunk-HSYRYSX4.js +3 -0
- package/dist/chunk-I3LX25MB.js +1 -0
- package/dist/chunk-INFBVFMU.js +4 -0
- package/dist/chunk-IOQQUHST.js +18 -0
- package/dist/chunk-IVGWFPMA.js +19 -0
- package/dist/chunk-IWCPQD7X.js +1382 -0
- package/dist/chunk-IWE4RUI7.js +1 -0
- package/dist/chunk-IXUVSFW2.js +1 -0
- package/dist/{chunk-Q4T2T2QE.js → chunk-J6VTZEE2.js} +1 -1
- package/dist/{chunk-6ITDI2SD.js → chunk-K3PGC6DC.js} +1 -1
- package/dist/{chunk-2AJ5FI2K.js → chunk-K77WAKOB.js} +1 -1
- package/dist/{chunk-7NH7CHVI.js → chunk-K7K6GNF6.js} +1 -1
- package/dist/chunk-KFCGMT67.js +1 -0
- package/dist/chunk-KLA7AWG6.js +7 -0
- package/dist/{chunk-UJXUSRQK.js → chunk-KQU6HOJ3.js} +1 -1
- package/dist/{chunk-KHSYW7I4.js → chunk-KU5OPV7U.js} +1 -1
- package/dist/chunk-L2VSSINY.js +1 -0
- package/dist/chunk-LCCMXY6N.js +1 -0
- package/dist/{chunk-ZSBA6VIC.js → chunk-LITB5QQX.js} +1 -1
- package/dist/chunk-LKS47US7.js +8 -0
- package/dist/{chunk-E3EMHAJB.js → chunk-LQMSF3F7.js} +1 -1
- package/dist/chunk-LTWXTDDR.js +5 -0
- package/dist/{chunk-5WVAHE5E.js → chunk-M2TJICTB.js} +1 -1
- package/dist/chunk-M4LOKANA.js +1 -0
- package/dist/chunk-M4V2OQAX.js +1 -0
- package/dist/chunk-MA52QGHP.js +1 -0
- package/dist/chunk-MFLBTJO7.js +1 -0
- package/dist/{chunk-6G6TMKXF.js → chunk-MGL4YM3S.js} +21 -21
- package/dist/{chunk-4IC626OL.js → chunk-MIO2CV3Q.js} +1 -1
- package/dist/{chunk-NMBBTTIH.js → chunk-MKE434RB.js} +1 -1
- package/dist/chunk-MZJRNFAU.js +1 -0
- package/dist/{chunk-JXW374CL.js → chunk-N3YWHJMB.js} +11 -11
- package/dist/{chunk-EKXY5COY.js → chunk-N5ROZKPZ.js} +1 -1
- package/dist/chunk-NBYS6YQ2.js +5 -0
- package/dist/chunk-NEZEHBT2.js +1 -0
- package/dist/chunk-NO5KVFTV.js +22 -0
- package/dist/{chunk-6CYMJ76C.js → chunk-NP4UFPAX.js} +1 -1
- package/dist/chunk-NPM3MFB3.js +7 -0
- package/dist/{chunk-M2D7USAX.js → chunk-NXL6LDJU.js} +1 -1
- package/dist/chunk-OA4P6AKS.js +1 -0
- package/dist/chunk-OKNBZSGN.js +2 -0
- package/dist/chunk-OKOYLEA7.js +278 -0
- package/dist/chunk-OLOBQ42K.js +1 -0
- package/dist/chunk-OYP7DKPU.js +1 -0
- package/dist/{chunk-7UYZQN4V.js → chunk-PBTXPBI6.js} +2 -2
- package/dist/chunk-PLQFX5ZP.js +9 -0
- package/dist/{chunk-MWY3A7O3.js → chunk-PS25FEBF.js} +1 -1
- package/dist/{chunk-OLZHWPZP.js → chunk-PSQFZAF3.js} +1 -1
- package/dist/chunk-PUTZFF2Z.js +613 -0
- package/dist/chunk-QLQGHMVU.js +15 -0
- package/dist/{chunk-FQWB2F75.js → chunk-QTGMS62F.js} +1 -1
- package/dist/chunk-R6JNXEB3.js +1 -0
- package/dist/chunk-RAH5NW3R.js +1 -0
- package/dist/{chunk-KR6QDE7D.js → chunk-RGNAWKD7.js} +1 -1
- package/dist/chunk-RL5BWZ7D.js +15 -0
- package/dist/{chunk-67MH4AXG.js → chunk-RVMB5LC2.js} +1 -1
- package/dist/chunk-SSM346XI.js +5 -0
- package/dist/chunk-T5MK7ZSF.js +1 -0
- package/dist/{chunk-C7BTJ32Z.js → chunk-TGACBJIY.js} +1 -1
- package/dist/{chunk-UJVH7FZS.js → chunk-TLSAQ6FG.js} +1 -1
- package/dist/chunk-TNQXTZAX.js +32 -0
- package/dist/{chunk-ZGK3LGCH.js → chunk-TQGTEVSR.js} +1 -1
- package/dist/chunk-TXUTT6UA.js +17 -0
- package/dist/chunk-U3ZG675O.js +5 -0
- package/dist/chunk-UARVYVLN.js +3 -0
- package/dist/chunk-UBKVCI7A.js +3 -0
- package/dist/{chunk-2GK56X53.js → chunk-UCLSPAVX.js} +1 -1
- package/dist/chunk-UOQ75BL3.js +1 -0
- package/dist/{chunk-ULFWK45W.js → chunk-UOQQNAHX.js} +2 -2
- package/dist/chunk-UURFVUAH.js +11 -0
- package/dist/chunk-VA5IUGZV.js +2 -0
- package/dist/{chunk-XOTA6JTZ.js → chunk-VEDZUOVI.js} +3 -3
- package/dist/chunk-VICNWPLQ.js +567 -0
- package/dist/chunk-VPL2NDH6.js +370 -0
- package/dist/chunk-VT77EFRL.js +10 -0
- package/dist/{chunk-TYZXGSHO.js → chunk-VYXVYOIJ.js} +1 -1
- package/dist/chunk-WCWNI3ZV.js +283 -0
- package/dist/chunk-WNGV4JQS.js +4 -0
- package/dist/{chunk-L2MGAEV3.js → chunk-WUK5NQSX.js} +2 -2
- package/dist/chunk-X2TC7S57.js +103 -0
- package/dist/chunk-X4CV6TRE.js +1 -0
- package/dist/chunk-XDAOLCPN.js +4 -0
- package/dist/chunk-XFKCDWXB.js +5 -0
- package/dist/chunk-XP6IRAZN.js +1 -0
- package/dist/{chunk-KN3WTTHZ.js → chunk-XX343DDG.js} +1 -1
- package/dist/{chunk-DRFGABEB.js → chunk-XXE7667M.js} +1 -1
- package/dist/chunk-YGMVL6NZ.js +6 -0
- package/dist/chunk-YJB7P2HC.js +1 -0
- package/dist/{chunk-P6XE4MH5.js → chunk-YS6VOQ7I.js} +1 -1
- package/dist/chunk-ZZYFG22L.js +26 -0
- package/dist/cli/commands/app/app-logs/sources.js +1 -2
- package/dist/cli/commands/app/build.js +1 -1
- package/dist/cli/commands/app/bulk/cancel.js +1 -1
- package/dist/cli/commands/app/bulk/execute.js +1 -9
- package/dist/cli/commands/app/bulk/status.js +1 -5
- package/dist/cli/commands/app/config/link.js +1 -4
- package/dist/cli/commands/app/config/pull.js +1 -1
- package/dist/cli/commands/app/config/use.js +1 -1
- package/dist/cli/commands/app/config/validate.js +1 -3
- package/dist/cli/commands/app/demo/watcher.js +1 -1
- package/dist/cli/commands/app/deploy.js +1 -22
- package/dist/cli/commands/app/dev/clean.js +1 -5
- package/dist/cli/commands/app/dev.js +1 -320
- package/dist/cli/commands/app/env/pull.js +1 -11
- package/dist/cli/commands/app/env/show.js +1 -1
- package/dist/cli/commands/app/execute.js +1 -1
- package/dist/cli/commands/app/function/build.js +1 -1
- package/dist/cli/commands/app/function/info.js +1 -16
- package/dist/cli/commands/app/function/replay.js +1 -5
- package/dist/cli/commands/app/function/run.js +1 -1
- package/dist/cli/commands/app/function/schema.js +1 -1
- package/dist/cli/commands/app/function/typegen.js +1 -1
- package/dist/cli/commands/app/generate/extension.js +1 -5
- package/dist/cli/commands/app/import-custom-data-definitions.js +1 -4
- package/dist/cli/commands/app/import-extensions.js +1 -1
- package/dist/cli/commands/app/info.js +1 -11
- package/dist/cli/commands/app/init.js +1 -10
- package/dist/cli/commands/app/logs.js +1 -2
- package/dist/cli/commands/app/release.js +1 -4
- package/dist/cli/commands/app/versions/list.js +1 -1
- package/dist/cli/commands/app/webhook/trigger.js +1 -25
- package/dist/cli/commands/auth/login.js +1 -1
- package/dist/cli/commands/auth/logout.js +1 -1
- package/dist/cli/commands/cache/clear.js +1 -1
- package/dist/cli/commands/config/autoupgrade/off.js +1 -1
- package/dist/cli/commands/config/autoupgrade/on.js +1 -1
- package/dist/cli/commands/config/autoupgrade/status.js +1 -1
- package/dist/cli/commands/debug/command-flags.js +1 -1
- package/dist/cli/commands/docs/generate.js +1 -1
- package/dist/cli/commands/doctor-release/doctor-release.js +1 -1
- package/dist/cli/commands/doctor-release/theme/index.js +1 -1
- package/dist/cli/commands/help.js +1 -1
- package/dist/cli/commands/kitchen-sink/async.js +1 -1
- package/dist/cli/commands/kitchen-sink/index.js +1 -1
- package/dist/cli/commands/kitchen-sink/prompts.js +1 -1
- package/dist/cli/commands/kitchen-sink/static.js +1 -1
- package/dist/cli/commands/notifications/generate.js +1 -1
- package/dist/cli/commands/notifications/list.js +1 -1
- package/dist/cli/commands/organization/list.js +1 -1
- package/dist/cli/commands/search.js +1 -1
- package/dist/cli/commands/theme/check.js +1 -1
- package/dist/cli/commands/theme/console.js +1 -15
- package/dist/cli/commands/theme/delete.js +1 -7
- package/dist/cli/commands/theme/dev.js +1 -26
- package/dist/cli/commands/theme/duplicate.js +1 -32
- package/dist/cli/commands/theme/info.js +1 -1
- package/dist/cli/commands/theme/init.js +1 -8
- package/dist/cli/commands/theme/language-server.js +1 -1
- package/dist/cli/commands/theme/list.js +1 -1
- package/dist/cli/commands/theme/metafields/pull.js +1 -3
- package/dist/cli/commands/theme/open.js +1 -8
- package/dist/cli/commands/theme/package.js +1 -7
- package/dist/cli/commands/theme/preview.js +1 -1
- package/dist/cli/commands/theme/profile.js +1 -3
- package/dist/cli/commands/theme/publish.js +1 -7
- package/dist/cli/commands/theme/pull.js +1 -3
- package/dist/cli/commands/theme/push.js +1 -28
- package/dist/cli/commands/theme/rename.js +1 -6
- package/dist/cli/commands/theme/share.js +1 -3
- package/dist/cli/commands/upgrade.js +1 -1
- package/dist/cli/commands/version.js +1 -1
- package/dist/command-registry.js +1 -1
- package/dist/conf-store-6QNH5BID.js +1 -0
- package/dist/configs/all.yml +3 -0
- package/dist/configs/recommended.yml +3 -0
- package/dist/{custom-oclif-loader-DVFFWCBV.js → custom-oclif-loader-TSPWW5YF.js} +1 -1
- package/dist/data/filters.json +60 -0
- package/dist/data/latest.json +1 -1
- package/dist/data/setting.json +29 -9
- package/dist/data/shopify_system_translations.json +71 -19
- package/dist/data/tags.json +3 -3
- package/dist/deprecations-F6JWVV2W.js +1 -0
- package/dist/{devtools-OLOT2NY4.js → devtools-HCKYP7DQ.js} +1 -1
- package/dist/{devtools-UFRKBFGI.js → devtools-VEZNCV6W.js} +1 -1
- package/dist/dist-4BD6KOLR.js +1 -0
- package/dist/dist-AUABCVPI.js +1 -0
- package/dist/environments-RGLI75HN.js +1 -0
- package/dist/error-OZALZZ3U.js +1 -0
- package/dist/error-handler-V7LSEXHM.js +1 -0
- package/dist/{estree-KI7NUW53.js → estree-BYYJYS3A.js} +1 -1
- package/dist/fs-YMUQ6JLE.js +1 -0
- package/dist/hooks/app-init.js +1 -1
- package/dist/hooks/did-you-mean.js +1 -1
- package/dist/hooks/hydrogen-init.js +1 -1
- package/dist/hooks/plugin-plugins.js +1 -1
- package/dist/hooks/postrun.js +1 -1
- package/dist/hooks/prerun.js +1 -1
- package/dist/hooks/public-metadata.js +1 -1
- package/dist/hooks/sensitive-metadata.js +1 -1
- package/dist/hooks/tunnel-provider.js +1 -1
- package/dist/hooks/tunnel-start.js +1 -1
- package/dist/html-HETICZ2F.js +25 -0
- package/dist/index.js +9 -1182
- package/dist/is-global-BLIZ57HQ.js +1 -0
- package/dist/is-wsl-TN2CXYI7.js +1 -0
- package/dist/{latest-version-EFWBOTWM.js → latest-version-6OAYLOBL.js} +1 -1
- package/dist/{lib-QB6I6CTC.js → lib-AK5EOIKR.js} +1 -1
- package/dist/{lib-C3VO2BQW.js → lib-LVUMLZ4H.js} +1 -1
- package/dist/lib-ME6554NA.js +1 -0
- package/dist/{local-MTKXSZ3I.js → local-GPDAXHE6.js} +1 -1
- package/dist/local-storage-P66KJG6I.js +1 -0
- package/dist/{markdown-PLKL4IZK.js → markdown-5TVCXM53.js} +1 -1
- package/dist/{metadata-NOVBMKLM.js → metadata-TRH25EHU.js} +1 -1
- package/dist/{morph-EMYAITFM.js → morph-I35VYPBH.js} +4 -4
- package/dist/node-package-manager-GO4ZRTKQ.js +1 -0
- package/dist/notifications-system-HM6JZ6WJ.js +1 -0
- package/dist/{npa-ICFSA3NL.js → npa-VNALV7XY.js} +1 -1
- package/dist/output-7IYOMPSA.js +1 -0
- package/dist/{postcss-3FJQPJI2.js → postcss-IIK6CGAW.js} +1 -1
- package/dist/{prettier-NVRHEAFO.js → prettier-ZSBNNQTK.js} +1 -1
- package/dist/system-X5C4EQQH.js +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui-H62CMRLG.js +1 -0
- package/dist/upgrade-EEOPH464.js +1 -0
- package/dist/version-76NBQR4K.js +1 -0
- package/dist/version-IGSEISUA.js +1 -0
- package/dist/workerd-ST6XJKUN.js +18 -0
- package/oclif.manifest.json +142 -7
- package/package.json +14 -11
- package/dist/analytics-5TEIW43T.js +0 -1
- package/dist/analytics-GG7CYCGL.js +0 -1
- package/dist/angular-VRDO2DBE.js +0 -4
- package/dist/chunk-3D4JXJPS.js +0 -2
- package/dist/chunk-3NBK56IK.js +0 -1
- package/dist/chunk-54CAKCYR.js +0 -144
- package/dist/chunk-5UHQVR2Z.js +0 -1
- package/dist/chunk-6HBRBQAN.js +0 -6
- package/dist/chunk-6SF3ZETE.js +0 -1
- package/dist/chunk-6WL4GA2M.js +0 -15
- package/dist/chunk-7ESSIN27.js +0 -567
- package/dist/chunk-7QIOUDCX.js +0 -8
- package/dist/chunk-7ZT57XT7.js +0 -2
- package/dist/chunk-AKML26N3.js +0 -7
- package/dist/chunk-C2IK2HY3.js +0 -4
- package/dist/chunk-CBXSPL4W.js +0 -1
- package/dist/chunk-CEIQFLCN.js +0 -1
- package/dist/chunk-CERXUPGC.js +0 -14
- package/dist/chunk-DCPBRWVC.js +0 -1
- package/dist/chunk-DN2IE3VY.js +0 -1
- package/dist/chunk-EQU4MUQJ.js +0 -1
- package/dist/chunk-F2QU6WWX.js +0 -1
- package/dist/chunk-FFQ5EWII.js +0 -294
- package/dist/chunk-FKMC5OFF.js +0 -1
- package/dist/chunk-FUOIGXI4.js +0 -1
- package/dist/chunk-FYFNUDOC.js +0 -19
- package/dist/chunk-G4BPGWJC.js +0 -1
- package/dist/chunk-GVQIPEZT.js +0 -1
- package/dist/chunk-GZS44BUW.js +0 -102
- package/dist/chunk-HIBX234C.js +0 -6
- package/dist/chunk-HRUGYZZ4.js +0 -2
- package/dist/chunk-HUIJMGVJ.js +0 -586
- package/dist/chunk-IX5ICOBV.js +0 -7
- package/dist/chunk-IZ3C5J7G.js +0 -5
- package/dist/chunk-JAO53IH2.js +0 -1
- package/dist/chunk-JCL2RRU6.js +0 -1
- package/dist/chunk-JQJBBXMX.js +0 -17
- package/dist/chunk-K2WUCOQJ.js +0 -32
- package/dist/chunk-K6CTUBFC.js +0 -12
- package/dist/chunk-KKTW6ZCA.js +0 -5
- package/dist/chunk-LDGAHMS7.js +0 -159
- package/dist/chunk-M3RYUB22.js +0 -1
- package/dist/chunk-MWGBTOO3.js +0 -1
- package/dist/chunk-N5PQPIBF.js +0 -374
- package/dist/chunk-NF2ABOOU.js +0 -1
- package/dist/chunk-NPEVESCV.js +0 -3
- package/dist/chunk-OTY24J2W.js +0 -1
- package/dist/chunk-OY3PNHPZ.js +0 -103
- package/dist/chunk-PAP22IQO.js +0 -264
- package/dist/chunk-PYVAWAUO.js +0 -5
- package/dist/chunk-S6EJHWJL.js +0 -1
- package/dist/chunk-SIMFNECG.js +0 -1
- package/dist/chunk-TQ6HYDVC.js +0 -1
- package/dist/chunk-UHJYPEY2.js +0 -1
- package/dist/chunk-UXVZ2P63.js +0 -1411
- package/dist/chunk-WFXRSKRK.js +0 -1
- package/dist/chunk-XITQULK4.js +0 -3
- package/dist/chunk-XONFGLJQ.js +0 -847
- package/dist/chunk-XR6GMMEU.js +0 -1
- package/dist/chunk-Y7JGYGV7.js +0 -1
- package/dist/chunk-YTNDFQJT.js +0 -3
- package/dist/chunk-ZBRRJDGW.js +0 -1
- package/dist/chunk-ZTMSBSYD.js +0 -1
- package/dist/conf-store-BMZFATRQ.js +0 -1
- package/dist/deprecations-7LHRXPXU.js +0 -1
- package/dist/dist-LDXPBYSZ.js +0 -1
- package/dist/dist-V63ILV6L.js +0 -1
- package/dist/environments-5X7S2O5U.js +0 -1
- package/dist/error-ZRLNNGIQ.js +0 -1
- package/dist/error-handler-PRZFHPRG.js +0 -1
- package/dist/fs-H7V6IRSH.js +0 -1
- package/dist/html-VSSXOZOQ.js +0 -25
- package/dist/is-global-IOWPCT2U.js +0 -1
- package/dist/is-wsl-FVUIXDOK.js +0 -1
- package/dist/lib-5L7UKDEK.js +0 -1
- package/dist/local-storage-CYEL4MXF.js +0 -1
- package/dist/node-package-manager-N5CVNHA3.js +0 -1
- package/dist/notifications-system-YX2GPLDW.js +0 -1
- package/dist/output-Q46DT46U.js +0 -1
- package/dist/system-E6Q3OBX3.js +0 -1
- package/dist/ui-WRS2IDPP.js +0 -1
- package/dist/upgrade-TKUN2M5P.js +0 -1
- package/dist/version-5W5RVAPA.js +0 -1
- package/dist/version-BQJ3FPXD.js +0 -1
- package/dist/workerd-GOK6GWEX.js +0 -18
- /package/dist/{acorn-LOOAJL3S.js → acorn-QBS5IYTX.js} +0 -0
- /package/dist/{babel-URCL33XX.js → babel-JS32NLHY.js} +0 -0
- /package/dist/{flow-MLHT7MTJ.js → flow-M3Q2HPQT.js} +0 -0
- /package/dist/{glimmer-HAJ4HQCW.js → glimmer-3DEJJGOJ.js} +0 -0
- /package/dist/{graphql-F7IHGXDT.js → graphql-A4HHE3MB.js} +0 -0
- /package/dist/{meriyah-AYZQ3BGY.js → meriyah-23OZNYWC.js} +0 -0
- /package/dist/{typescript-ODJ335NU.js → typescript-YKZ232QT.js} +0 -0
- /package/dist/{yaml-BIHS2GQW.js → yaml-SJKIH3VD.js} +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{e as m,h as f}from"./chunk-VICNWPLQ.js";import{d as s}from"./chunk-BHWEA4V2.js";import{$ as c,Ta as r,qa as h,wa as l}from"./chunk-VPL2NDH6.js";import{d as o}from"./chunk-IU2ZQ6TE.js";import{g as a}from"./chunk-VPRTJUIN.js";a();async function b(t,i){let n=t?.path??"",e=o(i,n);if(!await r(e))throw new s(`
|
|
2
|
+
The extension is not available for ${t?.value}`);return e}async function k({name:t,app:i}){let n=c(t),e=o(i.directory,f.extensions.directoryName,n);if(await r(e))throw new s(`
|
|
3
|
+
A directory with this name (${n}) already exists.
|
|
4
|
+
Choose a new name for your extension.`);return await l(e),await h(o(e,m.lockFile)),e}async function v({localApp:t,developerPlatformClient:i,apiKey:n,organizationId:e}){let{dashboardManagedExtensionRegistrations:x}=(await i.appExtensionRegistrations({id:n,apiKey:n,organizationId:e})).app;return x.length>0||t.allExtensions.filter(u=>u.isThemeExtension).length>0||t.allExtensions.length>0}export{b as a,k as b,v as c};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{j as W,l as B}from"./chunk-
|
|
1
|
+
import{j as W,l as B}from"./chunk-LITB5QQX.js";import{O as v,a as O}from"./chunk-MGL4YM3S.js";import{f as h}from"./chunk-6YAXFS6V.js";import{d as u,g as T}from"./chunk-BHWEA4V2.js";import{a as I}from"./chunk-H4W4DFKK.js";import{$a as S,Bb as L,Fb as o,Hb as s,Pb as d,Ta as w,Ua as i,Wa as D,ma as x,ua as b}from"./chunk-VPL2NDH6.js";import{d as c,i as k}from"./chunk-IU2ZQ6TE.js";import{e as R,g}from"./chunk-VPRTJUIN.js";g();g();function M(e,n){try{return JSON.parse(e)}catch(a){let r=a instanceof Error?a.message:String(a),t=n?` from ${n}`:"";throw new u(`Failed to parse JSON${t}.
|
|
2
2
|
${r}`)}}var l=R(I()),N="yarn.lock",j="package-lock.json",J="pnpm-lock.yaml",$="bun.lockb",C="bun.lock",V="pnpm-workspace.yaml",ke=[N,J,j,$,C],we={yarn:[N],npm:[j],pnpm:[J],bun:[$,C],homebrew:[],unknown:[]},E=["yarn","npm","pnpm","bun","homebrew","unknown"],_=class extends u{constructor(){super("Unknown package manager")}},y=class extends u{constructor(n){super(s`The directory ${o.path(n)} doesn't have a package.json.`)}},P=class extends T{constructor(n){super(s`Couldn't find a a package.json traversing directories from ${o.path(n)}`)}};function A(e=process.env){return e.npm_config_user_agent?.includes("yarn")?"yarn":e.npm_config_user_agent?.includes("pnpm")?"pnpm":e.npm_config_user_agent?.includes("bun")?"bun":e.npm_config_user_agent?.includes("npm")?"npm":"unknown"}function U(e){return i(c(e,$))||i(c(e,C))}function G(e){switch(e){case"yarn":case"npm":case"pnpm":case"bun":return e;case"homebrew":case"unknown":return"npm"}}function K(e,n,...a){switch(e){case"npm":return{command:"npm",args:["exec","--",n,...a]};case"pnpm":return{command:"pnpm",args:["exec",n,...a]};case"yarn":return{command:"yarn",args:["run",n,...a]};case"bun":return{command:"bun",args:["x",n,...a]}}}async function F(e){let n=e;for(d(s`Looking for a lockfile in ${o.path(n)}...`);;){if(i(c(n,N)))return"yarn";if(i(c(n,J))||i(c(n,V)))return"pnpm";if(U(n))return"bun";if(i(c(n,j)))return"npm";let r=k(n);if(r===n)break;n=r}let a=A();return a!=="unknown"?a:"npm"}async function he(e,n,...a){let r=G(await F(e));return K(r,n,...a)}async function ye(e){let n=await D(c(e.directory,"**/package.json"),{ignore:[c(e.directory,"node_modules/**/package.json")],cwd:e.directory,onlyFiles:!0,deep:e.deep}),a=new O;try{await Promise.all(n.map(async r=>{let t=k(r);await z({directory:t,packageManager:e.packageManager,stdout:void 0,stderr:void 0,signal:a.signal,args:[]})}))}catch(r){throw a.abort(),r}}async function z(e){let n={cwd:e.directory,stdin:void 0,stdout:e.stdout,stderr:e.stderr,signal:e.signal},a=["install"];e.args&&(a=a.concat(e.args)),await h("cmd_all_timing_network_ms")(async()=>{await v(e.packageManager,a,n)})}async function xe(e){return(await f(e)).name}async function be(e){return(await f(e)).version}async function H(e){let n=await f(e),a=n.dependencies??{},r=n.devDependencies??{};return{...a,...r}}async function ve(e){let n=c(e,"package.json"),a=await f(n),r=c(e,V);return!!a.workspaces||w(r)}async function Me(e,n,{cacheExpiryInHours:a=0}={}){let r=async()=>(d(s`Checking if there's a version of ${e} newer than ${n}`),ne(e)),t=`npm-package-${e}`,p;try{p=await W(t,r,a*3600*1e3)}catch{return}if(p&&new l.SemVer(n).compare(p)<0)return p}function _e(e,n){let a=`npm-package-${e}`,r=B(a)?.value;if(r&&new l.SemVer(n).compare(r)<0)return r}function Pe(e,n){return(0,l.satisfies)(e,n)}async function f(e){if(!await w(e))throw new y(k(e));return M(await x(e),e)}async function Y(e,n){d(s`Adding the following dependencies if needed:
|
|
3
3
|
${o.json(e)}
|
|
4
4
|
With options:
|
|
5
5
|
${o.json(n)}
|
|
6
|
-
`);let a=c(n.directory,"package.json");if(!await w(a))throw new y(n.directory);let r=Object.keys(await H(a)),t=e.filter(p=>!r.includes(p.name));t.length!==0&&await q(t,n)}async function q(e,n){let a=e.map(r=>r.version?`${r.name}@${r.version}`:r.name);switch(n.stdout?.write(`Installing ${a.join(" ")} with ${n.packageManager}`),n.packageManager){case"npm":for(let r of a)await m(n,Q(r,n.type));break;case"yarn":await m(n,X(a,n.type,!!n.addToRootDirectory));break;case"pnpm":await m(n,Z(a,n.type,!!n.addToRootDirectory));break;case"bun":await m(n,ee(a,n.type)),await m(n,["install"]);break;case"homebrew":throw new u("Homebrew can't be used to install project dependencies. Use npm, yarn, pnpm, or bun.");case"unknown":throw new _}}async function m(e,n){return h("cmd_all_timing_network_ms")(async()=>v(e.packageManager,n,{cwd:e.directory,stdout:e.stdout,stderr:e.stderr,signal:e.signal}))}async function Ne(e,n){await Y(e.map(a=>({name:a,version:void 0})),n)}function Q(e,n){let a=["install"];switch(a=a.concat(e),n){case"dev":a.push("--save-dev");break;case"peer":a.push("--save-peer");break;case"prod":a.push("--save-prod");break}return e.match(/@\d/g)&&a.push("--save-exact"),a}function X(e,n,a=!1){let r=["add"];switch(a&&r.push("-W"),r=r.concat(e),n){case"dev":r.push("--dev");break;case"peer":r.push("--peer");break;case"prod":r.push("--prod");break}return r}function Z(e,n,a=!1){let r=["add"];switch(a&&r.push("-w"),r=r.concat(e),n){case"dev":r.push("--save-dev");break;case"peer":r.push("--save-peer");break;case"prod":r.push("--save-prod");break}return r}function ee(e,n){let a=["add"];switch(a=a.concat(e),n){case"dev":a.push("--development");break;case"peer":a.push("--optional");break;case"prod":break}return a}async function je(e){let n=await S("package.json",{cwd:e,type:"file"});if(n){let a=M(await x(n),n);return{path:n,content:a}}else throw new P(e)}async function Je(e,n){let a=await F(e),r=c(e,"package.json"),t=await f(r);a==="yarn"&&(t.resolutions=t.resolutions?{...t.resolutions,...n}:n),(a==="npm"||a==="pnpm"||a==="bun")&&(t.overrides=t.overrides?{...t.overrides,...n}:n),await b(r,JSON.stringify(t,null,2))}async function ne(e){return d(s`Getting the latest version of NPM package: ${o.raw(e)}`),h("cmd_all_timing_network_ms")(async()=>{let{default:n}=await import("./latest-version-
|
|
6
|
+
`);let a=c(n.directory,"package.json");if(!await w(a))throw new y(n.directory);let r=Object.keys(await H(a)),t=e.filter(p=>!r.includes(p.name));t.length!==0&&await q(t,n)}async function q(e,n){let a=e.map(r=>r.version?`${r.name}@${r.version}`:r.name);switch(n.stdout?.write(`Installing ${a.join(" ")} with ${n.packageManager}`),n.packageManager){case"npm":for(let r of a)await m(n,Q(r,n.type));break;case"yarn":await m(n,X(a,n.type,!!n.addToRootDirectory));break;case"pnpm":await m(n,Z(a,n.type,!!n.addToRootDirectory));break;case"bun":await m(n,ee(a,n.type)),await m(n,["install"]);break;case"homebrew":throw new u("Homebrew can't be used to install project dependencies. Use npm, yarn, pnpm, or bun.");case"unknown":throw new _}}async function m(e,n){return h("cmd_all_timing_network_ms")(async()=>v(e.packageManager,n,{cwd:e.directory,stdout:e.stdout,stderr:e.stderr,signal:e.signal}))}async function Ne(e,n){await Y(e.map(a=>({name:a,version:void 0})),n)}function Q(e,n){let a=["install"];switch(a=a.concat(e),n){case"dev":a.push("--save-dev");break;case"peer":a.push("--save-peer");break;case"prod":a.push("--save-prod");break}return e.match(/@\d/g)&&a.push("--save-exact"),a}function X(e,n,a=!1){let r=["add"];switch(a&&r.push("-W"),r=r.concat(e),n){case"dev":r.push("--dev");break;case"peer":r.push("--peer");break;case"prod":r.push("--prod");break}return r}function Z(e,n,a=!1){let r=["add"];switch(a&&r.push("-w"),r=r.concat(e),n){case"dev":r.push("--save-dev");break;case"peer":r.push("--save-peer");break;case"prod":r.push("--save-prod");break}return r}function ee(e,n){let a=["add"];switch(a=a.concat(e),n){case"dev":a.push("--development");break;case"peer":a.push("--optional");break;case"prod":break}return a}async function je(e){let n=await S("package.json",{cwd:e,type:"file"});if(n){let a=M(await x(n),n);return{path:n,content:a}}else throw new P(e)}async function Je(e,n){let a=await F(e),r=c(e,"package.json"),t=await f(r);a==="yarn"&&(t.resolutions=t.resolutions?{...t.resolutions,...n}:n),(a==="npm"||a==="pnpm"||a==="bun")&&(t.overrides=t.overrides?{...t.overrides,...n}:n),await b(r,JSON.stringify(t,null,2))}async function ne(e){return d(s`Getting the latest version of NPM package: ${o.raw(e)}`),h("cmd_all_timing_network_ms")(async()=>{let{default:n}=await import("./latest-version-6OAYLOBL.js");return n(e)})}async function $e(e,n){d(s`JSON-encoding and writing content to package.json at ${o.path(e)}...`);let a=c(e,"package.json");await b(a,JSON.stringify(n,null,2))}function Ce(e,n=process.env){if(e&&E.includes(e))return e;let a=A(n);if(a!=="unknown")return a;let r=L();return r!=="unknown"?r:"npm"}export{N as a,j as b,J as c,$ as d,V as e,ke as f,we as g,E as h,_ as i,y as j,P as k,A as l,F as m,he as n,ye as o,z as p,xe as q,be as r,H as s,ve as t,Me as u,_e as v,Pe as w,f as x,Y as y,q as z,Ne as A,je as B,Je as C,$e as D,Ce as E};
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import{a as U,b as xt}from"./chunk-3VZEETAV.js";import{A as gt,C as _e,D as ae,E as A,F as ce,H as yt,J as Et,a as nt,b as rt,e as W,f as M,i as at,k as ct,m as lt,n as dt,o as pt,r as ut,t as mt,u as ht,v as ie,w as $,y as ft}from"./chunk-IOQQUHST.js";import{a as N,l as ot,m as it}from"./chunk-MZJRNFAU.js";import{n as oe,o as O}from"./chunk-HHXHOQQP.js";import{aa as st}from"./chunk-IWCPQD7X.js";import{va as L,xa as H}from"./chunk-4V4DQ6W7.js";import{b as Qe}from"./chunk-JUVAGMIH.js";import{P as tt,u as Ke,w as _,x as te,y as et}from"./chunk-MGL4YM3S.js";import{d as se}from"./chunk-BHWEA4V2.js";import{Fb as q,Hb as ne,Mb as re,O as Ve,Pb as F,Qb as D,Ta as v,Wa as C,_ as $e,bb as ke,ma as k,ua as be,wa as Xe,ya as Ze}from"./chunk-VPL2NDH6.js";import{d as E,g as V,j as Ge,k as j}from"./chunk-IU2ZQ6TE.js";import{e as Ye,g as h}from"./chunk-VPRTJUIN.js";h();h();h();var ns=".shopifyignore",Rt=/templates\/\*(\.(json|liquid))?$/,Tt=new Set;function Le(e,t={}){let s=t.ignoreFromFile??[],n=t.ignore??[],r=t.only??[],[o=[],i=[]]=Ie(s),[a=[],u=[]]=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)))),u.length>0&&(l=l.concat(e.filter(B(u,"--ignore",!0)))),c.length>0&&(l=l.filter(B(c,"--only"))),Ve(l,f=>f.key)}function B(e,t,s=!1){return({key:n})=>{if(e.length===0)return!0;let r=e.some(i=>rs(n,i)||as(i)&&is(n,cs(i)));return(s?!r:r)?(F(`Ignoring theme file ${n} via ${t}...`),!1):!0}}async function wt(e){let t=E(e,ns);return await v(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 rs(e,t){let s={matchBase:!0,noglobstar:!0};return ke(e,t,s)?!0:(!t.includes("*")&&t.endsWith("/")&&!Tt.has(t)&&(Tt.add(t),_({headline:"Directory pattern may be misleading.",body:`For more reliable matching, consider using "${t}*" or "${t}*.<file_extension>" instead.`})),os(t)?ke(e,t.replace(Rt,"templates/**/*$1"),s):!1)}function os(e){return Rt.test(e)}function is(e,t){return t.test(e)}function as(e){return e.startsWith("/")&&e.endsWith("/")}function cs(e){return new RegExp(e.slice(1,-1))}h();import St 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 St.writeFile(this.notifyPath,t),await St.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}}};h();h();h();import ls from"node:events";var Ft=["assets/**/*.*","locales/**/*.json","blocks/**/*.liquid","snippets/**/*.liquid"];function vt(e){let t=new Map,s=new Set,n=new ls,r=(c,l)=>{n.emit(c,l)},o=async c=>{let l=await pe(e,c),p=de(c,l),f=typeof l=="string"?l:"",x=Buffer.isBuffer(l)?l.toString("base64"):"";return t.set(c,N({key:c,checksum:p,value:f,attachment:x})),l},i=C(Ft,{cwd:e,deep:3,ignore:O}).then(c=>Promise.all(c.map(o))),a=(c,l)=>{let p=V(e,l),f=o(p).then(()=>{let x=t.get(p);return s.add(x.key),x.value??x.attachment??""});tt(5).then(()=>{s.delete(p)}).catch(()=>{}),r(c,{fileKey:p,onContent:x=>{f.then(P=>{P&&x(P)}).catch(()=>{})},onSync:x=>{}})},u=c=>{let l=V(e,c);s.delete(l),t.delete(l),r("unlink",{fileKey:l,onSync:p=>p()})},m=new Set(Ft.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-G4ONJSK4.js");c.watch([...m],{ignored:O,persistent:!process.env.SHOPIFY_UNIT_TEST,ignoreInitial:!0}).on("add",a.bind(null,"add")).on("change",a.bind(null,"change")).on("unlink",u.bind(null))}}}h();h();var ds="https://unpkg.com/@shopify/polaris@13.9.2/build/esm/styles.css";function Pt(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function $t(e){return(0,String.raw)`<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>${e.title}</title>
|
|
5
|
+
<link rel="stylesheet" href="${ds}" />
|
|
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">${Pt(s.message)}</span>
|
|
57
|
+
<ul class="Polaris-List">
|
|
58
|
+
<li class="Polaris-List__Item">${Pt(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>`}h();h();var ps=/<head(\s[^>]*)?>/i,je="https://cdn.shopify.com/storefront",us=`${je}/standard-events.js`,ms=`${je}/standard-events.dev.js`,bt=`${je}/standard-events-inspector.js`,kt="shopify-cli-standard-events-inspector",hs=new RegExp(`<script\\b[^>]*(?:\\bid=["']${qe(kt)}["']|\\bsrc=["']${qe(bt)}["'])[^>]*>`,"i"),fs=new RegExp(qe(us),"g");function ue(e){return hs.test(e)?e:e.replace(ps,t=>`${t}<script id="${kt}" src="${bt}" defer></script>`)}function _t(e){return e.replace(fs,ms)}function qe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}h();var It=80;function X(e,t,s){if(!gs(e)||s.type==="theme-extension")return;let n=e.path.length>It?`${e.path.substring(0,It)}...`:e.path,o=t.headers.get("server-timing")?.match(/cfRequestDuration;dur=([\d.]+)/)?.[1],i=o?`${Math.round(Number(o))}ms`:"",a=ys(t.status),u=e.method.padStart(6);re(ne`• ${oe.format(new Date)} Request ${q.raw("\xBB")} ${u} ${a(String(t.status))} ${n} ${q.gray(i)}`)}function gs(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=j(n);return!s.includes(r)}function ys(e){return e<300?q.green:e<400?q.yellow:q.errorText}var J="/cdn/",z="/ext/cdn/",Ce="/api/collect",Es=/^\/cart\//,Lt=/^\/checkouts\/(?!internal\/)/,xs=/^\/account(\/login\/multipass(\/[^/]+)?|\/logout)?\/?$/,Ts=new RegExp(`^${J}`),Rs=new RegExp(`^${z}`),ws=/^\/api\/(unstable|\d{4}-\d{2})\/graphql\.json/,Ss=["/.well-known","/shopify/monorail","/mini-profiler-resources","/web-pixels-manager","/web-pixels@","/wpm","/services/",Ce,"/cdn-cgi/challenge-platform"],qt="_shopify_essential",Fs=new RegExp(`${qt}=([^;]*)(;|$)`);function jt(e,t){return $(async s=>{if(Ss.some(n=>s.path.startsWith(n)))return null;if(vs(s)){let n=s.path.split("?")[0]??"";return He(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(Es)||e.path.match(Lt)||e.path.match(xs)||e.path.match(Ts)||e.path.match(Rs))return!0;let[t]=e.path.split("?"),s=j(t),n=e.headers.get("accept")??"*/*";return s===".html"||n.includes("text/html")?!1:!!s||n!=="*/*"}function me(e){return e.session.storeFqdn.replace(/\\/g,"\\\\").replace(/\./g,"\\.")}function Ps(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/"),u=new Set([...t.localThemeFileSystem.files.keys()].filter(a)),m=new Set([...t.localThemeExtensionFileSystem.files.keys()].filter(a));return s=s.replace(i,(c,l,p)=>{let f=p&&u.has(p),x=p&&m.has(p)&&l.startsWith("extensions/");return U(p).startsWith("image/")?c:x?`${z}${l}`:f?`${J}${l}`:c}),t.options.standardEventsDevBundle&&(s=_t(s)),s}function $s(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 bs(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=At(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=$s(i,e),e.options.standardEventsInspector&&(i=ue(i)),s&&(i=s(i)??i),new Response(i,n)}var Ct=["connection","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade","expect","content-security-policy","host"];function At(e,t){let s=new Response(t.body,t);s.headers.delete("content-length"),s.headers.delete("content-encoding");for(let i of Ct)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");Lt.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",bs(o,e).join(","));let i=o.join(",").match(Fs)?.[1];i&&(e.session.sessionCookies[qt]=i)}return s}function Ae(e){let t=at(e);for(let n of Ct)delete t[n];delete t["upgrade-insecure-requests"];let s=ct(e);return s&&(t["X-Forwarded-For"]=s),t}function He(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=lt(e),i=Ae(e);return Ps(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=rt({...i,...nt(),referer:r.origin,Cookie:yt(t.session,{headers:i}),...t.type==="theme"?{Authorization:`Bearer ${t.session.storefrontToken}`}:{}})),fetch(r,{method:e.method,body:o,duplex:o?"half":void 0,redirect:"manual",headers:i}).then(a=>At(t,a)).catch(a=>{throw ae(L(a),r)})}var De=0,ks=5;function Dt(e,t){return $(s=>{let[n="/",r=""]=s.path.split("?");return Is(s)&&(t.lastRequestedPath=s.path),t.options.errorOverlay!=="silent"&&t.localThemeFileSystem.uploadErrors.size>0?Ht(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:Ae(s),replaceExtensionTemplates:fe(t),replaceTemplates:Oe(t,n,dt(s,"localization")?.toLowerCase())}).then(async i=>{if(i.status>=400&&i.status<500&&!_s(s)){let a=await Ls(s,t,i);if(a)return X(s,a,t),a}return X(s,i,t),Q(t,i,a=>(qs(i,a,String(e.id)),De=0,Ne(a,t)))}).catch(async i=>{if(i instanceof he&&(F(`Theme ID mismatch: expected ${i.getExpectedThemeId()} but got ${i.getActualThemeId()}; refreshing session...`),H("theme-service:error-page:theme-id-mismatch"),t.session.refresh)){De++,De>ks&&(et(new se(i.getMessage())),process.exit(1)),await t.session.refresh();let f=new URLSearchParams(r),x=new URLSearchParams([...f].filter(([ve])=>!ve.startsWith("__sfr"))),P=n+(x.toString()?`?${x}`:"");return new Response(null,{status:302,headers:{Location:P}})}let{status:a,statusText:u,cause:m,...c}=A(i,"Failed to render storefront"),[l,...p]=c.headline.split(`
|
|
71
|
+
`);return te(c),Ht(t,{status:a,statusText:u},{title:l,header:l,errors:[{message:[...p,m.message].join("<br>"),code:m.stack?.replace(`${m.message}
|
|
72
|
+
`,"")??""}]})})})}function Ht(e,t,s){let n=Ne($t(s),e);return e.options.standardEventsInspector&&(n=ue(n)),H("theme-service:error-page:rendered"),new Response(n,{...t,headers:t.headers??{"Content-Type":"text/html; charset=utf-8"}})}function _s(e){let t=new URLSearchParams(e.path.split("?")[1]);return["section_id","sections","app_block_id"].some(s=>t.has(s))}function Is(e){return e.headers.get("sec-fetch-mode")==="navigate"}async function Ls(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 He(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 qs(e,t,s){let n=t.match(/Shopify\.theme\s*=\s*{[^}]+?"id":\s*"?(\d+)"?(}|,)/)?.[1];if(n&&n!==s)throw new he(s,n,e)}var he=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}};h();h();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)}h();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 js={stylesheet:new Map,javascript:new Map};function Ot(e,t){return $(async s=>{if(s.method!=="GET")return;if(Ds(s,t))return Os(s,t);let{file:n,fileKey:r,isUnsynced:o}=Hs(s,t);if(!r)return;let i=U(r);if(i.startsWith("image/")&&s.path.includes("&")&&!o)return;if(ut(s,"X-Local-Asset","true"),!n){o&&M(s,W({statusCode:404,statusMessage:"Not found"}));return}let a=n.value?Buffer.from(Z(n.value,t)):Buffer.from(n.attachment??"","base64");return ie(s,{getContents:()=>a,getMeta:()=>({type:i,size:a.length,mtime:n.stats?.mtime})})})}var Cs=/^(?:\/cdn\/(?!extensions\/).*?)?\/assets\/([^?]+)/,As=/^(?:\/(?:ext\/)?cdn\/extensions\/.*?)?\/assets\/([^?]+)/;function Hs(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),u=r.unsyncedFileKeys.has(i);if(a||u)return{file:a,isUnsynced:u,fileKey:i}}};return s(Cs,t.localThemeFileSystem)??s(As,t.localThemeExtensionFileSystem)??{isUnsynced:!1,fileKey:void 0,file:void 0}}function Ds(e,t){return t.type==="theme"&&e.path.includes("/compiled_assets")}function Os(e,t){switch(ye(e).pathname.split("/").at(-1)){case"styles.css":return Ns(t,e);case"block-scripts.js":return We(t,e,"block");case"snippet-scripts.js":return We(t,e,"snippet");case"scripts.js":return We(t,e,"section");case void 0:break;default:break}}function Ns(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 u=Nt(a,"stylesheet");u&&o.push(u)}let i=o.join(`
|
|
75
|
+
`);return ie(t,{getContents:()=>i,getMeta:()=>({type:"text/css",size:Buffer.byteLength(i),mtime:new Date})})}function We(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,u]of n){let m=a.split("/").pop()?.replace(".liquid",""),c=Nt(u,"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 ie(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 Nt(e,t){let s=js[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}}h();import*as Wt from"node:os";function Ws(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(Wt.networkInterfaces()))for(let a of i??[]){let u=a.address.toLowerCase().split("%")[0],c=a.family==="IPv6"?`[${u}]`:u;s.add(`${c}${n}`)}return s}function Ms(e){if(e)return e.toLowerCase().replace(/\.(?=:\d|$)/,"")}function Mt(e,t){let s=Ws(e,t);return $(n=>{let r=n.node.req.headers.host,o=Ms(r);if(!o||!s.has(o))return M(n,W({statusCode:400,statusMessage:"Bad Request",message:"Invalid Host header"}))})}h();function Ut(){return Bt()}function qr(){return Bt()}function Bt(){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 Us}from"node:http";async function zr(e,t){let s=await Js(e,t);return await zs(e,s),Bs(e,s)}function Bs(e,t){let s=ft();s.use(Mt(t.options.host,t.options.port)),s.use(Jt(e,t)),s.use(Ot(e,t)),s.use(jt(e,t)),s.use(Dt(e,t));let n=Us(gt(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 Js(e,t){let{adminSession:s,storefrontPassword:n,themeExtensionPort:r,themeExtensionDirectory:o}=t,i="127.0.0.1",a=r??9293,u=Ut(),m=vt(o);return await m.ready(),{session:await Et(e.id.toString(),s,void 0,n),localThemeFileSystem:u,localThemeExtensionFileSystem:m,directory:o,type:"theme-extension",lastRequestedPath:"",options:{themeEditorSync:!1,noDelete:!1,ignore:[],only:[],host:i,port:a,liveReload:"hot-reload",standardEventsDevBundle:!1,standardEventsInspector:!1,open:!1,errorOverlay:"default"}}}async function zs(e,t){let s=t.localThemeExtensionFileSystem,n=({fileKey:r,onContent:o,onSync:i})=>{o(()=>{xe(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 fe(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 we=Ye(st(),1);import Ys from"node:events";var Me=new Map,K=new Map;function zt(e,t){let s=(0,we.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 Ue(e){return!e.startsWith("assets/")&&[".liquid",".json"].includes(j(e))}function Oe(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$/,u=!!s&&(e.localThemeFileSystem.files.has(`locales/${s}.json`)||e.localThemeFileSystem.files.has(`locales/${s}.default.json`));for(let m of e.localThemeFileSystem.unsyncedFileKeys)if(Ue(m)){if(i&&r.test(m)){if(m!==o)continue}else if(a.test(m)){if(u){if(!m.startsWith(`locales/${s}.`))continue}else if(!m.includes(".default."))continue}n[m]=e.localThemeFileSystem.files.get(m)?.value??""}return n}function co(e,t){let s=({fileKey:r,onContent:o,onSync:i})=>{let a=j(r);o(u=>{!Qs(r)&&Ue(r)&&a===".json"&&zt(r,u),xe(e,t,i,{type:"update",key:r,payload:Xs(r,t)})})},n=({fileKey:r,onSync:o})=>{K.delete(r),xe(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"&&zt(o,a)}else o.endsWith(".liquid")&&Xt(i)}))})}var Gs="1",Gt=new Ys;function Re(e){Gt.emit("hot-reload",{...e,version:Gs})}function Jt(e,t){return $(s=>{let n=s.headers.get("accept")==="text/event-stream",r=ye(s).searchParams;if(n){let o=ht(s);return Gt.on("hot-reload",i=>{o.push(JSON.stringify(i)).catch(a=>{_({headline:"Failed to send HotReload event.",body:a.stack})})}),Re({type:"open",pid:String(process.pid),themeId:String(e.id)}),o.send().then(()=>o.flush())}if(r.has("hr-log")){let o=(0,we.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"?Ke(o):_({headline:`Unknown HotReload log type: ${o.type}`})),null}if(s.path===Vt)return k(Se()).then(o=>pt(s,o,"application/javascript")).catch(o=>M(s,W({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")??"",u=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 p=t.localThemeFileSystem.files.get(o)?.value;if(!p)return"";c[o]=p}for(let p of l)if(p.endsWith(".json")){for(let[f,x]of K.get(p)??[])if(i.endsWith(`__${x}`)){let P=t.localThemeFileSystem.files.get(p)?.value;P&&(c[p]=P);continue}}}return ce(t.session,{method:s.method,path:u??"/",query:[...m.entries()],themeId:String(e.id),sectionId:i,appBlockId:a,replaceTemplates:c,headers:mt(s),replaceExtensionTemplates:fe(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:p,statusText:f,...x}=A(L(l),"Failed to render section on Hot Reload");return H("theme-service:hot-reload:section:render-error"),a||_(x),new Response(null,{status:p,statusText:f})})}})}var ee=(e,t)=>Re({themeId:String(e),type:"full",key:t});function xe(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);Re({sync:"local",themeId:o,...n}),s(()=>Re({sync:"remote",themeId:o,...n}),r)}function Vs(e,t){let s=new Set;if(e.endsWith(".json")){let n=t.localThemeFileSystem.files.get(e)?.value;if(n){let r=(0,we.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 Xs(e,t){let[s]=e.split("/"),n=t.localThemeFileSystem.files.get(e);return{sectionNames:s==="sections"?Vs(e,t):[],replaceTemplates:Ue(e)?Oe(t):{},updatedFileParts:n&&Xt(n)}}var Te="hot-reload-client",Zs="/cdn/shopifycloud/theme-hot-reload/theme-hot-reload.js",Yt=new RegExp(`<script id="${Te}"[^>]*>[^<]*</script>`),Vt="/@shopify/theme-hot-reload";function Ne(e,t){return t.options.liveReload==="off"?e.replace(Yt,""):process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD?e.replace(Yt,"").replace(/<\/head>/,`<script id="${Te}" src="${Vt}" defer></script></head>`):e.includes(`<script id="${Te}"`)?e:e.replace(/<\/head>/,`<script id="${Te}" src="${Zs}" defer></script></head>`)}function Qs(e){return e.startsWith("assets/")}function Xt(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=Me.get(e.key);if(o?.checksum===e.checksum||(Me.delete(e.key),!e.value))return n;let i=["stylesheet","javascript","schema"],a=c=>c?.replace(/\s+/g," ").trim(),u=e.value,m=(c,l)=>{u=u.replace(l,"");let p=a(l),f=`${c}Tag`;n[f]=!o||p!==o[f],r[f]=p};for(let c of i){let l=ge(e.value??"",c);l&&m(c,l)}return u=a(u.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=u,n.liquid=!o||u!==o.liquid,Me.set(e.key,r),n}h();var Zt=Ye(st(),1);function Ks(e){return(e.startsWith("templates/")||e.startsWith("sections/"))&&e.endsWith(".json")}async function Qt(e,t,s){if(Ks(s)){let n=E(e,"listings",t,s);if(await v(n))return n}}async function Kt(e,t){let s=E(e,"config","settings_data.json"),n=await k(s,{encoding:"utf8"}),r=(0,Zt.parseJSON)(n,null,!0);return r?(r.current=$e(t),JSON.stringify(r,null,2)):n}async function go(e,t){let s=E(e,"listings"),n=E(s,t);if(await v(n))return;let o=[];await v(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 en from"node:events";import{fileURLToPath as tn}from"node:url";var sn=250,es=["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 Co(e,t){let s=new Map,n=new Map,r=new Set,o={ignoreFromFile:[],ignore:t?.filters?.ignore??[],only:t?.filters?.only??[]},i=new en,a=(d,g)=>{i.emit(d,g)},u=t?.notify?new le(t.notify):void 0,m=async d=>{let g=t?.listing?await rn(e,d,t.listing):await pe(e,d),y=de(d,g);return s.set(d,N({key:d,checksum:y,value:typeof g=="string"?g:"",attachment:Buffer.isBuffer(g)?g.toString("base64"):""})),g},c=C(es,{cwd:e,deep:3,ignore:O}).then(d=>Promise.all([wt(e),...d.map(m)])).then(([d])=>{Array.isArray(d)&&o.ignoreFromFile.push(...d)}),l=d=>V(e,d),p=d=>Le([{key:d}],o).length===0;function f(d,g,y,T){if(process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD&&T===Se()){ee(g,T);return}let w=l(T);if(t?.listing&&w.startsWith(`listings/${t.listing}/`)){let R=w.replace(`listings/${t.listing}/`,"");if(R.startsWith("templates/")||R.startsWith("sections/"))w=R;else return}x(w).then(()=>{switch(d){case"add":case"change":return P(d,g,y,w);case"unlink":return ve(g,y,w,n)}}).catch(R=>{D(`Error handling file event for ${w}: ${R}`)})}function x(d){return u?.notify(d)??Promise.resolve()}let P=(d,g,y,T)=>{if(p(T))return;let w=s.get(T)?.checksum,R=m(T).then(async()=>{let S=s.get(T);if(S)return S.checksum!==w&&r.add(T),{value:S.value||void 0,attachment:S.attachment}}),I=R.then(S=>{if(S)return nn(r,n,T,g,y)(S)}).catch(_e(T,"upload"));a(d,{fileKey:T,onContent:S=>{R.then(Y=>{r.has(T)&&S(Y?.value??Y?.attachment??"")}).catch(()=>{})},onSync:(S,Y)=>{I.then(G=>{G?S():Y?.()}).catch(()=>{})}})},ve=(d,g,y,T)=>{if(p(y))return;T.delete(y),s.delete(y),r.add(y);let w=t?.noDelete?Promise.resolve():ot(Number(d),[y],g).then(async R=>{if(!R[0]?.success)throw new Error(`Failed to delete file "${y}" from remote theme.`);return r.delete(y),ts("delete",y),!0}).catch(R=>(_e(y,"delete")(R),!1));a("unlink",{fileKey:y,onSync:R=>{w.then(I=>{I&&R()}).catch(()=>{})}})},Pe=new Set(es.map(d=>E(e,d.split("/").shift()??"")));return t?.listing&&Pe.add(E(e,"listings",t.listing)),process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD&&Pe.add(Se()),{root:e,files:s,unsyncedFileKeys:r,uploadErrors:n,ready:()=>c,delete:async d=>{s.delete(d),await on(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),T=E(e,y),w=await v(T);s.set(d.key,N({key:d.key,checksum:d.checksum,value:d.value??"",attachment:d.attachment??""})),w?await Be(e,{...d,key:y}):await Be(e,d);return}s.set(d.key,N({key:d.key,checksum:d.checksum,value:d.value??"",attachment:d.attachment??""})),await Be(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-G4ONJSK4.js"),T=y.watch([...Pe],{ignored:O,persistent:!process.env.SHOPIFY_UNIT_TEST,ignoreInitial:!0}),w=new Map,R=(I,S)=>{let G=`${l(S)}:${I}`,ze=w.get(G);ze&&clearTimeout(ze);let ss=setTimeout(()=>{w.delete(G),f(I,d,g,S)},sn);w.set(G,ss)};T.on("add",R.bind(null,"add")).on("change",R.bind(null,"change")).on("unlink",R.bind(null,"unlink")).on("error",I=>{D(`File watcher error: ${I}`),L("theme-service:file-watcher:error")})}}}function nn(e,t,s,n,r){return async o=>{if(!e.has(s))return!1;let[i]=await it(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),ts("update",s),!0}}async function Be(e,{key:t,attachment:s,value:n}){let r=E(e,t);if(await an(r),s){let o=Buffer.from(s,"base64");await be(r,o,{encoding:"base64"})}else await be(r,n??"")}async function pe(e,t){let s=Fe(t)?{encoding:"utf8"}:{},n=E(e,t);if(!await v(n)){F(`File ${n} can't be read because it doesn't exist...`);return}return k(n,s)}async function rn(e,t,s){if(t==="config/settings_data.json")return Kt(e,s);let n=await Qt(e,s,t);if(n){let r=Fe(t)?{encoding:"utf8"}:{};return k(n,r)}return pe(e,t)}async function on(e,t){let s=E(e,t);if(!await v(s)){F(`File ${s} can't be removed because it doesn't exist...`);return}await Ze(s)}function Ao(e){let t=[],s=[],n=[],r=[],o=[],i=[],a=[],u=[],m=[],c=[],l=[];return e.forEach(p=>{let f=p.key;f.endsWith(".liquid")?b.sectionLiquidRegex.test(f)?t.push(p):b.blockLiquidRegex.test(f)?c.push(p):b.layoutLiquidRegex.test(f)?l.push(p):s.push(p):b.configSchemaRegex.test(f)?a.push(p):b.configDataRegex.test(f)?u.push(p):b.jsonRegex.test(f)?b.contextualizedJsonRegex.test(f)?i.push(p):b.sectionJsonRegex.test(f)?n.push(p):b.templateJsonRegex.test(f)?r.push(p):o.push(p):b.staticAssetRegex.test(f)&&m.push(p)}),{sectionLiquidFiles:t,otherLiquidFiles:s,sectionJsonFiles:n,templateJsonFiles:r,contextualizedJsonFiles:i,otherJsonFiles:o,configSchemaFile:a,configDataFile:u,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 Ho(e){let t=new Set(await C("*",{cwd:e,deep:1,onlyDirectories:!0}));return["config","layout","sections","templates"].every(n=>t.has(n))}async function an(e){let t=cn(e);await v(t)||await Xe(t)}function cn(e){let t=Ge(e),s=e.lastIndexOf(t);return e.substring(0,s)}function ts(e,t){re(ne`• ${oe.format(new Date)} Synced ${q.raw("\xBB")} ${e} ${t}`)}function Se(){let e=process.env.SHOPIFY_CLI_LOCAL_HOT_RELOAD;return!e||e==="true"?E(tn(import.meta.url.split("/cli/")[0]??""),"theme-hot-reload/dist/theme-hot-reload.js"):e}function de(e,t){return t?Buffer.isBuffer(t)?Je(t):un(e)?ln(t):dn(e,t):""}function ln(e){let t=e;return t=t.replace(/\r\n/g,`
|
|
101
|
+
`),t=t.replace(/\/\*[\s\S]*?\*\//,""),t=pn(t),Je(t)}function dn(e,t){let s=t;return Fe(e)&&(s=s.replace(/\r\n/g,`
|
|
102
|
+
`)),Je(s)}function pn(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 Je(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e);return Qe(t)}function Mo(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 un(e){return e.endsWith("/settings_data.json")}export{Mo as a,jt as b,Dt as c,Ot as d,Mt as e,qr as f,zr as g,co as h,Jt as i,ee as j,go as k,Co as l,Ao as m,Ho as n};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as D,h as A,i as _}from"./chunk-HSYRYSX4.js";import{a as g,d as C,g as I}from"./chunk-IWE4RUI7.js";import{a as O}from"./chunk-T5MK7ZSF.js";import{a as y}from"./chunk-DCK2FX6J.js";import{b as S}from"./chunk-N5ROZKPZ.js";import{z as k}from"./chunk-4V4DQ6W7.js";import{b as N}from"./chunk-4KRT35A2.js";import{u as m,v as c,w as v,x as f}from"./chunk-MGL4YM3S.js";import{r as E}from"./chunk-3YWUSKWF.js";import{Fb as b,Hb as F}from"./chunk-VPL2NDH6.js";import{e as x,g as a}from"./chunk-VPRTJUIN.js";a();a();a();var h={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"BulkOperationCancel"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"id"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}}}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"bulkOperationCancel"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"id"}}}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"bulkOperation"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"completedAt"}},{kind:"Field",name:{kind:"Name",value:"createdAt"}},{kind:"Field",name:{kind:"Name",value:"errorCode"}},{kind:"Field",name:{kind:"Name",value:"fileSize"}},{kind:"Field",name:{kind:"Name",value:"id"}},{kind:"Field",name:{kind:"Name",value:"objectCount"}},{kind:"Field",name:{kind:"Name",value:"partialDataUrl"}},{kind:"Field",name:{kind:"Name",value:"query"}},{kind:"Field",name:{kind:"Name",value:"rootObjectCount"}},{kind:"Field",name:{kind:"Name",value:"status"}},{kind:"Field",name:{kind:"Name",value:"type"}},{kind:"Field",name:{kind:"Name",value:"url"}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}},{kind:"Field",name:{kind:"Name",value:"userErrors"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"field"}},{kind:"Field",name:{kind:"Name",value:"message"}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}}]}}]};var T="2026-01";async function w(t){let{organization:r,storeFqdn:n,operationId:o,remoteApp:u}=t;m({headline:"Canceling bulk operation.",body:[{list:{items:[`ID: ${o}`,...C({organization:r,remoteApp:u,storeFqdn:n})]}}]});let q=await g(u,n),l=await S({query:h,session:q,variables:{id:o},version:T});if(l.bulkOperationCancel?.userErrors?.length){A(l.bulkOperationCancel.userErrors,"Failed to cancel bulk operation.");return}let p=l.bulkOperationCancel?.bulkOperation;if(p){let i=_(p),d={headline:i.headline,...i.body&&{body:i.body},...i.customSections&&{customSections:i.customSections}};switch(i.renderType){case"success":c(d);break;case"warning":v(d);break;case"info":m(d);break}}else f({headline:"Bulk operation not found or could not be canceled.",body:F`ID: ${b.yellow(o)}`.value})}var s=x(E(),1);var B,e=class extends O{async run(){let{flags:r}=await this.parse(B),{appContextResult:n,store:o}=await I(r);return await w({organization:n.organization,storeFqdn:o.shopDomain,operationId:D(r.id),remoteApp:n.remoteApp}),{app:n.app}}};B=e;e.summary="Cancel a bulk operation.";e.description="Cancels a running bulk operation by ID.";e.flags={...N,...y,id:s.Flags.string({description:"The bulk operation ID to cancel (numeric ID or full GID).",env:"SHOPIFY_FLAG_ID",required:!0}),store:s.Flags.string({char:"s",description:"The store domain. Must be an existing dev store.",env:"SHOPIFY_FLAG_STORE",parse:async t=>k(t)})};var Z=e;export{Z as a};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{a as C}from"./chunk-T5MK7ZSF.js";import{a as E}from"./chunk-DCK2FX6J.js";import{Fa as y,W as F,X as _,Y as x}from"./chunk-WCWNI3ZV.js";import{b as I}from"./chunk-4KRT35A2.js";import{D as A,v,x as h}from"./chunk-MGL4YM3S.js";import{d as w}from"./chunk-6YAXFS6V.js";import{f as k}from"./chunk-BHWEA4V2.js";import{r as b}from"./chunk-3YWUSKWF.js";import{e as T,g as d}from"./chunk-VPRTJUIN.js";d();d();async function P(n){let{developerPlatformClient:e,app:m,remoteApp:o}=n,{extensionIdentifiersBreakdown:a,versionDetails:r}=await F(e,o,n.version),l=await _({developerPlatformClient:e,apiKey:o.apiKey,localApp:m,remoteApp:o,versionAppModules:r.appModuleVersions.map(t=>({...t})),release:!0});if(!await x({configExtensionIdentifiersBreakdown:l,extensionIdentifiersBreakdown:a,appTitle:o.title,release:!0,force:n.force,allowUpdates:n.allowUpdates,allowDeletes:n.allowDeletes}))throw new k;let f=[{title:"Releasing version",task:async t=>{t.appRelease=await e.release({app:o,version:{versionId:r.uuid,appVersionId:r.id}})}}],{appRelease:{appRelease:i}}=await A(f),u=[{link:{label:r.versionTag??void 0,url:r.location}},r.message?`
|
|
2
|
+
${r.message}`:""];if(i.userErrors&&i.userErrors.length>0){let t=i.userErrors?.map(R=>R.message).join(", ");h({headline:"Version couldn't be released.",body:[...u,`${u.length>0?`
|
|
3
|
+
|
|
4
|
+
`:""}${t}`]})}else v({headline:"Version released to users.",body:u})}var p=T(b(),1);var g,s=class extends C{async run(){let{flags:e}=await this.parse(g),m=e["client-id"];await w(()=>({cmd_app_reset_used:e.reset}));let o=e["allow-updates"],a=e["allow-deletes"],r=!!(o&&a),l=[];!o&&!a&&l.push("allow-updates"),this.failMissingNonTTYFlags(e,l);let{app:c,remoteApp:f,developerPlatformClient:i}=await y({directory:e.path,clientId:m,forceRelink:e.reset,userProvidedConfigName:e.config});return await P({app:c,remoteApp:f,developerPlatformClient:i,force:r,allowUpdates:o,allowDeletes:a,version:e.version}),{app:c}}};g=s;s.summary="Release an app version.";s.usage="app release --version <version>";s.descriptionWithMarkdown="Releases an existing app version. Pass the name of the version that you want to release using the `--version` flag.";s.description=g.descriptionWithoutMarkdown();s.flags={...I,...E,"allow-updates":p.Flags.boolean({hidden:!1,description:"Allows adding and updating extensions and configuration without requiring user confirmation. Recommended option for CI/CD environments.",env:"SHOPIFY_FLAG_ALLOW_UPDATES"}),"allow-deletes":p.Flags.boolean({hidden:!1,description:"Allows removing extensions and configuration without requiring user confirmation. For CI/CD environments, the recommended flag is --allow-updates.",env:"SHOPIFY_FLAG_ALLOW_DELETES"}),version:p.Flags.string({hidden:!1,description:"The name of the app version to release.",env:"SHOPIFY_FLAG_VERSION",required:!0})};var G=s;export{G as a};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{c as h,e as c,f}from"./chunk-HSYRYSX4.js";import{g as m}from"./chunk-IWE4RUI7.js";import{a as d}from"./chunk-T5MK7ZSF.js";import{a as u}from"./chunk-DCK2FX6J.js";import{z as n}from"./chunk-4V4DQ6W7.js";import{b as l}from"./chunk-4KRT35A2.js";import{r as k}from"./chunk-3YWUSKWF.js";import{e as g,g as p}from"./chunk-VPRTJUIN.js";p();var a=g(k(),1);var i,o=class extends d{async run(){let{flags:e}=await this.parse(i),{appContextResult:t,store:r}=await m(e);return e.id?await c({organization:t.organization,storeFqdn:r.shopDomain,operationId:h(e.id),remoteApp:t.remoteApp}):await f({organization:t.organization,storeFqdn:r.shopDomain,remoteApp:t.remoteApp}),{app:t.app}}};i=o;o.summary="Check the status of bulk operations.";o.descriptionWithMarkdown=`Check the status of a specific bulk operation by ID, or list all bulk operations belonging to this app on this store in the last 7 days.
|
|
2
|
+
|
|
3
|
+
Bulk operations allow you to process large amounts of data asynchronously. Learn more about [bulk query operations](https://shopify.dev/docs/api/usage/bulk-operations/queries) and [bulk mutation operations](https://shopify.dev/docs/api/usage/bulk-operations/imports).
|
|
4
|
+
|
|
5
|
+
Use [\`bulk execute\`](https://shopify.dev/docs/api/shopify-cli/app/app-bulk-execute) to start a new bulk operation.`;o.description=i.descriptionWithoutMarkdown();o.flags={...l,...u,id:a.Flags.string({description:"The bulk operation ID (numeric ID or full GID). If not provided, lists all bulk operations belonging to this app on this store in the last 7 days.",env:"SHOPIFY_FLAG_ID"}),store:a.Flags.string({char:"s",description:"The store domain. Must be an existing dev store.",env:"SHOPIFY_FLAG_STORE",parse:async s=>n(s)})};var A=o;export{A as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as u}from"./chunk-4EXYYBQ6.js";import{g as d}from"./chunk-VPRTJUIN.js";d();var m=!1;function v(){return m}function y(){let t=0,e=!1,i=setInterval(()=>{if(!e){if(v()||t>=12e4){e=!0,clearInterval(i),u(process.pid,"SIGINT",!1,()=>{process.exit(0)});return}t+=100}},100)}var k=async({config:a,Command:o})=>{await I(o);let t=await import("./metadata-TRH25EHU.js"),{commandStartOptions:e}=t.getAllSensitiveMetadata();e&&await t.addSensitiveMetadata(()=>({commandStartOptions:{...e,endTime:new Date().getTime()}}));let{postrun:i}=await import("./deprecations-F6JWVV2W.js");i(o);let{outputDebug:n}=await import("./output-7IYOMPSA.js"),r=o.id.replace(/:/g," ");n(`Completed command ${r}`),!r.includes("notifications")&&!r.includes("upgrade")&&await M();let{reportAnalyticsEvent:p}=await import("./analytics-CX22YIUZ.js");await p({config:a,exitMode:"ok"}),m=!0};async function M(){let{versionToAutoUpgrade:a,warnIfUpgradeAvailable:o}=await import("./upgrade-EEOPH464.js"),t=a();if(!t){await o();return}if(process.env.SHOPIFY_CLI_FORCE_AUTO_UPGRADE==="1")await l(t);else{let{runAtMinimumInterval:i}=await import("./conf-store-6QNH5BID.js");await i("auto-upgrade",{days:1},async()=>{await l(t)})}}async function l(a){let[{CLI_KIT_VERSION:o},{isMajorVersionChange:t},{outputWarn:e,outputDebug:i},{getOutputUpdateCLIReminder:n,runCLIUpgrade:r,hasBlockingAutoUpgradeNotification:p},s]=await Promise.all([import("./version-IGSEISUA.js"),import("./version-76NBQR4K.js"),import("./output-7IYOMPSA.js"),import("./upgrade-EEOPH464.js"),import("./metadata-TRH25EHU.js")]);if(t(o,a)){e(n(a,!0)),await s.addPublicMetadata(()=>({env_auto_upgrade_skipped_reason:"major_version"}));return}if(await p()){await s.addPublicMetadata(()=>({env_auto_upgrade_skipped_reason:"blocked_by_notification"}));return}try{await r({autoupgrade:!0}),await s.addPublicMetadata(()=>({env_auto_upgrade_success:!0}))}catch(f){let c=`Auto-upgrade failed: ${f}`;i(c),e(n(a)),await s.addPublicMetadata(()=>({env_auto_upgrade_success:!1}));let[{sendErrorToBugsnag:g},{inferPackageManagerForGlobalCLI:w}]=await Promise.all([import("./error-handler-V7LSEXHM.js"),import("./is-global-BLIZ57HQ.js")]),_=Object.assign(new Error(c),{packageManager:w(),platform:process.platform,cliVersion:o});await g(_,"expected_error")}}async function I(a){let o=new Date().getTime();if(a&&"analyticsStopCommand"in a&&typeof a.analyticsStopCommand=="function"){let t=a.analyticsStopCommand();if(t){let e=await import("./metadata-TRH25EHU.js"),{commandStartOptions:i}=e.getAllSensitiveMetadata();if(!i)return;await e.addSensitiveMetadata(()=>({commandStartOptions:{...i,startTime:o,startCommand:t}}))}}}export{y as a,k as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as n}from"./chunk-
|
|
1
|
+
import{b as n}from"./chunk-VEDZUOVI.js";import{u as t}from"./chunk-MGL4YM3S.js";import{k as r}from"./chunk-UARVYVLN.js";import{g as o}from"./chunk-VPRTJUIN.js";o();var e=class extends n{static{this.description="Run CLI doctor-release tests"}static{this.hidden=!0}async run(){r()&&t({headline:"Shopify CLI Doctor Release.",body:["Available doctor-release commands:",""," shopify doctor-release theme -e <environment> Run all theme command tests","","The -e/--environment flag is required to specify the store configuration.","Use --help with any command for more options."]})}};export{e as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{e as o}from"./chunk-4KRT35A2.js";import{b as s}from"./chunk-VEDZUOVI.js";import{g as e}from"./chunk-VPRTJUIN.js";e();var t=class extends s{static{this.description="Clear the CLI cache, used to store some API responses and handle notifications status"}static{this.hidden=!0}async run(){await o()}};export{t as a};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{H,S as U}from"./chunk-WCWNI3ZV.js";import{a as G}from"./chunk-VBUZWRUL.js";import{e as T}from"./chunk-VICNWPLQ.js";import{b as D,l as O,s as k}from"./chunk-MGL4YM3S.js";import{d as N}from"./chunk-BHWEA4V2.js";import{Ca as P,Pb as u,Ta as A,Ua as I,bb as _,na as R,wa as w}from"./chunk-VPL2NDH6.js";import{f as S}from"./chunk-UARVYVLN.js";import{d as x,e as E,g as F,i as C}from"./chunk-IU2ZQ6TE.js";import{e as q,g as m}from"./chunk-VPRTJUIN.js";m();function b(){return process.hrtime()}function M(r){let t=process.hrtime(r);return(t[0]*1e3+t[1]/1e6).toFixed(2)}m();m();var $=q(G(),1),K=200,Q=6e4,L=200,Y=500,v=class{constructor(t,s,i=K){this.currentEvents=[],this.extensionPaths=[],this.ignored={},this.extensionWatchedFiles=new Map,this.emitEvents=()=>{let e=this.currentEvents;this.currentEvents=[];let n=`\u{1F509} ${e.length} EVENTS EMITTED in files: ${e.map(o=>o.path).join(`
|
|
2
|
+
`)}`;u(n,this.options.stdout),this.onChangeCallback?.(e)},this.handleFileEvent=(e,n)=>{let o=b(),d=E(n),h=n===this.app.configPath,l=n.endsWith(".extension.toml");if(u(`\u{1F300}: ${e} ${n.replace(this.app.directory,"")}
|
|
3
|
+
`),h)this.handleEventForExtension(e,n,this.app.directory,o,!1);else{let a=this.extensionWatchedFiles.get(d),p=a===void 0||a.size===0;if(p&&e==="add"&&!l){let c=this.discoverFileOwners(d);c.size>0&&(this.extensionWatchedFiles.set(d,c),a=c,p=!1)}if(p&&!l&&!h){u(`\u{1F300}: File ${n} is not watched by any extension`,this.options.stdout);return}for(let c of a??[]){let g=this.app.realExtensions.find(X=>X.handle===c),y=g?E(g.directory):this.app.directory;this.handleEventForExtension(e,n,y,o,!1,c)}p&&this.handleEventForExtension(e,n,this.app.directory,o,!0)}this.debouncedEmit()},this.close=()=>{this.watcher&&(u("Closing file watcher",this.options.stdout),this.watcher.close().then(()=>u("File watching closed",this.options.stdout)).catch(e=>u(`File watching failed to close: ${e.message}`,this.options.stderr)))},this.app=t,this.options=s,this.debouncedEmit=k(this.emitEvents.bind(this),i,{leading:!0,trailing:!0}),this.updateApp(t)}onChange(t){this.onChangeCallback=t}async start(){let s=[...this.app.configuration.extension_directories??["extensions"]].map(o=>x(this.app.directory,o));await Promise.all(s.map(async o=>{try{await w(o.replace(/\/\*+$/,""))}catch{}}));let i=[this.app.configPath,...s],e=this.getAllWatchedFiles();i.push(...e),this.close();let{default:n}=await import("./chokidar-G4ONJSK4.js");this.watcher=n.watch(i,{ignored:["**/node_modules/**","**/.git/**"],persistent:!0,ignoreInitial:!0}),this.watcher.on("all",this.handleFileEvent),this.addAbortListener(),u(`File watcher started with ${i.length} paths`,this.options.stdout)}updateApp(t){this.app=t,this.extensionPaths=this.app.nonConfigExtensions.map(s=>E(s.directory)).filter(s=>s!==this.app.directory),this.extensionPaths.forEach(s=>{var i;(i=this.ignored)[s]??(i[s]=this.createIgnoreInstance(s))})}addAbortListener(){this.options.signal.removeEventListener("abort",this.close),this.options.signal.addEventListener("abort",this.close)}getAllWatchedFiles(){this.extensionWatchedFiles.clear();let t=this.app.realExtensions.map(i=>({extension:i,watchedFiles:i.watchedFiles()})),s=new Set;for(let{extension:i,watchedFiles:e}of t)for(let n of e){let o=E(n);s.add(o);let d=this.extensionWatchedFiles.get(o)??new Set;d.add(i.handle),this.extensionWatchedFiles.set(o,d)}return Array.from(s)}pushEvent(t){this.shouldIgnoreEvent(t)||(t.type==="extension_folder_created"&&(this.ignored[t.path]=this.createIgnoreInstance(t.path)),!this.currentEvents.some(s=>s.path===t.path&&s.type===t.type&&s.extensionHandle===t.extensionHandle)&&this.currentEvents.push(t))}shouldIgnoreEvent(t){if(t.type==="extension_folder_deleted"||t.type==="extension_folder_created"||t.extensionHandle&&this.extensionWatchedFiles.get(E(t.path))?.has(t.extensionHandle))return!1;let i=(t.extensionHandle?this.app.realExtensions.find(n=>n.handle===t.extensionHandle):void 0)?.watchedFiles(),e=this.ignored[t.extensionPath];if(i)return!i.some(o=>_(t.path,o));if(e){let n=F(t.extensionPath,t.path);return e.ignores(n)}return!1}discoverFileOwners(t){let s=new Set;for(let i of this.app.realExtensions){let e=E(i.directory);e!==this.app.directory&&t.startsWith(`${e}/`)&&this.pathMatchesWatchPatterns(t,i)&&s.add(i.handle)}return s}pathMatchesWatchPatterns(t,s){let{paths:i,ignore:e}=s.watchPatterns(),n=F(E(s.directory),t);return e.some(o=>_(n,o))?!1:i.some(o=>_(n,o))}handleEventForExtension(t,s,i,e,n,o){let d=s.endsWith(".extension.toml"),h=s===this.app.configPath;switch(t){case"change":if(n)break;d||h?this.pushEvent({type:"extensions_config_updated",path:s,extensionPath:i,extensionHandle:o,startTime:e}):this.pushEvent({type:"file_updated",path:s,extensionPath:i,extensionHandle:o,startTime:e});break;case"add":if(!d){this.pushEvent({type:"file_created",path:s,extensionPath:i,extensionHandle:o,startTime:e});break}let l=0,a=C(s),p=setInterval(()=>{I(x(a,T.lockFile))?(u(`Waiting for extension to complete creation: ${s}
|
|
4
|
+
`),l+=L):(clearInterval(p),this.extensionPaths.push(a),this.pushEvent({type:"extension_folder_created",path:a,extensionPath:i,startTime:e}),this.debouncedEmit()),l>=Q&&(clearInterval(p),this.options.stderr.write(`Error loading new extension at path: ${s}.
|
|
5
|
+
Please restart the process.`))},L);break;case"unlink":if(s.endsWith(T.lockFile))break;h?this.pushEvent({type:"app_config_deleted",path:s,extensionPath:i,startTime:e}):d?(this.extensionPaths=this.extensionPaths.filter(c=>c!==i),this.pushEvent({type:"extension_folder_deleted",path:i,extensionPath:i,startTime:e})):setTimeout(()=>{this.extensionPaths.includes(i)&&(this.pushEvent({type:"file_deleted",path:s,extensionPath:i,extensionHandle:o,startTime:e}),this.extensionWatchedFiles.delete(E(s)),this.debouncedEmit())},Y);break;case"addDir":case"unlinkDir":break}}createIgnoreInstance(t){let s=x(t,".gitignore");if(!I(s))return;let i=R(s).toString().split(`
|
|
6
|
+
`).map(e=>e.trim()).filter(e=>e!==""&&!e.startsWith("#"));return $.default.default().add(i)}};m();m();function B(r,t,s=!0){let i=r.realExtensions,e=i.map(a=>a.uid),n=t.realExtensions,o=n.map(a=>a.uid),d=n.filter(a=>!e.includes(a.uid)),h=i.filter(a=>!o.includes(a.uid)),l;return s&&(l=n.filter(a=>{let p=i.find(y=>y.uid===a.uid);if(!p)return!1;let c=JSON.stringify(p.configuration)!==JSON.stringify(a.configuration),g=p.configurationPath!==a.configurationPath;return c||g})),{created:d,updated:l??[],deleted:h}}async function V(r,t,s){if(r[0]===void 0)return;let i=r.some(o=>j.includes(o.type)),e=r.filter(o=>!j.includes(o.type));if(i)return st({event:r[0],app:t,options:s,extensions:[]});let n={app:t,extensionEvents:[],path:r[0].path,startTime:r[0].startTime};for(let o of e){let d=o.extensionHandle?t.realExtensions.filter(l=>l.handle===o.extensionHandle):t.realExtensions.filter(l=>l.directory===o.extensionPath),h=Z[o.type]({event:o,app:n.app,extensions:d,options:s});n.extensionEvents.push(...h.extensionEvents)}return n}var j=["extensions_config_updated","extension_folder_created"],Z={extension_folder_deleted:tt,file_created:W,file_deleted:W,file_updated:W,app_config_deleted:et,extension_folder_created:z,extensions_config_updated:z};function tt({event:r,app:t,extensions:s}){let i=s.map(e=>(t.removeExtension(e.uid),{type:f.Deleted,extension:e}));return{app:t,extensionEvents:i,startTime:r.startTime,path:r.path}}function W({event:r,app:t,extensions:s}){let i=s.map(e=>({type:f.Updated,extension:e}));return{app:t,extensionEvents:i,startTime:r.startTime,path:r.path}}function z(r){return{app:r.app,extensionEvents:[],startTime:r.event.startTime,path:r.event.path}}function et(r){throw new N("The active app.toml was deleted, exiting")}async function st({event:r,app:t}){let s=await it(t),i=B(t,s,!0),e=i.created.map(h=>({type:f.Created,extension:h})),n=i.deleted.map(h=>({type:f.Deleted,extension:h})),o=i.updated.map(h=>({type:f.Updated,extension:h})),d=[...e,...n,...o];return{app:s,extensionEvents:d,startTime:r.startTime,path:r.path,appWasReloaded:!0}}async function it(r){let t=b();try{let s=await H(r);return u(`App reloaded [${M(t)}ms]`),s}catch(s){let i=new Error(`Error reloading app: ${s.message}`);throw i.cause="validation-error",i}}import{formatMessagesSync as nt}from"esbuild";import ot from"events";var f;(function(r){r.Updated="changed",r.Deleted="deleted",r.Created="created"})(f||(f={}));var J=class extends ot{constructor(t,s,i,e){super(),this.started=!1,this.ready=!1,this.initialEvents=[],this.app=t,this.appURL=s,this.buildOutputPath=i??x(t.directory,".shopify","dev-bundle"),this.options={stdout:process.stdout,stderr:process.stderr,signal:new D},this.fileWatcher=e}async start(t,s=!0){this.started||(this.started=!0,this.options=t??this.options,await A(this.buildOutputPath)&&await P(this.buildOutputPath,{force:!0}),await w(this.buildOutputPath),s&&(this.initialEvents=this.app.realExtensions.map(i=>({type:f.Updated,extension:i})),await this.buildExtensions(this.initialEvents)),this.fileWatcher=this.fileWatcher??new v(this.app,this.options),this.fileWatcher.onChange(i=>{V(i,this.app,this.options).then(async e=>{if(e?.extensionEvents.length===0&&u("Change detected, but no extensions were affected"),!e)return;this.app=e.app,e.appWasReloaded&&this.fileWatcher?.updateApp(this.app),await this.rescanImports(e);let n=e.extensionEvents.filter(o=>o.type!==f.Deleted);await this.buildExtensions(n),e.appWasReloaded||await this.app.generateExtensionTypes(),await this.deleteExtensionsBuildOutput(e),this.emit("all",e)}).catch(e=>{this.emit("error",e)})}),await this.fileWatcher.start(),this.ready=!0,this.emit("ready",{app:this.app,extensionEvents:this.initialEvents}))}onEvent(t){return this.addListener("all",t),this}onStart(t){if(this.ready){let s={app:this.app,extensionEvents:this.initialEvents,startTime:[0,0],path:""};t(s)?.catch(()=>{})}else this.once("ready",t);return this}onError(t){return this.addListener("error",t),this}async deleteExtensionsBuildOutput(t){let i=t.extensionEvents.filter(e=>e.type===f.Deleted).map(e=>e.extension).map(async e=>{let n=x(this.buildOutputPath,e.getOutputFolderId());return P(n,{force:!0})});await Promise.all(i)}async buildExtensions(t){let s=U(t,n=>n.extension.uid),i=[];for(let n of Object.values(s))n.length>0&&n[0]&&i.push({extension:n[0].extension,events:n});let e=i.map(async({extension:n,events:o})=>O({outputPrefix:n.handle,stripAnsi:!1},async()=>{try{await this.buildExtension(n);let d={status:"ok",uid:n.uid};o.forEach(h=>{h.buildResult=d})}catch(d){let h=d.errors??[],l=d.message,a;if(h.length){let c=h[0];l=c?.text,a=c?.location?.file,nt(h,{kind:"error",color:!S()}).forEach(y=>{this.options.stderr.write(y)})}else this.options.stderr.write(d.message);let p={status:"error",error:l,file:a,uid:n.uid};o.forEach(c=>{c.buildResult=p})}}));return Promise.all(e)}async buildExtension(t){let s={app:this.app,stdout:this.options.stdout,stderr:this.options.stderr,useTasks:!1,environment:"development",appURL:this.appURL};await t.buildForBundle(s,this.buildOutputPath)}async rescanImports(t){if(t.path.endsWith(".toml"))return;let i=t.extensionEvents.filter(e=>e.type!==f.Deleted).map(e=>e.extension);i.length>0&&(await Promise.all(i.map(async o=>o.rescanImports()))).some(o=>o)&&await this.fileWatcher?.start()}};export{b as a,M as b,f as c,J as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as I}from"./chunk-VPRTJUIN.js";I();var o="4.2.0";export{o as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as P,e as E,g as w}from"./chunk-
|
|
1
|
+
import{b as P,e as E,g as w}from"./chunk-7JESXDF2.js";import{c as s,g as a}from"./chunk-VPRTJUIN.js";var k=s((ve,W)=>{a();var z=P(),G=function(){return z.Date.now()};W.exports=G});var R=s((be,N)=>{a();var J=/\s/;function K(e){for(var r=e.length;r--&&J.test(e.charAt(r)););return r}N.exports=K});var C=s((Ee,S)=>{a();var Q=R(),V=/^\s+/;function Y(e){return e&&e.slice(0,Q(e)+1).replace(V,"")}S.exports=Y});var _=s((pe,M)=>{a();var Z=C(),A=E(),ee=w(),L=NaN,re=/^[-+]0x[0-9a-f]+$/i,ne=/^0b[01]+$/i,ie=/^0o[0-7]+$/i,te=parseInt;function ae(e){if(typeof e=="number")return e;if(ee(e))return L;if(A(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=A(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=Z(e);var i=ne.test(e);return i||ie.test(e)?te(e.slice(2),i?2:8):re.test(e)?L:+e}M.exports=ae});var F=s((qe,B)=>{a();var ue=E(),I=k(),j=_(),fe="Expected a function",de=Math.max,ce=Math.min;function oe(e,r,i){var u,f,x,o,t,c,m=0,p=!1,l=!1,T=!0;if(typeof e!="function")throw new TypeError(fe);r=j(r)||0,ue(i)&&(p=!!i.leading,l="maxWait"in i,x=l?de(j(i.maxWait)||0,r):x,T="trailing"in i?!!i.trailing:T);function b(n){var d=u,g=f;return u=f=void 0,m=n,o=e.apply(g,d),o}function U(n){return m=n,t=setTimeout(v,r),p?b(n):o}function X(n){var d=n-c,g=n-m,O=r-d;return l?ce(O,x-g):O}function y(n){var d=n-c,g=n-m;return c===void 0||d>=r||d<0||l&&g>=x}function v(){var n=I();if(y(n))return q(n);t=setTimeout(v,X(n))}function q(n){return t=void 0,T&&u?b(n):(u=f=void 0,o)}function D(){t!==void 0&&clearTimeout(t),m=0,u=c=f=t=void 0}function H(){return t===void 0?o:q(I())}function h(){var n=I(),d=y(n);if(u=arguments,f=this,c=n,d){if(t===void 0)return U(c);if(l)return clearTimeout(t),t=setTimeout(v,r),b(c)}return t===void 0&&(t=setTimeout(v,r)),o}return h.cancel=D,h.flush=H,h}B.exports=oe});var xe=s((We,$)=>{a();var se=F(),me=E(),le="Expected a function";function ge(e,r,i){var u=!0,f=!0;if(typeof e!="function")throw new TypeError(le);return me(i)&&(u="leading"in i?!!i.leading:u,f="trailing"in i?!!i.trailing:f),se(e,r,{leading:u,maxWait:r,trailing:f})}$.exports=ge});export{F as a,xe as b};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import{a as y}from"./chunk-MFLBTJO7.js";import{c as v}from"./chunk-D3DDLLNF.js";import{d as f}from"./chunk-M4V2OQAX.js";import{a as c}from"./chunk-2YXKZWYW.js";import{a as u}from"./chunk-7BFDUVOG.js";import{k as p,q as m}from"./chunk-HHXHOQQP.js";import{xa as h}from"./chunk-4V4DQ6W7.js";import{b as l,d}from"./chunk-4KRT35A2.js";import{r as O}from"./chunk-3YWUSKWF.js";import{e as F,g as a}from"./chunk-VPRTJUIN.js";a();var t=F(O(),1);var w,o=class extends m{async command(r,n){let{ignore:g=[],only:_=[]}=r;h("theme-command:dev:single-env:authenticated");let i,e;if(r.theme){let s={filter:{theme:r.theme}};i=await u(n,s),e={...r,theme:i.id.toString(),store:n.storeFqdn}}else{i=await new c(n).findOrCreate();let s=r["theme-editor-sync"]&&i.createdAtRuntime;e={...r,theme:i.id.toString(),store:n.storeFqdn,"overwrite-json":s}}await f(i,"start development mode",r["allow-live"])&&(await v({adminSession:n,commandConfig:this.config,directory:e.path,store:e.store,password:e.password,storePassword:e["store-password"],theme:i,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"],"standard-events-inspector":e["standard-events-inspector"],noDelete:e.nodelete,ignore:g,only:_,notify:e.notify}),await y({path:e.path,password:e.password,store:e.store,force:e.force,verbose:e.verbose,noColor:e["no-color"],silent:!0}))}};w=o;o.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.";o.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).`;o.description=w.descriptionWithoutMarkdown();o.flags={...l,...p,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"}),"standard-events-inspector":t.Flags.boolean({description:"Inject the standard events inspector into storefront HTML.",env:"SHOPIFY_FLAG_STANDARD_EVENTS_INSPECTOR",default:!1}),port:d({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})};o.multiEnvironmentsFlags=null;var R=o;export{R as a};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import{
|
|
2
|
-
`)))}var p=class n extends l{static{this.summary="Print out a list of sources that may be used with the logs command."}static{this.descriptionWithMarkdown="The output source names can be used with the `--source` argument of `shopify app logs` to filter log output. Currently only function extensions are supported as sources."}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...m,...u}}async run(){let{flags:o}=await this.parse(n),{app:t}=await f({directory:o.path,clientId:o["client-id"],forceRelink:o.reset,userProvidedConfigName:o.config});return t.errors.isEmpty()?g(t):process.exit(2),{app:t}}};export{p as default};
|
|
1
|
+
import{a}from"../../../../chunk-VA5IUGZV.js";import"../../../../chunk-NBYS6YQ2.js";import"../../../../chunk-XEFQQPL4.js";import"../../../../chunk-T5MK7ZSF.js";import"../../../../chunk-DCK2FX6J.js";import"../../../../chunk-WCWNI3ZV.js";import"../../../../chunk-42RMKTCJ.js";import"../../../../chunk-A3VYI4LO.js";import"../../../../chunk-VBUZWRUL.js";import"../../../../chunk-VICNWPLQ.js";import"../../../../chunk-RGNAWKD7.js";import"../../../../chunk-IWCPQD7X.js";import"../../../../chunk-TNQXTZAX.js";import"../../../../chunk-QSTEVZFQ.js";import"../../../../chunk-N5ROZKPZ.js";import"../../../../chunk-AP3RFOPL.js";import"../../../../chunk-FP2NOZSD.js";import"../../../../chunk-GVITHCQJ.js";import"../../../../chunk-QTGMS62F.js";import"../../../../chunk-4V4DQ6W7.js";import"../../../../chunk-4LNCYIS3.js";import"../../../../chunk-WUK5NQSX.js";import"../../../../chunk-PRKBO42R.js";import"../../../../chunk-LITB5QQX.js";import"../../../../chunk-YJB7P2HC.js";import"../../../../chunk-6HZTMQD6.js";import"../../../../chunk-4KRT35A2.js";import"../../../../chunk-3TNEIDOD.js";import"../../../../chunk-A5SQCM63.js";import"../../../../chunk-VEDZUOVI.js";import"../../../../chunk-MOA33ZFO.js";import"../../../../chunk-JUVAGMIH.js";import"../../../../chunk-MGL4YM3S.js";import"../../../../chunk-YS6VOQ7I.js";import"../../../../chunk-KLMDWDT2.js";import"../../../../chunk-5CH3B62S.js";import"../../../../chunk-QUTQDXSL.js";import"../../../../chunk-6YAXFS6V.js";import"../../../../chunk-BHWEA4V2.js";import"../../../../chunk-PD5ZHJWI.js";import"../../../../chunk-3YWUSKWF.js";import"../../../../chunk-ZR76GGZ6.js";import"../../../../chunk-EENHXSWU.js";import"../../../../chunk-H4W4DFKK.js";import"../../../../chunk-6M3ZYNGO.js";import"../../../../chunk-QYR5VPQA.js";import"../../../../chunk-4EXYYBQ6.js";import"../../../../chunk-VPL2NDH6.js";import"../../../../chunk-7JESXDF2.js";import"../../../../chunk-5Y7GIF2W.js";import"../../../../chunk-T4M5CWAO.js";import"../../../../chunk-PRVQAHWI.js";import"../../../../chunk-UARVYVLN.js";import"../../../../chunk-ULQG3XQS.js";import"../../../../chunk-IU2ZQ6TE.js";import"../../../../chunk-PIBY5DDZ.js";import"../../../../chunk-VPRTJUIN.js";export{a as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a
|
|
1
|
+
import{a}from"../../../chunk-C2FFA4O4.js";import"../../../chunk-UOQ75BL3.js";import"../../../chunk-DCBYHVKW.js";import"../../../chunk-DCK2FX6J.js";import"../../../chunk-WCWNI3ZV.js";import"../../../chunk-42RMKTCJ.js";import"../../../chunk-A3VYI4LO.js";import"../../../chunk-VBUZWRUL.js";import"../../../chunk-VICNWPLQ.js";import"../../../chunk-RGNAWKD7.js";import"../../../chunk-IWCPQD7X.js";import"../../../chunk-TNQXTZAX.js";import"../../../chunk-QSTEVZFQ.js";import"../../../chunk-N5ROZKPZ.js";import"../../../chunk-AP3RFOPL.js";import"../../../chunk-FP2NOZSD.js";import"../../../chunk-GVITHCQJ.js";import"../../../chunk-QTGMS62F.js";import"../../../chunk-4V4DQ6W7.js";import"../../../chunk-4LNCYIS3.js";import"../../../chunk-WUK5NQSX.js";import"../../../chunk-PRKBO42R.js";import"../../../chunk-LITB5QQX.js";import"../../../chunk-YJB7P2HC.js";import"../../../chunk-6HZTMQD6.js";import"../../../chunk-4KRT35A2.js";import"../../../chunk-3TNEIDOD.js";import"../../../chunk-A5SQCM63.js";import"../../../chunk-VEDZUOVI.js";import"../../../chunk-MOA33ZFO.js";import"../../../chunk-JUVAGMIH.js";import"../../../chunk-MGL4YM3S.js";import"../../../chunk-YS6VOQ7I.js";import"../../../chunk-KLMDWDT2.js";import"../../../chunk-5CH3B62S.js";import"../../../chunk-QUTQDXSL.js";import"../../../chunk-6YAXFS6V.js";import"../../../chunk-BHWEA4V2.js";import"../../../chunk-PD5ZHJWI.js";import"../../../chunk-3YWUSKWF.js";import"../../../chunk-ZR76GGZ6.js";import"../../../chunk-EENHXSWU.js";import"../../../chunk-H4W4DFKK.js";import"../../../chunk-6M3ZYNGO.js";import"../../../chunk-QYR5VPQA.js";import"../../../chunk-4EXYYBQ6.js";import"../../../chunk-VPL2NDH6.js";import"../../../chunk-7JESXDF2.js";import"../../../chunk-5Y7GIF2W.js";import"../../../chunk-T4M5CWAO.js";import"../../../chunk-PRVQAHWI.js";import"../../../chunk-UARVYVLN.js";import"../../../chunk-ULQG3XQS.js";import"../../../chunk-IU2ZQ6TE.js";import"../../../chunk-PIBY5DDZ.js";import"../../../chunk-VPRTJUIN.js";export{a as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{a}from"../../../../chunk-X4CV6TRE.js";import"../../../../chunk-HSYRYSX4.js";import"../../../../chunk-IWE4RUI7.js";import"../../../../chunk-LCCMXY6N.js";import"../../../../chunk-T5MK7ZSF.js";import"../../../../chunk-DCK2FX6J.js";import"../../../../chunk-WCWNI3ZV.js";import"../../../../chunk-42RMKTCJ.js";import"../../../../chunk-A3VYI4LO.js";import"../../../../chunk-VBUZWRUL.js";import"../../../../chunk-VICNWPLQ.js";import"../../../../chunk-RGNAWKD7.js";import"../../../../chunk-IWCPQD7X.js";import"../../../../chunk-TNQXTZAX.js";import"../../../../chunk-QSTEVZFQ.js";import"../../../../chunk-N5ROZKPZ.js";import"../../../../chunk-AP3RFOPL.js";import"../../../../chunk-FP2NOZSD.js";import"../../../../chunk-GVITHCQJ.js";import"../../../../chunk-QTGMS62F.js";import"../../../../chunk-4V4DQ6W7.js";import"../../../../chunk-4LNCYIS3.js";import"../../../../chunk-WUK5NQSX.js";import"../../../../chunk-PRKBO42R.js";import"../../../../chunk-LITB5QQX.js";import"../../../../chunk-YJB7P2HC.js";import"../../../../chunk-6HZTMQD6.js";import"../../../../chunk-4KRT35A2.js";import"../../../../chunk-3TNEIDOD.js";import"../../../../chunk-A5SQCM63.js";import"../../../../chunk-VEDZUOVI.js";import"../../../../chunk-MOA33ZFO.js";import"../../../../chunk-JUVAGMIH.js";import"../../../../chunk-MGL4YM3S.js";import"../../../../chunk-YS6VOQ7I.js";import"../../../../chunk-KLMDWDT2.js";import"../../../../chunk-5CH3B62S.js";import"../../../../chunk-QUTQDXSL.js";import"../../../../chunk-6YAXFS6V.js";import"../../../../chunk-BHWEA4V2.js";import"../../../../chunk-PD5ZHJWI.js";import"../../../../chunk-3YWUSKWF.js";import"../../../../chunk-ZR76GGZ6.js";import"../../../../chunk-EENHXSWU.js";import"../../../../chunk-H4W4DFKK.js";import"../../../../chunk-6M3ZYNGO.js";import"../../../../chunk-QYR5VPQA.js";import"../../../../chunk-4EXYYBQ6.js";import"../../../../chunk-VPL2NDH6.js";import"../../../../chunk-7JESXDF2.js";import"../../../../chunk-5Y7GIF2W.js";import"../../../../chunk-T4M5CWAO.js";import"../../../../chunk-PRVQAHWI.js";import"../../../../chunk-UARVYVLN.js";import"../../../../chunk-ULQG3XQS.js";import"../../../../chunk-IU2ZQ6TE.js";import"../../../../chunk-PIBY5DDZ.js";import"../../../../chunk-VPRTJUIN.js";export{a as default};
|
|
@@ -1,9 +1 @@
|
|
|
1
|
-
import{a
|
|
2
|
-
${o}`)}}r();var ne={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"BulkOperationRunMutation"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"mutation"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}}},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"stagedUploadPath"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}}},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"clientIdentifier"}},type:{kind:"NamedType",name:{kind:"Name",value:"String"}}}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"bulkOperationRunMutation"},arguments:[{kind:"Argument",name:{kind:"Name",value:"mutation"},value:{kind:"Variable",name:{kind:"Name",value:"mutation"}}},{kind:"Argument",name:{kind:"Name",value:"stagedUploadPath"},value:{kind:"Variable",name:{kind:"Name",value:"stagedUploadPath"}}},{kind:"Argument",name:{kind:"Name",value:"clientIdentifier"},value:{kind:"Variable",name:{kind:"Name",value:"clientIdentifier"}}}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"bulkOperation"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"type"}},{kind:"Field",name:{kind:"Name",value:"completedAt"}},{kind:"Field",name:{kind:"Name",value:"createdAt"}},{kind:"Field",name:{kind:"Name",value:"errorCode"}},{kind:"Field",name:{kind:"Name",value:"id"}},{kind:"Field",name:{kind:"Name",value:"objectCount"}},{kind:"Field",name:{kind:"Name",value:"partialDataUrl"}},{kind:"Field",name:{kind:"Name",value:"status"}},{kind:"Field",name:{kind:"Name",value:"url"}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}},{kind:"Field",name:{kind:"Name",value:"userErrors"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"code"}},{kind:"Field",name:{kind:"Name",value:"field"}},{kind:"Field",name:{kind:"Name",value:"message"}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}}]}}]};async function te(n){let{adminSession:e,query:a,variablesJsonl:i,version:t}=n,s=await ee({adminSession:e,variablesJsonl:i});return(await c({query:ne,session:e,variables:{mutation:a,stagedUploadPath:s},...t&&{version:t}})).bulkOperationRunMutation}r();var ce=["COMPLETED","FAILED","CANCELED","EXPIRED"],ie=1,fe=5,ae=10,ge=3e3,ye=300;async function oe(n,e){return f({title:u`Starting bulk operation`,task:async()=>{let a=Date.now(),i=se({adminSession:n,operationId:e,pollIntervalSeconds:ye/1e3,useAdaptivePolling:!1}),t;do{let{value:s,done:o}=await i.next();if(t=s,o)return t}while(Date.now()-a<ge);return t},renderOptions:{stdout:process.stderr}})}async function re(n,e,a,i){return f({title:u`Polling bulk operation`,task:async t=>{let s=se({adminSession:n,operationId:e,pollIntervalSeconds:fe,initialPollIntervalSeconds:ie,initialPollCount:ae,useAdaptivePolling:!0,abortSignal:a});for(;;){let{value:o,done:p}=await s.next();if(p)return o;t(B(o))}},onAbort:i,renderOptions:{stdout:process.stderr}})}async function*se({adminSession:n,operationId:e,pollIntervalSeconds:a,useAdaptivePolling:i=!1,initialPollIntervalSeconds:t=ie,initialPollCount:s=ae,abortSignal:o}){let p=0;for(;;){let O=await ve(n,e);if(!O.bulkOperation)throw new Error("bulk operation not found");let v=O.bulkOperation;if(ce.includes(v.status)||o?.aborted)return v;yield v,p++;let k=a;i&&p<=s&&(k=t),o?await Promise.race([F(k),new Promise(S=>o.addEventListener("abort",S))]):await F(k)}}async function ve(n,e){return c({query:W,session:n,variables:{id:e},version:w})}r();async function le(n){let e=await b(n);if(!e.ok)throw new d(`Failed to download bulk operation results: ${e.statusText}`);return e.text()}async function Se(n,e){if(n)return n.join(`
|
|
3
|
-
`);if(e){if(!await P(e))throw new d(u`Variable file not found at ${m.path(e)}. Please check the path and try again.`);return I(e,{encoding:"utf8"})}else return}async function de(n){let{organization:e,remoteApp:a,store:i,query:t,variables:s,variableFile:o,outputFile:p,watch:O=!1,version:v}=n,{adminSession:k,version:S}=await f({title:u`Authenticating`,task:async()=>{let l=await j(a,i.shopDomain),g=await z({adminSession:l,userSpecifiedVersion:v,minimumDefaultVersion:w});return{adminSession:l,version:g}},renderOptions:{stdout:process.stderr}}),U=await Se(s,o);be(t,U),J(t,i),E({headline:"Starting bulk operation.",body:[{list:{items:G({organization:e,remoteApp:a,storeFqdn:i.shopDomain,version:S})}}]});let A=N(t)?await te({adminSession:k,query:t,variablesJsonl:U,version:S}):await Y({adminSession:k,query:t,version:S});if(A?.userErrors?.length){R({headline:"Error creating bulk operation.",body:{list:{items:A.userErrors.map(l=>l.field?`${l.field.join(".")}: ${l.message}`:l.message)}}});return}let T=A?.bulkOperation;if(T)if(O){let l=new _,g=await re(k,T.id,l.signal,()=>l.abort());l.signal.aborted?E({headline:`Bulk operation ${g.id} is still running in the background.`,body:h(g.id)}):await ue(g,p)}else{let l=await oe(k,T.id);["FAILED","CANCELED","EXPIRED"].includes(l.status)?await ue(l,p):y({headline:"Bulk operation is running.",body:h(l.id),customSections:[{body:[{list:{items:[u`ID: ${m.cyan(l.id)}`.value]}}]}]})}else throw C({headline:"Bulk operation not created successfully.",body:"This is an unexpected error. Please try again later."}),new x("Bulk operation response returned null with no error message.")}async function ue(n,e){let a=B(n).value,t=[{body:[{list:{items:[u`ID: ${m.cyan(n.id)}`.value,u`Status: ${m.yellow(n.status)}`.value,u`Created at: ${m.gray(String(n.createdAt))}`.value,...n.completedAt?[u`Completed at: ${m.gray(String(n.completedAt))}`.value]:[]]}}]}];switch(n.status){case"CREATED":y({headline:"Bulk operation started.",body:h(n.id),customSections:t});break;case"RUNNING":y({headline:"Bulk operation is running.",body:h(n.id),customSections:t});break;case"COMPLETED":if(n.url){let s=await le(n.url),o=Oe(s);e?await D(e,s):L(s),o?C({headline:"Bulk operation completed with errors.",body:e?`Results written to ${e}. Check file for error details.`:"Check results for error details.",customSections:t}):y({headline:a,body:e?[`Results written to ${e}`]:void 0,customSections:t})}else y({headline:a,customSections:t});break;case"CANCELED":case"CANCELING":case"EXPIRED":case"FAILED":R({headline:a,customSections:t});break}}function Oe(n){return n.trim().split(`
|
|
4
|
-
`).some(a=>{let i=JSON.parse(a);if(!i.data)return!1;let t=Object.values(i.data)[0];return t?.userErrors!==void 0&&t.userErrors.length>0})}function be(n,e){if(N(n)&&!e)throw new d(u`Bulk mutations require variables. Provide a JSONL file with ${m.yellow("--variable-file")} or individual JSON objects with ${m.yellow("--variables")}.`);if(!N(n)&&e)throw new d(u`The ${m.yellow("--variables")} and ${m.yellow("--variable-file")} flags can only be used with mutations, not queries.`)}function h(n){return[`Monitor its progress with:
|
|
5
|
-
`,{command:`shopify app bulk status --id=${H(n)}`}]}var M=class n extends ${static{this.summary="Execute bulk operations."}static{this.descriptionWithMarkdown=`Executes an Admin API GraphQL query or mutation on the specified store, as a bulk operation. Mutations are only allowed on dev stores.
|
|
6
|
-
|
|
7
|
-
Bulk operations allow you to process large amounts of data asynchronously. Learn more about [bulk query operations](https://shopify.dev/docs/api/usage/bulk-operations/queries) and [bulk mutation operations](https://shopify.dev/docs/api/usage/bulk-operations/imports).
|
|
8
|
-
|
|
9
|
-
Use [\`bulk status\`](https://shopify.dev/docs/api/shopify-cli/app/app-bulk-status) to check the status of your bulk operations.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...V,...q,...Q}}async run(){let{flags:e}=await this.parse(n),{query:a,appContextResult:i,store:t}=await K(e);return await de({organization:i.organization,remoteApp:i.remoteApp,store:t,query:a,variables:e.variables,variableFile:e["variable-file"],watch:e.watch??!1,outputFile:e["output-file"],...e.version&&{version:e.version}}),{app:i.app}}};export{M as default};
|
|
1
|
+
import{a}from"../../../../chunk-PLQFX5ZP.js";import"../../../../chunk-HSYRYSX4.js";import"../../../../chunk-IWE4RUI7.js";import"../../../../chunk-LCCMXY6N.js";import"../../../../chunk-T5MK7ZSF.js";import"../../../../chunk-DCK2FX6J.js";import"../../../../chunk-WCWNI3ZV.js";import"../../../../chunk-42RMKTCJ.js";import"../../../../chunk-A3VYI4LO.js";import"../../../../chunk-VBUZWRUL.js";import"../../../../chunk-VICNWPLQ.js";import"../../../../chunk-RGNAWKD7.js";import"../../../../chunk-IWCPQD7X.js";import"../../../../chunk-TNQXTZAX.js";import"../../../../chunk-QSTEVZFQ.js";import"../../../../chunk-N5ROZKPZ.js";import"../../../../chunk-AP3RFOPL.js";import"../../../../chunk-FP2NOZSD.js";import"../../../../chunk-GVITHCQJ.js";import"../../../../chunk-QTGMS62F.js";import"../../../../chunk-4V4DQ6W7.js";import"../../../../chunk-4LNCYIS3.js";import"../../../../chunk-WUK5NQSX.js";import"../../../../chunk-PRKBO42R.js";import"../../../../chunk-LITB5QQX.js";import"../../../../chunk-YJB7P2HC.js";import"../../../../chunk-6HZTMQD6.js";import"../../../../chunk-4KRT35A2.js";import"../../../../chunk-3TNEIDOD.js";import"../../../../chunk-A5SQCM63.js";import"../../../../chunk-VEDZUOVI.js";import"../../../../chunk-MOA33ZFO.js";import"../../../../chunk-JUVAGMIH.js";import"../../../../chunk-MGL4YM3S.js";import"../../../../chunk-YS6VOQ7I.js";import"../../../../chunk-KLMDWDT2.js";import"../../../../chunk-5CH3B62S.js";import"../../../../chunk-QUTQDXSL.js";import"../../../../chunk-6YAXFS6V.js";import"../../../../chunk-BHWEA4V2.js";import"../../../../chunk-PD5ZHJWI.js";import"../../../../chunk-3YWUSKWF.js";import"../../../../chunk-ZR76GGZ6.js";import"../../../../chunk-EENHXSWU.js";import"../../../../chunk-H4W4DFKK.js";import"../../../../chunk-6M3ZYNGO.js";import"../../../../chunk-QYR5VPQA.js";import"../../../../chunk-4EXYYBQ6.js";import"../../../../chunk-VPL2NDH6.js";import"../../../../chunk-7JESXDF2.js";import"../../../../chunk-5Y7GIF2W.js";import"../../../../chunk-T4M5CWAO.js";import"../../../../chunk-PRVQAHWI.js";import"../../../../chunk-UARVYVLN.js";import"../../../../chunk-ULQG3XQS.js";import"../../../../chunk-IU2ZQ6TE.js";import"../../../../chunk-PIBY5DDZ.js";import"../../../../chunk-VPRTJUIN.js";export{a as default};
|
|
@@ -1,5 +1 @@
|
|
|
1
|
-
import{
|
|
2
|
-
|
|
3
|
-
Bulk operations allow you to process large amounts of data asynchronously. Learn more about [bulk query operations](https://shopify.dev/docs/api/usage/bulk-operations/queries) and [bulk mutation operations](https://shopify.dev/docs/api/usage/bulk-operations/imports).
|
|
4
|
-
|
|
5
|
-
Use [\`bulk execute\`](https://shopify.dev/docs/api/shopify-cli/app/app-bulk-execute) to start a new bulk operation.`}static{this.description=this.descriptionWithoutMarkdown()}static{this.flags={...r,...n,id:e.Flags.string({description:"The bulk operation ID (numeric ID or full GID). If not provided, lists all bulk operations belonging to this app on this store in the last 7 days.",env:"SHOPIFY_FLAG_ID"}),store:e.Flags.string({char:"s",description:"The store domain. Must be an existing dev store.",env:"SHOPIFY_FLAG_STORE",parse:async o=>p(o)})}}async run(){let{flags:o}=await this.parse(h),{appContextResult:t,store:i}=await u(o);return o.id?await m({organization:t.organization,storeFqdn:i.shopDomain,operationId:d(o.id),remoteApp:t.remoteApp}):await c({organization:t.organization,storeFqdn:i.shopDomain,remoteApp:t.remoteApp}),{app:t.app}}};export{a as default};
|
|
1
|
+
import{a}from"../../../../chunk-XFKCDWXB.js";import"../../../../chunk-HSYRYSX4.js";import"../../../../chunk-IWE4RUI7.js";import"../../../../chunk-LCCMXY6N.js";import"../../../../chunk-T5MK7ZSF.js";import"../../../../chunk-DCK2FX6J.js";import"../../../../chunk-WCWNI3ZV.js";import"../../../../chunk-42RMKTCJ.js";import"../../../../chunk-A3VYI4LO.js";import"../../../../chunk-VBUZWRUL.js";import"../../../../chunk-VICNWPLQ.js";import"../../../../chunk-RGNAWKD7.js";import"../../../../chunk-IWCPQD7X.js";import"../../../../chunk-TNQXTZAX.js";import"../../../../chunk-QSTEVZFQ.js";import"../../../../chunk-N5ROZKPZ.js";import"../../../../chunk-AP3RFOPL.js";import"../../../../chunk-FP2NOZSD.js";import"../../../../chunk-GVITHCQJ.js";import"../../../../chunk-QTGMS62F.js";import"../../../../chunk-4V4DQ6W7.js";import"../../../../chunk-4LNCYIS3.js";import"../../../../chunk-WUK5NQSX.js";import"../../../../chunk-PRKBO42R.js";import"../../../../chunk-LITB5QQX.js";import"../../../../chunk-YJB7P2HC.js";import"../../../../chunk-6HZTMQD6.js";import"../../../../chunk-4KRT35A2.js";import"../../../../chunk-3TNEIDOD.js";import"../../../../chunk-A5SQCM63.js";import"../../../../chunk-VEDZUOVI.js";import"../../../../chunk-MOA33ZFO.js";import"../../../../chunk-JUVAGMIH.js";import"../../../../chunk-MGL4YM3S.js";import"../../../../chunk-YS6VOQ7I.js";import"../../../../chunk-KLMDWDT2.js";import"../../../../chunk-5CH3B62S.js";import"../../../../chunk-QUTQDXSL.js";import"../../../../chunk-6YAXFS6V.js";import"../../../../chunk-BHWEA4V2.js";import"../../../../chunk-PD5ZHJWI.js";import"../../../../chunk-3YWUSKWF.js";import"../../../../chunk-ZR76GGZ6.js";import"../../../../chunk-EENHXSWU.js";import"../../../../chunk-H4W4DFKK.js";import"../../../../chunk-6M3ZYNGO.js";import"../../../../chunk-QYR5VPQA.js";import"../../../../chunk-4EXYYBQ6.js";import"../../../../chunk-VPL2NDH6.js";import"../../../../chunk-7JESXDF2.js";import"../../../../chunk-5Y7GIF2W.js";import"../../../../chunk-T4M5CWAO.js";import"../../../../chunk-PRVQAHWI.js";import"../../../../chunk-UARVYVLN.js";import"../../../../chunk-ULQG3XQS.js";import"../../../../chunk-IU2ZQ6TE.js";import"../../../../chunk-PIBY5DDZ.js";import"../../../../chunk-VPRTJUIN.js";export{a as default};
|