@shopify/cli 4.9.4 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics-Q6QDIDYT.js +1 -0
- package/dist/analytics-VKKJNJ62.js +1 -0
- package/dist/assets/hydrogen/starter/CHANGELOG.md +7 -0
- package/dist/assets/hydrogen/starter/package.json +2 -2
- package/dist/assets/hydrogen/vite/package.json +3 -4
- package/dist/assets/hydrogen/vite/vite.config.js +3 -3
- package/dist/bootstrap.js +1 -1
- package/dist/{chunk-LKXFHYLI.js → chunk-24NUJTIH.js} +1 -1
- package/dist/chunk-2CMEKSI7.js +1 -0
- package/dist/chunk-2DID73ML.js +1 -0
- package/dist/chunk-2ORRV7GH.js +1 -0
- package/dist/chunk-2VSNFOKD.js +1 -0
- package/dist/chunk-335BUVBP.js +1 -0
- package/dist/{chunk-UEBUGSBT.js → chunk-3A3DZVEJ.js} +1 -1
- package/dist/chunk-3C6VLJ5D.js +319 -0
- package/dist/{chunk-PB5ZZET5.js → chunk-3G4HJO72.js} +30 -30
- package/dist/chunk-3LVCG4JB.js +1 -0
- package/dist/chunk-43KLFFP7.js +1 -0
- package/dist/chunk-43R5VGKT.js +1 -0
- package/dist/chunk-46MSIQ6Z.js +1 -0
- package/dist/chunk-4ARCB6DT.js +1 -0
- package/dist/chunk-4C2DAX5T.js +1 -0
- package/dist/chunk-4CRBTSVP.js +2 -0
- package/dist/chunk-4GCI2YCZ.js +8 -0
- package/dist/chunk-4GOJQKY5.js +1 -0
- package/dist/chunk-4RDFMBRG.js +9 -0
- package/dist/chunk-4SS6DXC7.js +5 -0
- package/dist/{chunk-J4J2YXH3.js → chunk-4TI7U2PN.js} +1 -1
- package/dist/{chunk-67EBF76X.js → chunk-52FDK2LC.js} +1 -1
- package/dist/chunk-53BG3NLH.js +3 -0
- package/dist/{chunk-LD6ZCTZ3.js → chunk-5B76DT7X.js} +1 -1
- package/dist/{chunk-A2VCTDKH.js → chunk-5NEGOQT6.js} +1 -1
- package/dist/{chunk-MW3JKGJH.js → chunk-5OMJFPQW.js} +1 -1
- package/dist/chunk-5TB52UUV.js +2 -0
- package/dist/chunk-5UWMXOHM.js +7 -0
- package/dist/chunk-6BNKBCCU.js +1 -0
- package/dist/chunk-6DXP7PQ7.js +1 -0
- package/dist/chunk-6PUU6ZNQ.js +1 -0
- package/dist/chunk-7GHSE7SG.js +1 -0
- package/dist/{chunk-7556AIVG.js → chunk-7IFE4UQY.js} +1 -1
- package/dist/chunk-7LAKWAKX.js +25 -0
- package/dist/chunk-7MVWDCI3.js +1 -0
- package/dist/chunk-7NSK77WG.js +3 -0
- package/dist/chunk-7QUZWCJZ.js +3 -0
- package/dist/chunk-7RPFJZLP.js +1 -0
- package/dist/{chunk-LJIJEGND.js → chunk-7UOA4DI7.js} +2 -2
- package/dist/chunk-7WPUV7GY.js +6 -0
- package/dist/chunk-7Y7AZRL3.js +10 -0
- package/dist/{chunk-NGSEF3UX.js → chunk-ACA2BGAD.js} +1 -1
- package/dist/chunk-AJMDF3QC.js +1 -0
- package/dist/{chunk-R7YJNDXW.js → chunk-AXC2MHHO.js} +1 -1
- package/dist/{chunk-DEF2G7S4.js → chunk-AYL6KBPE.js} +1 -1
- package/dist/chunk-BAHIL37I.js +1 -0
- package/dist/{chunk-RSC5NQAT.js → chunk-BCYTZ7LM.js} +1 -1
- package/dist/{chunk-AVMNIZAJ.js → chunk-BJPDJIS4.js} +1 -1
- package/dist/{chunk-7VAKNVFD.js → chunk-BN7ZXAZJ.js} +1 -1
- package/dist/chunk-BVSKBX7T.js +16 -0
- package/dist/chunk-BWRNXCVN.js +4 -0
- package/dist/{chunk-XNPUZRWP.js → chunk-C3KEDG33.js} +1 -1
- package/dist/{chunk-WEXOA4C4.js → chunk-C7V755IT.js} +1 -1
- package/dist/chunk-CCMDZX35.js +7 -0
- package/dist/chunk-CCQNP5YR.js +1 -0
- package/dist/chunk-CEIJKJOF.js +11 -0
- package/dist/chunk-CIK5BF7V.js +1 -0
- package/dist/{chunk-6YDLNP4G.js → chunk-CVVQQLCF.js} +1 -1
- package/dist/chunk-CW2T7EOQ.js +1 -0
- package/dist/chunk-CZ22VZDA.js +376 -0
- package/dist/{chunk-3G2ZQ2EF.js → chunk-D7NB7YR6.js} +1 -1
- package/dist/{chunk-DYPZX7MW.js → chunk-DFQ4WTET.js} +2 -2
- package/dist/chunk-DJAZBPYA.js +3 -0
- package/dist/chunk-DNMXVMJM.js +47 -0
- package/dist/{chunk-CLD3NZYD.js → chunk-EGCWR5AS.js} +1 -1
- package/dist/{chunk-BOE2ST6J.js → chunk-EITIW5OX.js} +1 -1
- package/dist/chunk-EMSF57ZB.js +1 -0
- package/dist/{chunk-ZEBMW5KS.js → chunk-EXFBZPZS.js} +1 -1
- package/dist/chunk-FDXHQZTO.js +26 -0
- package/dist/{chunk-Q2XLIWG4.js → chunk-FFHH5LOR.js} +1 -1
- package/dist/{chunk-MMQZO2W2.js → chunk-FNLECT7B.js} +1 -1
- package/dist/{chunk-PO5T44H3.js → chunk-FWB3GLMW.js} +1 -1
- package/dist/chunk-FZCGRIOM.js +1 -0
- package/dist/{chunk-G7JW4UIM.js → chunk-G6ZMSWEU.js} +1 -1
- package/dist/chunk-GAMC2BNY.js +7 -0
- package/dist/chunk-GB6E3ATN.js +4 -0
- package/dist/chunk-GCNA3HXH.js +8 -0
- package/dist/{chunk-IGDVKRB4.js → chunk-GFVKTWFT.js} +1 -1
- package/dist/chunk-GQNOVEKP.js +2 -0
- package/dist/{chunk-5BTLE67Z.js → chunk-GRGFA26K.js} +1 -1
- package/dist/chunk-GXORLBVN.js +2 -0
- package/dist/{chunk-3V4VL3SD.js → chunk-H4V55Y3Z.js} +118 -118
- package/dist/chunk-HCZG7YJ6.js +16 -0
- package/dist/chunk-HF4NDEX3.js +1 -0
- package/dist/chunk-HIRTL45Q.js +1 -0
- package/dist/chunk-I4OVLRQR.js +1 -0
- package/dist/{chunk-ENQXB532.js → chunk-I6FRVYGE.js} +1 -1
- package/dist/chunk-IEQ4UOH3.js +4 -0
- package/dist/{chunk-PIZDYS7T.js → chunk-IILLQOUC.js} +60 -60
- package/dist/{chunk-45SZ5PSE.js → chunk-IQVRP7CT.js} +1 -1
- package/dist/chunk-IUP7POIE.js +6 -0
- package/dist/chunk-IUTZIN2T.js +10 -0
- package/dist/chunk-IWEKM5Y3.js +1 -0
- package/dist/chunk-IWTNUJGY.js +2 -0
- package/dist/chunk-J6TW43TG.js +1 -0
- package/dist/chunk-JDR6UVZA.js +8 -0
- package/dist/{chunk-CVFPY2SH.js → chunk-JEA3C7ON.js} +1 -1
- package/dist/chunk-JOJV5E2K.js +1 -0
- package/dist/chunk-JYMDWR25.js +1 -0
- package/dist/{chunk-TPHHQAUD.js → chunk-KDPQXURV.js} +1 -1
- package/dist/{chunk-MW3IMZJ5.js → chunk-KGRIYAMA.js} +1 -1
- package/dist/chunk-KJQDS5HI.js +1 -0
- package/dist/chunk-KKPOOIE4.js +2 -0
- package/dist/{chunk-VS7QVU3Z.js → chunk-KSDU4YOB.js} +1 -1
- package/dist/chunk-L7MSPGDS.js +5 -0
- package/dist/{chunk-43URS56H.js → chunk-LDU5T3DN.js} +1 -1
- package/dist/chunk-LHKVXJPX.js +1 -0
- package/dist/{chunk-EO4YJFMY.js → chunk-LMQGNECW.js} +86 -200
- package/dist/{chunk-TQ7URMGS.js → chunk-LQ7ENG4V.js} +1 -1
- package/dist/chunk-LVLAOBJM.js +103 -0
- package/dist/chunk-LWCTKI4Z.js +18 -0
- package/dist/chunk-M3ACZWMR.js +1 -0
- package/dist/chunk-M4BVLMPH.js +31 -0
- package/dist/{chunk-NCRWOW6F.js → chunk-M5TGCSUK.js} +1 -1
- package/dist/chunk-M7LPHCP2.js +274 -0
- package/dist/{chunk-IDKRJ2F4.js → chunk-MDRVCBDO.js} +1 -1
- package/dist/chunk-MR2AUT7Q.js +1 -0
- package/dist/chunk-MXJAH2GW.js +5 -0
- package/dist/{chunk-UU6BRRYS.js → chunk-MYAIWSOO.js} +1 -1
- package/dist/{chunk-NT4A37HG.js → chunk-N2RFDHRY.js} +1 -1
- package/dist/{chunk-GSE6FXZU.js → chunk-NB4BRW3H.js} +1 -1
- package/dist/chunk-NDKSG4CC.js +97 -0
- package/dist/chunk-NK2MGR6A.js +1 -0
- package/dist/chunk-NOH63WC6.js +12 -0
- package/dist/{chunk-BVB3DTNE.js → chunk-OGWPS55W.js} +1 -1
- package/dist/chunk-OQ5CLM2H.js +4 -0
- package/dist/{chunk-PVAZCZSY.js → chunk-OQU3HLAE.js} +1 -1
- package/dist/chunk-OVWUGAEU.js +11 -0
- package/dist/chunk-OX7UVDSU.js +6 -0
- package/dist/chunk-P33TONYG.js +1 -0
- package/dist/chunk-PEVIRAMR.js +6 -0
- package/dist/{chunk-YPCXVZ2N.js → chunk-PGLWZMJU.js} +4 -4
- package/dist/chunk-PIAD3F6M.js +16 -0
- package/dist/chunk-PMHP57MH.js +20 -0
- package/dist/{chunk-F3PZGSOY.js → chunk-POKY4RWR.js} +1 -1
- package/dist/chunk-PSSYLJG4.js +2 -0
- package/dist/chunk-PYIICTLX.js +1 -0
- package/dist/chunk-PZUGDE7N.js +2 -0
- package/dist/{chunk-NU5WLZ6Y.js → chunk-Q2SZCZE7.js} +1 -1
- package/dist/{chunk-MUM34KUM.js → chunk-Q2XRITUG.js} +1 -1
- package/dist/chunk-Q5MEFIMV.js +4 -0
- package/dist/chunk-Q66CI37F.js +7 -0
- package/dist/chunk-QFWWCZOI.js +1 -0
- package/dist/{chunk-TR4OWSEX.js → chunk-QFYLJVJW.js} +1 -1
- package/dist/chunk-QKVVJXWS.js +3 -0
- package/dist/chunk-QN3774QI.js +1 -0
- package/dist/chunk-R2BDABJD.js +213 -0
- package/dist/{chunk-7HWMURCW.js → chunk-R7EMV77H.js} +1 -1
- package/dist/chunk-RFGEM5JC.js +3 -0
- package/dist/{chunk-7A3RW2VM.js → chunk-RVQV6G5M.js} +1 -1
- package/dist/chunk-S67I4E7M.js +5 -0
- package/dist/chunk-SFPXYHHL.js +1 -0
- package/dist/{chunk-4OCVXE5Y.js → chunk-SFQEHDJY.js} +1 -1
- package/dist/chunk-SL3VBI62.js +3 -0
- package/dist/{chunk-LOWSU4BB.js → chunk-SNNZ4U2W.js} +1 -1
- package/dist/chunk-T2IUXXCT.js +1 -0
- package/dist/chunk-TPSA4JN5.js +1 -0
- package/dist/chunk-TTEF7GTX.js +1 -0
- package/dist/{chunk-FQL2WEKX.js → chunk-U25W35TX.js} +1 -1
- package/dist/chunk-UIQL5ZF3.js +1 -0
- package/dist/chunk-UK6576EO.js +1 -0
- package/dist/chunk-ULD7CIOY.js +4 -0
- package/dist/{chunk-D3KFKT4D.js → chunk-UOS2XLGG.js} +1 -1
- package/dist/{chunk-EMH7OHCW.js → chunk-UVRKTMF7.js} +1 -1
- package/dist/{chunk-ZTICX3AO.js → chunk-UWMZ5CSB.js} +1 -1
- package/dist/chunk-UZROQRLX.js +2 -0
- package/dist/{chunk-5BGUKF7L.js → chunk-V75WUEFU.js} +1 -1
- package/dist/chunk-VB7YQMAM.js +5 -0
- package/dist/chunk-VHUD3CBC.js +3 -0
- package/dist/chunk-VMMUJN4T.js +17 -0
- package/dist/{chunk-S36VGP37.js → chunk-VW6QS7DO.js} +1 -1
- package/dist/chunk-VWH3VPYI.js +1 -0
- package/dist/{chunk-4TF7ER72.js → chunk-WBJ6ZHYH.js} +1 -1
- package/dist/chunk-WDFCOZAY.js +16 -0
- package/dist/chunk-WFWISGLS.js +1 -0
- package/dist/chunk-WGUOLSMG.js +1 -0
- package/dist/{chunk-PFXNBHQQ.js → chunk-WJSUIUBW.js} +2 -2
- package/dist/{chunk-TFXUDHCP.js → chunk-WMAFG2JD.js} +1 -1
- package/dist/chunk-X2H6I2WW.js +5 -0
- package/dist/{chunk-DSS4ECIH.js → chunk-X7HVAVSZ.js} +1 -1
- package/dist/{chunk-NYYXH2SX.js → chunk-XBQDMGUN.js} +1 -1
- package/dist/chunk-XITZIDCL.js +18 -0
- package/dist/chunk-XKRJKUA7.js +1 -0
- package/dist/{chunk-FEQHCE2E.js → chunk-XM7YUXTF.js} +2 -2
- package/dist/chunk-XMODGI45.js +1 -0
- package/dist/{chunk-B3M3KIOU.js → chunk-XNNKLUTN.js} +1 -1
- package/dist/chunk-XTREQ4A2.js +1 -0
- package/dist/chunk-YGYEM6QO.js +1 -0
- package/dist/{chunk-LWU5TKNA.js → chunk-YKS7MH3F.js} +9 -6
- package/dist/chunk-YTUDXZLN.js +1 -0
- package/dist/{chunk-I3J63RFV.js → chunk-YTUUU33R.js} +1 -1
- package/dist/chunk-YVVU4J5O.js +3 -0
- package/dist/{chunk-4TZCRMBJ.js → chunk-YVY32DNA.js} +1 -1
- package/dist/chunk-Z5SILNH2.js +7 -0
- package/dist/chunk-ZAA2DXK5.js +5 -0
- package/dist/chunk-ZDQO6CNY.js +1 -0
- package/dist/chunk-ZGV3HNEV.js +1 -0
- package/dist/chunk-ZQDDRIBA.js +22 -0
- package/dist/{chunk-QTLGMJDW.js → chunk-ZT5WFUKJ.js} +4 -4
- package/dist/chunk-ZYQ2XWC5.js +5 -0
- 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 -1
- package/dist/cli/commands/app/bulk/status.js +1 -1
- package/dist/cli/commands/app/config/link.js +1 -1
- 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 -1
- package/dist/cli/commands/app/demo/watcher.js +1 -1
- package/dist/cli/commands/app/deploy.js +1 -1
- package/dist/cli/commands/app/dev/clean.js +1 -1
- package/dist/cli/commands/app/dev.js +1 -1
- package/dist/cli/commands/app/env/pull.js +1 -1
- 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 -1
- package/dist/cli/commands/app/function/replay.js +1 -1
- 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 -1
- package/dist/cli/commands/app/graphiql.js +1 -1
- package/dist/cli/commands/app/import/channel-config.js +1 -1
- package/dist/cli/commands/app/import/custom-data-definitions.js +1 -1
- package/dist/cli/commands/app/import/dashboard-extensions.js +1 -1
- package/dist/cli/commands/app/import-custom-data-definitions.js +1 -1
- package/dist/cli/commands/app/import-extensions.js +1 -1
- package/dist/cli/commands/app/info.js +1 -1
- package/dist/cli/commands/app/init.js +1 -1
- package/dist/cli/commands/app/logs.js +1 -1
- package/dist/cli/commands/app/release.js +1 -1
- package/dist/cli/commands/app/security/check.js +1 -1
- package/dist/cli/commands/app/security/clean.js +1 -1
- package/dist/cli/commands/app/security/instructions.js +1 -1
- package/dist/cli/commands/app/security/record.js +1 -1
- package/dist/cli/commands/app/security/review.js +1 -1
- package/dist/cli/commands/app/subscription-migrations/cancel.js +1 -1
- package/dist/cli/commands/app/subscription-migrations/list.js +1 -1
- package/dist/cli/commands/app/subscription-migrations/schedule.js +1 -1
- package/dist/cli/commands/app/subscription-migrations/status.js +1 -1
- package/dist/cli/commands/app/subscription-migrations/unschedule.js +1 -1
- package/dist/cli/commands/app/versions/list.js +1 -1
- package/dist/cli/commands/app/webhook/trigger.js +1 -1
- 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/doc/fetch.d.ts +34 -1
- package/dist/cli/commands/doc/fetch.js +1 -1
- package/dist/cli/commands/doc/search.d.ts +53 -1
- package/dist/cli/commands/doc/search.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.d.ts +6 -6
- 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/send-analytics.js +1 -1
- package/dist/cli/commands/theme/check.js +1 -1
- package/dist/cli/commands/theme/console.js +1 -1
- package/dist/cli/commands/theme/delete.js +1 -1
- package/dist/cli/commands/theme/dev.js +1 -1
- package/dist/cli/commands/theme/duplicate.js +1 -1
- package/dist/cli/commands/theme/info.js +1 -1
- package/dist/cli/commands/theme/init.js +1 -1
- 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 -1
- package/dist/cli/commands/theme/open.js +1 -1
- package/dist/cli/commands/theme/package.js +1 -1
- package/dist/cli/commands/theme/preview.js +1 -1
- package/dist/cli/commands/theme/profile.js +1 -1
- package/dist/cli/commands/theme/publish.js +1 -1
- package/dist/cli/commands/theme/pull.js +1 -1
- package/dist/cli/commands/theme/push.js +1 -1
- package/dist/cli/commands/theme/rename.js +1 -1
- package/dist/cli/commands/theme/share.js +1 -1
- package/dist/cli/commands/upgrade.d.ts +64 -0
- package/dist/cli/commands/upgrade.js +1 -1
- package/dist/cli/commands/version.js +1 -1
- package/dist/cli/help.js +1 -1
- package/dist/cli/services/commands/doc/fetch-result.d.ts +2 -0
- package/dist/cli/services/commands/doc/fetch-result.js +22 -0
- package/dist/cli/services/commands/doc/fetch.d.ts +2 -1
- package/dist/cli/services/commands/doc/fetch.js +2 -15
- package/dist/cli/services/commands/doc/search-result.d.ts +2 -0
- package/dist/cli/services/commands/doc/search-result.js +14 -0
- package/dist/cli/services/commands/doc/search.d.ts +9 -1
- package/dist/cli/services/commands/doc/search.js +27 -2
- package/dist/cli/services/commands/doc/types.d.ts +107 -0
- package/dist/cli/services/commands/doc/types.js +47 -0
- package/dist/cli/services/commands/help/types.d.ts +6 -6
- package/dist/command-event-context-LFUZ7UCA.js +1 -0
- package/dist/command-json-schema-2UMKY7MY.js +1 -0
- package/dist/command-registry.js +1 -1
- package/dist/conf-store-RI3TL6I4.js +1 -0
- package/dist/custom-oclif-loader-IZCKN67O.js +1 -0
- package/dist/deprecations-IFVUXXDB.js +1 -0
- package/dist/dist-4H2B7BMN.js +1 -0
- package/dist/dist-QNWOGQN3.js +1 -0
- package/dist/{environment-RSUK27TA.js → environment-O7ECODHU.js} +1 -1
- package/dist/environments-CYMEN7NV.js +1 -0
- package/dist/error-IL6WQMSW.js +1 -0
- package/dist/error-handler-74HKA23T.js +1 -0
- package/dist/fs-AINFLJ2E.js +1 -0
- 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/index.js +13 -13
- package/dist/is-global-2VLKV46Q.js +1 -0
- package/dist/json-error-HZB5YIHV.js +1 -0
- package/dist/{lib-TYM5B75S.js → lib-PJHT4MKY.js} +1 -1
- package/dist/{lib-55QUD4AJ.js → lib-VKSQ65BQ.js} +1 -1
- package/dist/{lib-PH52G55H.js → lib-YEZOHXF3.js} +1 -1
- package/dist/{local-R3UAQN7T.js → local-KOZETREJ.js} +1 -1
- package/dist/{metadata-JWJG4JV4.js → metadata-IBPHZB7N.js} +1 -1
- package/dist/{morph-BABFBRSW.js → morph-CRY35DIK.js} +1 -1
- package/dist/node-package-manager-DXSRNEDC.js +1 -0
- package/dist/notifications-system-XA3EBOGJ.js +1 -0
- package/dist/os-X73O7BAB.js +1 -0
- package/dist/out-B2GISN65.js +1 -0
- package/dist/output-3OYXK3Z5.js +1 -0
- package/dist/{path-CPAYTWQW.js → path-3L2QRACZ.js} +1 -1
- package/dist/system-JWYYT4PM.js +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui-PCG5D6RZ.js +1 -0
- package/dist/upgrade-7U2TUNC4.js +1 -0
- package/dist/version-7DGU2KYH.js +1 -0
- package/dist/version-SXQTRBXB.js +1 -0
- package/dist/workerd-MQZ3NKJI.js +18 -0
- package/oclif.manifest.json +1664 -427
- package/package.json +8 -8
- package/dist/analytics-APDNTBDE.js +0 -1
- package/dist/analytics-LX52KYSE.js +0 -1
- package/dist/chunk-2PDVBGQH.js +0 -7
- package/dist/chunk-2YVSZFXJ.js +0 -4
- package/dist/chunk-35WQTGN3.js +0 -5
- package/dist/chunk-37BGAWAW.js +0 -2
- package/dist/chunk-3C4WVKSO.js +0 -6
- package/dist/chunk-3LHE4GIX.js +0 -1
- package/dist/chunk-47IQIIFX.js +0 -383
- package/dist/chunk-4ES7BJEK.js +0 -1
- package/dist/chunk-4IFY7V7W.js +0 -1
- package/dist/chunk-4JGWKUJN.js +0 -2
- package/dist/chunk-4O5GQ3DS.js +0 -7
- package/dist/chunk-4O7LK5RG.js +0 -26
- package/dist/chunk-4TFJ5RW7.js +0 -8
- package/dist/chunk-4ZNBEMRT.js +0 -20
- package/dist/chunk-5JIJDUXX.js +0 -20
- package/dist/chunk-66YRAUWX.js +0 -3
- package/dist/chunk-6A4H3HPY.js +0 -7
- package/dist/chunk-6HPUOCFF.js +0 -1
- package/dist/chunk-6IDEDOXW.js +0 -2
- package/dist/chunk-6IMHGT7F.js +0 -8
- package/dist/chunk-6MC2BEW4.js +0 -1
- package/dist/chunk-73D5O7A3.js +0 -1
- package/dist/chunk-7E4MJCVE.js +0 -10
- package/dist/chunk-7HNRK2CR.js +0 -1
- package/dist/chunk-7SJHVJ3W.js +0 -5
- package/dist/chunk-ALK66U3O.js +0 -3
- package/dist/chunk-AMLCWRHU.js +0 -4
- package/dist/chunk-AYIU6Z4C.js +0 -1
- package/dist/chunk-BIWG3FQQ.js +0 -5
- package/dist/chunk-BQ3U3CQV.js +0 -1
- package/dist/chunk-C6IBY7NW.js +0 -16
- package/dist/chunk-CQF5NDTJ.js +0 -4
- package/dist/chunk-DMDLJRLW.js +0 -1
- package/dist/chunk-DMNWSUKV.js +0 -5
- package/dist/chunk-FK7GA4QQ.js +0 -1
- package/dist/chunk-FO2R6KHG.js +0 -1
- package/dist/chunk-FOAV642V.js +0 -1
- package/dist/chunk-GE4MLO3C.js +0 -5
- package/dist/chunk-GM4EFJJF.js +0 -7
- package/dist/chunk-GN66BRYF.js +0 -1
- package/dist/chunk-GPRZYFDE.js +0 -1
- package/dist/chunk-GZ7VGCVW.js +0 -3
- package/dist/chunk-HASIOUH2.js +0 -3
- package/dist/chunk-HILYTMVA.js +0 -1
- package/dist/chunk-HJHS23Q3.js +0 -1
- package/dist/chunk-HLPAVELJ.js +0 -1
- package/dist/chunk-HPM3HF7A.js +0 -1
- package/dist/chunk-HQJ62PII.js +0 -3
- package/dist/chunk-HQY6JM6G.js +0 -6
- package/dist/chunk-HSYMUYEZ.js +0 -359
- package/dist/chunk-I5PQZRYM.js +0 -32
- package/dist/chunk-IPZ6LUJV.js +0 -4
- package/dist/chunk-J4NBPC57.js +0 -1
- package/dist/chunk-J6LQR2F6.js +0 -7
- package/dist/chunk-JYGZD4HM.js +0 -1
- package/dist/chunk-K3HUQLIC.js +0 -6
- package/dist/chunk-K7D53KSJ.js +0 -1
- package/dist/chunk-KQFA5YTT.js +0 -97
- package/dist/chunk-KTD7VLHL.js +0 -2
- package/dist/chunk-L4DFMMOI.js +0 -1
- package/dist/chunk-LJZTSQRD.js +0 -11
- package/dist/chunk-LLPB6JN5.js +0 -9
- package/dist/chunk-LYIXRMQJ.js +0 -46
- package/dist/chunk-MCNK5SJ6.js +0 -2
- package/dist/chunk-MJZSSCGD.js +0 -5
- package/dist/chunk-N55MSO3X.js +0 -12
- package/dist/chunk-N5AZZYQA.js +0 -4
- package/dist/chunk-NCVGCVQ5.js +0 -6
- package/dist/chunk-O5FFMTJE.js +0 -25
- package/dist/chunk-OE3HSNSE.js +0 -16
- package/dist/chunk-ONF7XXEL.js +0 -1
- package/dist/chunk-PG4S5HJJ.js +0 -5
- package/dist/chunk-PHG4DASY.js +0 -18
- package/dist/chunk-PP4VCR4Y.js +0 -1
- package/dist/chunk-PWS4VFSD.js +0 -1
- package/dist/chunk-Q37WAD6F.js +0 -1
- package/dist/chunk-Q43LBSPT.js +0 -1
- package/dist/chunk-QAJZUJR5.js +0 -1
- package/dist/chunk-QO5RNGWA.js +0 -1
- package/dist/chunk-QPQS2YU3.js +0 -1
- package/dist/chunk-QUXQM3S3.js +0 -1
- package/dist/chunk-R3KSOCMB.js +0 -6
- package/dist/chunk-R74WHKHH.js +0 -15
- package/dist/chunk-RJSQMKKS.js +0 -1
- package/dist/chunk-RK2V6OIJ.js +0 -2
- package/dist/chunk-RUHQNF2W.js +0 -1
- package/dist/chunk-RXTLNUPF.js +0 -1
- package/dist/chunk-SNE4RHM4.js +0 -1
- package/dist/chunk-SQAS5RVZ.js +0 -10
- package/dist/chunk-SZI6G247.js +0 -103
- package/dist/chunk-TVCWDEVS.js +0 -1
- package/dist/chunk-TYMYIUIQ.js +0 -1
- package/dist/chunk-UIC7K2HX.js +0 -7
- package/dist/chunk-UNHT4ZFP.js +0 -317
- package/dist/chunk-UQ6ALA3Y.js +0 -3
- package/dist/chunk-UWI76E2L.js +0 -18
- package/dist/chunk-VE35YELD.js +0 -1
- package/dist/chunk-VGBUN3CZ.js +0 -17
- package/dist/chunk-VMNOSVPT.js +0 -8
- package/dist/chunk-VNFUCH6T.js +0 -1
- package/dist/chunk-W4KE7AO6.js +0 -1
- package/dist/chunk-WEPO4J2F.js +0 -19
- package/dist/chunk-WLWHCUPZ.js +0 -1
- package/dist/chunk-XGKCPD6W.js +0 -1
- package/dist/chunk-XNVOKAF2.js +0 -1
- package/dist/chunk-XSMCQLJW.js +0 -1
- package/dist/chunk-XUUIBSLW.js +0 -1
- package/dist/chunk-XWQM2NZ2.js +0 -2
- package/dist/chunk-Y3PY5LP7.js +0 -3
- package/dist/chunk-Y62EMOQA.js +0 -1
- package/dist/chunk-Y743UVBS.js +0 -16
- package/dist/chunk-YBSX53QP.js +0 -1
- package/dist/chunk-YHCP326A.js +0 -16
- package/dist/chunk-YHESTFMZ.js +0 -4
- package/dist/chunk-YT27FIQN.js +0 -275
- package/dist/chunk-YTR5JHNJ.js +0 -2
- package/dist/chunk-YYA5VGDW.js +0 -1
- package/dist/chunk-Z6X2GT6Q.js +0 -1
- package/dist/chunk-ZEE32UH6.js +0 -1
- package/dist/cli/commands/app/app-logs/sources.js +0 -1
- package/dist/command-json-schema-SS4GDJTQ.js +0 -1
- package/dist/conf-store-54YJCIDK.js +0 -1
- package/dist/custom-oclif-loader-3UBH7Q7R.js +0 -1
- package/dist/deprecations-ZX7ZKF6L.js +0 -1
- package/dist/dist-JMNE7MP6.js +0 -1
- package/dist/dist-M2AXGBOL.js +0 -1
- package/dist/environments-KD2IDYPG.js +0 -1
- package/dist/error-AA6LW3PN.js +0 -1
- package/dist/error-handler-4VW3AV2G.js +0 -1
- package/dist/fs-4QZCAEP7.js +0 -1
- package/dist/is-global-FKG327CG.js +0 -1
- package/dist/json-error-32ETFU3V.js +0 -1
- package/dist/node-package-manager-M4XHUTQR.js +0 -1
- package/dist/notifications-system-QVM2JWKB.js +0 -1
- package/dist/os-FEHBQQKP.js +0 -1
- package/dist/out-53ABAVL7.js +0 -1
- package/dist/output-2LS5AOAH.js +0 -1
- package/dist/system-TMD2LYZM.js +0 -1
- package/dist/ui-FNPICAAH.js +0 -1
- package/dist/upgrade-YYPP5VZY.js +0 -1
- package/dist/version-OX3MORI6.js +0 -1
- package/dist/version-P7D5ME4Z.js +0 -1
- package/dist/workerd-TKVRZK2F.js +0 -18
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import{d as le,h as pe,i as de,j as ce}from"./chunk-PZUGDE7N.js";import{a as ie,c as se,d as ae,e as re}from"./chunk-EMSF57ZB.js";import{a as M}from"./chunk-ACA2BGAD.js";import{b as D}from"./chunk-XBQDMGUN.js";import{a as oe}from"./chunk-ZGV3HNEV.js";import{a as q}from"./chunk-FWB3GLMW.js";import{Ma as ne,N as X,Q as ee,fa as te,g as Z}from"./chunk-3C6VLJ5D.js";import{a as Q}from"./chunk-IQVRP7CT.js";import{b as W,c as J}from"./chunk-Q2SZCZE7.js";import{A as T,F as Y,I as z,N as K,y as N,z as G}from"./chunk-CZ22VZDA.js";import{a as U}from"./chunk-BN7ZXAZJ.js";import{d as $}from"./chunk-X7HVAVSZ.js";import{h as y,j as E}from"./chunk-2VSNFOKD.js";import{Ba as V,Db as k,L as B,rb as C,va as S,wb as H,yb as R}from"./chunk-LWCTKI4Z.js";import{b as d}from"./chunk-FZCGRIOM.js";import{b as Ie}from"./chunk-YTUUU33R.js";import{c as _,h as j}from"./chunk-IWTNUJGY.js";import{e as Ee,g as m}from"./chunk-VKWPEFWQ.js";m();m();m();async function ue(e){let t,o;e.bundlePath&&(t=await re(e.developerPlatformClient,{id:e.apiKey,apiKey:e.apiKey,organizationId:e.organizationId}),await ae(t,e.bundlePath));let n={appManifest:e.appManifest,appId:e.appId,apiKey:e.apiKey,name:e.name,organizationId:e.organizationId,skipPublish:!e.release,message:e.message,versionTag:e.version,commitReference:e.commitReference};t&&(n.bundleUrl=t),e.appModules.length>0&&(n.appModules=e.appModules);let i=await e.developerPlatformClient.deploy(n);if(!i.appDeploy.appVersion){let a=_e(i.appDeploy.userErrors??[],e.appModuleRegistrationIds,e.appModules,{version:e.version});throw new y({bold:"Version couldn't be created."},null,[],a)}return i.appDeploy.userErrors?.length>0&&(o=i.appDeploy.userErrors.map(a=>a.message).join(", ")||"The app version could not be released."),{validationErrors:i.appDeploy.appVersion.appModuleVersions.filter(a=>a.validationErrors.length>0).map(a=>({uuid:a.registrationUuid,errors:a.validationErrors})),versionGid:i.appDeploy.appVersion.uuid,versionTag:i.appDeploy.appVersion.versionTag,location:i.appDeploy.appVersion.location,message:i.appDeploy.appVersion.message,deployError:o}}var x=`
|
|
2
|
+
Validation errors`,O=`
|
|
3
|
+
`;function _e(e,t,o,n={}){let i=l=>l.details?.some(v=>v.extension_id)??!1,s=(l,v)=>{let w=l.details?.find(F=>typeof F.extension_id<"u")?.extension_id??"";return Object.values(v).includes(w.toString())},a=l=>{let v=l.on?l.on[0]:void 0;return o.some(w=>w.uid===v?.user_identifier)},[c,u]=D(e,l=>a(l)),[h,p]=D(u,l=>i(l)),[g,r]=D(h,l=>s(l,t));return[...Se(p,{version:n.version}),...De(g,t),...Me(r),...Ae(c,o)]}function Se(e,t={}){return e.length>0?e.filter(o=>o.field&&o.field.includes("version_tag")&&o.message==="has already been taken").length>0&&t.version?[{body:["An app version with the name",{userInput:t.version},"already exists. Deploy again with a different version name."]}]:e.length===1?[{body:e[0]?.message??""}]:[{body:{list:{items:e.map(o=>o.message)}}}]:[]}function De(e,t){return e.reduce((o,n)=>{let i=(n.field??["unknown"]).join(".").replace("extension_points","extensions.targeting"),s=i==="base"?n.message:`${i}: ${n.message}`,a=n.details.find(r=>typeof r.extension_title<"u")?.extension_title,c=n.details.find(r=>typeof r.specification_identifier<"u")?.specification_identifier,u=n.details.find(r=>typeof r.extension_id<"u")?.extension_id?.toString(),p=Object.keys(t).find(r=>t[r]===u)??a;c==="webhook_subscription"&&(p="Webhook Subscription");let g=o.find(r=>r.title===p);if(g){let r=g.body,f=n.category==="invalid"?r.find(l=>l.list.title===x):r.find(l=>l.list.title===O);f?f.list.items.includes(s)||f.list.items.push(s):r.push({list:{title:n.category==="invalid"?x:O,items:[s]}})}else o.push({title:p,body:[{list:{title:n.category==="invalid"?x:O,items:[s]}}]});return o.forEach(r=>{r.body.sort((f,l)=>f.list.title===x?1:l.list.title===x?-1:0)}),o},[])}function Ae(e,t){return e.reduce((o,n)=>{let s=(n.on?n.on[0]:void 0)?.user_identifier,a=t.find(r=>r.uid===s),c=s?`Extension with uid: ${s}`:"Unknown Extension",u=a?.handle??c,p=`${(n.field??["unknown"]).join(".")}: ${n.message}`,g=o.find(r=>r.title===u);if(g){let f=g.body.find(l=>l.list.title===x);f&&(f.list.items.includes(p)||f.list.items.push(p))}else o.push({title:u,body:[{list:{title:x,items:[p]}}]});return o},[])}function Me(e){return e.reduce((t,o)=>{let n=o.details.find(s=>typeof s.extension_title<"u")?.extension_title,i=t.find(s=>s.title===n);return i?i.errorCount+=1:t.push({title:n,errorCount:1}),t},[]).map(t=>({title:t.title,body:`
|
|
4
|
+
${t.errorCount} error${t.errorCount>1?"s":""} found in your extensions. Fix these issues and try deploying again.`}))}m();async function me(e){let t=_(e.app.directory,".shopify","deploy-bundle");await V(t,{force:!0}),await S(t),await ie(e.appManifest,t),e.skipBuild||await Z(e.app);let o=e.app.allExtensions.map(i=>({prefix:i.localIdentifier,action:async(s,a,c)=>{await i.buildForBundle({stderr:a,stdout:s,signal:c,app:e.app,environment:"production",skipBuild:e.skipBuild},t)}}));if(await N({processes:o,showTimestamps:!1}),e.app.allExtensions.some(i=>i.hasDeploySteps))return await se(t,e.bundlePath),e.bundlePath}async function Te(e){let{app:t,remoteApp:o,developerPlatformClient:n,noRelease:i,allowUpdates:s,allowDeletes:a,extensions:c}=e,u=[i,s,a].some(Boolean),h=[`App can't be deployed until Partner Dashboard managed extensions are added to your version or removed from your app:
|
|
5
|
+
`,c.map(f=>` - ${f.title}`).join(`
|
|
6
|
+
`)],p=[`
|
|
7
|
+
|
|
8
|
+
Run `,{command:"shopify app import dashboard-extensions"}," to add legacy extensions."];if(u||!K())throw new y(h,p);let g=[`
|
|
9
|
+
|
|
10
|
+
Run `,{command:"shopify app import dashboard-extensions"}," to add legacy extensions now?"];if(await Y({message:[...h,...g],confirmationMessage:"Yes, add legacy extensions and deploy",cancellationMessage:"No, don't add legacy extensions"}))return await de({app:t,remoteApp:o,developerPlatformClient:n,extensions:c}),X(t);throw new E}async function Ce(e){let{app:t,remoteApp:o,developerPlatformClient:n}=e,i=await ce({developerPlatformClient:n,apiKey:o.apiKey,organizationId:o.organizationId,extensionTypes:le,onlyDashboardManaged:!0}),s=pe(e.app,i);return s.length===0?t:Te({...e,extensions:s})}async function fe(e){let{remoteApp:t,developerPlatformClient:o,noRelease:n,allowUpdates:i,allowDeletes:s}=e,a,c;try{a=await Ce({app:e.app,remoteApp:t,developerPlatformClient:o,noRelease:n,allowUpdates:i,allowDeletes:s}),c=await te({...e,app:a,developerPlatformClient:o,allowUpdates:i,allowDeletes:s})}catch(I){if(!(I instanceof E))throw I;return{status:"cancelled",app:e.app}}let{deployIdentifiers:u,didMigrateExtensionsToDevDash:h}=c,p=!n,g=t.apiKey;k(),p?R(`Releasing a new app version as part of ${t.title}`):R(`Creating a new app version as part of ${t.title}`),k();let r,f=_(e.app.directory,".shopify",`deploy-bundle.${o.bundleFormat}`);await S(j(f));let l=await a.manifest(Re(a,u.appModuleUuids)),v=await me({app:a,appManifest:l,bundlePath:f,skipBuild:e.skipBuild}),w;return p?w="Releasing an app version":w="Creating an app version",await z([{title:"Running validation",task:async()=>{await a.preDeployValidation()}},{title:w,task:async()=>{let I=await Promise.all(a.allExtensions.flatMap(xe=>xe.bundleConfig({appModuleUuids:u.appModuleUuids,developerPlatformClient:o,apiKey:g,appConfiguration:a.configuration})));r=await ue({appManifest:l,appId:t.id,apiKey:g,name:a.name,organizationId:t.organizationId,bundlePath:v,appModules:B(I),release:p,developerPlatformClient:o,appModuleRegistrationIds:u.appModuleRegistrationIds,message:e.message,version:e.version,commitReference:e.commitReference})}}]),{status:p&&r.deployError?"partial":"success",app:a,release:p,uploadExtensionsBundleResult:r,didMigrateExtensionsToDevDash:h}}function Re(e,t){return Object.fromEntries(e.allExtensions.filter(o=>o.isUUIDStrategyExtension).map(o=>[o.localIdentifier,t[o.localIdentifier]]))}m();var ge=d.object({name:d.string(),clientId:d.string().min(1).describe("The client ID of the app receiving the deployment.")}).strict(),ye=d.object({gid:d.string().regex(/^gid:\/\/shopify\/Version\/\d+$/).describe("The Shopify app version GID."),name:d.string().min(1).nullable().describe("The version tag, or null when no tag is available."),message:d.string().min(1).nullable().describe("The version message, or null when no message is available."),url:d.string().url().describe("The Developer Dashboard URL for this version.")}).strict(),P=d.object({released:d.boolean().describe("Whether this command released the version to users."),version:ye}).strict(),he={app:ge,deployment:P},A=U({name:"AppDeployResult",schema:d.discriminatedUnion("status",[d.object({status:d.literal("success"),...he}).strict(),d.object({status:d.literal("partial"),...he,deployment:P.extend({released:d.literal(!1)}),errors:d.array(M).min(1)}).strict(),d.object({status:d.literal("cancelled")}).strict()]),definitions:{JsonAbortError:M,App:ge,AppDeployment:P,AppDeploymentVersion:ye}});m();async function be(e,t,o,n){if(n==="json"){let i=ke(e,t);if(H(A.encode(i)),i.status==="cancelled")throw Object.assign(new E,{oclif:{exit:0}});i.status==="partial"&&(process.exitCode=1);return}if(e.status==="cancelled")throw new E;await Oe({...e,project:o})}function ke(e,t){if(e.status==="cancelled")return{status:"cancelled"};let{release:o,uploadExtensionsBundleResult:n}=e,i={app:{name:t.title,clientId:t.apiKey},deployment:{released:o&&!n.deployError,version:{gid:n.versionGid,name:n.versionTag===""?null:n.versionTag??null,message:n.message===""?null:n.message??null,url:n.location}}};return o&&n.deployError?{...i,deployment:{...i.deployment,released:!1},status:"partial",errors:[{type:"abort",message:n.deployError}]}:{...i,status:"success"}}async function Oe({app:e,project:t,release:o,uploadExtensionsBundleResult:n,didMigrateExtensionsToDevDash:i}){let s=[{link:{label:n.versionTag??"version",url:n.location}},n.message?`
|
|
11
|
+
${n.message}`:""],a=[];if(i){let c=await ee(e.directory),u=Object.values(c).filter(p=>p!==c[e.configuration.client_id]),h=[];u.length>0&&h.push("\u2022 Map extension IDs to other copies of your app by running",{command:C(t.packageManager,"shopify app deploy")},"for: ",{list:{items:u}}),h.push("\u2022 Commit to source control to ensure your extension IDs aren't regenerated on the next deploy."),a=[{title:"Next steps",body:h},{title:"Reference",body:["\u2022 ",{link:{label:"Migrating from the Partner Dashboard",url:"https://shopify.dev/docs/apps/build/dev-dashboard/migrate-from-partners"}}]}]}return o?n.deployError?G({headline:"New version created, but not released.",body:[...s,`
|
|
12
|
+
|
|
13
|
+
${n.deployError}`],customSections:a}):T({headline:"New version released to users.",body:s,customSections:a}):T({headline:"New version created.",body:s,customSections:a,nextSteps:[["Run",{command:C(t.packageManager,"shopify app release",`--version=${n.versionTag}`)},"to release this version to users."]]})}m();function ve(e){if(typeof e>"u")return;let t=["Invalid version name:",{userInput:e}],o=100;if(e.length>o)throw new y(t,`Version name must be ${o} characters or less.`);let n=[".",".."];if(n.find(s=>e===s))throw new y(t,`Version name may not be any of: ${n.map(s=>`'${s}'`).join(" , ")}`);let i=/^[a-zA-Z0-9.\-_]+$/;if(!e.match(i))throw new y(t,["Version name can only contain alphanumeric characters, periods, hyphens, and underscores"])}m();function we(e){if(typeof e>"u")return;let t=["Invalid message:",{userInput:e}],o=200;if(e.length>o)throw new y(t,`Message name must be ${o} characters or less.`)}var b=Ee(Ie(),1);var L=class e extends oe{static summary="Deploy your Shopify app.";static descriptionWithMarkdown=`[Builds the app](https://shopify.dev/docs/api/shopify-cli/app/app-build), then deploys your app configuration and extensions.
|
|
14
|
+
|
|
15
|
+
This command creates an app version, which is a snapshot of your app configuration and all extensions. This version is then released to users.
|
|
16
|
+
|
|
17
|
+
This command doesn't deploy your [web app](https://shopify.dev/docs/apps/tools/cli/structure#web-components). You need to [deploy your web app](https://shopify.dev/docs/apps/deployment/web) to your own hosting solution.
|
|
18
|
+
`;static get jsonOutputSchema(){return A}static description=this.descriptionForHelp();static flags={...W,...q,...J,"client-id":b.Flags.string({hidden:!1,description:"The Client ID of your app. Use with --config to deploy that configuration to a different app than the one it is linked to.",env:"SHOPIFY_FLAG_CLIENT_ID"}),"allow-updates":b.Flags.boolean({hidden:!1,description:"Allows adding and updating extensions and configuration without requiring user confirmation. Recommended option for CI/CD environments. In non-interactive environments, provide this flag, --allow-deletes, or --no-release.",env:"SHOPIFY_FLAG_ALLOW_UPDATES"}),"allow-deletes":b.Flags.boolean({hidden:!1,description:"Allows removing extensions and configuration without requiring user confirmation. For CI/CD environments, the recommended flag is --allow-updates. In non-interactive environments, provide this flag, --allow-updates, or --no-release.",env:"SHOPIFY_FLAG_ALLOW_DELETES"}),"no-release":b.Flags.boolean({hidden:!1,description:"Creates a version but doesn't release it - it's not made available to merchants. With this flag, a user confirmation is not required. In non-interactive environments, provide this flag, --allow-updates, or --allow-deletes.",env:"SHOPIFY_FLAG_NO_RELEASE",default:!1,exclusive:["allow-updates","allow-deletes"]}),"no-build":b.Flags.boolean({description:"Use with caution: Skips building any elements of the app that require building. You should ensure your app has been prepared in advance, such as by running `shopify app build` or by caching build artifacts.",env:"SHOPIFY_FLAG_NO_BUILD",default:!1}),message:b.Flags.string({hidden:!1,description:"Optional message that will be associated with this version. This is for internal use only and won't be available externally.",env:"SHOPIFY_FLAG_MESSAGE"}),version:b.Flags.string({hidden:!1,description:"Optional version tag that will be associated with this app version. If not provided, an auto-generated identifier will be generated for this app version.",env:"SHOPIFY_FLAG_VERSION"}),"source-control-url":b.Flags.string({hidden:!1,description:"URL associated with the new app version.",env:"SHOPIFY_FLAG_SOURCE_CONTROL_URL"})};static nonTTYFlagRequirements(){return[{flags:["allow-updates","allow-deletes","no-release"]}]}async run(){let{flags:t}=await this.parse(e);await Q.addPublicMetadata(()=>({cmd_deploy_flag_message_used:!!t.message,cmd_deploy_flag_version_used:!!t.version,cmd_deploy_flag_source_url_used:!!t["source-control-url"]})),ve(t.version),we(t.message);let o=t["client-id"];await $(()=>({cmd_app_reset_used:t.reset}));let{app:n,project:i,remoteApp:s,developerPlatformClient:a,organization:c}=await ne({directory:t.path,clientId:o,forceRelink:t.reset,userProvidedConfigName:t.config}),u=t["no-release"]||t["allow-updates"],h=t["no-release"]||t["allow-deletes"],p=await fe({app:n,project:i,remoteApp:s,organization:c,developerPlatformClient:a,reset:t.reset,allowUpdates:u,allowDeletes:h,noRelease:t["no-release"],message:t.message,version:t.version,commitReference:t["source-control-url"],skipBuild:t["no-build"]});return await be(p,s,i,t.json?"json":"text"),{app:p.app}}};export{L as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as e}from"./chunk-ZQDDRIBA.js";import{b as t,c as a}from"./chunk-Q2SZCZE7.js";import{h as r}from"./chunk-2VSNFOKD.js";import{g as s}from"./chunk-VKWPEFWQ.js";s();var o=class extends e{static hidden=!0;static strict=!1;static summary="App logs were removed in Shopify CLI 5.0.";static flags={...t,...a};async run(){throw new r("`shopify app logs` and `shopify app logs sources` were removed in Shopify CLI 5.0. To see Function logs, run `shopify app dev`.")}};export{o as a};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as S}from"./chunk-VJEKDBGZ.js";import{
|
|
2
|
-
`).filter(Boolean)}catch(r){if(r instanceof i&&"exitCode"in r&&r.exitCode===1)return[];throw r}}async function tt(t){return k("cmd_all_timing_network_ms")(async()=>{let{repoUrl:e,destination:r,shallow:n,latestTag:c}=t;if(d(a`Git-cloning repository ${e} into ${o.path(r)}...`),await w(),await I(r)){if(!await v(r))throw new i(a`Can't clone to ${o.path(r)}`,"The path exists but isn't a directory.");if((await E(["*",".*"],{cwd:r,deep:1,onlyFiles:!1})).length>0)throw new i(a`Directory ${o.path(r)} already exists and is not empty`,a`Choose a different name or remove the existing directory first.`)}let[h,g]=e.split("#");if(g&&c)throw new i("Error cloning the repository. Git can't clone the latest release with a 'branch'.");if(n&&c)throw new i("Error cloning the repository. Git can't clone the latest release with the 'shallow' property.");let l=["clone","--recurse-submodules"];g&&l.push("--branch",g),n&&l.push("--depth","1"),D()||l.push("-c","core.askpass=true"),l.push(h,r);try{if(await f("git",l),c){let u=await _(r,e);await s(["checkout",u],r)}}catch(u){if(u instanceof i)throw u;if(u instanceof Error){let $=new i(u.message);throw $.stack=u.stack,$}throw u}})}async function _(t,e){let r=await L(t);if(!r)throw new i(`Couldn't obtain the most recent tag of the repository ${e}`);return r}async function et(t){let r=await s(["log","-1","--format=%H%x00%ai%x00%s%x00%D%x00%b%x00%an%x00%ae"],t);if(!r.trim())throw new i("Must have at least one commit to run command",a`Run ${o.genericShellCommand("git commit -m 'Initial commit'")} to create your first commit.`);let n=r.split("\0");return{hash:n[0],date:n[1],message:n[2],refs:n[3],body:n[4],author_name:n[5],author_email:n[6]}}async function rt(t){await s(["add","--all"],t)}async function nt(t,e){let r=["commit","-m",t];if(e?.author){if(e.author.startsWith("-"))throw new i(`Invalid commit author: ${e.author}. Author name/email can't start with a hyphen.`);r.push("--author",e.author)}return await s(r,e?.directory),(await s(["rev-parse","HEAD"],e?.directory)).trim()}async function w(){if(!await m())throw new i("Git is necessary in the environment to continue",a`Install ${o.link("git","https://git-scm.com/book/en/v2/Getting-Started-Installing-Git")}`)}function F(t){let e=/^git version (?<version>\d+\.\d+\.\d+)(?<suffix>[.\s-].*)?$/.exec(t.trim()),r=e?.groups?.version;if(!r)return;let c=/^(?:\.rc|-rc\.?)(?<number>\d+)(?:[.\s-].*)?$/.exec(e.groups?.suffix??"")?.groups?.number;return c?`${r}-rc.${c}`:r}async function it(t,e={}){let r=await C(c=>H(t,{cwd:e.cwd,env:{GIT_DIR:c}})),n=F(r);if(!n)throw d(a`Unrecognized git --version output: ${o.raw(JSON.stringify(r.slice(0,200)))}`),new i("Couldn't determine the installed Git version.",`Install Git ${t} or later, then try again.`);if((0,A.lt)(n,t))throw new i(`Git ${t} or later is required, but version ${n} is installed.`,`Upgrade Git to version ${t} or later, then try again.`)}async function H(t,e){let{captureOutput:r}=await import("./system-
|
|
1
|
+
import{a as S}from"./chunk-VJEKDBGZ.js";import{a as f}from"./chunk-DFQ4WTET.js";import{f as k}from"./chunk-X7HVAVSZ.js";import{h as i}from"./chunk-2VSNFOKD.js";import{Bb as d,Da as v,Sa as I,Va as E,ja as C,qb as o,sb as a}from"./chunk-LWCTKI4Z.js";import{a as D,r as m}from"./chunk-3A3DZVEJ.js";import{p}from"./chunk-IWTNUJGY.js";import{a as T}from"./chunk-CX5CC6P5.js";import{e as G,g as b}from"./chunk-VKWPEFWQ.js";b();var A=G(T()),O=G(S());async function s(t,e){try{return(await f("git",t,{cwd:e})).stdout}catch(r){if(r instanceof Error){let n=new i(r.message);throw n.stack=r.stack,"exitCode"in r&&Object.assign(n,{exitCode:r.exitCode}),n}throw r}}async function Z(t,e="main"){if(e.startsWith("-"))throw new i(`Invalid initial branch name: ${e}. Branch names can't start with a hyphen.`);d(a`Initializing git repository at ${o.path(t)}...`),await w(),await s(["init"],t),await s(["checkout","-b",e],t)}async function V(t,e){try{return(await s(["check-ignore",...e],t)).split(`
|
|
2
|
+
`).filter(Boolean)}catch(r){if(r instanceof i&&"exitCode"in r&&r.exitCode===1)return[];throw r}}async function tt(t){return k("cmd_all_timing_network_ms")(async()=>{let{repoUrl:e,destination:r,shallow:n,latestTag:c}=t;if(d(a`Git-cloning repository ${e} into ${o.path(r)}...`),await w(),await I(r)){if(!await v(r))throw new i(a`Can't clone to ${o.path(r)}`,"The path exists but isn't a directory.");if((await E(["*",".*"],{cwd:r,deep:1,onlyFiles:!1})).length>0)throw new i(a`Directory ${o.path(r)} already exists and is not empty`,a`Choose a different name or remove the existing directory first.`)}let[h,g]=e.split("#");if(g&&c)throw new i("Error cloning the repository. Git can't clone the latest release with a 'branch'.");if(n&&c)throw new i("Error cloning the repository. Git can't clone the latest release with the 'shallow' property.");let l=["clone","--recurse-submodules"];g&&l.push("--branch",g),n&&l.push("--depth","1"),D()||l.push("-c","core.askpass=true"),l.push(h,r);try{if(await f("git",l),c){let u=await _(r,e);await s(["checkout",u],r)}}catch(u){if(u instanceof i)throw u;if(u instanceof Error){let $=new i(u.message);throw $.stack=u.stack,$}throw u}})}async function _(t,e){let r=await L(t);if(!r)throw new i(`Couldn't obtain the most recent tag of the repository ${e}`);return r}async function et(t){let r=await s(["log","-1","--format=%H%x00%ai%x00%s%x00%D%x00%b%x00%an%x00%ae"],t);if(!r.trim())throw new i("Must have at least one commit to run command",a`Run ${o.genericShellCommand("git commit -m 'Initial commit'")} to create your first commit.`);let n=r.split("\0");return{hash:n[0],date:n[1],message:n[2],refs:n[3],body:n[4],author_name:n[5],author_email:n[6]}}async function rt(t){await s(["add","--all"],t)}async function nt(t,e){let r=["commit","-m",t];if(e?.author){if(e.author.startsWith("-"))throw new i(`Invalid commit author: ${e.author}. Author name/email can't start with a hyphen.`);r.push("--author",e.author)}return await s(r,e?.directory),(await s(["rev-parse","HEAD"],e?.directory)).trim()}async function w(){if(!await m())throw new i("Git is necessary in the environment to continue",a`Install ${o.link("git","https://git-scm.com/book/en/v2/Getting-Started-Installing-Git")}`)}function F(t){let e=/^git version (?<version>\d+\.\d+\.\d+)(?<suffix>[.\s-].*)?$/.exec(t.trim()),r=e?.groups?.version;if(!r)return;let c=/^(?:\.rc|-rc\.?)(?<number>\d+)(?:[.\s-].*)?$/.exec(e.groups?.suffix??"")?.groups?.number;return c?`${r}-rc.${c}`:r}async function it(t,e={}){let r=await C(c=>H(t,{cwd:e.cwd,env:{GIT_DIR:c}})),n=F(r);if(!n)throw d(a`Unrecognized git --version output: ${o.raw(JSON.stringify(r.slice(0,200)))}`),new i("Couldn't determine the installed Git version.",`Install Git ${t} or later, then try again.`);if((0,A.lt)(n,t))throw new i(`Git ${t} or later is required, but version ${n} is installed.`,`Upgrade Git to version ${t} or later, then try again.`)}async function H(t,e){let{captureOutput:r}=await import("./system-JWYYT4PM.js");try{return await r("git",["--version"],e)}catch(n){if(n instanceof i)throw n;if(n instanceof Error&&"code"in n&&n.code==="ENOENT")throw new i(`Git ${t} or later is required, but Git isn't installed.`,`Install Git ${t} or later, then try again.`);let c=n instanceof Error?n.message:String(n);d(a`Couldn't run git --version: ${o.raw(c)}`);let h=n instanceof Error&&"stderr"in n&&typeof n.stderr=="string"?n.stderr.trim():"";throw new i(h?`Couldn't run Git to check its version: ${h}`:"Couldn't run Git to check its version.",`Check that Git ${t} or later is installed and can run, then try again.`)}}var y=class extends i{};async function ot(t){if(await w(),!await R(t))throw new y(`${o.path(t??p())} is not a Git directory`)}async function at(t){return await m()?R(t):!1}async function R(t){try{return await f("git",["rev-parse","--git-dir"],{cwd:t}),!0}catch(e){if(e instanceof Error&&"exitCode"in e&&e.exitCode===128)return!1;throw e}}var x=class extends i{};async function st(t){if(!await j(t))throw new x(`${o.path(t??p())} is not a clean Git directory`)}async function j(t){return(await s(["status","--porcelain"],t)).trim()===""}async function L(t){try{return(await s(["describe","--tags","--abbrev=0"],t)).trim()||void 0}catch(e){if(e instanceof i&&"exitCode"in e&&e.exitCode===128)return;throw e}}async function ct(t,e="origin"){if(d(a`Removing git remote ${e} from ${o.path(t)}...`),await w(),!(await s(["remote"],t)).split(`
|
|
3
3
|
`).filter(Boolean).includes(e)){d(a`Remote ${e} does not exist, no action needed`);return}await s(["remote","remove",e],t)}export{Z as a,V as b,tt as c,et as d,rt as e,nt as f,it as g,ot as h,at as i,x as j,st as k,j as l,ct as m};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as l}from"./chunk-L7MSPGDS.js";import{a as m}from"./chunk-T2IUXXCT.js";import{b as c}from"./chunk-7GHSE7SG.js";import{a as p}from"./chunk-ZGV3HNEV.js";import{a as s}from"./chunk-FWB3GLMW.js";import{Ma as r}from"./chunk-3C6VLJ5D.js";import{b as i,c as n}from"./chunk-Q2SZCZE7.js";import{g as o}from"./chunk-VKWPEFWQ.js";o();var e=class d extends p{static summary="Display app and extensions environment variables.";static descriptionWithMarkdown="Displays environment variables that can be used to deploy apps and app extensions.";static get jsonOutputSchema(){return c}static description=this.descriptionForHelp();static flags={...i,...n,...s};async run(){let{flags:t}=await this.parse(d),{app:a,remoteApp:f,organization:u}=await r({directory:t.path,clientId:t["client-id"],forceRelink:t.reset,userProvidedConfigName:t.config}),g=await m(a,f,u);return l(g,t.json?"json":"text"),{app:a}}};export{e as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{B as n}from"./chunk-CZ22VZDA.js";import{g as e}from"./chunk-VKWPEFWQ.js";e();function d({from:o,to:r}){n({headline:[{command:`shopify ${o}`},"has moved."],body:["This command will be removed in a future release. Use",{command:`shopify ${r}`},"instead."]})}export{d as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{T as i}from"./chunk-CZ22VZDA.js";import{yb as o}from"./chunk-LWCTKI4Z.js";import{j as d}from"./chunk-FZCGRIOM.js";import{g as n}from"./chunk-VKWPEFWQ.js";n();import{Writable as m}from"node:stream";import{StringDecoder as f}from"node:string_decoder";function p(){return d()!=="json"?{stdout:process.stdout,stderr:process.stderr}:{stdout:u(),stderr:u()}}function u(){let e=new f("utf8");return new m({write(r,t,c){let s=e.write(r);s&&o(s),c()},final(r){let t=e.end();t&&o(t),r()}})}async function y(e,r){let t=p();try{await i(e,r,t.stdout===process.stdout?{stdio:"inherit"}:{stdin:"inherit",...t})}finally{t.stdout!==process.stdout&&t.stdout.end(),t.stderr!==process.stderr&&t.stderr.end()}}export{p as a,y as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as y,c as S,f as C,g as B}from"./chunk-4GOJQKY5.js";import{a as x}from"./chunk-7RPFJZLP.js";import{a as b}from"./chunk-FWB3GLMW.js";import{Na as w,q as g}from"./chunk-3C6VLJ5D.js";import{b as h,c as F}from"./chunk-Q2SZCZE7.js";import{A as d,y as l}from"./chunk-CZ22VZDA.js";import{c as p}from"./chunk-J6TW43TG.js";import{a}from"./chunk-BN7ZXAZJ.js";import{wb as f}from"./chunk-LWCTKI4Z.js";import{b as s,h as m}from"./chunk-FZCGRIOM.js";import{g as o}from"./chunk-VKWPEFWQ.js";o();o();var j=S.extend({wasmPath:y.nullable().describe("The built Wasm file, or null when the build produced no file.")}).strict(),e=a({name:"FunctionBuildResult",schema:s.object({status:s.literal("success"),function:j}).strict(),definitions:{FunctionBuild:j}});o();function A(n,t){t?f(e.encode(n)):d({headline:"Function built successfully."})}var r=class n extends x{static get jsonOutputSchema(){return e}static summary="Compile a function to wasm.";static descriptionWithMarkdown="Compiles the function in your current directory to WebAssembly (Wasm) for testing purposes.";static description=this.descriptionForHelp();static flags={...h,...b,...C,...F};async run(){let{flags:t}=await this.parse(n),{app:i}=await w({directory:t.path,userProvidedConfigName:t.config}),u=await B(i,t.path),c=async(J,O)=>{let W=await g(u,{app:i,stdout:J,stderr:O,useTasks:!0,environment:"production"});A(W,t.json)};return t.json?await m({outputMode:"json",sink:p},()=>l({processes:[{prefix:u.localIdentifier,action:c}],showTimestamps:!1})):await c(process.stdout,process.stderr),{app:i}}};export{r as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{c as r,d as c,e as v,f,g as y}from"./chunk-YVVU4J5O.js";import{p as s,q as p,v as u}from"./chunk-DJAZBPYA.js";import{ua as i}from"./chunk-H4V55Y3Z.js";import{b as a,c as d}from"./chunk-Q2SZCZE7.js";import{wb as l}from"./chunk-LWCTKI4Z.js";import{b}from"./chunk-YTUUU33R.js";import{e as _,g as m}from"./chunk-VKWPEFWQ.js";m();var t=_(b(),1);var h=class extends u{static get jsonOutputSchema(){return r}static summary="Uploads your local theme files to the connected store, overwriting the remote version if specified.";static usage=["theme push","theme push --unpublished --json"];static descriptionWithMarkdown=`Uploads your local theme files to Shopify, overwriting the remote version if specified.
|
|
2
2
|
|
|
3
3
|
If no theme is specified, then you're prompted to select the theme to overwrite from the list of the themes in your store.
|
|
4
4
|
|
|
@@ -15,14 +15,17 @@ import{a}from"./chunk-35WQTGN3.js";import{p as n,q as m,v as l}from"./chunk-Y3PY
|
|
|
15
15
|
|
|
16
16
|
\`\`\`json
|
|
17
17
|
{
|
|
18
|
+
"status": "success",
|
|
19
|
+
"changed": true,
|
|
20
|
+
"issues": [],
|
|
18
21
|
"theme": {
|
|
19
|
-
"id": 108267175958,
|
|
22
|
+
"id": "108267175958",
|
|
20
23
|
"name": "MyTheme",
|
|
21
24
|
"role": "unpublished",
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
+
"storeDomain": "mystore.myshopify.com",
|
|
26
|
+
"editorUrl": "https://mystore.myshopify.com/admin/themes/108267175958/editor",
|
|
27
|
+
"previewUrl": "https://mystore.myshopify.com/?preview_theme_id=108267175958"
|
|
25
28
|
}
|
|
26
29
|
}
|
|
27
30
|
\`\`\`
|
|
28
|
-
`;static description=this.descriptionForHelp();static flags={...s,...
|
|
31
|
+
`;static description=this.descriptionForHelp();static flags={...a,...s,...p("upload"),...d,theme:t.Flags.string({char:"t",description:"Theme ID or name of the remote theme. Use --development, --live, --theme, or --unpublished in non-interactive environments. When using --unpublished without --development, use --theme to provide the new theme name.",env:"SHOPIFY_FLAG_THEME_ID"}),development:t.Flags.boolean({char:"d",description:"Push theme files from your remote development theme. Use --development, --live, --theme, or --unpublished in non-interactive environments.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),"development-context":t.Flags.string({char:"c",description:"Unique identifier for a development theme context (e.g., PR number, branch name). Reuses an existing development theme with this context name, or creates one if none exists.",env:"SHOPIFY_FLAG_DEVELOPMENT_CONTEXT",dependsOn:["development"],exclusive:["theme"]}),live:t.Flags.boolean({char:"l",description:"Push theme files from your remote live theme. Use --development, --live, --theme, or --unpublished in non-interactive environments.",env:"SHOPIFY_FLAG_LIVE"}),unpublished:t.Flags.boolean({char:"u",description:"Create a new unpublished theme and push to it. Use --development, --live, --theme, or --unpublished in non-interactive environments. When using --unpublished without --development, use --theme to provide the new theme name.",env:"SHOPIFY_FLAG_UNPUBLISHED"}),nodelete:t.Flags.boolean({char:"n",description:"Prevent deleting remote files that don't exist locally.",env:"SHOPIFY_FLAG_NODELETE"}),"allow-live":t.Flags.boolean({char:"a",description:"Allow push to a live theme. Required in non-interactive environments when targeting the live theme.",env:"SHOPIFY_FLAG_ALLOW_LIVE"}),publish:t.Flags.boolean({char:"p",description:"Publish as the live theme after uploading.",env:"SHOPIFY_FLAG_PUBLISH"}),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"}),strict:t.Flags.boolean({description:"Require theme check to pass without errors before pushing. Warnings are allowed.",env:"SHOPIFY_FLAG_STRICT_PUSH"}),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"}),environment:s.environment};static multiEnvironmentsFlags=["store","password","path",["live","development","theme"]];static nonTTYFlagRequirements(){return[{flags:["theme","development","live","unpublished"]},{flags:["theme"],when:e=>!!(e.unpublished&&!e.development)},{flags:["allow-live"],when:e=>!!e.live}]}async command(e,w,n,P,g){i("theme-command:push"),await v(e);let o=await y({...e,allowLive:e["allow-live"],noColor:e["no-color"],developmentContext:e["development-context"]},w,n,g);return o?.hasErrors&&(process.exitCode=1),e.json&&n||(o?c(o,e.json?"json":"text"):e.json&&l(r.encode({status:"cancelled"}))),i("theme-command:push"),o??(e.json&&n?{status:"skipped",reason:"unsafe-directory"}:void 0)}renderEnvironmentResults(e){f(e)}storeAuthScopes(){return["read_themes","write_themes"]}};export{h as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as p,d as m,e as u,f,g as h}from"./chunk-4GOJQKY5.js";import{a as c}from"./chunk-ZGV3HNEV.js";import{a as s}from"./chunk-FWB3GLMW.js";import{Ma as r}from"./chunk-3C6VLJ5D.js";import{b as a,c as n}from"./chunk-Q2SZCZE7.js";import{b as v}from"./chunk-YTUUU33R.js";import{e as S,g as i}from"./chunk-VKWPEFWQ.js";i();var d=S(v(),1);var o=class l extends c{static get jsonOutputSchema(){return m}static summary="Fetch the latest GraphQL schema for a function.";static descriptionWithMarkdown="Generates the latest [GraphQL schema](https://shopify.dev/docs/apps/functions/input-output#graphql-schema) for a function in your app. Run this command from the function directory.\n\n This command uses the API type and version of your function, as defined in your extension TOML file, to generate the latest GraphQL schema. The schema is written to the `schema.graphql` file.";static description=this.descriptionForHelp();static flags={...a,...s,...f,...n,stdout:d.Flags.boolean({description:"Output the schema to stdout instead of writing to a file.",required:!1,default:!1,env:"SHOPIFY_FLAG_STDOUT"})};async run(){let{flags:t}=await this.parse(l),{app:e,developerPlatformClient:g,organization:F}=await r({directory:t.path,clientId:t["client-id"],forceRelink:t.reset,userProvidedConfigName:t.config}),y=await h(e,t.path),w=await p({app:e,extension:y,developerPlatformClient:g,orgId:F.id});return await u(w,{stdout:t.stdout,json:t.json}),{app:e}}};export{o as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as Gi,c as Ki,d as ln,g as ao,k as un,l as qe,m as lo,n as uo,o as fo,p as po,q as ho,r as mo,s as go,t as _o,u as yo}from"./chunk-TR4OWSEX.js";import{b as ro,c as oo}from"./chunk-ZGASBRSQ.js";import{b as so}from"./chunk-I5A6BPCP.js";import{a as io}from"./chunk-CX5CC6P5.js";import{a as co}from"./chunk-IGE4Y5SE.js";import{a as v,c as y,g as f}from"./chunk-VKWPEFWQ.js";var $=y(F=>{"use strict";f();Object.defineProperty(F,"__esModule",{value:!0});F.pickBy=bo;F.compact=vo;F.uniqBy=wo;F.last=Oo;F.sortBy=jo;F.castArray=Po;F.isProd=Co;F.maxBy=Eo;F.sumBy=$o;F.capitalize=qo;F.isTruthy=Do;F.isNotFalsy=xo;F.uniq=Fo;F.mapValues=Ao;F.mergeNestedObjects=Mo;function bo(t,e){return Object.entries(t).reduce((n,[i,s])=>(e(s)&&(n[i]=s),n),{})}function vo(t){return t.filter(e=>!!e)}function wo(t,e){return t.filter((n,i)=>{let s=e(n);return!t.some((r,o)=>o>i&&e(r)===s)})}function Oo(t){if(t)return t.at(-1)}function dn(t,e){if(t=t===void 0?0:t,e=e===void 0?0:e,Array.isArray(t)&&Array.isArray(e)){if(t.length===0&&e.length===0)return 0;let n=dn(t[0],e[0]);return n!==0?n:dn(t.slice(1),e.slice(1))}return t<e?-1:t>e?1:0}function jo(t,e){return t.sort((n,i)=>dn(e(n),e(i)))}function Po(t){return t===void 0?[]:Array.isArray(t)?t:[t]}function Co(){return!["development","test"].includes(process.env.NODE_ENV??"")}function Eo(t,e){if(t.length!==0)return t.reduce((n,i)=>{let s=e(i),r=e(n);return s>r?i:n})}function $o(t,e){return t.reduce((n,i)=>n+e(i),0)}function qo(t){return t?t.charAt(0).toUpperCase()+t.slice(1).toLowerCase():""}function Do(t){return["1","true","y","yes"].includes(t.toLowerCase())}function xo(t){return!["0","false","n","no"].includes(t.toLowerCase())}function Fo(t){return[...new Set(t)].sort()}function Ao(t,e){return Object.entries(t).reduce((n,[i,s])=>(n[i]=e(s,i),n),{})}function So(t,e){return e.split(".").reduce((n,i)=>n?.[i],t)}function Mo(t,e){return Object.fromEntries(t.flatMap(n=>Object.entries(So(n,e)??{})).reverse())}});var X=y(ie=>{"use strict";f();Object.defineProperty(ie,"__esModule",{value:!0});ie.fileExists=ie.dirExists=void 0;ie.readJson=Ji;ie.safeReadJson=Ro;ie.existsSync=No;var Io=v("node:fs"),hn=v("node:fs/promises"),ko=$(),To=async t=>{let e;try{e=await(0,hn.stat)(t)}catch{throw new Error(`No directory found at ${t}`)}if(!e.isDirectory())throw new Error(`${t} exists but is not a directory`);return t};ie.dirExists=To;var Lo=async t=>{let e;try{e=await(0,hn.stat)(t)}catch{throw new Error(`No file found at ${t}`)}if(!e.isFile())throw new Error(`${t} exists but is not a file`);return t};ie.fileExists=Lo;var pn=class extends Map{set(e,n){return((0,ko.isProd)()??!1)&&super.set(e,n),this}},fn=new pn;async function Ji(t,e=!0){if(e&&fn.has(t))return JSON.parse(fn.get(t));let n=await(0,hn.readFile)(t,"utf8");return fn.set(t,n),JSON.parse(n)}async function Ro(t,e=!0){try{return await Ji(t,e)}catch{}}function No(t){return(0,Io.existsSync)(t)}});var Xi=y(M=>{"use strict";f();Object.defineProperty(M,"__esModule",{value:!0});M.string=M.url=M.file=M.directory=M.integer=M.boolean=void 0;M.custom=me;var Ho=v("node:url"),Yi=X(),Bo=$();function me(t){return(e={})=>({parse:async(n,i,s)=>n,...t,...e,input:[],type:"option"})}M.boolean=me({parse:async t=>!!t&&(0,Bo.isNotFalsy)(t)});M.integer=me({async parse(t,e,n){if(!/^-?\d+$/.test(t))throw new Error(`Expected an integer but received: ${t}`);let i=Number.parseInt(t,10);if(n.min!==void 0&&i<n.min)throw new Error(`Expected an integer greater than or equal to ${n.min} but received: ${t}`);if(n.max!==void 0&&i>n.max)throw new Error(`Expected an integer less than or equal to ${n.max} but received: ${t}`);return i}});M.directory=me({async parse(t,e,n){return n.exists?(0,Yi.dirExists)(t):t}});M.file=me({async parse(t,e,n){return n.exists?(0,Yi.fileExists)(t):t}});M.url=me({async parse(t){try{return new Ho.URL(t)}catch{throw new Error(`Expected a valid url but received: ${t}`)}}});var Wo=me({});M.string=Wo});var Zi=y((Rf,zo)=>{zo.exports={name:"@oclif/core",description:"base library for oclif CLIs",version:"4.8.3",author:"Salesforce",bugs:"https://github.com/oclif/core/issues",dependencies:{"ansi-escapes":"^4.3.2",ansis:"^3.17.0","clean-stack":"^3.0.1","cli-spinners":"^2.9.2",debug:"^4.4.3",ejs:"^3.1.10","get-package-type":"^0.1.0","indent-string":"^4.0.0","is-wsl":"^2.2.0",lilconfig:"^3.1.3",minimatch:"^10.2.4",semver:"^7.7.3","string-width":"^4.2.3","supports-color":"^8",tinyglobby:"^0.2.14","widest-line":"^3.1.0",wordwrap:"^1.0.0","wrap-ansi":"^7.0.0"},devDependencies:{"@commitlint/config-conventional":"^19","@eslint/compat":"^1.4.1","@oclif/plugin-help":"^6","@oclif/plugin-plugins":"^5","@oclif/prettier-config":"^0.2.1","@oclif/test":"^4","@types/benchmark":"^2.1.5","@types/chai":"^4.3.16","@types/chai-as-promised":"^7.1.8","@types/clean-stack":"^2.1.1","@types/debug":"^4.1.10","@types/ejs":"^3.1.5","@types/indent-string":"^4.0.1","@types/mocha":"^10.0.10","@types/node":"^18","@types/pnpapi":"^0.0.5","@types/sinon":"^17.0.3","@types/supports-color":"^8.1.3","@types/wordwrap":"^1.0.3","@types/wrap-ansi":"^3.0.0",benchmark:"^2.1.4",chai:"^4.5.0","chai-as-promised":"^7.1.2",commitlint:"^19","cross-env":"^7.0.3",eslint:"^9","eslint-config-oclif":"^6","eslint-config-prettier":"^10",husky:"^9.1.7","lint-staged":"^15",madge:"^6.1.0",mocha:"^11.7.5",nyc:"^15.1.0",prettier:"^3.8.1",shx:"^0.4.0",sinon:"^18","ts-node":"^10.9.2",tsd:"^0.33.0",typescript:"^5"},engines:{node:">=18.0.0"},files:["/lib"],homepage:"https://github.com/oclif/core",keywords:["oclif","cli","command","command line","parser","args","argv"],license:"MIT",exports:{".":"./lib/index.js","./args":"./lib/args.js","./command":"./lib/command.js","./config":"./lib/config/index.js","./errors":"./lib/errors/index.js","./execute":"./lib/execute.js","./flags":"./lib/flags.js","./flush":"./lib/flush.js","./handle":"./lib/errors/handle.js","./help":"./lib/help/index.js","./hooks":"./lib/interfaces/hooks.js","./interfaces":"./lib/interfaces/index.js","./logger":"./lib/logger.js","./package.json":"./package.json","./parser":"./lib/parser/index.js","./performance":"./lib/performance.js","./run":"./lib/main.js","./settings":"./lib/settings.js","./util/ids":"./lib/util/ids.js","./ux":"./lib/ux/index.js"},repository:"oclif/core",oclif:{bin:"oclif",devPlugins:["@oclif/plugin-help","@oclif/plugin-plugins"]},publishConfig:{access:"public"},scripts:{build:"shx rm -rf lib && tsc",compile:"tsc",format:'prettier --write "+(src|test)/**/*.+(ts|js|json)"',lint:"eslint",posttest:"yarn lint && yarn test:circular-deps",prepack:"yarn run build",prepare:"husky","test:circular-deps":"yarn build && madge lib/ -c","test:debug":'nyc mocha --debug-brk --inspect "test/**/*.test.ts"',"test:integration":'mocha --forbid-only "test/**/*.integration.ts" --parallel --timeout 1200000',"test:interoperability":"cross-env DEBUG=integration:* ts-node test/integration/interop.ts","test:perf":"ts-node test/perf/parser.perf.ts",test:'nyc mocha --forbid-only "test/**/*.test.ts" --parallel'},types:"lib/index.d.ts"}});var G=y(gn=>{"use strict";f();Object.defineProperty(gn,"__esModule",{value:!0});var Uo=v("node:fs"),Vo=v("node:path"),mn=class t extends Map{static instance;constructor(){super(),this.set("@oclif/core",this.getOclifCoreMeta())}static getInstance(){return t.instance||(t.instance=new t),t.instance}get(e){return super.get(e)}getOclifCoreMeta(){try{return{name:"@oclif/core",version:Zi().version}}catch{try{return{name:"@oclif/core",version:JSON.parse((0,Uo.readFileSync)((0,Vo.join)(__dirname,"..","package.json"),"utf8")).version}}catch{return{name:"@oclif/core",version:"unknown"}}}}};gn.default=mn});var k=y(le=>{"use strict";f();var Go=le&&le.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(le,"__esModule",{value:!0});le.getLogger=Qi;le.makeDebug=Yo;le.setLogger=Xo;le.clearLoggers=Zo;var Ko=Go(oo()),yn="oclif";function Ct(t=yn){let e=(0,Ko.default)(t);return{child:(n,i)=>Ct(`${t}${i??":"}${n}`),debug:e,error:(n,...i)=>Ct(`${t}:error`).debug(n,...i),info:e,namespace:t,trace:e,warn:e}}var se=new Map;function Qi(t){let e=se.get("root");if(e||_n(Ct(yn)),e=se.get("root"),t){let n=se.get(t);if(n)return n;let i=e.child(t);return se.set(t,i),i}return e}function Jo(t){return typeof t.child=="function"&&typeof t.debug=="function"&&typeof t.error=="function"&&typeof t.info=="function"&&typeof t.trace=="function"&&typeof t.warn=="function"&&typeof t.namespace=="string"}function _n(t){se.has(t.namespace)||se.has("root")||(Jo(t)?(se.set(t.namespace,t),se.set("root",t)):process.emitWarning("Logger does not match the Logger interface. Using default logger."))}function Yo(t){return(e,...n)=>Qi(t).debug(e,...n)}function Xo(t){t&&typeof t!="string"&&"logger"in t&&t.logger?_n(t.logger):_n(Ct(yn))}function Zo(){se.clear()}});var tt=y(xe=>{"use strict";f();Object.defineProperty(xe,"__esModule",{value:!0});xe.stderr=xe.stdout=void 0;var De=v("node:util"),Qo=(t,...e)=>{!t&&e?console.log((0,De.format)(...e)):t?console.log(typeof t=="string"?(0,De.format)(t,...e):(0,De.format)(...t,...e)):console.log()};xe.stdout=Qo;var ea=(t,...e)=>{!t&&e?console.error((0,De.format)(...e)):t?console.error(typeof t=="string"?(0,De.format)(t,...e):(0,De.format)(...t,...e)):console.error()};xe.stderr=ea});var re=y(Et=>{"use strict";f();Object.defineProperty(Et,"__esModule",{value:!0});Et.settings=void 0;globalThis.oclif||(globalThis.oclif={});Et.settings=globalThis.oclif});var Ae=y(Fe=>{"use strict";f();Object.defineProperty(Fe,"__esModule",{value:!0});Fe.errtermwidth=Fe.stdtermwidth=void 0;var ta=re();function es(t){if(!t.isTTY)return 80;let e=t.getWindowSize()[0];return e<1?80:e<40?40:e}var ts=Number.parseInt(process.env.OCLIF_COLUMNS,10)||ta.settings.columns;Fe.stdtermwidth=ts||es(process.stdout);Fe.errtermwidth=ts||es(process.stderr)});var ns=y($t=>{"use strict";f();Object.defineProperty($t,"__esModule",{value:!0});$t.STANDARD_ANSI=void 0;$t.STANDARD_ANSI=["white","black","blue","yellow","green","red","magenta","cyan","gray","blackBright","redBright","greenBright","yellowBright","blueBright","magentaBright","cyanBright","whiteBright","bgBlack","bgRed","bgGreen","bgYellow","bgBlue","bgMagenta","bgCyan","bgWhite","bgGray","bgBlackBright","bgRedBright","bgGreenBright","bgYellowBright","bgBlueBright","bgMagentaBright","bgCyanBright","bgWhiteBright","bold","underline","dim","italic","strikethrough"]});var ss=y(bn=>{"use strict";f();Object.defineProperty(bn,"__esModule",{value:!0});bn.supportsColor=na;var is=ro();function na(){return!!is.stdout&&!!is.stderr}});var W=y(Se=>{"use strict";f();var ia=Se&&Se.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Se,"__esModule",{value:!0});Se.colorize=oa;Se.parseTheme=os;var vn=ia(qe()),sa=ns(),ra=ss();function rs(t){return sa.STANDARD_ANSI.includes(t)}function oa(t,e){if(!t||!(0,ra.supportsColor)())return e;if(rs(t))return vn.default[t](e);if(t.startsWith("#"))return vn.default.hex(t)(e);if(t.startsWith("rgb")){let[n,i,s]=t.slice(4,-1).split(",").map(r=>Number.parseInt(r.trim(),10));return vn.default.rgb(n,i,s)(e)}return e}function os(t){return Object.fromEntries(Object.entries(t).map(([e,n])=>[e,typeof n=="string"?aa(n):os(n)]).filter(([e,n])=>n))}function aa(t){return t.startsWith("#")||t.startsWith("rgb")||rs(t)?t:void 0}});var ge=y(ue=>{"use strict";f();var qt=ue&&ue.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ue,"__esModule",{value:!0});ue.CLIError=void 0;ue.addOclifExitCode=cs;var ca=qt(Ki()),wn=qt(ln()),la=qt(un()),ua=qt(G()),da=Ae(),fa=re(),as=W();function cs(t,e){return"oclif"in t||(t.oclif={}),t.oclif.exit=e?.exit===void 0?ua.default.getInstance().get("exitCodes")?.default??2:e.exit,t}var nt=class extends Error{code;oclif={};skipOclifErrorHandling;suggestions;constructor(e,n={}){super(e instanceof Error?e.message:e),cs(this,n),this.code=n.code,this.suggestions=n.suggestions}get bang(){try{return(0,as.colorize)("red",process.platform==="win32"?"\xBB":"\u203A")}catch{}}get stack(){return(0,ca.default)(super.stack,{pretty:!0})}render(){if(fa.settings.debug)return this.stack;let e=`${this.name}: ${this.message}`;return e=(0,la.default)(e,da.errtermwidth-6,{hard:!0,trim:!1}),e=(0,wn.default)(e,3),e=(0,wn.default)(e,1,{includeEmptyLines:!0,indent:this.bang}),e=(0,wn.default)(e,1),e}};ue.CLIError=nt;(function(t){class e extends t{constructor(i){super(i instanceof Error?i.message:i),this.name="Warning"}get bang(){try{return(0,as.colorize)("yellow",process.platform==="win32"?"\xBB":"\u203A")}catch{}}}t.Warn=e})(nt||(ue.CLIError=nt={}))});var xt=y(Me=>{"use strict";f();var ls=Me&&Me.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Me,"__esModule",{value:!0});Me.applyPrettyPrintOptions=ga;Me.default=ya;var Dt=ls(ln()),pa=ls(un()),ha=Ae(),ma=re();function ga(t,e){let n=["message","code","ref","suggestions"];for(let i of n)!(i in t)&&e[i]&&(t[i]=e[i]);return t}var _a=t=>{let e="Try this:";if(!t||t.length===0)return;if(t.length===1)return`${e} ${t[0]}`;let n=t.map(i=>`* ${i}`).join(`
|
|
1
|
+
import{a as Gi,c as Ki,d as ln,e as ao,f as un,g as qe,h as lo,i as uo,j as fo,k as po,l as ho,m as mo,n as go,o as _o,p as yo}from"./chunk-QFYLJVJW.js";import{b as ro,c as oo}from"./chunk-ZGASBRSQ.js";import{b as so}from"./chunk-I5A6BPCP.js";import{a as io}from"./chunk-CX5CC6P5.js";import{a as co}from"./chunk-IGE4Y5SE.js";import{a as v,c as y,g as f}from"./chunk-VKWPEFWQ.js";var $=y(F=>{"use strict";f();Object.defineProperty(F,"__esModule",{value:!0});F.pickBy=bo;F.compact=vo;F.uniqBy=wo;F.last=Oo;F.sortBy=jo;F.castArray=Po;F.isProd=Co;F.maxBy=Eo;F.sumBy=$o;F.capitalize=qo;F.isTruthy=Do;F.isNotFalsy=xo;F.uniq=Fo;F.mapValues=Ao;F.mergeNestedObjects=Mo;function bo(t,e){return Object.entries(t).reduce((n,[i,s])=>(e(s)&&(n[i]=s),n),{})}function vo(t){return t.filter(e=>!!e)}function wo(t,e){return t.filter((n,i)=>{let s=e(n);return!t.some((r,o)=>o>i&&e(r)===s)})}function Oo(t){if(t)return t.at(-1)}function dn(t,e){if(t=t===void 0?0:t,e=e===void 0?0:e,Array.isArray(t)&&Array.isArray(e)){if(t.length===0&&e.length===0)return 0;let n=dn(t[0],e[0]);return n!==0?n:dn(t.slice(1),e.slice(1))}return t<e?-1:t>e?1:0}function jo(t,e){return t.sort((n,i)=>dn(e(n),e(i)))}function Po(t){return t===void 0?[]:Array.isArray(t)?t:[t]}function Co(){return!["development","test"].includes(process.env.NODE_ENV??"")}function Eo(t,e){if(t.length!==0)return t.reduce((n,i)=>{let s=e(i),r=e(n);return s>r?i:n})}function $o(t,e){return t.reduce((n,i)=>n+e(i),0)}function qo(t){return t?t.charAt(0).toUpperCase()+t.slice(1).toLowerCase():""}function Do(t){return["1","true","y","yes"].includes(t.toLowerCase())}function xo(t){return!["0","false","n","no"].includes(t.toLowerCase())}function Fo(t){return[...new Set(t)].sort()}function Ao(t,e){return Object.entries(t).reduce((n,[i,s])=>(n[i]=e(s,i),n),{})}function So(t,e){return e.split(".").reduce((n,i)=>n?.[i],t)}function Mo(t,e){return Object.fromEntries(t.flatMap(n=>Object.entries(So(n,e)??{})).reverse())}});var X=y(ie=>{"use strict";f();Object.defineProperty(ie,"__esModule",{value:!0});ie.fileExists=ie.dirExists=void 0;ie.readJson=Ji;ie.safeReadJson=Ro;ie.existsSync=No;var Io=v("node:fs"),hn=v("node:fs/promises"),ko=$(),To=async t=>{let e;try{e=await(0,hn.stat)(t)}catch{throw new Error(`No directory found at ${t}`)}if(!e.isDirectory())throw new Error(`${t} exists but is not a directory`);return t};ie.dirExists=To;var Lo=async t=>{let e;try{e=await(0,hn.stat)(t)}catch{throw new Error(`No file found at ${t}`)}if(!e.isFile())throw new Error(`${t} exists but is not a file`);return t};ie.fileExists=Lo;var pn=class extends Map{set(e,n){return((0,ko.isProd)()??!1)&&super.set(e,n),this}},fn=new pn;async function Ji(t,e=!0){if(e&&fn.has(t))return JSON.parse(fn.get(t));let n=await(0,hn.readFile)(t,"utf8");return fn.set(t,n),JSON.parse(n)}async function Ro(t,e=!0){try{return await Ji(t,e)}catch{}}function No(t){return(0,Io.existsSync)(t)}});var Xi=y(M=>{"use strict";f();Object.defineProperty(M,"__esModule",{value:!0});M.string=M.url=M.file=M.directory=M.integer=M.boolean=void 0;M.custom=me;var Ho=v("node:url"),Yi=X(),Bo=$();function me(t){return(e={})=>({parse:async(n,i,s)=>n,...t,...e,input:[],type:"option"})}M.boolean=me({parse:async t=>!!t&&(0,Bo.isNotFalsy)(t)});M.integer=me({async parse(t,e,n){if(!/^-?\d+$/.test(t))throw new Error(`Expected an integer but received: ${t}`);let i=Number.parseInt(t,10);if(n.min!==void 0&&i<n.min)throw new Error(`Expected an integer greater than or equal to ${n.min} but received: ${t}`);if(n.max!==void 0&&i>n.max)throw new Error(`Expected an integer less than or equal to ${n.max} but received: ${t}`);return i}});M.directory=me({async parse(t,e,n){return n.exists?(0,Yi.dirExists)(t):t}});M.file=me({async parse(t,e,n){return n.exists?(0,Yi.fileExists)(t):t}});M.url=me({async parse(t){try{return new Ho.URL(t)}catch{throw new Error(`Expected a valid url but received: ${t}`)}}});var Wo=me({});M.string=Wo});var Zi=y((Rf,zo)=>{zo.exports={name:"@oclif/core",description:"base library for oclif CLIs",version:"4.8.3",author:"Salesforce",bugs:"https://github.com/oclif/core/issues",dependencies:{"ansi-escapes":"^4.3.2",ansis:"^3.17.0","clean-stack":"^3.0.1","cli-spinners":"^2.9.2",debug:"^4.4.3",ejs:"^3.1.10","get-package-type":"^0.1.0","indent-string":"^4.0.0","is-wsl":"^2.2.0",lilconfig:"^3.1.3",minimatch:"^10.2.4",semver:"^7.7.3","string-width":"^4.2.3","supports-color":"^8",tinyglobby:"^0.2.14","widest-line":"^3.1.0",wordwrap:"^1.0.0","wrap-ansi":"^7.0.0"},devDependencies:{"@commitlint/config-conventional":"^19","@eslint/compat":"^1.4.1","@oclif/plugin-help":"^6","@oclif/plugin-plugins":"^5","@oclif/prettier-config":"^0.2.1","@oclif/test":"^4","@types/benchmark":"^2.1.5","@types/chai":"^4.3.16","@types/chai-as-promised":"^7.1.8","@types/clean-stack":"^2.1.1","@types/debug":"^4.1.10","@types/ejs":"^3.1.5","@types/indent-string":"^4.0.1","@types/mocha":"^10.0.10","@types/node":"^18","@types/pnpapi":"^0.0.5","@types/sinon":"^17.0.3","@types/supports-color":"^8.1.3","@types/wordwrap":"^1.0.3","@types/wrap-ansi":"^3.0.0",benchmark:"^2.1.4",chai:"^4.5.0","chai-as-promised":"^7.1.2",commitlint:"^19","cross-env":"^7.0.3",eslint:"^9","eslint-config-oclif":"^6","eslint-config-prettier":"^10",husky:"^9.1.7","lint-staged":"^15",madge:"^6.1.0",mocha:"^11.7.5",nyc:"^15.1.0",prettier:"^3.8.1",shx:"^0.4.0",sinon:"^18","ts-node":"^10.9.2",tsd:"^0.33.0",typescript:"^5"},engines:{node:">=18.0.0"},files:["/lib"],homepage:"https://github.com/oclif/core",keywords:["oclif","cli","command","command line","parser","args","argv"],license:"MIT",exports:{".":"./lib/index.js","./args":"./lib/args.js","./command":"./lib/command.js","./config":"./lib/config/index.js","./errors":"./lib/errors/index.js","./execute":"./lib/execute.js","./flags":"./lib/flags.js","./flush":"./lib/flush.js","./handle":"./lib/errors/handle.js","./help":"./lib/help/index.js","./hooks":"./lib/interfaces/hooks.js","./interfaces":"./lib/interfaces/index.js","./logger":"./lib/logger.js","./package.json":"./package.json","./parser":"./lib/parser/index.js","./performance":"./lib/performance.js","./run":"./lib/main.js","./settings":"./lib/settings.js","./util/ids":"./lib/util/ids.js","./ux":"./lib/ux/index.js"},repository:"oclif/core",oclif:{bin:"oclif",devPlugins:["@oclif/plugin-help","@oclif/plugin-plugins"]},publishConfig:{access:"public"},scripts:{build:"shx rm -rf lib && tsc",compile:"tsc",format:'prettier --write "+(src|test)/**/*.+(ts|js|json)"',lint:"eslint",posttest:"yarn lint && yarn test:circular-deps",prepack:"yarn run build",prepare:"husky","test:circular-deps":"yarn build && madge lib/ -c","test:debug":'nyc mocha --debug-brk --inspect "test/**/*.test.ts"',"test:integration":'mocha --forbid-only "test/**/*.integration.ts" --parallel --timeout 1200000',"test:interoperability":"cross-env DEBUG=integration:* ts-node test/integration/interop.ts","test:perf":"ts-node test/perf/parser.perf.ts",test:'nyc mocha --forbid-only "test/**/*.test.ts" --parallel'},types:"lib/index.d.ts"}});var G=y(gn=>{"use strict";f();Object.defineProperty(gn,"__esModule",{value:!0});var Uo=v("node:fs"),Vo=v("node:path"),mn=class t extends Map{static instance;constructor(){super(),this.set("@oclif/core",this.getOclifCoreMeta())}static getInstance(){return t.instance||(t.instance=new t),t.instance}get(e){return super.get(e)}getOclifCoreMeta(){try{return{name:"@oclif/core",version:Zi().version}}catch{try{return{name:"@oclif/core",version:JSON.parse((0,Uo.readFileSync)((0,Vo.join)(__dirname,"..","package.json"),"utf8")).version}}catch{return{name:"@oclif/core",version:"unknown"}}}}};gn.default=mn});var k=y(le=>{"use strict";f();var Go=le&&le.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(le,"__esModule",{value:!0});le.getLogger=Qi;le.makeDebug=Yo;le.setLogger=Xo;le.clearLoggers=Zo;var Ko=Go(oo()),yn="oclif";function Ct(t=yn){let e=(0,Ko.default)(t);return{child:(n,i)=>Ct(`${t}${i??":"}${n}`),debug:e,error:(n,...i)=>Ct(`${t}:error`).debug(n,...i),info:e,namespace:t,trace:e,warn:e}}var se=new Map;function Qi(t){let e=se.get("root");if(e||_n(Ct(yn)),e=se.get("root"),t){let n=se.get(t);if(n)return n;let i=e.child(t);return se.set(t,i),i}return e}function Jo(t){return typeof t.child=="function"&&typeof t.debug=="function"&&typeof t.error=="function"&&typeof t.info=="function"&&typeof t.trace=="function"&&typeof t.warn=="function"&&typeof t.namespace=="string"}function _n(t){se.has(t.namespace)||se.has("root")||(Jo(t)?(se.set(t.namespace,t),se.set("root",t)):process.emitWarning("Logger does not match the Logger interface. Using default logger."))}function Yo(t){return(e,...n)=>Qi(t).debug(e,...n)}function Xo(t){t&&typeof t!="string"&&"logger"in t&&t.logger?_n(t.logger):_n(Ct(yn))}function Zo(){se.clear()}});var tt=y(xe=>{"use strict";f();Object.defineProperty(xe,"__esModule",{value:!0});xe.stderr=xe.stdout=void 0;var De=v("node:util"),Qo=(t,...e)=>{!t&&e?console.log((0,De.format)(...e)):t?console.log(typeof t=="string"?(0,De.format)(t,...e):(0,De.format)(...t,...e)):console.log()};xe.stdout=Qo;var ea=(t,...e)=>{!t&&e?console.error((0,De.format)(...e)):t?console.error(typeof t=="string"?(0,De.format)(t,...e):(0,De.format)(...t,...e)):console.error()};xe.stderr=ea});var re=y(Et=>{"use strict";f();Object.defineProperty(Et,"__esModule",{value:!0});Et.settings=void 0;globalThis.oclif||(globalThis.oclif={});Et.settings=globalThis.oclif});var Ae=y(Fe=>{"use strict";f();Object.defineProperty(Fe,"__esModule",{value:!0});Fe.errtermwidth=Fe.stdtermwidth=void 0;var ta=re();function es(t){if(!t.isTTY)return 80;let e=t.getWindowSize()[0];return e<1?80:e<40?40:e}var ts=Number.parseInt(process.env.OCLIF_COLUMNS,10)||ta.settings.columns;Fe.stdtermwidth=ts||es(process.stdout);Fe.errtermwidth=ts||es(process.stderr)});var ns=y($t=>{"use strict";f();Object.defineProperty($t,"__esModule",{value:!0});$t.STANDARD_ANSI=void 0;$t.STANDARD_ANSI=["white","black","blue","yellow","green","red","magenta","cyan","gray","blackBright","redBright","greenBright","yellowBright","blueBright","magentaBright","cyanBright","whiteBright","bgBlack","bgRed","bgGreen","bgYellow","bgBlue","bgMagenta","bgCyan","bgWhite","bgGray","bgBlackBright","bgRedBright","bgGreenBright","bgYellowBright","bgBlueBright","bgMagentaBright","bgCyanBright","bgWhiteBright","bold","underline","dim","italic","strikethrough"]});var ss=y(bn=>{"use strict";f();Object.defineProperty(bn,"__esModule",{value:!0});bn.supportsColor=na;var is=ro();function na(){return!!is.stdout&&!!is.stderr}});var W=y(Se=>{"use strict";f();var ia=Se&&Se.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Se,"__esModule",{value:!0});Se.colorize=oa;Se.parseTheme=os;var vn=ia(qe()),sa=ns(),ra=ss();function rs(t){return sa.STANDARD_ANSI.includes(t)}function oa(t,e){if(!t||!(0,ra.supportsColor)())return e;if(rs(t))return vn.default[t](e);if(t.startsWith("#"))return vn.default.hex(t)(e);if(t.startsWith("rgb")){let[n,i,s]=t.slice(4,-1).split(",").map(r=>Number.parseInt(r.trim(),10));return vn.default.rgb(n,i,s)(e)}return e}function os(t){return Object.fromEntries(Object.entries(t).map(([e,n])=>[e,typeof n=="string"?aa(n):os(n)]).filter(([e,n])=>n))}function aa(t){return t.startsWith("#")||t.startsWith("rgb")||rs(t)?t:void 0}});var ge=y(ue=>{"use strict";f();var qt=ue&&ue.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ue,"__esModule",{value:!0});ue.CLIError=void 0;ue.addOclifExitCode=cs;var ca=qt(Ki()),wn=qt(ln()),la=qt(un()),ua=qt(G()),da=Ae(),fa=re(),as=W();function cs(t,e){return"oclif"in t||(t.oclif={}),t.oclif.exit=e?.exit===void 0?ua.default.getInstance().get("exitCodes")?.default??2:e.exit,t}var nt=class extends Error{code;oclif={};skipOclifErrorHandling;suggestions;constructor(e,n={}){super(e instanceof Error?e.message:e),cs(this,n),this.code=n.code,this.suggestions=n.suggestions}get bang(){try{return(0,as.colorize)("red",process.platform==="win32"?"\xBB":"\u203A")}catch{}}get stack(){return(0,ca.default)(super.stack,{pretty:!0})}render(){if(fa.settings.debug)return this.stack;let e=`${this.name}: ${this.message}`;return e=(0,la.default)(e,da.errtermwidth-6,{hard:!0,trim:!1}),e=(0,wn.default)(e,3),e=(0,wn.default)(e,1,{includeEmptyLines:!0,indent:this.bang}),e=(0,wn.default)(e,1),e}};ue.CLIError=nt;(function(t){class e extends t{constructor(i){super(i instanceof Error?i.message:i),this.name="Warning"}get bang(){try{return(0,as.colorize)("yellow",process.platform==="win32"?"\xBB":"\u203A")}catch{}}}t.Warn=e})(nt||(ue.CLIError=nt={}))});var xt=y(Me=>{"use strict";f();var ls=Me&&Me.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Me,"__esModule",{value:!0});Me.applyPrettyPrintOptions=ga;Me.default=ya;var Dt=ls(ln()),pa=ls(un()),ha=Ae(),ma=re();function ga(t,e){let n=["message","code","ref","suggestions"];for(let i of n)!(i in t)&&e[i]&&(t[i]=e[i]);return t}var _a=t=>{let e="Try this:";if(!t||t.length===0)return;if(t.length===1)return`${e} ${t[0]}`;let n=t.map(i=>`* ${i}`).join(`
|
|
2
2
|
`);return`${e}
|
|
3
3
|
${(0,Dt.default)(n,2)}`};function ya(t){if(ma.settings.debug)return t.stack;let{bang:e,code:n,message:i,name:s,ref:r,suggestions:o}=t,c=i?`${s||"Error"}: ${i}`:void 0,l=n?`Code: ${n}`:void 0,u=_a(o),p=r?`Reference: ${r}`:void 0,a=[c,l,u,p].filter(Boolean).join(`
|
|
4
4
|
`),d=(0,pa.default)(a,ha.errtermwidth-6,{hard:!0,trim:!1});return d=(0,Dt.default)(d,3),d=(0,Dt.default)(d,1,{includeEmptyLines:!0,indent:e||""}),d=(0,Dt.default)(d,1),d}});var Ie=y(Z=>{"use strict";f();var ba=Z&&Z.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var s=Object.getOwnPropertyDescriptor(e,n);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,s)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),va=Z&&Z.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),wa=Z&&Z.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[i.length]=s);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),s=0;s<i.length;s++)i[s]!=="default"&&ba(n,e,i[s]);return va(n,e),n}})();Object.defineProperty(Z,"__esModule",{value:!0});Z.error=fs;var Oa=k(),ja=tt(),us=ge(),ds=wa(xt());function fs(t,e={}){let n;if(typeof t=="string")n=new us.CLIError(t,e);else if(t instanceof Error)n=(0,us.addOclifExitCode)(t,e);else throw new TypeError("first argument must be a string or instance of Error");if(n=(0,ds.applyPrettyPrintOptions)(n,e),e.exit===!1){let i=(0,ds.default)(n);i&&(0,ja.stderr)(i),n?.stack&&(0,Oa.getLogger)().error(n.stack)}else throw n}Z.default=fs});var At=y(Ft=>{"use strict";f();Object.defineProperty(Ft,"__esModule",{value:!0});Ft.ExitError=void 0;var Pa=ge(),On=class extends Pa.CLIError{code="EEXIT";constructor(e=1){super(`EEXIT: ${e}`,{exit:e})}render(){return""}};Ft.ExitError=On});var Pn=y(St=>{"use strict";f();Object.defineProperty(St,"__esModule",{value:!0});St.ModuleLoadError=void 0;var Ca=ge(),jn=class extends Ca.CLIError{code="MODULE_NOT_FOUND";constructor(e){super(`[MODULE_NOT_FOUND] ${e}`,{exit:1}),this.name="ModuleLoadError"}};St.ModuleLoadError=jn});var Mt=y(Cn=>{"use strict";f();Object.defineProperty(Cn,"__esModule",{value:!0});Cn.exit=$a;var Ea=At();function $a(t=0){throw new Ea.ExitError(t)}});var ke=y(_e=>{"use strict";f();var qa=_e&&_e.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_e,"__esModule",{value:!0});_e.warn=En;_e.memoizedWarn=Aa;var Da=k(),xa=tt(),ps=ge(),Fa=qa(xt());function En(t){let e;if(typeof t=="string")e=new ps.CLIError.Warn(t);else if(t instanceof Error)e=(0,ps.addOclifExitCode)(t);else throw new TypeError("first argument must be a string or instance of Error");let n=(0,Fa.default)(e);n&&(0,xa.stderr)(n),e?.stack&&(0,Da.getLogger)().error(e.stack)}var hs=new Set;function Aa(t){hs.has(t)||En(t),hs.add(t)}_e.default=En});var vs=y($n=>{"use strict";f();Object.defineProperty($n,"__esModule",{value:!0});$n.readTSConfig=ka;var ms=v("node:fs/promises"),ys=v("node:path"),Sa=ke(),Ma=k(),gs=$(),Ia=(0,Ma.makeDebug)("read-tsconfig");function _s(t,e){try{return v.resolve(e,{paths:[t]})}catch{}}async function bs(t,e){let n;try{n=await e(t)}catch{n=!1}if(n)return t;let i=(0,ys.dirname)(t);if(i!==t)return bs(i,e)}async function ka(t,e="tsconfig.json"){let n=[],i;try{i=co()}catch{try{i=v(t+"/node_modules/typescript")}catch{}}if(!i){(0,Sa.memoizedWarn)("Could not find typescript. Please ensure that typescript is a devDependency. Falling back to compiled source.");return}let s=async r=>{let o=await bs(r,async c=>(await(0,ms.readdir)(c)).includes("package.json"));if(o)try{let c=await(0,ms.readFile)(r,"utf8"),l=i?.parseConfigFileTextToJson(r,c).config;if(n.push(l),l.extends){if(l.extends.startsWith(".")){let p=_s(o,l.extends);return p?s(p):void 0}let u=_s(o,l.extends);if(u)return s(u)}return l}catch(c){Ia(c)}};return await s((0,ys.join)(t,e)),{compilerOptions:(0,gs.mergeNestedObjects)(n,"compilerOptions"),"ts-node":(0,gs.mergeNestedObjects)(n,"ts-node")}}});var Te=y(ye=>{"use strict";f();Object.defineProperty(ye,"__esModule",{value:!0});ye.collectUsableIds=void 0;ye.makeDebug=La;ye.getPermutations=qn;ye.getCommandIdPermutations=Ra;var Ta=k();function La(...t){return(e,...n)=>(0,Ta.getLogger)(["config",...t].join(":")).debug(e,...n)}function qn(t){if(t.length===0)return[];if(t.length===1)return[t];let e=[],n=qn(t.slice(1)),i=t[0];for(let s=0,r=n.length;s<r;s++){let o=n[s];for(let c=0,l=o.length;c<=l;c++){let u=o.slice(0,c),p=o.slice(c),a=[...u,i,...p];e.push(a)}}return e}function Ra(t){return qn(t.split(":")).flatMap(e=>e.join(":"))}var Na=t=>new Set(t.flatMap(e=>e.split(":").map((n,i,s)=>s.slice(0,i+1).join(":"))));ye.collectUsableIds=Na});var Le=y(K=>{"use strict";f();var Ha=K&&K.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(K,"__esModule",{value:!0});K.TS_CONFIGS=void 0;K.tsPath=tc;var ws=v("node:fs/promises"),T=v("node:path"),Ba=v("node:url"),Wa=Ha(G()),it=ke(),Os=re(),za=X(),Ua=vs(),Dn=$(),Va=Te(),P=(0,Va.makeDebug)("ts-path");K.TS_CONFIGS={};var It=new Set;function Ga(){return process.execPath.split(T.sep).includes("bun")?"bun":process.execArgv.length===0?"node":process.execArgv[0]==="--require"&&process.execArgv[1].split(T.sep).includes("ts-node")||process.execArgv[0].split(T.sep).includes("ts-node")?"ts-node":process.execArgv[0]==="--require"&&process.execArgv[1].split(T.sep).includes("tsx")?"tsx":"node"}var xn=Ga();function Ka(t){return"code"in t&&t.code==="ENOENT"}async function Ja(t){try{if(K.TS_CONFIGS[t])return K.TS_CONFIGS[t];let e=await(0,Ua.readTSConfig)(t);return e?(P("tsconfig: %O",e),K.TS_CONFIGS[t]=e,K.TS_CONFIGS[t]):void 0}catch(e){if(Ka(e))return;P(`Could not parse tsconfig.json. Skipping typescript path lookup for ${t}.`),(0,it.memoizedWarn)(`Could not parse tsconfig.json for ${t}. Falling back to compiled source.`)}}async function Ya(t,e){if(!It.has(t))try{let n=e==="module"?"tsx/esm/api":"tsx/cjs/api",i=v.resolve(n,{paths:[t]});if(!i)return;P("registering tsx at",t),P("tsx path:",i);let{href:s}=(0,Ba.pathToFileURL)(i);P("tsx href:",s);let{register:r}=await import(s);P("Successfully imported tsx"),r(),It.add(t)}catch(n){P(`Could not find tsx. Skipping tsx registration for ${t}.`),P(n)}}async function Xa(t,e){if(It.has(t))return;P("registering ts-node at",t);let n=v.resolve("ts-node",{paths:[t,__dirname]});P("ts-node path:",n);let i;try{i=v(n),P("Successfully required ts-node")}catch(p){P(`Could not find ts-node at ${n}. Skipping ts-node registration for ${t}.`),P(p),(0,it.memoizedWarn)(`Could not find ts-node at ${n}. Please ensure that ts-node is a devDependency. Falling back to compiled source.`);return}let s=[(0,T.join)(t,"node_modules","@types")],r=[];if(e.compilerOptions.rootDirs)for(let p of e.compilerOptions.rootDirs)r.push((0,T.join)(t,p));else e.compilerOptions.rootDir?r.push((0,T.join)(t,e.compilerOptions.rootDir)):e.compilerOptions.baseUrl?r.push((0,T.join)(t,e.compilerOptions.baseUrl)):r.push((0,T.join)(t,"src"));let{baseUrl:o,rootDir:c,...l}=e.compilerOptions,u={compilerOptions:{...l,rootDirs:r,typeRoots:s},...e["ts-node"],cwd:t,esm:e["ts-node"]?.esm??!0,experimentalSpecifierResolution:e["ts-node"]?.experimentalSpecifierResolution??"explicit",scope:!0,scopeDir:t,skipProject:!0,transpileOnly:!0};P("ts-node options: %O",u),i.register(u),It.add(t)}function Za(t,e,n){return(n||t?.moduleType==="commonjs")&&e?.moduleType==="module"&&!e?.pjson.devDependencies?.tsx}function Qa(t,e,n){if(e?.moduleType!=="module"||n)return!1;let i=Number.parseInt(process.version.replace("v","").split(".")[0],10);return xn==="ts-node"&&i>=20}async function ec(t,e,n){let i=await Ja(t);if(!i)return e;P(`Determining path for ${e}`),xn==="bun"?P(`Skipping ts-node registration for ${t} because the runtime is: ${xn}`):(await Ya(t,n?.moduleType),await Xa(t,i));let{baseUrl:s,outDir:r,rootDir:o,rootDirs:c}=i.compilerOptions,l=o??(c??[])[0]??s;if(!l)return P(`no rootDir, rootDirs, or baseUrl specified in tsconfig.json. Returning default path ${e}`),e;if(!r)return P(`no outDir specified in tsconfig.json. Returning default path ${e}`),e;let u=(0,T.join)(t,r),p=(0,T.join)(t,l),a=(0,T.relative)(u,e),d=(0,T.join)(p,a).replace(/\.js$/,"");return P(`lib dir: ${u}`),P(`src dir: ${p}`),P(`src directory to find: ${d}`),(0,za.existsSync)(d)?(P(`Found source directory for ${e} at ${d}`),d):(await Promise.all([(0,ws.access)(`${d}.ts`).then(()=>`${d}.ts`).catch(()=>!1),(0,ws.access)(`${d}.tsx`).then(()=>`${d}.tsx`).catch(()=>!1)])).some(Boolean)?(P(`Found source file for ${e} at ${d}`),d):(P(`No source file found. Returning default path ${e}`),(0,Dn.isProd)()||(0,it.memoizedWarn)(`Could not find source for ${e} based on tsconfig. Defaulting to compiled source.`),e)}async function tc(t,e,n){let i=n?.options.isRoot?n:Wa.default.getInstance().get("rootPlugin");if(!e)return e;e=e.startsWith(t)?e:(0,T.join)(t,e);let s=Os.settings.enableAutoTranspile??Os.settings.tsnodeEnabled;if(s===!1)return P(`Skipping typescript path lookup for ${t} because enableAutoTranspile is explicitly set to false`),e;let r=(0,Dn.isProd)();if(s===void 0&&r&&n?.type!=="link")return P(`Skipping typescript path lookup for ${t} because NODE_ENV is NOT "test" or "development"`),e;if(Za(i,n,r)){P(`Skipping typescript path lookup for ${t} because it's an ESM module (NODE_ENV: ${process.env.NODE_ENV}, root plugin module type: ${i?.moduleType})`);let o=process.env.OCLIF_DISABLE_LINKED_ESM_WARNING&&(0,Dn.isTruthy)(process.env.OCLIF_DISABLE_LINKED_ESM_WARNING);return n?.type==="link"&&!o&&(0,it.memoizedWarn)(`${n?.name} is a linked ESM module and cannot be auto-transpiled. Existing compiled source will be used instead.`),e}if(Qa(t,n,r))return P(`Skipping typescript path lookup for ${t} because ts-node is run in node version ${process.version}"`),(0,it.memoizedWarn)("ts-node executable cannot transpile ESM in Node 20. Existing compiled source will be used instead. See https://github.com/oclif/core/issues/817."),e;try{return await ec(t,e,n)}catch(o){return P(o),e}}});var st=y(Re=>{"use strict";f();Object.defineProperty(Re,"__esModule",{value:!0});Re.load=oc;Re.loadWithData=ac;Re.loadWithDataFromManifest=cc;Re.isPathModule=An;var nc=lo(),ic=v("node:fs"),kt=v("node:path"),Sn=v("node:url"),js=Le(),Fn=Pn(),Cs=X(),sc=[".ts",".js",".mjs",".cjs",".mts",".cts",".tsx",".jsx"],rc=t=>t.type!==void 0;function Mn(t,e,n){throw t.code==="MODULE_NOT_FOUND"||t.code==="ERR_MODULE_NOT_FOUND"?new Fn.ModuleLoadError(`${e?"import()":"require"} failed to load ${n}: ${t.message}`):t}async function oc(t,e){let n,i;try{return{filePath:n,isESM:i}=await Es(t,e),i?await import((0,Sn.pathToFileURL)(n).href):v(n)}catch(s){Mn(s,i,n??e)}}async function ac(t,e){let n,i;try{({filePath:n,isESM:i}=await Es(t,e));let s=i?await import((0,Sn.pathToFileURL)(n).href):v(n);return{filePath:n,isESM:i,module:s}}catch(s){Mn(s,i,n??e)}}async function cc(t,e){let{id:n,isESM:i,relativePath:s}=t;if(!s)throw new Fn.ModuleLoadError(`Cached command ${n} does not have a relative path`);if(i===void 0)throw new Fn.ModuleLoadError(`Cached command ${n} does not have the isESM property set`);let r=(0,kt.join)(e,s.join(kt.sep));try{let o=i?await import((0,Sn.pathToFileURL)(r).href):v(r);return{filePath:r,isESM:i,module:o}}catch(o){Mn(o,i,r??e)}}function An(t){switch((0,kt.extname)(t).toLowerCase()){case".js":case".jsx":case".ts":case".tsx":return nc.sync(t)==="module";case".mjs":case".mts":return!0;default:return!1}}async function Es(t,e){let n,i;try{i=v.resolve(e),n=An(i)}catch{i=(rc(t)?await(0,js.tsPath)(t.root,e,t):await(0,js.tsPath)(t.root,e))??e;let s=!1,r=!1;if((0,Cs.existsSync)(i)){s=!0;try{(0,ic.lstatSync)(i)?.isDirectory?.()&&(s=!1,r=!0)}catch{}}if(!s){let o=Ps(i);!o&&r&&(o=Ps((0,kt.join)(i,"index"))),o&&(i=o)}n=An(i)}return{filePath:i,isESM:n}}function Ps(t){for(let e of sc){let n=`${t}${e}`;if((0,Cs.existsSync)(n))return n}return null}});var Lt=y(Tt=>{"use strict";f();Object.defineProperty(Tt,"__esModule",{value:!0});Tt.SINGLE_COMMAND_CLI_SYMBOL=void 0;Tt.SINGLE_COMMAND_CLI_SYMBOL=Symbol("SINGLE_COMMAND_CLI").toString()});var In=y(Rt=>{"use strict";f();Object.defineProperty(Rt,"__esModule",{value:!0});Rt.cacheDefaultValue=void 0;var lc=async(t,e)=>{if(!(e&&t.noCacheDefault)){if(typeof t.defaultHelp=="function")try{return await t.defaultHelp({flags:{},options:t})}catch{return}if(typeof t.default=="function")try{return await t.default({flags:{},options:t})}catch{}else return t.default}};Rt.cacheDefaultValue=lc});var be=y(Nt=>{"use strict";f();Object.defineProperty(Nt,"__esModule",{value:!0});Nt.toStandardizedId=uc;Nt.toConfiguredId=dc;function uc(t,e){return t.replaceAll(new RegExp(e.topicSeparator,"g"),":")}function dc(t,e){return t.replaceAll(new RegExp(":","g"),e.topicSeparator||":")}});var Tn=y(Ht=>{"use strict";f();Object.defineProperty(Ht,"__esModule",{value:!0});Ht.ActionBase=void 0;var $s=v("node:util"),qs=$(),kn=class{std="stderr";stdmocks;type;stdmockOrigs={stderr:process.stderr.write,stdout:process.stdout.write};get globals(){globalThis.ux=globalThis.ux||{};let e=globalThis.ux;return e.action=e.action||{},e}get output(){return this.globals.output}set output(e){this.globals.output=e}get running(){return!!this.task}get status(){return this.task?this.task.status:void 0}set status(e){let{task:n}=this;n&&n.status!==e&&(this._updateStatus(e,n.status),n.status=e)}get task(){return this.globals.action.task}set task(e){this.globals.action.task=e}_flushStdout(){try{let e="",n;for(;this.stdmocks&&this.stdmocks.length>0;){let i=this.stdmocks.shift();n=i[0],this._write(n,i[1]),e+=i[1][0].toString("utf8")}e&&n&&e.at(-1)!==`
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{b as D}from"./chunk-PMHP57MH.js";import{a as ee}from"./chunk-VMMUJN4T.js";import{k as K,l as Q,m as X,o as Z}from"./chunk-LVLAOBJM.js";import{a as re}from"./chunk-KSDU4YOB.js";import{a as q,c as z}from"./chunk-PSSYLJG4.js";import{a as W}from"./chunk-EITIW5OX.js";import{a as V,b as Y}from"./chunk-YY6TFARF.js";import{a as G}from"./chunk-P33TONYG.js";import{d as R,e as $,g as M,h as J}from"./chunk-QFWWCZOI.js";import{b as F,c as N,d as A,f as U,j as I,n as H,p as B}from"./chunk-5TB52UUV.js";import{r as g}from"./chunk-DJAZBPYA.js";import{da as me}from"./chunk-M5TGCSUK.js";import{N as E,ua as P,va as _}from"./chunk-H4V55Y3Z.js";import{A as k,B as O,F as L}from"./chunk-CZ22VZDA.js";import{h as v}from"./chunk-2VSNFOKD.js";import{wb as y}from"./chunk-LWCTKI4Z.js";import{b as t,i as j}from"./chunk-FZCGRIOM.js";import{e as x,g as C,p as f}from"./chunk-IWTNUJGY.js";import{e as ie,g as d}from"./chunk-VKWPEFWQ.js";d();import{resolve as ae}from"node:path";var he=t.object({id:t.number(),name:t.string(),role:t.string(),shop:t.string(),editor_url:t.string(),preview_url:t.string()}),T=t.object({environment:t.string().optional(),directory:t.string().optional(),sourcePaths:t.record(t.string()).optional(),changed:t.boolean().optional(),theme:he,published:t.boolean(),hasErrors:t.boolean(),errors:t.record(t.array(t.string()))}),te=t.object({status:t.enum(["success","partial"]),changed:t.boolean(),theme:R,issues:t.array(t.object({filePath:t.string().refine(C,"Expected an absolute filesystem path."),message:t.string()}).strict())}).strict(),oe=t.object({status:t.literal("skipped"),reason:t.literal("unsafe-directory")}).strict();function w(e){let{theme:o,hasErrors:r,errors:s}=e;return{status:r?"partial":"success",changed:e.changed??!0,theme:{...J(o),storeDomain:M(o.shop),editorUrl:o.editor_url||null,previewUrl:o.preview_url||null},issues:Object.entries(s).flatMap(([m,i])=>i.map(n=>({filePath:ae(e.directory??f(),e.sourcePaths?.[m]??m),message:n})))}}var S=$({name:"ThemePushJsonResult",schema:t.union([te,oe]),definitions:{ThemePushTheme:R},project:e=>oe.safeParse(e).success||te.safeParse(e).success?e:w(T.parse(e))});d();var b=ie(me(),1);function se(e,o){if(o==="json"){y(S.encode(w(e)));return}let{environment:r,theme:s,hasErrors:m,published:i}=e,n=r?[{subdued:`Environment: ${r}
|
|
2
|
+
|
|
3
|
+
`}]:[],a=m?O:k;if(i){a({body:[...n,m?`Your theme was published with errors and is now live at https://${s.shop}`:`Your theme is now live at https://${s.shop}`]});return}a({body:[...n,"The theme",...q(s),m?"was pushed with errors":"was pushed successfully."],nextSteps:[[{link:{label:"View your theme",url:s.preview_url}}],[{link:{label:"Customize your theme at the theme editor",url:s.editor_url}}]]})}async function ne(e,o=!1){if(!e.strict)return;let r=e.environment?.[0],s=o?"json":"silent",m=e.json?s:"text",{offenses:i}=await D(e.path??f(),m);if(e.json&&!o)for(let n of i)j({type:"diagnostic",level:{[b.Severity.ERROR]:"error",[b.Severity.WARNING]:"warning",[b.Severity.INFO]:"info"}[n.severity],code:n.check,message:`${r?`[${r}] `:""}${n.uri}: ${n.message}`});if(i.some(n=>n.severity===b.Severity.ERROR))throw _(new v(`${r?`[${r}] `:""}Theme check failed. Please fix the errors before pushing.`))}function _e(e){let o=e.map(r=>{if("error"in r)return r;let s=r.result??{status:"skipped",reason:"unsafe-directory"};return T.safeParse(s).data?.hasErrors&&(process.exitCode=1),{...r,result:s}});y(S.encode({environments:o}))}d();async function ue(e,o,r,s){let m=e.environment?.[0],i=o??await E(g({store:e.store}),e.password);P("theme-service:push:setup"),re({verbose:e.verbose,noColor:e.noColor});let n=e.force??!1,a=e.path?x(e.path):f();if(!await Z(a)&&!await z(n,void 0,m,r))return;e.listing&&await Q(a,e.listing);let l=await le(i,e,r);if(l)return P("theme-service:push:setup"),ce(l,i,{allowLive:e.allowLive??!1,environment:m,force:n,ignore:e.ignore??[],multiEnvironment:r,nodelete:e.nodelete??!1,only:e.only??[],path:a,publish:e.publish??!1,listing:e.listing},s)}async function ce(e,o,r,s){P("theme-service:push:file-system");let m=await H(e.id,o),i=X(r.path,{filters:r,listing:r.listing});P("theme-service:push:file-system");let n;if(r.listing){let c=r.listing;await i.ready(),n=Object.fromEntries(await Promise.all([...i.files.keys()].map(async p=>[p,await K(r.path,c,p)??p])))}let a=ee(e,o,m,i,r,s);await a.renderThemeSyncProgress();let{uploadResults:l}=a;r.publish&&await B(e.id,o);let h={};for(let[c,p]of l)p.success||(h[c]=p.errors?.asset?.length?p.errors.asset:["File upload failed"]);let u=T.parse({environment:r.environment,directory:r.path,...n&&{sourcePaths:n},changed:e.createdAtRuntime===!0||r.publish===!0||a.hasChanges,theme:{id:e.id,name:e.name,role:e.role,shop:o.storeFqdn,editor_url:Y(e,o),preview_url:V(e,o)},published:r.publish??!1,hasErrors:[...l.values()].some(c=>!c.success),errors:h});if(u.hasErrors&&!u.changed){let c=new v(`The theme '${e.name}' could not be pushed.`);throw c.details={themeId:String(e.id),issues:w(u).issues},c}return u}async function le(e,o,r){let{live:s,development:m,unpublished:i,theme:n,environment:a,developmentContext:l}=o;if(m)return new W(e).findOrCreate(l,F);if(i){let h=n??await U("Name of the new theme"),u=await I({name:h,role:A},e);return u?{...u,createdAtRuntime:!0}:void 0}else{let h=await G(e,{create:!0,header:"Select a theme to push to:",filter:{live:s,theme:n}});return await pe(h.role,o.allowLive,e.storeFqdn,a,r)?h:void 0}}async function pe(e,o,r,s,m){if(e===N){if(o)return!0;if(m)throw new v(`Can't push theme files to the live theme on ${r}. Use the --allow-live flag.`);let i={message:`Push theme files to the ${e} theme on ${r}?`,confirmationMessage:"Yes, confirm changes",cancellationMessage:"Cancel"};return L(i)}return!0}async function Qe(e,o,r,s){let m=o??await E(g({store:e.store}),e.password);await ne(e,!0);let i=await ue(e,m,r,s);i&&se(i,e.json?"json":"text")}export{T as a,w as b,S as c,se as d,ne as e,_e as f,ue as g,Qe as h};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as n}from"./chunk-
|
|
1
|
+
import{o as n}from"./chunk-IUP7POIE.js";import{I as s}from"./chunk-CZ22VZDA.js";import{g as a}from"./chunk-VKWPEFWQ.js";a();async function c(e){await s([{title:"Installing dependencies",task:async()=>{await n({packageManager:e.packageManager,directory:e.directory,deep:3})}}])}export{c as a};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{p as y,v}from"./chunk-DJAZBPYA.js";import{a as w}from"./chunk-PGLWZMJU.js";import{da as b}from"./chunk-M5TGCSUK.js";import{b as P,c as k}from"./chunk-Q2SZCZE7.js";import{A as d}from"./chunk-CZ22VZDA.js";import{a as c}from"./chunk-BN7ZXAZJ.js";import{h as n}from"./chunk-2VSNFOKD.js";import{Sa as u,la as l,wb as g}from"./chunk-LWCTKI4Z.js";import{b as r}from"./chunk-FZCGRIOM.js";import{e as m,g as p,m as f}from"./chunk-IWTNUJGY.js";import{e as T,g as s}from"./chunk-VKWPEFWQ.js";s();s();var _=T(b(),1),O=["AGENTS.md","DESIGN.md","assets/**","blocks/**","config/**","layout/**","listings/**/*","locales/**","sections/**","snippets/**","templates/**","templates/customers/**","release-notes.md","update_extension.json"].join("|");async function j(e){let t=await x(e),o=m(e,t),a=`${e}/(${O})`;return await w({inputDirectory:e,outputZipPath:o,matchFilePattern:a}),{path:o}}async function x(e){let t=m(e,"config/settings_schema.json");if(!await u(t))throw new n("Provide a config/settings_schema.json to package your theme.");let o=await z(t);if(o===void 0||o.theme_name===void 0)throw new n("Provide a theme_info.theme_name configuration in config/settings_schema.json.");let a=[o.theme_name,o.theme_version].filter(Boolean).join("-");if(/[/\\]/.test(a)||/^[a-z]:/i.test(a))throw new n("Theme name and version must not contain paths.");return`${a}.zip`}async function z(e){let t=(0,_.parseJSON)(await l(e),null,!0);if(!t)throw new n("The file config/settings_schema.json contains an error. Please check if the file is valid JSON and includes the theme_info.theme_name configuration.");return t.find(o=>o.name==="theme_info")}s();var i=c({name:"ThemePackageResult",schema:r.object({path:r.string().refine(p).describe("The absolute native path of the ZIP archive.")}).strict()});s();import{resolve as F}from"node:path";function S(e,t){if(t==="json"){g(i.encode({...e,path:F(e.path)}));return}d({body:["Your local theme was packaged in",{filePath:f(e.path)}]})}var h=class extends v{static get jsonOutputSchema(){return i}static summary="Package your theme into a .zip file, ready to upload to the Online Store.";static descriptionWithMarkdown=`Packages your local theme files into a ZIP file that can be uploaded to Shopify.
|
|
2
|
+
|
|
3
|
+
Only folders that match the [default Shopify theme folder structure](https://shopify.dev/docs/storefronts/themes/tools/cli#directory-structure) are included in the package.
|
|
4
|
+
|
|
5
|
+
The package includes the \`listings\` directory if present (required for multi-preset themes per [Theme Store requirements](https://shopify.dev/docs/storefronts/themes/store/requirements#adding-presets-to-your-theme-zip-submission)).
|
|
6
|
+
|
|
7
|
+
The ZIP file uses the name \`theme_name-theme_version.zip\`, based on parameters in your [settings_schema.json](https://shopify.dev/docs/storefronts/themes/architecture/config/settings-schema-json) file.`;static description=this.descriptionForHelp();static flags={...P,...k,path:y.path};static multiEnvironmentsFlags=null;async command(t){let o=await j(t.path);S(o,t.json?"json":"text")}};export{h as a};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{a as n}from"./chunk-BAHIL37I.js";import{b as v}from"./chunk-ZQDDRIBA.js";import{j as g}from"./chunk-H4V55Y3Z.js";import{b as w,c as F}from"./chunk-Q2SZCZE7.js";import{h as r}from"./chunk-2VSNFOKD.js";import{ta as u,va as m,wb as c,yb as y}from"./chunk-LWCTKI4Z.js";import{b as k}from"./chunk-YTUUU33R.js";import{e as l,h as f}from"./chunk-IWTNUJGY.js";import{e as O,g as s}from"./chunk-VKWPEFWQ.js";s();s();var D="text/markdown",L="X-Shopify-Surface",R="cli",S=["shopify.dev"];async function x(t,e){let o;try{o=new URL(t)}catch{throw new r(`Invalid URL: ${t}`)}let{hostname:i}=o;if(!S.some(d=>i===d||i.endsWith(`.${d}`)))throw new r(`Only documents from the following hosts can be fetched: ${S.join(", ")}.`);let a=await g(t,{headers:{Accept:D,[L]:R,...e?{"Accept-Language":e}:{}}});if(!a.ok)throw new r(`Failed to fetch ${t}: ${a.status} ${a.statusText}`);return{document:{url:t,content:await a.text()}}}s();async function A(t,e,o){if(o){let i=l(o);await m(f(i)),await u(i,t.document.content),y(`Saved ${t.document.url} to ${i}`),e==="json"&&c(n.encode({path:i,format:"markdown"}))}else e==="json"?c(n.encode(t)):c(t.document.content)}var p=O(k(),1),h=class t extends v{static descriptionWithMarkdown="Download a complete document from shopify.dev. Every page on shopify.dev has a Markdown version, and that is what this tool returns. Use this to pull an entire document verbatim \u2014 for example, a set of instructions an agent follows like a centrally-served skill. Pass `--language` for the language of the app you are building so code examples match your stack. For finding the relevant pieces of content across shopify.dev instead, use `doc search`.";static description=this.descriptionForHelp();static examples=[`# fetch the Markdown version of a Shopify.dev page
|
|
2
|
+
shopify doc fetch --url https://shopify.dev/docs/api/shopify-cli`,`# filter code examples to the language of the app you are building
|
|
3
|
+
shopify doc fetch --url https://shopify.dev/docs/api/shopify-cli --language ruby`,`# save the document to a file instead of printing it
|
|
4
|
+
shopify doc fetch --url https://shopify.dev/docs/api/shopify-cli --output docs/shopify-cli.md`,`# return a typed document as JSON
|
|
5
|
+
shopify doc fetch --url https://shopify.dev/docs/api/shopify-cli --json`];static flags={...w,...F,url:p.Flags.string({description:"The shopify.dev URL to fetch.",env:"SHOPIFY_FLAG_URL",required:!0}),language:p.Flags.string({description:"Filter code examples in the returned Markdown to this language. Supply the language of the app you are building so examples match your stack. Optional \u2014 if omitted, or if shopify.dev does not recognize the language for a given page, the document includes examples in every language.",env:"SHOPIFY_FLAG_LANGUAGE",options:["javascript","typescript","python","ruby","php","rust","curl","liquid","graphql","html"]}),output:p.Flags.string({description:"Write the document to this file path instead of printing it to stdout. With --json, stdout contains the absolute path and Markdown format of the written file.",env:"SHOPIFY_FLAG_OUTPUT"})};static get jsonOutputSchema(){return n}async run(){let{flags:e}=await this.parse(t),o=await x(e.url,e.language);await A(o,e.json?"json":"text",e.output)}};export{h as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as s}from"./chunk-IWTNUJGY.js";import{g as r}from"./chunk-VKWPEFWQ.js";r();r();import e from"node:path";import E from"node:os";import c from"node:process";var n=E.homedir(),a=E.tmpdir(),{env:i}=c,p=o=>{let t=e.join(n,"Library");return{data:e.join(t,"Application Support",o),config:e.join(t,"Preferences",o),cache:e.join(t,"Caches",o),log:e.join(t,"Logs",o),temp:e.join(a,o)}},A=o=>{let t=i.APPDATA||e.join(n,"AppData","Roaming"),_=i.LOCALAPPDATA||e.join(n,"AppData","Local");return{data:e.join(_,o,"Data"),config:e.join(t,o,"Config"),cache:e.join(_,o,"Cache"),log:e.join(_,o,"Log"),temp:e.join(a,o)}},S=o=>{let t=e.basename(n);return{data:e.join(i.XDG_DATA_HOME||e.join(n,".local","share"),o),config:e.join(i.XDG_CONFIG_HOME||e.join(n,".config"),o),cache:e.join(i.XDG_CACHE_HOME||e.join(n,".cache"),o),log:e.join(i.XDG_STATE_HOME||e.join(n,".local","state"),o),temp:e.join(a,t,o)}};function I(o,{suffix:t="nodejs"}={}){if(typeof o!="string")throw new TypeError(`Expected a string, got ${typeof o}`);return t&&(o+=`-${t}`),c.platform==="darwin"?p(o):c.platform==="win32"?A(o):S(o)}var T="shopify-cli",O=()=>process.env.XDG_CACHE_HOME?process.env.XDG_CACHE_HOME:I(T).cache;var C={alwaysLogAnalytics:"SHOPIFY_CLI_ALWAYS_LOG_ANALYTICS",alwaysLogMetrics:"SHOPIFY_CLI_ALWAYS_LOG_METRICS",deviceAuth:"SHOPIFY_CLI_DEVICE_AUTH",doctor:"SHOPIFY_CLI_DOCTOR",enableCliRedirect:"SHOPIFY_CLI_ENABLE_CLI_REDIRECT",env:"SHOPIFY_CLI_ENV",noAnalytics:"SHOPIFY_CLI_NO_ANALYTICS",optOutInstrumentation:"OPT_OUT_INSTRUMENTATION",serviceAccountToken:"SHOPIFY_SERVICE_ACCOUNT_TOKEN",appAutomationToken:"SHOPIFY_APP_AUTOMATION_TOKEN",partnersToken:"SHOPIFY_CLI_PARTNERS_TOKEN",runAsUser:"SHOPIFY_RUN_AS_USER",serviceEnv:"SHOPIFY_SERVICE_ENV",skipCliRedirect:"SHOPIFY_CLI_SKIP_CLI_REDIRECT",spinInstance:"SPIN_INSTANCE",themeToken:"SHOPIFY_CLI_THEME_TOKEN",unitTest:"SHOPIFY_UNIT_TEST",verbose:"SHOPIFY_FLAG_VERBOSE",codespaces:"CODESPACES",codespaceName:"CODESPACE_NAME",codespacePortForwardingDomain:"GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN",gitpod:"GITPOD_WORKSPACE_URL",cloudShell:"CLOUD_SHELL",spinAppPort:"SERVER_PORT",spinAppHost:"SPIN_APP_HOST",organization:"SHOPIFY_CLI_ORGANIZATION",identityToken:"SHOPIFY_CLI_IDENTITY_TOKEN",refreshToken:"SHOPIFY_CLI_REFRESH_TOKEN",otelURL:"SHOPIFY_CLI_OTEL_EXPORTER_OTLP_ENDPOINT",themeKitAccessDomain:"SHOPIFY_CLI_THEME_KIT_ACCESS_DOMAIN",json:"SHOPIFY_FLAG_JSON",skipNetworkLevelRetry:"SHOPIFY_CLI_SKIP_NETWORK_LEVEL_RETRY",maxRequestTimeForNetworkCalls:"SHOPIFY_CLI_MAX_REQUEST_TIME_FOR_NETWORK_CALLS",disableImportScanning:"SHOPIFY_CLI_DISABLE_IMPORT_SCANNING"},P="theme-kit-access.shopifyapps.com",F={backendPort:"BACKEND_PORT"},h={executables:{dev:"/opt/dev/bin/dev"},directories:{cache:{path:()=>O(),vendor:{path:()=>s(O(),"vendor"),binaries:()=>s(O(),"vendor","binaries")}}}},m={expirationTimeMarginInMinutes:4},Y="9e1e6889176fd0c795d5c659225e0fae",u={limit:300,timeout:{days:1}},f=process.env[C.themeKitAccessDomain]??P;export{I as a,C as b,P as c,F as d,h as e,m as f,Y as g,u as h,f as i};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as o}from"./chunk-MDRVCBDO.js";import{g as e}from"./chunk-VKWPEFWQ.js";e();var t=class extends o{};export{t as a};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import{b as Y}from"./chunk-LFOBYEWG.js";import{F as W}from"./chunk-H4V55Y3Z.js";import{q as M}from"./chunk-ZT5WFUKJ.js";import{W as k}from"./chunk-CZ22VZDA.js";import{a as C,c as j}from"./chunk-J6TW43TG.js";import{b as S,h as A}from"./chunk-335BUVBP.js";import{d as I}from"./chunk-X7HVAVSZ.js";import{h as d}from"./chunk-2VSNFOKD.js";import{$ as P,qb as h,sb as g,wb as R}from"./chunk-LWCTKI4Z.js";import{h as b,i as N,j as f}from"./chunk-FZCGRIOM.js";import{d as q}from"./chunk-3A3DZVEJ.js";import{b as $}from"./chunk-ZDQO6CNY.js";import{b as J}from"./chunk-YTUUU33R.js";import{a as _}from"./chunk-JD5P5RAJ.js";import{e as H,g as E}from"./chunk-VKWPEFWQ.js";E();var u=H(J()),O=class extends u.Command{static baseFlags={"json-schema":u.Flags.boolean({description:"Print the command's JSON schemas.",env:"SHOPIFY_FLAG_JSON_SCHEMA"})};static descriptionWithMarkdown;static get jsonOutputSchema(){}static get requiresSyncAnalytics(){return!1}static nonTTYFlagRequirements(n){return[]}static descriptionForHelp(){let n=(this.descriptionWithMarkdown??"").replace(/(\[)(.*?)(])(\()(.*?)(\))/gm,'"$2" ($5)');return z(n,this.jsonOutputSchema)}static descriptionWithoutMarkdown(){return this.descriptionForHelp()}static analyticsNameOverride(){}static analyticsStopCommand(){}jsonOutputFromFlags=!1;async catch(n){let e=async()=>{n.skipOclifErrorHandling=!0;let{errorHandler:r}=await import("./error-handler-74HKA23T.js");return await r(n,this.config),u.Errors.handle(n)};return this.jsonOutputFromFlags&&f()!=="json"?b({outputMode:"json",sink:j},e):e()}async _run(){return C(this.argv,()=>super._run())}async init(){if(this.exitWithTimestampWhenEnvVariablePresent(),Y(this.id??""),!q()){let{registerCleanBugsnagErrorsFromWithinPlugins:e}=await import("./error-handler-74HKA23T.js");await e(this.config)}await G(this.config),this.showNpmFlagWarning(),await this.showDeprecatedAutomationTokenVariableWarning();let{showNotificationsIfNeeded:n}=await import("./notifications-system-XA3EBOGJ.js");return await n(),super.init()}showNpmFlagWarning(){let n=this.constructor;Object.keys(n.flags||{}).map(t=>`npm_config_${P(t).replace(/^no_/,"")}`).some(t=>process.env[t]!==void 0)&&import("./ui-PCG5D6RZ.js").then(({renderWarning:t})=>{t({body:["NPM scripts require an extra",{command:"--"},"separator to pass the flags. Example:",{command:"npm run dev -- --reset"}]})})}async showDeprecatedAutomationTokenVariableWarning(){let n=A();n&&await M("warn-on-deprecated-automation-token-variable",{days:1},async()=>{let{renderWarning:e}=await import("./ui-PCG5D6RZ.js");e({headline:`${n} is deprecated.`,body:`Move the token to ${$.serviceAccountToken}. ${n} still works for now, but a future release will stop reading it.`})})}exitWithTimestampWhenEnvVariablePresent(){_(process.env.SHOPIFY_CLI_ENV_STARTUP_PERFORMANCE_RUN)&&(R(`
|
|
2
|
+
SHOPIFY_CLI_TIMESTAMP_START
|
|
3
|
+
{ "timestamp": ${Date.now()} }
|
|
4
|
+
SHOPIFY_CLI_TIMESTAMP_END
|
|
5
|
+
`),process.exit(0))}async parse(n,e){let r=await super.parse(n,e),t=await this.resultWithEnvironment(r,n,e);return this.runWithParsedOutput(t.flags,async()=>(await W(t.flags["auth-alias"]),await U(t.flags),this.validateNonTTYFlags(t.flags),{...t,argv:t.argv}))}runWithParsedOutput(n,e){let r=this.constructor,t=c(r.flags,"json")&&(n.json===!0||T(r.flags)&&n.output==="json");return this.jsonOutputFromFlags||=t,t&&f()!=="json"?b({outputMode:"json",sink:j},e):e()}environmentsFilename(){}async parseEnvironmentFlags(n,e,r){let t=this.argv;try{return(await super.parse(e,[...t,...D(n,e,r)])).flags}finally{this.argv=t}}validateNonTTYFlags(n){this.failMissingNonTTYFlagRequirements(n,this.applicableNonTTYFlagRequirements(n))}failMissingNonTTYFlags(n,e){this.failMissingNonTTYFlagRequirements(n,e.map(r=>({flags:[r]})))}failMissingNonTTYFlagRequirements(n,e){if(k())return;let r=e.filter(i=>i.flags.every(l=>n[l]===void 0||n[l]===!1));if(r.length===0)return;let t=r.length===1?"Flag not specified":"Flags not specified",s=r.map(i=>i.flags.map(l=>`--${l}`).join(" or ")).join(`
|
|
6
|
+
`),a=r.length===1?"This flag is required":"These flags are required";throw new d(g`${t}:
|
|
7
|
+
|
|
8
|
+
${h.cyan(s)}
|
|
9
|
+
|
|
10
|
+
${a} in non-interactive terminal environments, such as a CI environment, or when piping input from another process.`,"To resolve this, specify the options in the command, or run the command in an interactive environment such as your local terminal.")}applicableNonTTYFlagRequirements(n){let e=this.constructor,r={...e.baseFlags,...e.flags},t=Object.entries(r).filter(([,a])=>!!a.requiredIfNonInteractive).map(([a])=>({flags:[a]})),s=(e.nonTTYFlagRequirements?.(n)??[]).filter(a=>a.when?.(n)??!0);return[...t,...s]}async resultWithEnvironment(n,e,r){let t=n.flags,s=this.environmentsFilename();if(!s)return n;let{environmentFilePath:a}=await import("./environments-CYMEN7NV.js"),i=await a(s,{from:t.path}),l=[];t.environment&&(l=Array.isArray(t.environment)?t.environment:[t.environment]);let p=l.length>0;if(!i&&!p||p&&l.length>1)return n;let{environment:m,isDefaultEnvironment:v}=await this.loadEnvironmentForCommand(t.path,s,l[0]);if(!m||v&&!c(e?.flags,"environment"))return n;let y=await super.parse(B(e),r),F={...m,...y.flags};this.jsonOutputFromFlags=c(e?.flags,"json")&&F.json===!0||T(e?.flags)&&F.output==="json";let x=c(e?.flags,"json")&&T(e?.flags)&&F.output==="json"?{json:!0,...m}:m,w=await super.parse(e,[...r??this.argv,...D(x,e,y.flags),...v?["--environment","default"]:[]]),V=()=>L(y.flags,w.flags,v?"default":l[0],m);return this.runWithParsedOutput(w.flags,V),w}async loadEnvironmentForCommand(n,e,r){let{loadEnvironment:t}=await import("./environments-CYMEN7NV.js");return r?{environment:await t(r,e,{from:n}),isDefaultEnvironment:!1}:{environment:await t("default",e,{from:n,silent:!0}),isDefaultEnvironment:!0}}};async function U(o){await I(()=>({cmd_all_verbose:o.verbose,cmd_all_path_override:o.path!==void 0,cmd_all_path_override_hash:o.path===void 0?void 0:S(o.path)}))}function L(o,n,e,r){let t={};for(let[a,i]of Object.entries(n)){let l=Object.prototype.hasOwnProperty.call(o,a),p=Object.prototype.hasOwnProperty.call(r,a);if(!l&&p){let m=a==="password"||a==="store-password"?`********${i.substr(-4)}`:i;t[a]=m}}if(Object.keys(t).length===0)return;let s=Object.entries(t).map(([a,i])=>`${a}: ${i}`);if(f()==="json"){N({type:"diagnostic",level:"info",message:`Using applicable flags from ${e} environment:
|
|
11
|
+
${s.join(`
|
|
12
|
+
`)}`});return}import("./ui-PCG5D6RZ.js").then(({renderInfo:a})=>{a({headline:["Using applicable flags from",{userInput:e},"environment:"],body:[{list:{items:s}}]})})}function B(o){return o?.flags?{...o,flags:Object.fromEntries(Object.entries(o.flags).map(([n,e])=>{let r={...e};return delete r.default,[n,r]}))}:o}function D(o,n,e){let r=[];for(let[t,s]of Object.entries(o)){let a=c(n?.flags,t),i=Object.prototype.hasOwnProperty.call(e,t);if(a&&!i){if(n?.flags?.[t]?.type==="boolean"&&typeof s!="boolean")throw new d(g`Environment flag ${h.yellow(t)} must be a boolean.`);if(typeof s=="boolean")if(s)r.push(`--${t}`);else throw new d(g`Environments can only specify true for boolean flags. Attempted to set ${h.yellow(t)} to false.`);else Array.isArray(s)?s.forEach(l=>r.push(`--${t}`,`${l}`)):r.push(`--${t}`,`${s}`)}}return r}function c(o,n){return!!o&&Object.prototype.hasOwnProperty.call(o,n)}function T(o){let n=o?.output;return n?.type==="option"&&n.options?.includes("json")===!0}function z(o,n){if(!n)return o;let e=`Use \`--json-schema\` to print the result, error, and event schemas.
|
|
13
|
+
|
|
14
|
+
Output from \`--json\` conforms to the \`${n.name}\` schema.
|
|
15
|
+
|
|
16
|
+
\`\`\`json
|
|
17
|
+
${JSON.stringify(n.jsonSchema,null,2)}
|
|
18
|
+
\`\`\``;return[o,e].filter(Boolean).join(`
|
|
19
|
+
|
|
20
|
+
`)}async function G(o){let n=Array.from(o.plugins.values()),e=["@shopify/app","@shopify/plugin-cloudflare"],r=n.filter(s=>e.includes(s.name));if(r.length>0){let s=r.map(i=>` - shopify plugins remove ${i.name}`).join(`
|
|
21
|
+
`),{renderWarning:a}=await import("./ui-PCG5D6RZ.js");a({headline:`Unsupported plugins detected: ${r.map(i=>i.name).join(", ")}`,body:["They are already included in the CLI and installing them as custom plugins can cause conflicts.",`You can fix it by running:
|
|
22
|
+
${s}`]})}let t=n.filter(s=>!e.includes(s.name));o.plugins=new Map(t.map(s=>[s.name,s]))}var cn=O;export{B as a,cn as b};
|