@shopify/cli 4.8.5 → 4.9.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-QK4RFCB6.js +1 -0
- package/dist/analytics-R6I5APDB.js +1 -0
- package/dist/assets/hydrogen/starter/package.json +1 -1
- package/dist/bootstrap.js +1 -3
- package/dist/chunk-22LJALHJ.js +7 -0
- package/dist/{chunk-6ICRPFG4.js → chunk-23K3B23N.js} +1 -1
- package/dist/chunk-2KLXRVGQ.js +317 -0
- package/dist/{chunk-ZMD5TNU5.js → chunk-2LZQM5JG.js} +1 -1
- package/dist/chunk-2OHSGC4Q.js +1 -0
- package/dist/chunk-2Q3WIH7S.js +6 -0
- package/dist/{chunk-HSETBDXR.js → chunk-2W6M7YDY.js} +1 -1
- package/dist/{chunk-2JM3XHTQ.js → chunk-2YFB3PTV.js} +9 -9
- package/dist/chunk-2YRVHJEY.js +4 -0
- package/dist/{chunk-DKAWQBTI.js → chunk-3AASYIOA.js} +3 -3
- package/dist/chunk-3DMDSAWK.js +20 -0
- package/dist/{chunk-NZ3HLDJG.js → chunk-3SG5EJFC.js} +1 -1
- package/dist/chunk-3T2WMZHC.js +1 -0
- package/dist/{chunk-773TIA5M.js → chunk-3VYOLEQE.js} +2 -2
- package/dist/chunk-3WVEL423.js +1 -0
- package/dist/{chunk-H5MENHJ2.js → chunk-3ZK5JZLY.js} +1 -1
- package/dist/chunk-44QTWXOJ.js +8 -0
- package/dist/{chunk-4QBJ5JBX.js → chunk-4A7FPJVT.js} +16 -15
- package/dist/chunk-4TQFTZVD.js +18 -0
- package/dist/chunk-4WACZNFF.js +1 -0
- package/dist/{chunk-4UD2LW4O.js → chunk-4XSYMLQG.js} +1 -1
- package/dist/{chunk-T3B6KIPU.js → chunk-4Y22EM45.js} +1 -1
- package/dist/chunk-53U6XS3J.js +1 -0
- package/dist/chunk-55NKAIIT.js +1 -0
- package/dist/chunk-55PABKRC.js +5 -0
- package/dist/chunk-5BLXN5WU.js +1 -0
- package/dist/{chunk-AOPEKBDL.js → chunk-5BYVVXGD.js} +1 -1
- package/dist/{chunk-ZMTTZXC4.js → chunk-5HEBS5DG.js} +3 -3
- package/dist/{chunk-VIMFXQ3Q.js → chunk-5HONV6NQ.js} +1 -1
- package/dist/chunk-5RL6DKWR.js +5 -0
- package/dist/chunk-5XO6PAMV.js +1 -0
- package/dist/chunk-6DHY67FO.js +6 -0
- package/dist/{chunk-5GUXN2RU.js → chunk-6GA56I3E.js} +1 -1
- package/dist/chunk-6IL3B5Z5.js +4 -0
- package/dist/{chunk-AEPBX4GI.js → chunk-6ILP6QCH.js} +1 -1
- package/dist/{chunk-PL7AJVTV.js → chunk-6RBCFXJT.js} +1 -1
- package/dist/{chunk-NZE4C4OI.js → chunk-72HS7MHV.js} +1 -1
- package/dist/{chunk-RU6J6QQF.js → chunk-74HXMIDM.js} +1 -1
- package/dist/{chunk-PJ7L6NSD.js → chunk-77B77IGP.js} +1 -1
- package/dist/chunk-7DRKDQRT.js +1 -0
- package/dist/chunk-7HDJBEBP.js +3 -0
- package/dist/chunk-7IGMIDKK.js +15 -0
- package/dist/chunk-7QQPAT4L.js +1 -0
- package/dist/chunk-7Y4X5I6N.js +1 -0
- package/dist/{chunk-NPATN7YS.js → chunk-7ZSN2QT5.js} +1 -1
- package/dist/chunk-A54V5UCD.js +5 -0
- package/dist/{chunk-MNYKIPG7.js → chunk-AD4S2VEI.js} +1 -1
- package/dist/chunk-ADW7ECNU.js +7 -0
- package/dist/chunk-AS2O62JX.js +1 -0
- package/dist/chunk-ASUARYJD.js +1 -0
- package/dist/chunk-B4RPJYDH.js +1 -0
- package/dist/{chunk-PIQI72DV.js → chunk-BJOJNAKH.js} +1 -1
- package/dist/chunk-BL5JWD3Y.js +16 -0
- package/dist/chunk-BOFCBTX7.js +1 -0
- package/dist/chunk-BPIQ4YTW.js +1 -0
- package/dist/chunk-C6FZII5S.js +1 -0
- package/dist/{chunk-6LNTC6EK.js → chunk-CACPRKUF.js} +1 -1
- package/dist/{chunk-WKTIQUQP.js → chunk-CHLSNYF7.js} +1 -1
- package/dist/chunk-CMICT4XI.js +1 -0
- package/dist/chunk-CPFAATMO.js +6 -0
- package/dist/{chunk-R4TOHQH3.js → chunk-CSRNHTHO.js} +2 -2
- package/dist/chunk-D3K42KBL.js +9 -0
- package/dist/chunk-DGMRL5DQ.js +1 -0
- package/dist/chunk-DKJPE42V.js +2 -0
- package/dist/{chunk-SOJHJ4QK.js → chunk-DYA5UUXL.js} +1 -1
- package/dist/chunk-E5ND6RBL.js +1 -0
- package/dist/{chunk-DV7FOLG4.js → chunk-E75DJTAF.js} +1 -1
- package/dist/chunk-ECEOBSGD.js +1 -0
- package/dist/{chunk-6IOVTFAH.js → chunk-EYSZRIUL.js} +1 -1
- package/dist/chunk-FCULF3JA.js +1 -0
- package/dist/chunk-FL34EOXG.js +1 -0
- package/dist/chunk-FW5HGFSZ.js +20 -0
- package/dist/{chunk-M2M3I63K.js → chunk-G54BKNIX.js} +1 -1
- package/dist/{chunk-PU6KWWVK.js → chunk-G7OIACY5.js} +1 -1
- package/dist/{chunk-VVPIXC3W.js → chunk-GALDYSEX.js} +1 -1
- package/dist/{chunk-WQOV3LQA.js → chunk-GDQLA5NB.js} +1 -1
- package/dist/{chunk-GCJAY2XJ.js → chunk-GJJBOCKD.js} +3 -3
- package/dist/{chunk-OJSF3H2G.js → chunk-GQZPGTG7.js} +2 -2
- package/dist/{chunk-MMHTYLTG.js → chunk-GVRFO4CV.js} +1 -1
- package/dist/chunk-HB3MJYBK.js +1 -0
- package/dist/{chunk-AEUCDGTB.js → chunk-HDQXFGYG.js} +1 -1
- package/dist/chunk-HSTNTHWM.js +1 -0
- package/dist/{chunk-WAZL37JY.js → chunk-HSZC2LBB.js} +1 -1
- package/dist/chunk-I4FGM6UH.js +8 -0
- package/dist/chunk-I7GYNNCU.js +6 -0
- package/dist/{chunk-MFP63IUM.js → chunk-IBTQO3JD.js} +1 -1
- package/dist/{chunk-MVJSQT7V.js → chunk-IISE7SBT.js} +1 -1
- package/dist/chunk-IUZZWXJG.js +3 -0
- package/dist/chunk-IWML2HLC.js +5 -0
- package/dist/{chunk-CTNBSUVU.js → chunk-JA2QZ635.js} +2 -2
- package/dist/chunk-JOJRABPY.js +3 -0
- package/dist/chunk-JQKB3D37.js +1 -0
- package/dist/chunk-JROJL6RV.js +1 -0
- package/dist/{chunk-4JU7N2OF.js → chunk-JTPVSO6Y.js} +1 -1
- package/dist/chunk-JWDUSMCA.js +1 -0
- package/dist/{chunk-3CKUOG4B.js → chunk-KLYJDAP6.js} +1 -1
- package/dist/{chunk-LZZAD3FW.js → chunk-KVROYIUQ.js} +1 -1
- package/dist/chunk-L5XWYTHY.js +836 -0
- package/dist/chunk-LOTGSNS5.js +2 -0
- package/dist/{chunk-KHRZFJHM.js → chunk-LQLFMDVD.js} +1 -1
- package/dist/{chunk-Z4E2EXZV.js → chunk-LSWFHTJT.js} +1 -1
- package/dist/{chunk-BPJRQOHO.js → chunk-LV2IWYGL.js} +1 -1
- package/dist/{chunk-XRWQ7AXY.js → chunk-LYPNQFWX.js} +1 -1
- package/dist/{chunk-UJSCQJLW.js → chunk-MRVQ6XRW.js} +1 -1
- package/dist/chunk-MVVHISCR.js +2 -0
- package/dist/{chunk-VPOAOUT4.js → chunk-N4DE5H65.js} +1 -1
- package/dist/{chunk-W6ST525S.js → chunk-N56BJ3F7.js} +1 -1
- package/dist/{chunk-POOKYUTJ.js → chunk-NF7MOA4K.js} +1 -1
- package/dist/{chunk-PQDB3FUL.js → chunk-NGN7U2UF.js} +1 -1
- package/dist/{chunk-KDMJ2BLO.js → chunk-NTVEJYKI.js} +1 -1
- package/dist/chunk-NYABB6XW.js +1 -0
- package/dist/{chunk-RSGIMVPN.js → chunk-O6E7YL7N.js} +2 -2
- package/dist/chunk-OASB6XPV.js +16 -0
- package/dist/{chunk-I6DVGPJ7.js → chunk-OBYY45BX.js} +1 -1
- package/dist/chunk-OETFY7FE.js +28 -0
- package/dist/{chunk-K5OTE6CX.js → chunk-OEZATTOS.js} +1 -1
- package/dist/{chunk-D34ZSTCK.js → chunk-OG7SF4FU.js} +1 -1
- package/dist/chunk-OM243CQ6.js +6 -0
- package/dist/chunk-P3Z5RLVV.js +3 -0
- package/dist/{chunk-ZFA5DIJ3.js → chunk-PBBZNGS4.js} +1 -1
- package/dist/chunk-PGTKKP2B.js +11 -0
- package/dist/chunk-PK4ID32C.js +1 -0
- package/dist/{chunk-G7C4LBG2.js → chunk-PVOWU77O.js} +1 -1
- package/dist/{chunk-SYBKHTVU.js → chunk-PXD2WJOI.js} +3 -3
- package/dist/chunk-PXXTSW6I.js +4 -0
- package/dist/{chunk-IYFHBTJ2.js → chunk-PZHE37Z4.js} +1 -1
- package/dist/{chunk-WHXY372K.js → chunk-Q34PKJRR.js} +1 -1
- package/dist/{chunk-6QWLOSUQ.js → chunk-Q3O3AFZT.js} +1 -1
- package/dist/chunk-Q45XAEG2.js +16 -0
- package/dist/{chunk-DPMOLROM.js → chunk-QAXFCAOV.js} +5 -5
- package/dist/{chunk-FXBQKJTS.js → chunk-QBGSSUJP.js} +1 -1
- package/dist/chunk-QILWHHAQ.js +1 -0
- package/dist/{chunk-HGFCNPSN.js → chunk-QJST4LZX.js} +1 -1
- package/dist/chunk-QQN4PJZD.js +1 -0
- package/dist/{chunk-OAEGTH4Q.js → chunk-QSKOR3ED.js} +1 -1
- package/dist/{chunk-C4UCOQUP.js → chunk-QTEWTPAQ.js} +2 -2
- package/dist/chunk-QWDJRSJJ.js +1 -0
- package/dist/{chunk-TUWRPDTE.js → chunk-R757TSQ6.js} +1 -1
- package/dist/chunk-RCIU7NHA.js +1 -0
- package/dist/chunk-RGIUP4FW.js +1 -0
- package/dist/{chunk-4SXHXMK6.js → chunk-RHNFWHFY.js} +1 -1
- package/dist/{chunk-6QU2BHVL.js → chunk-S7536EWZ.js} +4 -4
- package/dist/{chunk-GW7IEG4G.js → chunk-SDFO7P2M.js} +1 -1
- package/dist/{chunk-7O2KMA4J.js → chunk-SDJNAUU6.js} +1 -1
- package/dist/chunk-SGBLCVUX.js +1 -0
- package/dist/chunk-SJARQZVN.js +3 -0
- package/dist/chunk-SKRUMRB4.js +383 -0
- package/dist/{chunk-BU6LJZG7.js → chunk-SW5EWGBJ.js} +1 -1
- package/dist/chunk-SXPWOYLT.js +7 -0
- package/dist/chunk-T234RERA.js +7 -0
- package/dist/chunk-TJJVX7CU.js +4 -0
- package/dist/{chunk-TTV2GWNE.js → chunk-TMV37ENR.js} +1 -1
- package/dist/{chunk-4UAJ6ULU.js → chunk-TNXZWQZU.js} +1 -1
- package/dist/{chunk-GUPUXFIP.js → chunk-TO7TXDLU.js} +1 -1
- package/dist/chunk-TSLZNTFM.js +3 -0
- package/dist/{chunk-NAQ7KT6L.js → chunk-UFU2LGFK.js} +1 -1
- package/dist/chunk-VDDNDA5K.js +15 -0
- package/dist/{chunk-F33TYJM5.js → chunk-VFO5OYQ4.js} +1 -1
- package/dist/{chunk-4DIR65KL.js → chunk-VFP3PUGZ.js} +24 -24
- package/dist/{chunk-6QDOCBD4.js → chunk-VZUHMW5E.js} +4 -3
- package/dist/chunk-W7CBJNXD.js +12 -0
- package/dist/chunk-WCAGYCT7.js +4 -0
- package/dist/{chunk-DPNZWBT5.js → chunk-WNO2V53C.js} +1 -1
- package/dist/{chunk-4XE6E4DC.js → chunk-WPUQTUDX.js} +1 -1
- package/dist/chunk-WU7MSL3I.js +8 -0
- package/dist/chunk-WXV35TPE.js +1 -0
- package/dist/{chunk-77KSMVIO.js → chunk-XBSWZ6BT.js} +6 -6
- package/dist/chunk-XCNJL7ES.js +1 -0
- package/dist/{chunk-WM3GKSPE.js → chunk-XFZDFDZV.js} +1 -1
- package/dist/chunk-XTYSJIZY.js +1 -0
- package/dist/chunk-Y5ZN62VF.js +1 -0
- package/dist/{chunk-EBBS7VG6.js → chunk-YAH5WFYR.js} +3 -3
- package/dist/{chunk-EJJPVVQ2.js → chunk-YBQKJHZW.js} +1 -1
- package/dist/chunk-YD66PU3Y.js +1 -0
- package/dist/chunk-YGFEUXKQ.js +1 -0
- package/dist/chunk-YJWNM4XO.js +18 -0
- package/dist/{chunk-RX63KGTK.js → chunk-YQQHBFMA.js} +1 -1
- package/dist/chunk-YRHFPXC3.js +1 -0
- package/dist/chunk-YTJ3EPD3.js +1 -0
- package/dist/chunk-YX5GRXRS.js +2368 -0
- package/dist/chunk-Z35PUKKP.js +7 -0
- package/dist/{chunk-WKRX4FBZ.js → chunk-Z3XIZMEM.js} +1 -1
- package/dist/chunk-ZGASBRSQ.js +5 -0
- package/dist/{chunk-HS3VTFW3.js → chunk-ZHJ6KA43.js} +1 -1
- package/dist/{chunk-H6TWXT6Q.js → chunk-ZO4IBP4B.js} +1 -1
- package/dist/chunk-ZOYSMJ27.js +1 -0
- package/dist/chunk-ZPCCSPAE.js +3 -0
- package/dist/chunk-ZSJXZCAW.js +4 -0
- package/dist/{chunk-A2BZY6TE.js → chunk-ZSVR5NEO.js} +1 -1
- package/dist/{chunk-J774336K.js → chunk-ZUVAHONX.js} +1 -1
- package/dist/chunk-ZVDFCUJT.js +2 -0
- package/dist/cli/commands/app/app-logs/sources.js +1 -1
- 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 -0
- package/dist/cli/commands/app/import/custom-data-definitions.js +1 -0
- package/dist/cli/commands/app/import/dashboard-extensions.js +1 -0
- 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 -0
- package/dist/cli/commands/app/security/clean.js +1 -0
- package/dist/cli/commands/app/security/instructions.js +1 -0
- package/dist/cli/commands/app/security/record.js +1 -0
- package/dist/cli/commands/app/security/review.js +1 -0
- 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.d.ts +16 -1
- package/dist/cli/commands/auth/login.js +1 -1
- package/dist/cli/commands/auth/logout.d.ts +16 -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.d.ts +13 -0
- package/dist/cli/commands/config/autoupgrade/off.js +1 -1
- package/dist/cli/commands/config/autoupgrade/on.d.ts +13 -0
- package/dist/cli/commands/config/autoupgrade/on.js +1 -1
- package/dist/cli/commands/config/autoupgrade/status.d.ts +13 -0
- 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 +2 -0
- package/dist/cli/commands/doc/fetch.js +1 -1
- package/dist/cli/commands/doc/search.d.ts +1 -0
- 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.d.ts +1 -0
- package/dist/cli/commands/doctor-release/theme/index.js +1 -1
- package/dist/cli/commands/help.d.ts +431 -1
- package/dist/cli/commands/help.js +1 -1
- package/dist/cli/commands/kitchen-sink/async.js +1 -1
- package/dist/cli/commands/kitchen-sink/index.js +1 -1
- package/dist/cli/commands/kitchen-sink/prompts.js +1 -1
- package/dist/cli/commands/kitchen-sink/static.js +1 -1
- package/dist/cli/commands/notifications/generate.js +1 -1
- package/dist/cli/commands/notifications/list.js +1 -1
- package/dist/cli/commands/organization/list.js +1 -1
- package/dist/cli/commands/search.d.ts +11 -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.js +1 -1
- package/dist/cli/commands/version.d.ts +15 -1
- package/dist/cli/commands/version.js +1 -1
- package/dist/cli/help.d.ts +5 -2
- package/dist/cli/help.js +6 -2
- package/dist/cli/services/commands/auth/login/types.d.ts +11 -0
- package/dist/cli/services/commands/auth/login/types.js +7 -0
- package/dist/cli/services/commands/config/autoupgrade/index.d.ts +3 -0
- package/dist/cli/services/commands/config/autoupgrade/index.js +9 -0
- package/dist/cli/services/commands/config/autoupgrade/result.d.ts +2 -0
- package/dist/cli/services/commands/config/autoupgrade/result.js +15 -0
- package/dist/cli/services/commands/config/autoupgrade/types.d.ts +10 -0
- package/dist/cli/services/commands/config/autoupgrade/types.js +7 -0
- package/dist/cli/services/commands/doc/fetch.d.ts +1 -1
- package/dist/cli/services/commands/doc/fetch.js +11 -2
- package/dist/cli/services/commands/help/index.d.ts +3 -0
- package/dist/cli/services/commands/help/index.js +51 -0
- package/dist/cli/services/commands/help/result.d.ts +2 -0
- package/dist/cli/services/commands/help/result.js +6 -0
- package/dist/cli/services/commands/help/types.d.ts +431 -0
- package/dist/cli/services/commands/help/types.js +71 -0
- package/dist/cli/services/commands/search/index.d.ts +2 -0
- package/dist/cli/services/commands/search/index.js +8 -0
- package/dist/cli/services/commands/search/result.d.ts +2 -0
- package/dist/cli/services/commands/search/result.js +12 -0
- package/dist/cli/services/commands/search/types.d.ts +10 -0
- package/dist/cli/services/commands/search/types.js +7 -0
- package/dist/cli/services/commands/version/index.d.ts +2 -0
- package/dist/cli/services/commands/version/index.js +5 -0
- package/dist/cli/services/commands/version/result.d.ts +2 -0
- package/dist/cli/services/commands/version/result.js +6 -0
- package/dist/cli/services/commands/version/types.d.ts +10 -0
- package/dist/cli/services/commands/version/types.js +7 -0
- package/dist/command-json-schema-Y3N2NUZN.js +1 -0
- package/dist/command-registry.js +1 -1
- package/dist/{conf-store-5UUKEHZV.js → conf-store-5ZA3ILWV.js} +1 -1
- package/dist/custom-oclif-loader-VQKMCXNH.js +1 -0
- package/dist/deprecations-PFQXWNF6.js +1 -0
- package/dist/dist-4X53WJBQ.js +1 -0
- package/dist/dist-5M2V3YCM.js +1 -0
- package/dist/environment-ZUTBXY7U.js +1 -0
- package/dist/environments-3RUZ7F4Q.js +1 -0
- package/dist/error-FBSXLW22.js +1 -0
- package/dist/error-handler-D5BURRJ7.js +1 -0
- package/dist/fs-ZLV5W4TV.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/http-proxy-node16-D3JUYA5D.js +38 -0
- package/dist/index.js +13 -14
- package/dist/is-global-GZ5CIXQA.js +1 -0
- package/dist/json-error-2BL3UZ7H.js +1 -0
- package/dist/lib-AD2G3QH3.js +1 -0
- package/dist/lib-VEVNMHDE.js +1 -0
- package/dist/lib-ZQW4E7QU.js +1 -0
- package/dist/local-KAZJAYLX.js +1 -0
- package/dist/metadata-M3ZE24WB.js +1 -0
- package/dist/{morph-BMYYMQNX.js → morph-42EXMN3K.js} +3 -3
- package/dist/node-package-manager-RVPONQBY.js +1 -0
- package/dist/notifications-system-MYEMV7JF.js +1 -0
- package/dist/os-DRUILZZR.js +1 -0
- package/dist/output-SDE274Y5.js +1 -0
- package/dist/{path-MBXP7ZIC.js → path-6YMSTSWG.js} +1 -1
- package/dist/system-5FQ3L5PA.js +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui-TEZZM7SE.js +1 -0
- package/dist/uncaught-error-handler.d.ts +6 -0
- package/dist/uncaught-error-handler.js +33 -0
- package/dist/upgrade-3PIVJYBL.js +1 -0
- package/dist/version-FMWTVLMF.js +1 -0
- package/dist/version-IAMVSP7U.js +1 -0
- package/dist/workerd-WRW4ZUYM.js +18 -0
- package/oclif.manifest.json +2646 -226
- package/package.json +17 -8
- package/dist/analytics-4D5FCVMV.js +0 -1
- package/dist/analytics-XRYJEPWC.js +0 -1
- package/dist/chunk-2IZROVCY.js +0 -1
- package/dist/chunk-2KD4LHRT.js +0 -5
- package/dist/chunk-2SOA4M4G.js +0 -1
- package/dist/chunk-2WNF5BX4.js +0 -18
- package/dist/chunk-2Z52XJQG.js +0 -1
- package/dist/chunk-34PQ6LJC.js +0 -1
- package/dist/chunk-3NW372KT.js +0 -1
- package/dist/chunk-4JLOCGTK.js +0 -3
- package/dist/chunk-4NZ465W4.js +0 -1
- package/dist/chunk-5EME57E6.js +0 -7
- package/dist/chunk-5N33O2RV.js +0 -1
- package/dist/chunk-5PAPCPUM.js +0 -1
- package/dist/chunk-5U24BORP.js +0 -6
- package/dist/chunk-6ARAJULJ.js +0 -1
- package/dist/chunk-7VJPQ52S.js +0 -15
- package/dist/chunk-7ZEVVGCH.js +0 -1
- package/dist/chunk-A5FV7HOY.js +0 -16
- package/dist/chunk-ADS7BFDG.js +0 -15
- package/dist/chunk-ADUMJRRY.js +0 -1
- package/dist/chunk-AI4SPBPV.js +0 -2
- package/dist/chunk-AKETXXYD.js +0 -1
- package/dist/chunk-ANOCIVJ3.js +0 -8
- package/dist/chunk-BMPCDXJR.js +0 -4
- package/dist/chunk-CAKGQWX4.js +0 -7
- package/dist/chunk-CBGDD3ZG.js +0 -317
- package/dist/chunk-CRALWNNO.js +0 -1
- package/dist/chunk-CUGLV7UX.js +0 -1
- package/dist/chunk-CWSQIPY5.js +0 -5
- package/dist/chunk-D6LV5CJL.js +0 -2
- package/dist/chunk-DGMHUJV3.js +0 -4
- package/dist/chunk-ENUN2VSC.js +0 -2
- package/dist/chunk-EX7Y3BEH.js +0 -1
- package/dist/chunk-FDK3NDYQ.js +0 -5
- package/dist/chunk-FLV6UQRA.js +0 -1
- package/dist/chunk-FTC3BXSD.js +0 -3
- package/dist/chunk-FXWNYGIW.js +0 -1
- package/dist/chunk-G5272L77.js +0 -7
- package/dist/chunk-G5QSVBYP.js +0 -19
- package/dist/chunk-G6SURO6V.js +0 -8
- package/dist/chunk-GBYDMHZ3.js +0 -3
- package/dist/chunk-GCN4O7HM.js +0 -1
- package/dist/chunk-GR6NR5QK.js +0 -1
- package/dist/chunk-HKHGJYRC.js +0 -1
- package/dist/chunk-IKNCFVVX.js +0 -1
- package/dist/chunk-IMIPD73V.js +0 -6
- package/dist/chunk-IPN5OHBY.js +0 -6
- package/dist/chunk-J2HBEHCX.js +0 -9
- package/dist/chunk-K3OI5VDE.js +0 -1
- package/dist/chunk-KB43BSFM.js +0 -3
- package/dist/chunk-KGRDHI2A.js +0 -2
- package/dist/chunk-KNCYAIJ2.js +0 -7
- package/dist/chunk-KYNXMDFU.js +0 -836
- package/dist/chunk-L7CQQML6.js +0 -6
- package/dist/chunk-LCVDLQEZ.js +0 -1
- package/dist/chunk-NDAUL4H4.js +0 -1
- package/dist/chunk-NDFKLPHJ.js +0 -1705
- package/dist/chunk-NUKSSKYR.js +0 -1
- package/dist/chunk-NVNDQQN6.js +0 -8
- package/dist/chunk-O452KNRL.js +0 -1
- package/dist/chunk-P5R6JZMT.js +0 -6
- package/dist/chunk-PDWJ2YH2.js +0 -1
- package/dist/chunk-PSSOCUUD.js +0 -375
- package/dist/chunk-PWXGGZQB.js +0 -1
- package/dist/chunk-QKUTVLRJ.js +0 -4
- package/dist/chunk-QOOVB6RW.js +0 -6
- package/dist/chunk-RGJVJ22M.js +0 -3
- package/dist/chunk-TIG7SSKB.js +0 -3
- package/dist/chunk-TU47HMTL.js +0 -1
- package/dist/chunk-UBTHWHPB.js +0 -12
- package/dist/chunk-UDWSRNKO.js +0 -1
- package/dist/chunk-VE6BYYBP.js +0 -5
- package/dist/chunk-W3BNL2Q5.js +0 -1
- package/dist/chunk-WDY5CK2T.js +0 -11
- package/dist/chunk-WHZKFG2B.js +0 -1
- package/dist/chunk-WLU7UG44.js +0 -3
- package/dist/chunk-WNBRPWSB.js +0 -1
- package/dist/chunk-WWRLFLGM.js +0 -2
- package/dist/chunk-XOEBZR5C.js +0 -3
- package/dist/chunk-YGSXN3YD.js +0 -28
- package/dist/chunk-YN5SVIOI.js +0 -11
- package/dist/chunk-YVB7ZPHR.js +0 -20
- package/dist/chunk-ZIAXZ5VG.js +0 -1
- package/dist/chunk-ZZNGFCJ3.js +0 -4
- package/dist/cli/commands/app/doctor/instructions.js +0 -1
- package/dist/cli/commands/app/doctor.js +0 -1
- package/dist/cli/commands/config/autoupgrade/constants.d.ts +0 -4
- package/dist/cli/commands/config/autoupgrade/constants.js +0 -1
- package/dist/cli/services/commands/search.d.ts +0 -1
- package/dist/cli/services/commands/search.js +0 -7
- package/dist/cli/services/commands/version.d.ts +0 -1
- package/dist/cli/services/commands/version.js +0 -6
- package/dist/custom-oclif-loader-BWAMUFQ4.js +0 -1
- package/dist/deprecations-DVGWC3RL.js +0 -1
- package/dist/dist-CN7N5IOM.js +0 -1
- package/dist/dist-Q5U4WGYG.js +0 -1
- package/dist/environments-M4CFP4XF.js +0 -1
- package/dist/error-ZES2RSN7.js +0 -1
- package/dist/error-handler-CRTU67VJ.js +0 -1
- package/dist/fs-GELMKEWX.js +0 -1
- package/dist/http-proxy-node16-A6AKKRQH.js +0 -38
- package/dist/is-global-X2QNCXXB.js +0 -1
- package/dist/lib-2BR2WN7L.js +0 -1
- package/dist/lib-M72BVWQ3.js +0 -1
- package/dist/lib-P3APEIHY.js +0 -1
- package/dist/local-HMFFXIE3.js +0 -1
- package/dist/metadata-SXJZZMCI.js +0 -1
- package/dist/node-package-manager-2D2CIFTG.js +0 -1
- package/dist/notifications-system-WH6MAXEN.js +0 -1
- package/dist/os-PY42WAOB.js +0 -1
- package/dist/output-MSTNB7GI.js +0 -1
- package/dist/system-7XRI63YJ.js +0 -1
- package/dist/ui-77QYNWJB.js +0 -1
- package/dist/upgrade-UVPNOKKK.js +0 -1
- package/dist/version-DXGPL73I.js +0 -1
- package/dist/version-XMVQO6PD.js +0 -1
- package/dist/workerd-SOWC66FA.js +0 -18
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as c}from"./chunk-5RL6DKWR.js";import{l as m}from"./chunk-FCULF3JA.js";import{Ib as u,b as e}from"./chunk-YJWNM4XO.js";import{b as H}from"./chunk-JA2QZ635.js";import{e as b,g as n}from"./chunk-VKWPEFWQ.js";n();var p=e.object({id:e.string(),summary:e.string().optional(),hidden:e.boolean().default(!1)}),l=e.object({name:e.string(),description:e.string().optional(),hidden:e.boolean().default(!1)}),g=e.object({name:e.string(),description:e.string().optional(),required:e.boolean().default(!1),hidden:e.boolean().default(!1),options:e.array(e.string()).optional(),default:e.unknown().optional()}),h=e.object({name:e.string(),type:e.enum(["boolean","option"]),char:e.string().optional(),summary:e.string().optional(),description:e.string().optional(),env:e.string().optional(),required:e.boolean().default(!1),hidden:e.boolean().default(!1),options:e.array(e.string()).optional(),default:e.unknown().optional(),multiple:e.boolean().optional(),allowNo:e.boolean().optional(),aliases:e.array(e.string()).optional(),dependsOn:e.array(e.string()).optional(),exclusive:e.array(e.string()).optional(),exactlyOne:e.array(e.string()).optional()}),f=p.extend({description:e.string().optional(),aliases:e.array(e.string()),usage:e.union([e.string(),e.array(e.string())]).optional(),examples:e.array(e.union([e.string(),e.object({description:e.string(),command:e.string()})])).optional(),strict:e.boolean().default(!0),args:e.record(g),flags:e.record(h)}),a={commands:e.array(p),topics:e.array(l)},s=c({name:"HelpResult",schema:e.discriminatedUnion("kind",[e.object({kind:e.literal("root"),...a}),e.object({kind:e.literal("topic"),topic:l,...a}),e.object({kind:e.literal("command"),command:f,...a})]),definitions:{HelpCommandSummary:p,HelpTopic:l,HelpArgument:g,HelpFlag:h,HelpCommand:f}});n();var y=b(H(),1);async function k(r,o,i=!1){let t=new d(r,{all:i});if(await t.showHelp(o),!t.result)throw new m("Oclif did not resolve a help subject.");return t.result}var d=class extends y.Help{result;async showCommandHelp(o){let i=t=>this.opts.all===!0||!t.hidden;this.result=s.validate({kind:"command",command:{...o,args:Object.fromEntries(Object.entries(o.args).filter(([,t])=>i(t))),flags:Object.fromEntries(Object.entries(o.flags).filter(([,t])=>i(t)))},...this.listings(o.id)})}async showRootHelp(){this.result=s.validate({kind:"root",...this.listings()})}async showTopicHelp(o){this.result=s.validate({kind:"topic",topic:o,...this.listings(o.name)})}listings(o){let i=t=>o===void 0?this.opts.all===!0||!t.includes(":"):t.startsWith(`${o}:`)&&t.split(":").length===o.split(":").length+1;return{commands:this.sortedCommands.filter(t=>t.id&&i(t.id)).map(t=>({id:t.id,summary:t.summary??t.description?.split(`
|
|
2
|
+
`)[0],hidden:t.hidden??!1})),topics:this.sortedTopics.filter(t=>i(t.name))}}};n();function T(r){u(s.encode(r))}export{s as a,k as b,T as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b}from"./chunk-
|
|
1
|
+
import{b}from"./chunk-I7GYNNCU.js";import{j as c,l as f,o as T}from"./chunk-ZHJ6KA43.js";import{a as F}from"./chunk-LYPNQFWX.js";import{p as y,v as O}from"./chunk-P3Z5RLVV.js";import{b as I}from"./chunk-DGMRL5DQ.js";import{k as v,oa as w}from"./chunk-L5XWYTHY.js";import{z as S}from"./chunk-SKRUMRB4.js";import{i as a}from"./chunk-FCULF3JA.js";import{Kb as _,Ya as l,qa as u}from"./chunk-YJWNM4XO.js";import{b as A}from"./chunk-JA2QZ635.js";import{e as x,g as d}from"./chunk-VKWPEFWQ.js";d();d();d();async function P({session:e,overridesContent:r,themeId:t}){w("theme-preview:create");let m=`${f(e)}/theme_preview.json?preview_theme_id=${t}`,o=await c(e,{headers:{"Content-Type":"application/json"}}),i=await v(m,{method:"POST",body:r,headers:o});if(!i.ok)throw new a(`Theme preview request failed with status ${i.status}: ${i.statusText}`);let n=await J(i);return w("theme-preview:create"),n}async function g({session:e,overridesContent:r,themeId:t,previewIdentifier:s}){w("theme-preview:update");let o=`${f(e)}/theme_preview.json?preview_theme_id=${t}&preview_identifier=${encodeURIComponent(s)}`,i=await c(e,{headers:{"Content-Type":"application/json"}}),n=await v(o,{method:"POST",body:r,headers:i});if(!n.ok)throw new a(`Theme preview request failed with status ${n.status}: ${n.statusText}`);let E=await J(n);return w("theme-preview:update"),E}async function J(e){let r=await e.json();if(r.error)throw new a(`Theme preview failed: ${r.error}`);if(!r.url||!r.preview_identifier)throw new a("Theme preview returned an unexpected response");return{url:r.url,preview_identifier:r.preview_identifier}}async function $(e){if(!l(e.overrideJson))throw new a(`Override file not found: ${e.overrideJson}`);let r=await u(e.overrideJson),t;try{t=JSON.parse(r)}catch(i){let n=i instanceof Error?i.message:String(i);throw new a(`Failed to parse override file: ${e.overrideJson}`,n)}let s=await T(e.themeId,e.adminSession,e.password),m=JSON.stringify(t),o=e.previewIdentifier?await g({session:s,overridesContent:m,themeId:e.themeId,previewIdentifier:e.previewIdentifier}):await P({session:s,overridesContent:m,themeId:e.themeId});e.json?_(JSON.stringify({url:o.url,preview_identifier:o.preview_identifier})):S({body:[{list:{title:e.previewIdentifier?"Preview updated":"Preview is ready",items:[{link:{url:o.url}},`Preview ID: ${o.preview_identifier}`]}}]}),e.open&&b(o.url,"theme preview")}var p=x(A(),1);var h=class extends O{static summary="Applies JSON overrides to a theme and returns a preview URL.";static descriptionWithMarkdown="Applies a JSON overrides file to a theme and creates or updates a preview. This lets you quickly preview changes.\n\n The command returns a preview URL and a preview identifier. You can reuse the preview identifier with `--preview-id` to update an existing preview instead of creating a new one.";static description=this.descriptionForHelp();static flags={...I,...y,theme:p.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID",required:!0}),overrides:p.Flags.string({description:"Path to a JSON overrides file.",env:"SHOPIFY_FLAG_OVERRIDES",required:!0}),"preview-id":p.Flags.string({description:"An existing preview identifier to update instead of creating a new preview.",env:"SHOPIFY_FLAG_PREVIEW_ID"}),open:p.Flags.boolean({description:"Automatically launch the theme preview in your default web browser.",env:"SHOPIFY_FLAG_OPEN",default:!1}),json:p.Flags.boolean({description:"Output the preview URL and identifier as JSON.",env:"SHOPIFY_FLAG_JSON",default:!1})};static multiEnvironmentsFlags=null;async command(r,t){let s=await F(t,{filter:{theme:r.theme}});await $({adminSession:t,overrideJson:r.overrides,themeId:s.id.toString(),previewIdentifier:r["preview-id"],open:r.open,password:r.password,json:r.json})}};export{h as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b as m}from"./chunk-
|
|
1
|
+
import{b as m}from"./chunk-FW5HGFSZ.js";import{G as f}from"./chunk-SKRUMRB4.js";import{Ib as c}from"./chunk-YJWNM4XO.js";import{b as N}from"./chunk-JA2QZ635.js";import{e as v,g}from"./chunk-VKWPEFWQ.js";g();var d=v(N(),1),i=class h extends m{static description="View all the available command flags";static hidden=!0;static flags={csv:d.Flags.boolean({description:"Output as CSV",env:"SHOPIFY_FLAG_OUTPUT_CSV",default:!1})};async run(){let{flags:p}=await this.parse(h),s=[];for(let[t,a]of this.config.plugins)for(let o of a.commands){let l=await o.load(),n;a.name.startsWith("@shopify")?n=a.name.substring(9):n=a.name.startsWith("@oclif")?a.name.substring(7):a.name;let e=l.flags;if(e)for(let[u,r]of Object.entries(e))s.push({pluginName:n,command:o.id,flagName:`--${u}`,flagChar:r.char?`-${r.char}`:"",flagEnv:r.env})}if(p.csv){let t=["pluginName","command","flagName","flagChar","flagEnv"],a=`${t.join(",")}
|
|
2
2
|
`,o=s.map(n=>t.map(e=>n[e]).join(",")).join(`
|
|
3
3
|
`),l=`${a}${o}
|
|
4
4
|
`;c(l)}else f({rows:s,columns:{pluginName:{header:"plugin",color:"red"},command:{},flagName:{header:"long flag",color:"green"},flagChar:{header:"short flag",color:"green"},flagEnv:{header:"env variable",color:"blueBright"}}})}};export{i as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{i as E}from"./chunk-FCULF3JA.js";import{Cb as $,Eb as T,Nb as O,Xa as V,qa as N}from"./chunk-YJWNM4XO.js";import{a as g,c as w,e as Y,g as m}from"./chunk-VKWPEFWQ.js";var I=w((z,R)=>{R.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var K=w((X,d)=>{m();var b=g("fs"),y=g("path"),q=g("os"),F=g("crypto"),P=I(),D=P.version,C=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function S(e){let n={},r=e.toString();r=r.replace(/\r\n?/mg,`
|
|
2
2
|
`);let s;for(;(s=C.exec(r))!=null;){let a=s[1],t=s[2]||"";t=t.trim();let o=t[0];t=t.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),o==='"'&&(t=t.replace(/\\n/g,`
|
|
3
3
|
`),t=t.replace(/\\r/g,"\r")),n[a]=t}return n}function U(e){e=e||{};let n=x(e);e.path=n;let r=l.configDotenv(e);if(!r.parsed){let o=new Error(`MISSING_DATA: Cannot parse ${n} for an unknown reason`);throw o.code="MISSING_DATA",o}let s=A(e).split(","),a=s.length,t;for(let o=0;o<a;o++)try{let i=s[o].trim(),f=M(r,i);t=l.decrypt(f.ciphertext,f.key);break}catch(i){if(o+1>=a)throw i}return l.parse(t)}function B(e){console.log(`[dotenv@${D}][WARN] ${e}`)}function v(e){console.log(`[dotenv@${D}][DEBUG] ${e}`)}function j(e){console.log(`[dotenv@${D}] ${e}`)}function A(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function M(e,n){let r;try{r=new URL(n)}catch(i){if(i.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw i}let s=r.password;if(!s){let i=new Error("INVALID_DOTENV_KEY: Missing key part");throw i.code="INVALID_DOTENV_KEY",i}let a=r.searchParams.get("environment");if(!a){let i=new Error("INVALID_DOTENV_KEY: Missing environment part");throw i.code="INVALID_DOTENV_KEY",i}let t=`DOTENV_VAULT_${a.toUpperCase()}`,o=e.parsed[t];if(!o){let i=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${t} in your .env.vault file.`);throw i.code="NOT_FOUND_DOTENV_ENVIRONMENT",i}return{ciphertext:o,key:s}}function x(e){let n=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)b.existsSync(r)&&(n=r.endsWith(".vault")?r:`${r}.vault`);else n=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else n=y.resolve(process.cwd(),".env.vault");return b.existsSync(n)?n:null}function k(e){return e[0]==="~"?y.join(q.homedir(),e.slice(1)):e}function W(e){let n=!!(e&&e.debug),r=e&&"quiet"in e?e.quiet:!0;(n||!r)&&j("Loading env from encrypted .env.vault");let s=l._parseVault(e),a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),l.populate(a,s,e),{parsed:s}}function G(e){let n=y.resolve(process.cwd(),".env"),r="utf8",s=!!(e&&e.debug),a=e&&"quiet"in e?e.quiet:!0;e&&e.encoding?r=e.encoding:s&&v("No encoding is specified. UTF-8 is used by default");let t=[n];if(e&&e.path)if(!Array.isArray(e.path))t=[k(e.path)];else{t=[];for(let u of e.path)t.push(k(u))}let o,i={};for(let u of t)try{let c=l.parse(b.readFileSync(u,{encoding:r}));l.populate(i,c,e)}catch(c){s&&v(`Failed to load ${u} ${c.message}`),o=c}let f=process.env;if(e&&e.processEnv!=null&&(f=e.processEnv),l.populate(f,i,e),s||!a){let u=Object.keys(i).length,c=[];for(let p of t)try{let h=y.relative(process.cwd(),p);c.push(h)}catch(h){s&&v(`Failed to load ${p} ${h.message}`),o=h}j(`injecting env (${u}) from ${c.join(",")}`)}return o?{parsed:i,error:o}:{parsed:i}}function J(e){if(A(e).length===0)return l.configDotenv(e);let n=x(e);return n?l._configVault(e):(B(`You set DOTENV_KEY but you are missing a .env.vault file at ${n}. Did you forget to build it?`),l.configDotenv(e))}function Q(e,n){let r=Buffer.from(n.slice(-64),"hex"),s=Buffer.from(e,"base64"),a=s.subarray(0,12),t=s.subarray(-16);s=s.subarray(12,-16);try{let o=F.createDecipheriv("aes-256-gcm",r,a);return o.setAuthTag(t),`${o.update(s)}${o.final()}`}catch(o){let i=o instanceof RangeError,f=o.message==="Invalid key length",u=o.message==="Unsupported state or unable to authenticate data";if(i||f){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(u){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw o}}function H(e,n,r={}){let s=!!(r&&r.debug),a=!!(r&&r.override);if(typeof n!="object"){let t=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw t.code="OBJECT_REQUIRED",t}for(let t of Object.keys(n))Object.prototype.hasOwnProperty.call(e,t)?(a===!0&&(e[t]=n[t]),s&&v(a===!0?`"${t}" is already defined and WAS overwritten`:`"${t}" is already defined and was NOT overwritten`)):e[t]=n[t]}var l={configDotenv:G,_configVault:W,_parseVault:U,config:J,decrypt:Q,parse:S,populate:H};d.exports.configDotenv=l.configDotenv;d.exports._configVault=l._configVault;d.exports._parseVault=l._parseVault;d.exports.config=l.config;d.exports.decrypt=l.decrypt;d.exports.parse=l.parse;d.exports.populate=l.populate;d.exports=l});m();var L=Y(K());async function oe(e){if(O(T`Reading the .env file at ${$.path(e)}`),!await V(e))throw new E(`The environment file at ${e} does not exist.`);let n=await N(e);return{path:e,variables:(0,L.parse)(n)}}function se(e,n){let r=[],s=e===null?[]:e.split(`
|
|
4
4
|
`),a=[],t;for(let o of s){if(t){if(o.endsWith(t.quote)){let u=_(t.key,t.value+o.slice(0,-1),t.quote),c=n[t.key];c&&(a.push(t.key),u=_(t.key,c)),r.push(u),t=void 0}else t.value+=`${o}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as m,d as f,e as p}from"./chunk-
|
|
1
|
+
import{c as m,d as f,e as p}from"./chunk-SDJNAUU6.js";import{d as c,f as w,j as T}from"./chunk-R757TSQ6.js";import{g as d}from"./chunk-P3Z5RLVV.js";import{F as u}from"./chunk-SKRUMRB4.js";import{i as l}from"./chunk-FCULF3JA.js";import{X as i}from"./chunk-YJWNM4XO.js";import{g as s}from"./chunk-VKWPEFWQ.js";s();async function A(e,r){let n=await m(e),t=new p(r.filter),a=e.storeFqdn;if(t.any())return f(a,n,t)[0];let y=r.header??"",h=n.map(o=>{let S=o.id.toString()===d()?" [current]":"";return{value:async()=>o,label:`${o.name}${S}`,group:i(o.role)}});return r.create&&h.unshift(g(e)),(await u({message:y,choices:h}))()}async function B(e,r){return(await m(e)).find(t=>t.id.toString()===r)}async function C(e,r){let n=await m(e),t=new p(r),a=e.storeFqdn;return t.any()?f(a,n,t):[]}function g(e){return{value:async()=>{let r=c,n=await w("Name of the new theme"),t=await T({name:n,role:r},e);if(!t)throw new l("The theme could not be created.");return t},label:"[Create a new theme]",group:i(c)}}export{A as a,B as b,C as c};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as ge}from"./chunk-
|
|
1
|
+
import{c as ge}from"./chunk-QJST4LZX.js";import{a as he,c as ye}from"./chunk-IISE7SBT.js";import{b as ue}from"./chunk-CHLSNYF7.js";import{a as Te}from"./chunk-YGFEUXKQ.js";import{Da as Fe,Ha as Le,J as ve,R as Pe,T as Ae,V as ke,da as xe,ga as Ce,h as we}from"./chunk-2KLXRVGQ.js";import{A as be,ma as Ie,ra as Re}from"./chunk-Q45XAEG2.js";import{b as fe,f as de}from"./chunk-DGMRL5DQ.js";import{B as ie,D as re,E as oe,f as C,g as ee,i as te,p as ae}from"./chunk-6GA56I3E.js";import{e as Q}from"./chunk-QAXFCAOV.js";import{a as z}from"./chunk-RGIUP4FW.js";import{D as $,H as ce,y as le,z as pe}from"./chunk-SKRUMRB4.js";import{c as ne}from"./chunk-OEZATTOS.js";import{d as se}from"./chunk-G54BKNIX.js";import{i as m}from"./chunk-FCULF3JA.js";import{Aa as Y,Cb as h,Db as F,Eb as b,Ga as I,Na as V,Sa as K,Xa as R,Ya as x,Za as B,_a as W,ca as H,db as Z,oa as q,qa as O,ub as X,vb as J,wa as T,ya as _}from"./chunk-YJWNM4XO.js";import{f as me}from"./chunk-SGBLCVUX.js";import{b as He}from"./chunk-JA2QZ635.js";import{d as l,e as k,f as M,p as U,q as D}from"./chunk-3VYOLEQE.js";import{e as De,g as c}from"./chunk-VKWPEFWQ.js";c();c();var y={reactRouter:{url:"https://github.com/Shopify/shopify-app-template-react-router",label:"Build a React Router app (recommended)",visible:!0,branches:{prompt:"For your React Router template, which language do you want?",options:{javascript:{branch:"javascript-cli",label:"JavaScript"},typescript:{branch:"main-cli",label:"TypeScript"}}}},remix:{url:"https://github.com/Shopify/shopify-app-template-remix",label:"Build a Remix app",visible:!1,branches:{prompt:"For your Remix template, which language do you want?",options:{javascript:{branch:"javascript",label:"JavaScript"},typescript:{branch:"main",label:"TypeScript"}}}},none:{url:"https://github.com/Shopify/shopify-app-template-extension-only",label:"Build an extension-only app",visible:!0},node:{url:"https://github.com/Shopify/shopify-app-template-node",visible:!1},ruby:{url:"https://github.com/Shopify/shopify-app-template-ruby",visible:!1}},S=Object.keys(y),L=S.filter(e=>y[e].visible),qe=["reactRouter","none"],Oe=async e=>{let t=e.template,a=e.flavor,r={template:y.reactRouter.url};t??=await $({choices:qe.map(o=>({label:y[o].label||o,value:o})),message:"Get started building your app:",defaultValue:S.find(o=>y[o].url===r.template)});let i={...e,template:t,templateType:P(t)?t:"custom",globalCLIResult:{install:!1,alreadyInstalled:!1}},n,s;if(i.templateType!=="custom"){let o=y[i.templateType];n=o.url,o.branches&&(a?s=o.branches.options[a]?.branch:s=await $({message:o.branches.prompt||"Choose a flavor:",choices:Object.entries(o.branches.options).map(([f,u])=>({value:u.branch,label:u.label}))}))}return s&&(n=`${n}#${s}`),i.template=n||i.template||r.template,i.globalCLIResult=await J(),i},_e=Oe;function P(e){return S.includes(e)}function $e(e){return e!==void 0&&P(e)&&y[e].branches!==void 0}c();c();import{platform as Ye}from"os";async function Se({packageJSON:e,local:t,useGlobalCLI:a}){if(e.dependencies=e.dependencies??{},a?delete e.dependencies["@shopify/cli"]:e.dependencies["@shopify/cli"]=z,delete e.dependencies["@shopify/app"],t){let r=await Ve("cli");e.dependencies["@shopify/cli"]=r;let i={"@shopify/cli":r};e.overrides=e.overrides?{...e.overrides,...i}:i,e.resolutions=e.resolutions?{...e.resolutions,...i}:i}return e}async function Ve(e){return`file:${await Z(`packages/${e}`,{type:"directory",cwd:U(import.meta.url)})}`}async function Ge({from:e,packageManager:t}){let a=Ye()==="win32"&&t==="yarn"?["--network-concurrency","1"]:[];return ae({directory:k(e),packageManager:t,args:a})}c();async function G(e,t){let r=(await W([l(e,"**",".git"),l(e,"**",".github"),l(e,"**",".gitmodules"),l(e,"**",".cli-liquid-bypass"),l(e,"LICENSE*"),l(e,"**","frontend/LICENSE*"),l(e,"package.json.cli2")],{dot:!0,onlyFiles:!1,onlyDirectories:!1,ignore:["**/node_modules/**"]})).map(s=>I(s,{force:!0})),i=new Set(ee[t]),n=C.filter(s=>!i.has(s)).map(s=>{let o=l(e,s);if(x(o))return V(o)});return Promise.all([...r,...n])}async function Ke(e){let t=e.packageManager,a=H(e.name),r=l(e.directory,a),i=ge(e.template);await Ee(r,a),await Be(r),le({body:["Initializing project with",{command:t},`
|
|
2
2
|
Use the`,{command:"--package-manager"},"flag to select a different package manager."]}),await q(async o=>{let f=l(o,"download"),u=i.filePath?l(f,i.filePath):f,d=l(o,"app"),A=i.branch?`${i.baseURL}#${i.branch}`:i.baseURL;await Y(f);let w=[{title:`Downloading template from ${A}`,task:async()=>{await ye({repoUrl:A,destination:f,shallow:!0})}}];w.push({title:"Parsing liquid",task:async()=>{await ue(u,d,{dependency_manager:t,app_name:e.name})}},{title:"Updating package.json",task:async()=>{let p=(await ie(d)).content;p.name=a,p.author=await ne()??"",p.private=!0;let v=["extensions/*"].concat(We(d));switch(t){case"npm":case"yarn":case"bun":p.workspaces=v;break;case"pnpm":{await Ze(d,v),await T(l(d,".npmrc"),`auto-install-peers=true
|
|
3
3
|
`);break}case"homebrew":case"unknown":throw new te}await Se({packageJSON:p,local:e.local,directory:d,useGlobalCLI:e.useGlobalCLI}),await re(d,p)}}),e.postCloneActions.removeLockfilesFromGitignore&&w.push({title:"Removing lockfiles from .gitignore",task:async()=>{let p=l(d,".gitignore");if(await R(p)){let v=await O(p);C.forEach(Me=>{let Ue=new RegExp(`^${Me.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}$`,"gm");v=v.replace(Ue,"")}),await _(p,v.trim())}}}),await me()&&w.push({title:"[Shopifolks-only] Configuring the project's NPM registry",task:async()=>{let p=l(d,".npmrc");await T(p,`@shopify:registry=https://registry.npmjs.org
|
|
4
4
|
`)}});let N=!1;w.push({title:"Preparing project directory",task:async()=>{await Ee(r,a),N=!0,await K(d,r)}}),w.push({title:`Installing dependencies with ${t}`,task:async()=>{await Ge({from:r,packageManager:t})}},{title:"Cleaning up",task:async()=>{await G(r,t)}},{title:"Initializing a Git repository...",task:async()=>{await he(r)}});try{await ce(w)}catch(p){throw N&&await I(r).catch(()=>{}),p}});let n;if(e.selectedAppOrNameResult.result==="new"){let o=await ve(r,e.name),f=e.selectedAppOrNameResult.org;n=await e.developerPlatformClient.createApp(f,o)}else n=e.selectedAppOrNameResult.app;await Fe({directory:r,apiKey:n.apiKey,appId:n.id,organizationId:n.organizationId,configName:"shopify.app.toml",developerPlatformClient:e.developerPlatformClient,isNewApp:!0},!1);let s=await Le({directory:r,clientId:void 0,forceRelink:!1,userProvidedConfigName:void 0});return pe({headline:[{userInput:a},"is ready for you to build!"],nextSteps:[["Run",{command:`cd ${a}`}],["For extensions, run",{command:F(t,"shopify app generate extension")}],["To see your app, run",{command:F(t,"shopify app dev")}]],reference:[{link:{label:"Shopify docs",url:"https://shopify.dev"}},[{link:{label:"Shopify Dev MCP,",url:"https://shopify.dev/docs/apps/build/devmcp"}},"connect your AI assistant to development resources"],["For an overview of commands, run",{command:F(t,"shopify app","--help")}]]}),{app:s.app}}async function Ee(e,t){if(await R(e))throw new m(`
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{ba as X,ka as z,la as j,ma as v,na as J,oa as A,pa as W,qa as k,ra as q,sa as N,ta as B,ua as L,va as K,wa as R,xa as Q}from"./chunk-2KLXRVGQ.js";import{B as l,q as T,t as G}from"./chunk-Q45XAEG2.js";import{d as H}from"./chunk-4A7FPJVT.js";import{D as x,z as U}from"./chunk-SKRUMRB4.js";import{i as C,k as P}from"./chunk-FCULF3JA.js";import{$ as c,Aa as I,Ca as D,Eb as $,Xa as V,ca as b,ua as F}from"./chunk-YJWNM4XO.js";import{d as E,j as M}from"./chunk-3VYOLEQE.js";import{g as s}from"./chunk-VKWPEFWQ.js";s();s();function Y(e){switch(e){case d.Offsite:return v;case d.CreditCard:return L;case d.CustomCreditCard:return N;case d.CustomOnsite:return k;case d.Redeemable:return A;case d.CardPresent:return R}}var d;(function(e){e.Offsite="payments_app",e.CreditCard="payments_app_credit_card",e.CustomCreditCard="payments_app_custom_credit_card",e.CustomOnsite="payments_app_custom_onsite",e.Redeemable="payments_app_redeemable",e.CardPresent="payments_app_card_present"})(d||(d={}));function Z(e,t){let i=e.activeVersion?.context??e.draftVersion?.context??Y(e.type);switch(i){case v:return w(e,t,J);case L:return w(e,t,K);case N:return w(e,t,B);case k:return w(e,t,q);case A:return w(e,t,W);case R:return w(e,t,Q);default:throw new Error(`Unsupported extension: ${i}`)}}function w(e,t,i){let n=(e.activeVersion??e.draftVersion)?.config;if(!n)throw new Error("No config found for extension");let r=JSON.parse(n),p=i(r,t);p&&delete p.api_version;let a=e.activeVersion?.context??e.draftVersion?.context??Y(e.type);return{api_version:r.api_version,extensions:[{name:e.title,type:"payments_extension",handle:c(e.title.substring(0,l)),...p,targeting:[{target:`${a}`}]}]}}s();s();var pe=new Map(j.map(e=>[e[1],e[0]])),fe=(e,t)=>{let i=pe.get(e.uiType);if(!i)throw new C(`Field type ${e.uiType} is not supported`);let o={key:e.name,description:e.description??void 0,type:i};return t==="flow_action_definition"&&(o.name=e.label,o.required=e.required),o},ue=(e,t)=>{let n={type:t==="flow_action_definition"?`${e.name.replace("_id","")}_reference`:`${e.uiType}_reference`};return t==="flow_action_definition"&&(n.required=e.required),e.uiType==="marketing-activity-id"&&(n.marketingActivityCreateUrl=e.marketingActivityCreateUrl,n.marketingActivityDeleteUrl=e.marketingActivityDeleteUrl),n},ee=(e,t)=>t?t.map(o=>o.uiType==="commerce-object-id"||o.uiType==="marketing-activity-id"||z.includes(o.uiType)?ue(o,e):fe(o,e)):[];function te(e){let t=e.activeVersion?.config??e.draftVersion?.config;if(!t)throw new Error("No config found for extension");let i=e.type==="flow_action_definition"?"https://url.com/api/execute":void 0,o;if(e.type==="flow_trigger_discovery_webhook"){let n=JSON.parse(t);o={extensions:[{type:"flow_trigger_lifecycle_callback",name:e.title,handle:c(e.title.substring(0,l)),url:n.url}]}}else{let n=JSON.parse(t),r=ee(e.type,n.fields??[]);o={extensions:[{type:e.type.replace("_definition",""),name:n.title,handle:c(e.title.substring(0,l)),description:n.description,runtime_url:n.url??i,config_page_url:n.custom_configuration_page_url,config_page_preview_url:n.custom_configuration_page_preview_url,validation_url:n.validation_url}],settings:(r?.length??0)>0?{fields:r}:void 0}}return o}s();s();var ie=e=>{let t=e.split("#");if(t.length!==2||t.some(p=>p===""||p===void 0))throw new Error("Invalid context");let i="admin",o=de(t[0]??""),n=me(t[1]??""),r="link";return n==="selection"?[i,`${o}-index`,`${n}-action`,r].join("."):[i,`${o}-${n}`,"action",r].join(".")},me=e=>{switch(e.toLocaleLowerCase()){case"show":return"details";case"index":return"index";case"action":return"selection";case"fulfilled_card":return"fulfilled-card";default:throw new Error(`Invalid context location: ${e}`)}},de=e=>e.toLocaleLowerCase()==="variants"?"product-variant":b(e.toLocaleLowerCase().replace(new RegExp("(s)$"),""));function ne(e,t,i){let o=e.activeVersion?.config??e.draftVersion?.config;if(!o)throw new Error("No config found for extension");let n=e.activeVersion?.context??e.draftVersion?.context;if(!n)throw new Error("No context found for link extension");let r=JSON.parse(o);if(i.embedded)try{let a=new URL(r.url),_=a.pathname.startsWith("/")?a.pathname.substring(1):a.pathname,u=new URL(`app://${_}`);u.search=a.search,u.hash=a.hash,r.url=u.toString()}catch{}return{extensions:[{type:"admin_link",name:r.text,handle:c(e.title.substring(0,l)),targeting:[{url:r.url,target:ie(n)}]}]}}s();var ge={facebook:"social",instagram:"social",google:"search",pinterest:"social",bing:"search",email:"email",snapchat:"social",sms:"sms",verizon_media:"display",ebay:"marketplace",tiktok:"social",flow:"email"},_e={facebook:"facebook.com",instagram:"instagram.com",google:"google.com",pinterest:"pinterest.com",bing:"bing.com",snapchat:"snapchat.com",verizon_media:null,email:null,sms:null,ebay:"ebay.com",tiktok:"tiktok.com",flow:null};function ye(e){let t=new URL(e);return t.pathname+t.search+t.hash}function oe(e){let t=e.activeVersion?.config??e.draftVersion?.config;if(!t)throw new Error("No config found for extension");let i=JSON.parse(t);return{extensions:[{type:"marketing_activity",name:e.title,handle:c(e.title.substring(0,l)),title:i.title,description:i.description,api_path:ye(i.app_api_url),tactic:i.tactic,marketing_channel:ge[i.platform]??"",referring_domain:_e[i.platform]??"",is_automation:i.is_automation,use_external_editor:i.use_external_editor,preview_data:i.preview_data,fields:i.fields.map(({id:n,...r})=>r)}]}}s();function re(e){let t=e.activeVersion?.config??e.draftVersion?.config;if(!t)throw new Error("No config found for extension");let i=JSON.parse(t);return{extensions:[{type:"subscription_link_extension",name:e.title,handle:c(e.title.substring(0,l)),pattern:i.pattern}]}}var O=[{label:"Payments Extensions",value:"payments",extensionTypes:["payments_app","payments_app_credit_card","payments_app_custom_credit_card","payments_app_custom_onsite","payments_app_redeemable","payments_extension"],buildExtensionConfig:Z},{label:"Flow Extensions",value:"flow",extensionTypes:["flow_action_definition","flow_trigger_definition","flow_trigger_discovery_webhook"],buildExtensionConfig:te},{label:"Marketing Activity Extensions",value:"marketing activity",extensionTypes:["marketing_activity_extension"],buildExtensionConfig:oe},{label:"Subscription Link Extensions",value:"subscription link",extensionTypes:["subscription_link","subscription_link_extension"],buildExtensionConfig:re},{label:"Admin Link extensions",value:"link extension",extensionTypes:["app_link","bulk_action"],buildExtensionConfig:ne}];function se(e){return O.filter(t=>t.extensionTypes.some(i=>e.some(o=>o.type.toLowerCase()===i.toLowerCase())))}async function ft(e){if(e.length===1&&e[0])return e[0];let t=e.map(n=>({label:n.label,value:n.value})),i=await x({message:"Extension type to migrate",choices:t}),o=e.find(n=>n.value===i);if(o===void 0)throw new C("Invalid migration choice");return o}s();var vt=O.flatMap(e=>e.extensionTypes),g;(function(e){e.Write="write",e.Skip="skip",e.Cancel="cancel"})(g||(g={}));async function Ee({name:e,app:t}){let i=b(e),o=E(t.directory,G.extensions.directoryName,i);if(await V(o)){let n=[{label:"Overwrite local TOML with remote configuration",value:g.Write},{label:"Keep local TOML",value:g.Skip},{label:"Cancel",value:g.Cancel}],r=await x({message:`Directory "${i}" already exists. What would you like to do?`,choices:n});if(r===g.Cancel)throw new P;return{directory:o,action:r}}return await I(o),await F(E(o,T.lockFile)),{directory:o,action:g.Write}}async function Ce(e){let{app:t,remoteApp:i,extensionTypes:o,extensions:n,buildExtensionConfig:r,all:p}=e,a=n.filter(f=>o.includes(f.type.toLowerCase()));if(a=we(t,a),a.length===0)throw new C("No extensions to migrate");if(!p){let f=a.map(y=>({label:y.title,value:y.uuid}));a.length>1&&f.push({label:"All",value:"All"});let m=await x({message:"Extensions to migrate",choices:f});m!=="All"&&(a=[a.find(y=>y?.uuid===m)])}let _={},u=a.map(async f=>{let{directory:m,action:y}=await Ee({app:t,name:f.title}),ae=c(f.title.substring(0,l));if(_[ae]=f.uuid,y===g.Write){let S=r(f,n,t.configuration),ce=E(m,"shopify.extension.toml");await new H(ce,S).replace(S);let le=E(m,T.lockFile);await D(le)}return{extension:f,directory:E("extensions",M(m))}}),h=await Promise.all(u);xe(h),await X({app:t,appApiKey:i.apiKey,extensionUuids:_,command:"import-extensions"})}function we(e,t){let i=e.dotenv?.variables??{},o=e.allExtensions.map(n=>i[n.idEnvironmentVariableName]);return t.filter(n=>!o.includes(n.uuid))}async function At(e){let t=se(e.extensions);await Promise.all(t.map(async i=>Ce({...e,extensionTypes:i.extensionTypes,buildExtensionConfig:i.buildExtensionConfig,all:!0})))}function xe(e){U({headline:["Imported the following extensions from the dashboard:"],body:e.map(t=>$`• "${t.extension.title}" at: ${t.directory}`.value).join(`
|
|
2
|
+
`)})}s();async function Lt({developerPlatformClient:e,apiKey:t,organizationId:i,extensionTypes:o,onlyDashboardManaged:n=!1}){let r=await e.appExtensionRegistrations({id:t,apiKey:t,organizationId:i}),{dashboardManagedExtensionRegistrations:p,extensionRegistrations:a}=r.app;return(n?p:a.concat(p)).filter(u=>{let h=o.includes(u.type.toLowerCase()),f=u.activeVersion&&u.activeVersion.config,m=u.draftVersion&&u.draftVersion.config;return h&&(f??m)})}export{se as a,ft as b,vt as c,Ce as d,we as e,At as f,Lt as g};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as y}from"./chunk-
|
|
1
|
+
import{i as y}from"./chunk-4Y22EM45.js";import{I as O,y as w}from"./chunk-SKRUMRB4.js";import{i as d}from"./chunk-FCULF3JA.js";import{Eb as m,Ib as S}from"./chunk-YJWNM4XO.js";import{g as i}from"./chunk-VKWPEFWQ.js";i();function h(t){return t.map(M).join(" \xB7 ")}function $(t,r){if(r){S(JSON.stringify({schemaVersion:1,operations:t},null,2));return}w({headline:"Subscription migration operations.",body:t.map(M)})}function M(t){return`${t.id}: ${t.status} (${t.results.edges.length}/${t.total} settled)`}i();i();var T=1e3,A=new Set(["COMPLETED","FAILED","CANCELED"]);async function E({clientId:t,operationIds:r,getOperation:s=y,pollIntervalMs:p=T,sleep:u=C,onUpdate:c}){let f=new Map,l=new Map,g=!0,a=[...r];for(;a.length>0;){let e=await Promise.all(a.map(async o=>{let n=await s({clientId:t,operationId:o});if(!n)throw new d(`Migration operation not found: ${o}`);return{operationId:o,operation:n}})),L=e.some(({operationId:o,operation:n})=>l.get(o)!==JSON.stringify(n));for(let{operationId:o,operation:n}of e)f.set(o,n),l.set(o,JSON.stringify(n));if(c&&(g||L)){let o=r.map(n=>f.get(n));await c(o)}g=!1,a=e.filter(({operation:o})=>!A.has(o.status)).map(({operationId:o})=>o),a.length>0&&await u(p)}return r.map(e=>f.get(e))}async function C(t){await new Promise(r=>setTimeout(r,t))}async function U({clientId:t,operationIds:r,waitForOperations:s=E}){return O({title:m`Polling subscription migration operations`,task:p=>s({clientId:t,operationIds:r,onUpdate:u=>p(m`${h(u)}`)}),renderOptions:{stdout:process.stderr}})}export{$ as a,U as b};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as Cn}from"./chunk-AAK376RT.js";import{a as Du}from"./chunk-P2OI2P2M.js";import{a as Ys}from"./chunk-636CTEW7.js";import{a as Ks,c as Xs,d as Ti,g as ju,k as Di,l as Ve,m as Lu,n as Au,o as xu,p as Su,q as qu,r as Fu,s as Ru,t as Nu,u as Tu}from"./chunk-TR4OWSEX.js";import{a as Cu,b as kt}from"./chunk-2KD4LHRT.js";import{b as Pu}from"./chunk-I5A6BPCP.js";import{a as Ou}from"./chunk-CX5CC6P5.js";import{a as Iu}from"./chunk-ET2CGROE.js";import{a as $,c as m,e as W,g as u}from"./chunk-VKWPEFWQ.js";var N=m(V=>{"use strict";u();Object.defineProperty(V,"__esModule",{value:!0});V.pickBy=ku;V.compact=Mu;V.uniqBy=Hu;V.last=Bu;V.sortBy=Uu;V.castArray=Wu;V.isProd=Vu;V.maxBy=Gu;V.sumBy=zu;V.capitalize=Ju;V.isTruthy=Ku;V.isNotFalsy=Xu;V.uniq=Yu;V.mapValues=Zu;V.mergeNestedObjects=ed;function ku(n,e){return Object.entries(n).reduce((t,[i,r])=>(e(r)&&(t[i]=r),t),{})}function Mu(n){return n.filter(e=>!!e)}function Hu(n,e){return n.filter((t,i)=>{let r=e(t);return!n.some((s,o)=>o>i&&e(s)===r)})}function Bu(n){if(n)return n.at(-1)}function ki(n,e){if(n=n===void 0?0:n,e=e===void 0?0:e,Array.isArray(n)&&Array.isArray(e)){if(n.length===0&&e.length===0)return 0;let t=ki(n[0],e[0]);return t!==0?t:ki(n.slice(1),e.slice(1))}return n<e?-1:n>e?1:0}function Uu(n,e){return n.sort((t,i)=>ki(e(t),e(i)))}function Wu(n){return n===void 0?[]:Array.isArray(n)?n:[n]}function Vu(){return!["development","test"].includes(process.env.NODE_ENV??"")}function Gu(n,e){if(n.length!==0)return n.reduce((t,i)=>{let r=e(i),s=e(t);return r>s?i:t})}function zu(n,e){return n.reduce((t,i)=>t+e(i),0)}function Ju(n){return n?n.charAt(0).toUpperCase()+n.slice(1).toLowerCase():""}function Ku(n){return["1","true","y","yes"].includes(n.toLowerCase())}function Xu(n){return!["0","false","n","no"].includes(n.toLowerCase())}function Yu(n){return[...new Set(n)].sort()}function Zu(n,e){return Object.entries(n).reduce((t,[i,r])=>(t[i]=e(r,i),t),{})}function Qu(n,e){return e.split(".").reduce((t,i)=>t?.[i],n)}function ed(n,e){return Object.fromEntries(n.flatMap(t=>Object.entries(Qu(t,e)??{})).reverse())}});var we=m(Ce=>{"use strict";u();Object.defineProperty(Ce,"__esModule",{value:!0});Ce.fileExists=Ce.dirExists=void 0;Ce.readJson=Zs;Ce.safeReadJson=sd;Ce.existsSync=od;var td=$("node:fs"),Bi=$("node:fs/promises"),nd=N(),id=async n=>{let e;try{e=await(0,Bi.stat)(n)}catch{throw new Error(`No directory found at ${n}`)}if(!e.isDirectory())throw new Error(`${n} exists but is not a directory`);return n};Ce.dirExists=id;var rd=async n=>{let e;try{e=await(0,Bi.stat)(n)}catch{throw new Error(`No file found at ${n}`)}if(!e.isFile())throw new Error(`${n} exists but is not a file`);return n};Ce.fileExists=rd;var Hi=class extends Map{set(e,t){return((0,nd.isProd)()??!1)&&super.set(e,t),this}},Mi=new Hi;async function Zs(n,e=!0){if(e&&Mi.has(n))return JSON.parse(Mi.get(n));let t=await(0,Bi.readFile)(n,"utf8");return Mi.set(n,t),JSON.parse(t)}async function sd(n,e=!0){try{return await Zs(n,e)}catch{}}function od(n){return(0,td.existsSync)(n)}});var eo=m(X=>{"use strict";u();Object.defineProperty(X,"__esModule",{value:!0});X.string=X.url=X.file=X.directory=X.integer=X.boolean=void 0;X.custom=Ge;var ad=$("node:url"),Qs=we(),cd=N();function Ge(n){return(e={})=>({parse:async(t,i,r)=>t,...n,...e,input:[],type:"option"})}X.boolean=Ge({parse:async n=>!!n&&(0,cd.isNotFalsy)(n)});X.integer=Ge({async parse(n,e,t){if(!/^-?\d+$/.test(n))throw new Error(`Expected an integer but received: ${n}`);let i=Number.parseInt(n,10);if(t.min!==void 0&&i<t.min)throw new Error(`Expected an integer greater than or equal to ${t.min} but received: ${n}`);if(t.max!==void 0&&i>t.max)throw new Error(`Expected an integer less than or equal to ${t.max} but received: ${n}`);return i}});X.directory=Ge({async parse(n,e,t){return t.exists?(0,Qs.dirExists)(n):n}});X.file=Ge({async parse(n,e,t){return t.exists?(0,Qs.fileExists)(n):n}});X.url=Ge({async parse(n){try{return new ad.URL(n)}catch{throw new Error(`Expected a valid url but received: ${n}`)}}});var ld=Ge({});X.string=ld});var to=m((Db,ud)=>{ud.exports={name:"@oclif/core",description:"base library for oclif CLIs",version:"4.11.14",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.5",semver:"^7.8.1","string-width":"^4.2.3","supports-color":"^8",tinyglobby:"^0.2.17","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.13","@types/ejs":"^3.1.5","@types/indent-string":"^4.0.1","@types/mocha":"^10.0.10","@types/node":"^18","@types/picomatch":"^4.0.3","@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.3",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 fe=m(Wi=>{"use strict";u();Object.defineProperty(Wi,"__esModule",{value:!0});var dd=$("node:fs"),fd=$("node:path"),Ui=class n extends Map{static instance;constructor(){super(),this.set("@oclif/core",this.getOclifCoreMeta())}static getInstance(){return n.instance||(n.instance=new n),n.instance}get(e){return super.get(e)}getOclifCoreMeta(){try{return{name:"@oclif/core",version:to().version}}catch{try{return{name:"@oclif/core",version:JSON.parse((0,dd.readFileSync)((0,fd.join)(__dirname,"..","package.json"),"utf8")).version}}catch{return{name:"@oclif/core",version:"unknown"}}}}};Wi.default=Ui});var Q=m(Ne=>{"use strict";u();var hd=Ne&&Ne.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Ne,"__esModule",{value:!0});Ne.getLogger=no;Ne.makeDebug=md;Ne.setLogger=yd;Ne.clearLoggers=_d;var pd=hd(kt()),Gi="oclif";function jn(n=Gi){let e=(0,pd.default)(n);return{child:(t,i)=>jn(`${n}${i??":"}${t}`),debug:e,error:(t,...i)=>jn(`${n}:error`).debug(t,...i),info:e,namespace:n,trace:e,warn:e}}var je=new Map;function no(n){let e=je.get("root");if(e||Vi(jn(Gi)),e=je.get("root"),n){let t=je.get(n);if(t)return t;let i=e.child(n);return je.set(n,i),i}return e}function gd(n){return typeof n.child=="function"&&typeof n.debug=="function"&&typeof n.error=="function"&&typeof n.info=="function"&&typeof n.trace=="function"&&typeof n.warn=="function"&&typeof n.namespace=="string"}function Vi(n){je.has(n.namespace)||je.has("root")||(gd(n)?(je.set(n.namespace,n),je.set("root",n)):process.emitWarning("Logger does not match the Logger interface. Using default logger."))}function md(n){return(e,...t)=>no(n).debug(e,...t)}function yd(n){n&&typeof n!="string"&&"logger"in n&&n.logger?Vi(n.logger):Vi(jn(Gi))}function _d(){je.clear()}});var Mt=m(dt=>{"use strict";u();Object.defineProperty(dt,"__esModule",{value:!0});dt.stderr=dt.stdout=void 0;var ut=$("node:util"),wd=(n,...e)=>{!n&&e?console.log((0,ut.format)(...e)):n?console.log(typeof n=="string"?(0,ut.format)(n,...e):(0,ut.format)(...n,...e)):console.log()};dt.stdout=wd;var bd=(n,...e)=>{!n&&e?console.error((0,ut.format)(...e)):n?console.error(typeof n=="string"?(0,ut.format)(n,...e):(0,ut.format)(...n,...e)):console.error()};dt.stderr=bd});var Ie=m(In=>{"use strict";u();Object.defineProperty(In,"__esModule",{value:!0});In.settings=void 0;globalThis.oclif||(globalThis.oclif={});In.settings=globalThis.oclif});var ht=m(ft=>{"use strict";u();Object.defineProperty(ft,"__esModule",{value:!0});ft.errtermwidth=ft.stdtermwidth=void 0;var vd=Ie();function io(n){if(!n.isTTY)return 80;let e=n.getWindowSize()[0];return e<1?80:e<40?40:e}var ro=Number.parseInt(process.env.OCLIF_COLUMNS,10)||vd.settings.columns;ft.stdtermwidth=ro||io(process.stdout);ft.errtermwidth=ro||io(process.stderr)});var so=m(Ln=>{"use strict";u();Object.defineProperty(Ln,"__esModule",{value:!0});Ln.STANDARD_ANSI=void 0;Ln.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 ao=m(zi=>{"use strict";u();Object.defineProperty(zi,"__esModule",{value:!0});zi.supportsColor=Ed;var oo=Cu();function Ed(){return!!oo.stdout&&!!oo.stderr}});var oe=m(pt=>{"use strict";u();var $d=pt&&pt.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(pt,"__esModule",{value:!0});pt.colorize=Cd;pt.parseTheme=lo;var Ji=$d(Ve()),Od=so(),Pd=ao();function co(n){return Od.STANDARD_ANSI.includes(n)}function Cd(n,e){if(!n||!(0,Pd.supportsColor)())return e;if(co(n))return Ji.default[n](e);if(n.startsWith("#"))return Ji.default.hex(n)(e);if(n.startsWith("rgb")){let[t,i,r]=n.slice(4,-1).split(",").map(s=>Number.parseInt(s.trim(),10));return Ji.default.rgb(t,i,r)(e)}return e}function lo(n){return Object.fromEntries(Object.entries(n).map(([e,t])=>[e,typeof t=="string"?jd(t):lo(t)]).filter(([e,t])=>t))}function jd(n){return n.startsWith("#")||n.startsWith("rgb")||co(n)?n:void 0}});var ze=m(Te=>{"use strict";u();var An=Te&&Te.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Te,"__esModule",{value:!0});Te.CLIError=void 0;Te.addOclifExitCode=fo;var Id=An(Xs()),Ki=An(Ti()),Ld=An(Di()),Ad=An(fe()),xd=ht(),Sd=Ie(),uo=oe();function fo(n,e){return"oclif"in n||(n.oclif={}),n.oclif.exit=e?.exit===void 0?Ad.default.getInstance().get("exitCodes")?.default??2:e.exit,n}var Ht=class extends Error{code;oclif={};skipOclifErrorHandling;suggestions;constructor(e,t={}){super(e instanceof Error?e.message:e),fo(this,t),this.code=t.code,this.suggestions=t.suggestions}get bang(){try{return(0,uo.colorize)("red",process.platform==="win32"?"\xBB":"\u203A")}catch{}}get stack(){return(0,Id.default)(super.stack,{pretty:!0})}render(){if(Sd.settings.debug)return this.stack;let e=`${this.name}: ${this.message}`;return e=(0,Ld.default)(e,xd.errtermwidth-6,{hard:!0,trim:!1}),e=(0,Ki.default)(e,3),e=(0,Ki.default)(e,1,{includeEmptyLines:!0,indent:this.bang}),e=(0,Ki.default)(e,1),e}};Te.CLIError=Ht;(function(n){class e extends n{constructor(i){super(i instanceof Error?i.message:i),this.name="Warning"}get bang(){try{return(0,uo.colorize)("yellow",process.platform==="win32"?"\xBB":"\u203A")}catch{}}}n.Warn=e})(Ht||(Te.CLIError=Ht={}))});var Sn=m(gt=>{"use strict";u();var po=gt&>.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(gt,"__esModule",{value:!0});gt.applyPrettyPrintOptions=Rd;gt.default=Dd;var xn=po(Ti()),qd=po(Di()),Fd=ht(),ho=Ie();function Rd(n,e){let t=["message","code","ref","suggestions"];for(let i of t)!(i in n)&&e[i]&&(n[i]=e[i]);return n}var Nd=n=>{let e="Try this:";if(!n||n.length===0)return;if(n.length===1)return`${e} ${n[0]}`;let t=n.map(i=>`* ${i}`).join(`
|
|
1
|
+
import{a as Cn}from"./chunk-AAK376RT.js";import{a as Du}from"./chunk-P2OI2P2M.js";import{a as Ys}from"./chunk-636CTEW7.js";import{a as Ks,c as Xs,d as Ti,g as ju,k as Di,l as Ve,m as Lu,n as Au,o as xu,p as Su,q as qu,r as Fu,s as Ru,t as Nu,u as Tu}from"./chunk-TR4OWSEX.js";import{b as Cu,c as kt}from"./chunk-ZGASBRSQ.js";import{b as Pu}from"./chunk-I5A6BPCP.js";import{a as Ou}from"./chunk-CX5CC6P5.js";import{a as Iu}from"./chunk-ET2CGROE.js";import{a as $,c as m,e as W,g as u}from"./chunk-VKWPEFWQ.js";var N=m(V=>{"use strict";u();Object.defineProperty(V,"__esModule",{value:!0});V.pickBy=ku;V.compact=Mu;V.uniqBy=Hu;V.last=Bu;V.sortBy=Uu;V.castArray=Wu;V.isProd=Vu;V.maxBy=Gu;V.sumBy=zu;V.capitalize=Ju;V.isTruthy=Ku;V.isNotFalsy=Xu;V.uniq=Yu;V.mapValues=Zu;V.mergeNestedObjects=ed;function ku(n,e){return Object.entries(n).reduce((t,[i,r])=>(e(r)&&(t[i]=r),t),{})}function Mu(n){return n.filter(e=>!!e)}function Hu(n,e){return n.filter((t,i)=>{let r=e(t);return!n.some((s,o)=>o>i&&e(s)===r)})}function Bu(n){if(n)return n.at(-1)}function ki(n,e){if(n=n===void 0?0:n,e=e===void 0?0:e,Array.isArray(n)&&Array.isArray(e)){if(n.length===0&&e.length===0)return 0;let t=ki(n[0],e[0]);return t!==0?t:ki(n.slice(1),e.slice(1))}return n<e?-1:n>e?1:0}function Uu(n,e){return n.sort((t,i)=>ki(e(t),e(i)))}function Wu(n){return n===void 0?[]:Array.isArray(n)?n:[n]}function Vu(){return!["development","test"].includes(process.env.NODE_ENV??"")}function Gu(n,e){if(n.length!==0)return n.reduce((t,i)=>{let r=e(i),s=e(t);return r>s?i:t})}function zu(n,e){return n.reduce((t,i)=>t+e(i),0)}function Ju(n){return n?n.charAt(0).toUpperCase()+n.slice(1).toLowerCase():""}function Ku(n){return["1","true","y","yes"].includes(n.toLowerCase())}function Xu(n){return!["0","false","n","no"].includes(n.toLowerCase())}function Yu(n){return[...new Set(n)].sort()}function Zu(n,e){return Object.entries(n).reduce((t,[i,r])=>(t[i]=e(r,i),t),{})}function Qu(n,e){return e.split(".").reduce((t,i)=>t?.[i],n)}function ed(n,e){return Object.fromEntries(n.flatMap(t=>Object.entries(Qu(t,e)??{})).reverse())}});var we=m(Ce=>{"use strict";u();Object.defineProperty(Ce,"__esModule",{value:!0});Ce.fileExists=Ce.dirExists=void 0;Ce.readJson=Zs;Ce.safeReadJson=sd;Ce.existsSync=od;var td=$("node:fs"),Bi=$("node:fs/promises"),nd=N(),id=async n=>{let e;try{e=await(0,Bi.stat)(n)}catch{throw new Error(`No directory found at ${n}`)}if(!e.isDirectory())throw new Error(`${n} exists but is not a directory`);return n};Ce.dirExists=id;var rd=async n=>{let e;try{e=await(0,Bi.stat)(n)}catch{throw new Error(`No file found at ${n}`)}if(!e.isFile())throw new Error(`${n} exists but is not a file`);return n};Ce.fileExists=rd;var Hi=class extends Map{set(e,t){return((0,nd.isProd)()??!1)&&super.set(e,t),this}},Mi=new Hi;async function Zs(n,e=!0){if(e&&Mi.has(n))return JSON.parse(Mi.get(n));let t=await(0,Bi.readFile)(n,"utf8");return Mi.set(n,t),JSON.parse(t)}async function sd(n,e=!0){try{return await Zs(n,e)}catch{}}function od(n){return(0,td.existsSync)(n)}});var eo=m(X=>{"use strict";u();Object.defineProperty(X,"__esModule",{value:!0});X.string=X.url=X.file=X.directory=X.integer=X.boolean=void 0;X.custom=Ge;var ad=$("node:url"),Qs=we(),cd=N();function Ge(n){return(e={})=>({parse:async(t,i,r)=>t,...n,...e,input:[],type:"option"})}X.boolean=Ge({parse:async n=>!!n&&(0,cd.isNotFalsy)(n)});X.integer=Ge({async parse(n,e,t){if(!/^-?\d+$/.test(n))throw new Error(`Expected an integer but received: ${n}`);let i=Number.parseInt(n,10);if(t.min!==void 0&&i<t.min)throw new Error(`Expected an integer greater than or equal to ${t.min} but received: ${n}`);if(t.max!==void 0&&i>t.max)throw new Error(`Expected an integer less than or equal to ${t.max} but received: ${n}`);return i}});X.directory=Ge({async parse(n,e,t){return t.exists?(0,Qs.dirExists)(n):n}});X.file=Ge({async parse(n,e,t){return t.exists?(0,Qs.fileExists)(n):n}});X.url=Ge({async parse(n){try{return new ad.URL(n)}catch{throw new Error(`Expected a valid url but received: ${n}`)}}});var ld=Ge({});X.string=ld});var to=m((Db,ud)=>{ud.exports={name:"@oclif/core",description:"base library for oclif CLIs",version:"4.11.14",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.5",semver:"^7.8.1","string-width":"^4.2.3","supports-color":"^8",tinyglobby:"^0.2.17","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.13","@types/ejs":"^3.1.5","@types/indent-string":"^4.0.1","@types/mocha":"^10.0.10","@types/node":"^18","@types/picomatch":"^4.0.3","@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.3",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 fe=m(Wi=>{"use strict";u();Object.defineProperty(Wi,"__esModule",{value:!0});var dd=$("node:fs"),fd=$("node:path"),Ui=class n extends Map{static instance;constructor(){super(),this.set("@oclif/core",this.getOclifCoreMeta())}static getInstance(){return n.instance||(n.instance=new n),n.instance}get(e){return super.get(e)}getOclifCoreMeta(){try{return{name:"@oclif/core",version:to().version}}catch{try{return{name:"@oclif/core",version:JSON.parse((0,dd.readFileSync)((0,fd.join)(__dirname,"..","package.json"),"utf8")).version}}catch{return{name:"@oclif/core",version:"unknown"}}}}};Wi.default=Ui});var Q=m(Ne=>{"use strict";u();var hd=Ne&&Ne.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Ne,"__esModule",{value:!0});Ne.getLogger=no;Ne.makeDebug=md;Ne.setLogger=yd;Ne.clearLoggers=_d;var pd=hd(kt()),Gi="oclif";function jn(n=Gi){let e=(0,pd.default)(n);return{child:(t,i)=>jn(`${n}${i??":"}${t}`),debug:e,error:(t,...i)=>jn(`${n}:error`).debug(t,...i),info:e,namespace:n,trace:e,warn:e}}var je=new Map;function no(n){let e=je.get("root");if(e||Vi(jn(Gi)),e=je.get("root"),n){let t=je.get(n);if(t)return t;let i=e.child(n);return je.set(n,i),i}return e}function gd(n){return typeof n.child=="function"&&typeof n.debug=="function"&&typeof n.error=="function"&&typeof n.info=="function"&&typeof n.trace=="function"&&typeof n.warn=="function"&&typeof n.namespace=="string"}function Vi(n){je.has(n.namespace)||je.has("root")||(gd(n)?(je.set(n.namespace,n),je.set("root",n)):process.emitWarning("Logger does not match the Logger interface. Using default logger."))}function md(n){return(e,...t)=>no(n).debug(e,...t)}function yd(n){n&&typeof n!="string"&&"logger"in n&&n.logger?Vi(n.logger):Vi(jn(Gi))}function _d(){je.clear()}});var Mt=m(dt=>{"use strict";u();Object.defineProperty(dt,"__esModule",{value:!0});dt.stderr=dt.stdout=void 0;var ut=$("node:util"),wd=(n,...e)=>{!n&&e?console.log((0,ut.format)(...e)):n?console.log(typeof n=="string"?(0,ut.format)(n,...e):(0,ut.format)(...n,...e)):console.log()};dt.stdout=wd;var bd=(n,...e)=>{!n&&e?console.error((0,ut.format)(...e)):n?console.error(typeof n=="string"?(0,ut.format)(n,...e):(0,ut.format)(...n,...e)):console.error()};dt.stderr=bd});var Ie=m(In=>{"use strict";u();Object.defineProperty(In,"__esModule",{value:!0});In.settings=void 0;globalThis.oclif||(globalThis.oclif={});In.settings=globalThis.oclif});var ht=m(ft=>{"use strict";u();Object.defineProperty(ft,"__esModule",{value:!0});ft.errtermwidth=ft.stdtermwidth=void 0;var vd=Ie();function io(n){if(!n.isTTY)return 80;let e=n.getWindowSize()[0];return e<1?80:e<40?40:e}var ro=Number.parseInt(process.env.OCLIF_COLUMNS,10)||vd.settings.columns;ft.stdtermwidth=ro||io(process.stdout);ft.errtermwidth=ro||io(process.stderr)});var so=m(Ln=>{"use strict";u();Object.defineProperty(Ln,"__esModule",{value:!0});Ln.STANDARD_ANSI=void 0;Ln.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 ao=m(zi=>{"use strict";u();Object.defineProperty(zi,"__esModule",{value:!0});zi.supportsColor=Ed;var oo=Cu();function Ed(){return!!oo.stdout&&!!oo.stderr}});var oe=m(pt=>{"use strict";u();var $d=pt&&pt.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(pt,"__esModule",{value:!0});pt.colorize=Cd;pt.parseTheme=lo;var Ji=$d(Ve()),Od=so(),Pd=ao();function co(n){return Od.STANDARD_ANSI.includes(n)}function Cd(n,e){if(!n||!(0,Pd.supportsColor)())return e;if(co(n))return Ji.default[n](e);if(n.startsWith("#"))return Ji.default.hex(n)(e);if(n.startsWith("rgb")){let[t,i,r]=n.slice(4,-1).split(",").map(s=>Number.parseInt(s.trim(),10));return Ji.default.rgb(t,i,r)(e)}return e}function lo(n){return Object.fromEntries(Object.entries(n).map(([e,t])=>[e,typeof t=="string"?jd(t):lo(t)]).filter(([e,t])=>t))}function jd(n){return n.startsWith("#")||n.startsWith("rgb")||co(n)?n:void 0}});var ze=m(Te=>{"use strict";u();var An=Te&&Te.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Te,"__esModule",{value:!0});Te.CLIError=void 0;Te.addOclifExitCode=fo;var Id=An(Xs()),Ki=An(Ti()),Ld=An(Di()),Ad=An(fe()),xd=ht(),Sd=Ie(),uo=oe();function fo(n,e){return"oclif"in n||(n.oclif={}),n.oclif.exit=e?.exit===void 0?Ad.default.getInstance().get("exitCodes")?.default??2:e.exit,n}var Ht=class extends Error{code;oclif={};skipOclifErrorHandling;suggestions;constructor(e,t={}){super(e instanceof Error?e.message:e),fo(this,t),this.code=t.code,this.suggestions=t.suggestions}get bang(){try{return(0,uo.colorize)("red",process.platform==="win32"?"\xBB":"\u203A")}catch{}}get stack(){return(0,Id.default)(super.stack,{pretty:!0})}render(){if(Sd.settings.debug)return this.stack;let e=`${this.name}: ${this.message}`;return e=(0,Ld.default)(e,xd.errtermwidth-6,{hard:!0,trim:!1}),e=(0,Ki.default)(e,3),e=(0,Ki.default)(e,1,{includeEmptyLines:!0,indent:this.bang}),e=(0,Ki.default)(e,1),e}};Te.CLIError=Ht;(function(n){class e extends n{constructor(i){super(i instanceof Error?i.message:i),this.name="Warning"}get bang(){try{return(0,uo.colorize)("yellow",process.platform==="win32"?"\xBB":"\u203A")}catch{}}}n.Warn=e})(Ht||(Te.CLIError=Ht={}))});var Sn=m(gt=>{"use strict";u();var po=gt&>.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(gt,"__esModule",{value:!0});gt.applyPrettyPrintOptions=Rd;gt.default=Dd;var xn=po(Ti()),qd=po(Di()),Fd=ht(),ho=Ie();function Rd(n,e){let t=["message","code","ref","suggestions"];for(let i of t)!(i in n)&&e[i]&&(n[i]=e[i]);return n}var Nd=n=>{let e="Try this:";if(!n||n.length===0)return;if(n.length===1)return`${e} ${n[0]}`;let t=n.map(i=>`* ${i}`).join(`
|
|
2
2
|
`);return`${e}
|
|
3
3
|
${(0,xn.default)(t,2)}`};function Td(n){return!!n&&"name"in n&&"message"in n}function Dd(n){let e=[],t=n,i=!1;for(;Td(t);){if(ho.settings.debug&&t.stack)e.push(`${i?"Caused by: ":""}${t.stack}`);else{let{bang:r,code:s,message:o,name:a,ref:l,suggestions:d}=t,f=o?`${a||"Error"}: ${o}`:void 0,c=s?`Code: ${s}`:void 0,p=Nd(d),h=l?`Reference: ${l}`:void 0,y=[f,c,p,h].filter(Boolean).join(`
|
|
4
4
|
`),g=`${i?"Caused by: ":""}${y}`;g=(0,qd.default)(g,Fd.errtermwidth-6,{hard:!0,trim:!1}),ho.settings.debug||(g=(0,xn.default)(g,3),g=(0,xn.default)(g,1,{includeEmptyLines:!0,indent:r||""}),g=(0,xn.default)(g,1)),e.push(g)}i=!0,t=t.cause??null}return e.join(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as o}from"./chunk-
|
|
1
|
+
import{a as o}from"./chunk-QSKOR3ED.js";import{b as a}from"./chunk-FW5HGFSZ.js";import{g as s}from"./chunk-VKWPEFWQ.js";s();var t=class extends a{static description="View the UI kit components that process async tasks";static hidden=!0;async run(){await o()}};export{t as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as E}from"./chunk-
|
|
1
|
+
import{b as E}from"./chunk-DGMRL5DQ.js";import{b}from"./chunk-FW5HGFSZ.js";import{Q as F,R as N}from"./chunk-SKRUMRB4.js";import{Kb as k,W as C,Xa as w,qa as O}from"./chunk-YJWNM4XO.js";import{i as n}from"./chunk-B4OMIONW.js";import{k as R}from"./chunk-SGBLCVUX.js";import{b as U}from"./chunk-JA2QZ635.js";import{d as u,f as P,g as x,h as g,n as T,q as y}from"./chunk-3VYOLEQE.js";import{e as H,g as d}from"./chunk-VKWPEFWQ.js";d();d();d();d();var m=class{static description="Doctor test suite";context;assertions=[];registeredTests=[];async runSuite(t){this.context=t,this.registeredTests=[];let e=[];this.tests();for(let o of this.registeredTests){this.assertions=[];let s=Date.now();try{await o.fn(),e.push({name:o.name,status:this.hasFailures()?"failed":"passed",duration:Date.now()-s,assertions:[...this.assertions]})}catch(r){e.push({name:o.name,status:"failed",duration:Date.now()-s,assertions:[...this.assertions],error:r instanceof Error?r:new Error(String(r))})}}return e}test(t,e){this.registeredTests.push({name:t,fn:e})}tests(){}async run(t,e){let o=e?.cwd??this.context.workingDirectory,s=await F(t,{cwd:o,env:e?.env});return{command:t,exitCode:s.exitCode,stdout:s.stdout,stderr:s.stderr,output:String(s.stdout)+String(s.stderr),success:s.exitCode===0}}async runInteractive(t,e){let o=e?.cwd??this.context.workingDirectory,s=0;try{await N(t,{cwd:o,env:e?.env,stdin:"inherit"})}catch{s=1}return{command:t,exitCode:s,stdout:"",stderr:"",output:"",success:s===0}}assertSuccess(t,e){this.assertions.push({description:e??`Command succeeded: ${t.command}`,passed:t.success,expected:"exit code 0",actual:`exit code ${t.exitCode}`})}assertError(t,e,o){let s=!t.success;if(e){let h=(typeof e=="string"?new RegExp(e):e).test(t.output),c;s?h?c="matched":c=`output: ${t.output.slice(0,200)}`:c="command succeeded",this.assertions.push({description:o??`Command failed with expected error: ${e}`,passed:s&&h,expected:`failure with error matching ${e}`,actual:c})}else this.assertions.push({description:o??`Command failed: ${t.command}`,passed:s,expected:"non-zero exit code",actual:`exit code ${t.exitCode}`})}async assertFile(t,e,o){let s=g(t)?t:u(this.context.workingDirectory,t),r=x(this.context.workingDirectory,s);if(!await w(s)){this.assertions.push({description:o??`File exists: ${r}`,passed:!1,expected:"file exists",actual:"file not found"});return}if(e){let c=await O(s),D=(typeof e=="string"?new RegExp(e):e).test(c);this.assertions.push({description:o??`File ${r} matches ${e}`,passed:D,expected:`content matching ${e}`,actual:D?"matched":`content: ${c.slice(0,200)}...`})}else this.assertions.push({description:o??`File exists: ${r}`,passed:!0,expected:"file exists",actual:"file exists"})}async assertNoFile(t,e){let o=g(t)?t:u(this.context.workingDirectory,t),s=x(this.context.workingDirectory,o),r=await w(o);this.assertions.push({description:e??`File does not exist: ${s}`,passed:!r,expected:"file does not exist",actual:r?"file exists":"file does not exist"})}async assertDirectory(t,e){let o=g(t)?t:u(this.context.workingDirectory,t),s=x(this.context.workingDirectory,o),r=await w(o);this.assertions.push({description:e??`Directory exists: ${s}`,passed:r,expected:"directory exists",actual:r?"directory exists":"directory not found"})}assertOutput(t,e,o){let r=(typeof e=="string"?new RegExp(e):e).test(t.output);this.assertions.push({description:o??`Output matches ${e}`,passed:r,expected:`output matching ${e}`,actual:r?"matched":`output: ${t.output.slice(0,200)}`})}assertJson(t,e,o){try{let s=JSON.parse(t.stdout);if(e){let r=e(s);this.assertions.push({description:o??"Output is valid JSON matching validator",passed:r,expected:"valid JSON matching validator",actual:r?"matched":"validator returned false"})}else this.assertions.push({description:o??"Output is valid JSON",passed:!0,expected:"valid JSON",actual:"valid JSON"});return s}catch{this.assertions.push({description:o??"Output is valid JSON",passed:!1,expected:"valid JSON",actual:`invalid JSON: ${t.stdout.slice(0,100)}`});return}}assert(t,e){this.assertions.push({description:e,passed:t,expected:"true",actual:String(t)})}assertEqual(t,e,o){this.assertions.push({description:o,passed:t===e,expected:String(e),actual:String(t)})}hasFailures(){return this.assertions.some(t=>!t.passed)}};var p=class extends m{static description="Tests the theme init command creates a valid theme structure";themeName="";themePath="";tests(){this.test("init creates theme directory",async()=>{this.themeName=`doctor-theme-${C("creative")}`,this.themePath=u(this.context.workingDirectory,this.themeName);let t=await this.runInteractive(`shopify theme init ${this.themeName} --path ${this.context.workingDirectory}`);this.assertSuccess(t),this.context.themeName=this.themeName,this.context.themePath=this.themePath}),this.test("essential theme files exist",async()=>{let t=["layout/theme.liquid","config/settings_schema.json","templates/index.json"];await Promise.all(t.map(e=>this.assertFile(u(this.themePath,e))))}),this.test("theme directories exist",async()=>{let t=["sections","snippets","assets","locales"];await Promise.all(t.map(e=>this.assertDirectory(u(this.themePath,e))))}),this.test("layout/theme.liquid has valid content",async()=>{await this.assertFile(u(this.themePath,"layout/theme.liquid"),/<!doctype html>|<html|{{ content_for_header }}/i,"layout/theme.liquid contains expected Liquid markup")})}};d();var l=class extends m{static description="Tests pushing a theme to the store creates an unpublished theme";static requiresStore=!0;tests(){this.test("push creates unpublished theme",async()=>{if(!this.context.themePath){this.assert(!1,"Theme init did not complete successfully; themePath is missing in context");return}let t=this.context.themeName??"doctor-theme",e=`shopify theme push --unpublished --json --path ${this.context.themePath} -t ${t}`;this.context.environment&&(e+=` -e ${this.context.environment}`),this.context.store&&(e+=` -s ${this.context.store}`),this.context.password&&(e+=` --password ${this.context.password}`);let o=await this.run(e);this.assertSuccess(o);let s=this.assertJson(o,r=>typeof r.theme?.id=="number");s?.theme&&(this.assert(typeof s.theme.id=="number","Theme was created with a valid ID"),this.assertEqual(s.theme.role,"unpublished","Theme role is unpublished"),this.assert(s.theme.editor_url.includes("/admin/themes/"),"Editor URL is provided"),this.assert(s.theme.preview_url.includes("preview_theme_id="),"Preview URL is provided"),this.context.themeId=String(s.theme.id),this.context.data.editorUrl=s.theme.editor_url,this.context.data.previewUrl=s.theme.preview_url)})}};d();function _(i){return{workingDirectory:i.path??y(),environment:i.environment,store:i.store,password:i.password,data:{}}}d();var a=i=>k(i),v;function J(i){v=i}function G(i){if(!v)return i;let t=/\/[^\s,)]+/g;return i.replace(t,e=>T(e,v))}function A(i,t){a(""),a(n.bold(n.cyan(`Suite: ${i}`))),a(n.dim(t))}function j(i){a(n.bold(n.blue(`Running: ${i}`)))}function q(i){let t=`(${(i.duration/1e3).toFixed(2)}s)`;if(i.status==="passed"){a(n.bold(n.green(`PASSED: ${i.name} ${n.dim(t)}`)));for(let e of I(i.assertions))a(e)}else if(i.status==="failed"){a(n.red(`FAILED: ${i.name} ${n.dim(t)}`));for(let e of I(i.assertions))a(e);i.error&&a(n.red(` Error: ${G(i.error.message)}`))}else a(n.yellow(`SKIPPED: ${i.name}`))}function S(i){let t=i.filter(h=>h.status==="passed").length,e=i.filter(h=>h.status==="failed").length,o=i.filter(h=>h.status==="skipped").length,s=i.length,r=i.reduce((h,c)=>h+c.duration,0);a(""),a(n.bold("\u2500".repeat(40))),e>0?a(n.red(n.bold(`Doctor Complete: ${e}/${s} tests failed`))):a(n.green(n.bold(`Doctor Complete: ${t}/${s} tests passed`))),a(` Passed: ${n.green(String(t))}`),a(` Failed: ${n.red(String(e))}`),o>0&&a(` Skipped: ${n.yellow(String(o))}`),a(` Total time: ${n.dim(`${(r/1e3).toFixed(2)}s`)}`)}function I(i){return i.map(t=>{if(t.passed)return n.green(` [OK] ${t.description}`);{let e=` (expected: ${t.expected}, actual: ${t.actual})`;return n.red(` [FAIL] ${t.description}${e}`)}})}var Y=[p,l];async function L(i){let t=[],e=_(i);J(e.workingDirectory);for(let o of Y){let s=new o,r=o.description??"Test suite";A(o.name,r);let h=await s.runSuite(e);for(let c of h)if(j(c.name),q(c),t.push(c),c.status==="failed")return S(t),t}return S(t),t}var f=H(U(),1);var $=class i extends b{static description="Run all theme command doctor-release tests";static hidden=!0;static flags={...E,path:f.Flags.string({char:"p",description:"The path to run tests in. Defaults to current directory.",env:"SHOPIFY_FLAG_PATH",parse:async t=>P(t),default:async()=>y()}),environment:f.Flags.string({char:"e",description:"The environment to use from shopify.theme.toml (required for store-connected tests).",env:"SHOPIFY_FLAG_ENVIRONMENT",required:!0}),store:f.Flags.string({char:"s",description:"Store URL (overrides environment).",env:"SHOPIFY_FLAG_STORE"}),password:f.Flags.string({description:"Password from Theme Access app (overrides environment).",env:"SHOPIFY_FLAG_PASSWORD"})};async run(){if(!R())return;let{flags:t}=await this.parse(i);(await L({path:t.path,environment:t.environment,store:t.store,password:t.password})).some(s=>s.status==="failed")&&(process.exitCode=1)}};export{$ as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as U,b as xt}from"./chunk-JLGA3B7P.js";import{a as ht,b as ft,f as Ie,g as ae,h as A,i as ce,k as Et,n as Tt}from"./chunk-
|
|
1
|
+
import{a as U,b as xt}from"./chunk-JLGA3B7P.js";import{a as ht,b as ft,f as Ie,g as ae,h as A,i as ce,k as Et,n as Tt}from"./chunk-ZHJ6KA43.js";import{a as M,l as gt,m as yt}from"./chunk-R757TSQ6.js";import{s as ie,t as W}from"./chunk-P3Z5RLVV.js";import{a as D,b as O,e as nt,g as rt,i as ot,j as it,k as at,n as ct,p as lt,q as dt,r as oe,s as b,u as ut,w as pt}from"./chunk-Q7BOSHWX.js";import{aa as mt}from"./chunk-IBTQO3JD.js";import{pa as L,ra as H}from"./chunk-L5XWYTHY.js";import{A as I,B as te,C as tt,T as st,y as et}from"./chunk-SKRUMRB4.js";import{c as Ke}from"./chunk-YTJ3EPD3.js";import{i as se}from"./chunk-FCULF3JA.js";import{Aa as Ze,Ca as Qe,Cb as j,Eb as ne,Kb as re,Nb as P,Ob as N,S as Xe,Xa as $,_a as C,ba as $e,fb as ke,qa as k,ya as be}from"./chunk-YJWNM4XO.js";import{d as T,g as V,j as Ve,k as q}from"./chunk-3VYOLEQE.js";import{e as Ye,g as h}from"./chunk-VKWPEFWQ.js";h();h();h();var rs=".shopifyignore",Rt=/templates\/\*(\.(json|liquid))?$/,St=new Set;function Le(e,t={}){let s=t.ignoreFromFile??[],n=t.ignore??[],r=t.only??[],[o=[],i=[]]=_e(s),[a=[],u=[]]=_e(n),[p=[],c=[]]=_e(r),l=e.filter(B(o,".shopifyignore"));return l=l.filter(B(a,"--ignore")),l=l.filter(B(p,"--only",!0)),i.length>0&&(l=l.concat(e.filter(B(i,".shopifyignore",!0)))),u.length>0&&(l=l.concat(e.filter(B(u,"--ignore",!0)))),c.length>0&&(l=l.filter(B(c,"--only"))),Xe(l,x=>x.key)}function B(e,t,s=!1){return({key:n})=>{if(e.length===0)return!0;let r=e.some(i=>os(n,i)||cs(i)&&as(n,ls(i)));return(s?!r:r)?(P(`Ignoring theme file ${n} via ${t}...`),!1):!0}}async function wt(e){let t=T(e,rs);return await $(t)?(await k(t,{encoding:"utf8"})).split(/(\r\n|\r|\n)/).map(r=>r.trim()).filter(r=>r&&!r.startsWith("#")):[]}function _e(e){let t=e.filter(n=>n.startsWith("!")).map(n=>n.slice(1));return[e.filter(n=>!n.startsWith("!")),t]}function os(e,t){let s={matchBase:!0,noglobstar:!0};return ke(e,t,s)?!0:(!t.includes("*")&&t.endsWith("/")&&!St.has(t)&&(St.add(t),I({headline:"Directory pattern may be misleading.",body:`For more reliable matching, consider using "${t}*" or "${t}*.<file_extension>" instead.`})),is(t)?ke(e,t.replace(Rt,"templates/**/*$1"),s):!1)}function is(e){return Rt.test(e)}function as(e,t){return t.test(e)}function cs(e){return e.startsWith("/")&&e.endsWith("/")}function ls(e){return new RegExp(e.slice(1,-1))}h();import Ft from"fs/promises";var le=class{notifyPath;isValidUrl;constructor(t){this.notifyPath=t,this.isValidUrl=this.validateUrl(t),this.notifyPath===""&&N("Notification skipped: notifyPath is an empty string")}async notify(t){if(this.notifyPath!=="")try{P(`Notifying filechange listener at ${this.notifyPath}...`),this.isValidUrl?await this.notifyUrl(t):await this.notifyFile(t)}catch(s){L(s);let n=`Failed to notify filechange listener at ${this.notifyPath}`;s instanceof Error&&(n=n.concat(`: ${s.message}`)),N(n)}}async notifyUrl(t){let s=await fetch(this.notifyPath,{method:"POST",body:JSON.stringify({files:[t]}),headers:{"Content-Type":"application/json"}});if(!s.ok)throw new Error(s.statusText)}async notifyFile(t){await Ft.writeFile(this.notifyPath,t),await Ft.utimes(this.notifyPath,new Date,new Date)}validateUrl(t){try{let s=new URL(t);return s.protocol==="http:"||s.protocol==="https:"}catch{return!1}}};h();h();h();import ds from"node:events";var Pt=["assets/**/*.*","locales/**/*.json","blocks/**/*.liquid","snippets/**/*.liquid"];function vt(e){let t=new Map,s=new Set,n=new ds,r=(c,l)=>{n.emit(c,l)},o=async c=>{let l=await ue(e,c),m=de(c,l),x=typeof l=="string"?l:"",f=Buffer.isBuffer(l)?l.toString("base64"):"";return t.set(c,M({key:c,checksum:m,value:x,attachment:f})),l},i=C(Pt,{cwd:e,deep:3,ignore:W}).then(c=>Promise.all(c.map(o))),a=(c,l)=>{let m=V(e,l),x=o(m).then(()=>{let f=t.get(m);return s.add(f.key),f.value??f.attachment??""});st(5).then(()=>{s.delete(m)}).catch(()=>{}),r(c,{fileKey:m,onContent:f=>{x.then(g=>{g&&f(g)}).catch(()=>{})},onSync:f=>{}})},u=c=>{let l=V(e,c);s.delete(l),t.delete(l),r("unlink",{fileKey:l,onSync:m=>m()})},p=new Set(Pt.map(c=>T(e,c.split("/").shift()??"")));return{root:e,files:t,unsyncedFileKeys:s,ready:async()=>i.then(()=>{}),delete:async c=>{t.delete(c)},write:async c=>{t.set(c.key,c)},read:o,addEventListener:(c,l)=>{n.on(c,l)},startWatcher:async()=>{let{default:c}=await import("./chokidar-5RWEYTNQ.js");c.watch([...p],{ignored:W,persistent:!process.env.SHOPIFY_UNIT_TEST,ignoreInitial:!0}).on("add",a.bind(null,"add")).on("change",a.bind(null,"change")).on("unlink",u.bind(null))}}}h();h();var us="https://unpkg.com/@shopify/polaris@13.9.2/build/esm/styles.css";function $t(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function bt(e){return(0,String.raw)`<!DOCTYPE html>
|
|
2
2
|
<html>
|
|
3
3
|
<head>
|
|
4
4
|
<title>${e.title}</title>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as h,ba as F,c,ca as g,f as k,g as v,n as m}from"./chunk-L5XWYTHY.js";import{b as l}from"./chunk-QAXFCAOV.js";import{i as n,l as A}from"./chunk-FCULF3JA.js";import{Cb as b,Eb as f}from"./chunk-YJWNM4XO.js";import{i as q}from"./chunk-WNO2V53C.js";import{g as d}from"./chunk-VKWPEFWQ.js";d();d();var $={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"publicApiVersions"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"publicApiVersions"},selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"handle"}},{kind:"Field",name:{kind:"Name",value:"supported"}},{kind:"Field",name:{kind:"Name",value:"__typename"}}]}}]}}]};var S=new Map;async function Y(t,r,e,o){let p="Admin",u=o??await T(r),s=r.storeFqdn,i=V(r);l()==="local"&&(i["x-forwarded-host"]=s,s=new m().host("app"));let a=E(s,u,r);return F({query:t,api:p,addedHeaders:i,url:a,token:r.token,variables:e})}async function D(t){let{query:r,session:e,variables:o,version:p,responseOptions:u,preferredBehaviour:s}=t,i=p??S.get(e.storeFqdn);i??=await T(e,s);let a=e.storeFqdn,y=V(e);l()==="local"&&(y["x-forwarded-host"]=a,a=new m().host("app"));let x={url:E(a,i,e),api:"Admin",token:e.token,addedHeaders:y},w;return"refresh"in e&&(w={type:"token_refresh",handler:e.refresh}),g({...x,query:r,variables:o,responseOptions:u,unauthorizedHandler:w,preferredBehaviour:s})}function V(t){return h(t)?{"X-Shopify-Shop":t.storeFqdn,"X-Shopify-Access-Token":t.token}:{}}async function T(t,r){let o=(await N(t,r)).reverse()[0];return S.set(t.storeFqdn,o),o}async function N(t,r){return(await R(t,r)).filter(o=>o.supported).map(o=>o.handle).sort()}async function R(t,r){try{return(await D({query:$,session:t,variables:{},version:"unstable",responseOptions:{handleErrors:!1},preferredBehaviour:r})).publicApiVersions}catch(e){if(e instanceof c&&e.response.status===403){let o=t.storeFqdn.replace(".myshopify.com","");throw new n(f`Looks like you don't have access to this dev store: (${b.link(o,`https://${t.storeFqdn}`)})`,f`If you're not the owner, create a dev store staff account for yourself`)}throw e instanceof c&&(e.response.status===401||e.response.status===404)?new n(`Error connecting to your store ${t.storeFqdn}: ${e.message} ${e.response.status} ${e.response.data}`):e instanceof c&&e.response.status===402?new n(`The store ${t.storeFqdn} is currently unavailable.`,"This usually means the store is frozen, paused, or closed. Check the store in the Shopify admin and try again once it is reactivated."):e instanceof c&&e.response.status>=500?new n(`The Admin API for ${t.storeFqdn} returned a server error (HTTP ${e.response.status}).`,"This is a problem on the Shopify side, not with your command. Wait a moment and try again."):v(e)?new n(`Request to ${t.storeFqdn} was aborted before it completed.`,"The request was cancelled or timed out before the store responded. Try running the command again."):k(e)?new n(`Network error connecting to your store ${t.storeFqdn}: ${e instanceof Error?e.message:String(e)}`,"Check your internet connection and try again."):new A(`Unknown error connecting to your store ${t.storeFqdn}: ${e instanceof Error?e.message:String(e)}`)}}function E(t,r,e){let o=r??"unstable";return e&&h(e)?`https://${q}/cli/admin/api/${o}/graphql.json`:`https://${t}/admin/api/${o}/graphql.json`}export{Y as a,D as b,N as c,R as d,E as e};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as j}from"./chunk-
|
|
1
|
+
import{a as j}from"./chunk-QBGSSUJP.js";import{c as O,i as x,o as R}from"./chunk-ZHJ6KA43.js";import{e as k}from"./chunk-ECEOBSGD.js";import{a as E}from"./chunk-LYPNQFWX.js";import{p as v,v as A}from"./chunk-P3Z5RLVV.js";import{b as F,c as L}from"./chunk-DGMRL5DQ.js";import{N as y}from"./chunk-SKRUMRB4.js";import{i as T}from"./chunk-FCULF3JA.js";import{Ib as S,Nb as n,db as $,pa as w,ya as P}from"./chunk-YJWNM4XO.js";import{b as D}from"./chunk-JA2QZ635.js";import{d as l,i as u}from"./chunk-3VYOLEQE.js";import{e as q,g as p}from"./chunk-VKWPEFWQ.js";p();p();p();import{fileURLToPath as U}from"node:url";async function _(...r){let e=await $("package.json",{cwd:U(import.meta.url),type:"file"});if(!e)throw new Error("Failed to find CLI root path");return e.endsWith("/packages/theme/package.json")?l(u(e),"assets",...r):l(u(e),"dist","assets",...r)}async function b(r,e,i,t,a,m){let c=await O(r)?await j(m,r.storeFqdn):void 0;if(a)throw new T("Unable to use Admin API or Theme Access tokens with the profile command","You must authenticate manually by not passing the --password flag.");let f=await R(e,r,a,c),o=await x(f,{method:"GET",path:i,query:[],themeId:e,headers:{Accept:"application/vnd.speedscope+json"}});if(o.status!==200){let h=await o.text();throw new Error(`Bad response: ${o.status}: ${h}`)}let s=await o.text();t?S(s):await H(s)}async function H(r){let e=process.env.WSL_DISTRO_NAME,i=e?`//wsl$/${e}`:"",t=await _("speedscope","index.html");n(`[Theme Profile] Resolved URL to open: ${t}`);let a="liquid-profile",m=Buffer.from(r).toString("base64"),c=`speedscope.loadFileFromBase64(${JSON.stringify(a)}, ${JSON.stringify(m)})`,f=`speedscope-${Number(new Date)}-${process.pid}`,o=l(w(),`${f}.js`);n(`[Theme Profile] writing JS file to: ${o}`),await P(o,c),n(`[Theme Profile] JS file created successfully: ${o}`),t=`${i}${t}`,o=`${i}${o}`,t+=`#localProfilePath=${o}`;let s=l(w(),`${f}.html`);n(`[Theme Profile] writing HTML file to: ${s}`),await P(s,`<script>window.location=${JSON.stringify(t)}</script>`),n(`[Theme Profile] HTML file created successfully: ${s}`),s=`${i}${s}`,t=`file://${s}`,n(`[Theme Profile] Opening URL: ${t}`);let h=await y(t);n(`[Theme Profile] URL opened successfully: ${h}`)}var d=q(D(),1);var g=class extends A{static summary="Profile the Liquid rendering of a theme page.";static usage=["theme profile","theme profile --url /products/classic-leather-jacket"];static descriptionWithMarkdown=`Profile the Shopify Liquid on a given page.
|
|
2
2
|
|
|
3
|
-
This command will open a web page with the Speedscope profiler detailing the time spent executing Liquid on the given page.`;static description=this.
|
|
3
|
+
This command will open a web page with the Speedscope profiler detailing the time spent executing Liquid on the given page.`;static description=this.descriptionForHelp();static flags={...F,...v,theme:d.Flags.string({char:"t",description:"Theme ID or name of the remote theme.",env:"SHOPIFY_FLAG_THEME_ID"}),url:d.Flags.string({description:"The url to be used as context",env:"SHOPIFY_FLAG_URL",default:"/"}),"store-password":d.Flags.string({description:"The password for storefronts with password protection.",env:"SHOPIFY_FLAG_STORE_PASSWORD"}),...L};static multiEnvironmentsFlags=null;async command(e,i){let{password:t}=e,a;e.theme?a={filter:{theme:e.theme}}:a={filter:{live:!0}};let m=await E(i,a),c=[{title:`Generating Liquid profile for ${i.storeFqdn} ${e.url}`,task:async()=>{await b(i,m.id.toString(),e.url,e.json,t,e["store-password"])}}];await k(c)}};export{g as a};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import{J as g,L as c,M as C,h as m,t as f}from"./chunk-YX5GRXRS.js";import{z as h}from"./chunk-SKRUMRB4.js";import{Ib as p,ya as l}from"./chunk-YJWNM4XO.js";import{q as d}from"./chunk-3VYOLEQE.js";import{g as u}from"./chunk-VKWPEFWQ.js";u();import E from"clipboardy";var I="{{SCAN_CONTEXT}}",y="<the findings document from step 4>",N={posix:"bash",powershell:"powershell",cmd:"bat"};function r(e){return`\`${e.replace(/`/g,"'")}\``}function w(e,n){return`\`\`\`${N[n]}
|
|
2
|
+
${e}
|
|
3
|
+
\`\`\``}function _(e,n){let t=w(c(e,n),n),i=`replacing \`${e.stdinPlaceholder}\` with the file's path`,o=C(e,y,n);if(o===void 0)return`cmd.exe can't pipe multi-line text inline, so write the document to a file and redirect it to \`record\`, ${i}:
|
|
4
|
+
|
|
5
|
+
${t}`;let s=n==="powershell"?"The closing `'@` must start its line. The single-quoted here-string keeps PowerShell from expanding `$` in the document.":"The quoted `'EOF'` keeps the shell from expanding `$` and backticks in the document.",a=n==="powershell"?"\n\nWindows PowerShell 5.1 pipes text to `record` as ASCII by default. If the document contains non-ASCII characters, run `$OutputEncoding = [System.Text.UTF8Encoding]::new()` before either command.":"";return`${w(o,n)}
|
|
6
|
+
|
|
7
|
+
Replace \`${y}\` with the document itself; you don't need to write a file. ${s}
|
|
8
|
+
|
|
9
|
+
If you'd rather write the document to a file, pipe the file instead, ${i}:
|
|
10
|
+
|
|
11
|
+
${t}${a}`}function A(e,n,t,i){let{resultsDirectory:o,deterministicFindingsPath:s,agentChecksPath:a,agentFindingsPath:S}=f(e,n);return{commands:i,scanCommand:c(i.scan,t),recordInstructions:_(i.record,t),reviewCommand:c(i.review,t),cleanCommand:c(i.clean,t),deterministicFindingsPath:s,agentChecksPath:a,agentFindingsPath:S,resultsDirectory:o}}function P(e){return`### 1. Run the scan
|
|
12
|
+
|
|
13
|
+
Decide what to scan before running the check. By default, \`check\` scans the app directory. If the app's code also lives elsewhere (a backend, a shared library, another repository), add each of those directories with \`--include-dir\`. Skip paths with \`--exclude\`. Use \`--no-git-ignore\` only if Git-ignored files must be scanned. Include only directories relevant to the app. Check the scope with ${r(`${e.scanCommand} --list-files`)} and adjust the flags until the list is right. Then run \`check\` with the same flags, and use the same flags every time you run \`check\` again.`}function O(e){return`### 1. Use the existing scan results
|
|
14
|
+
|
|
15
|
+
\`shopify app security check\` has already run. It wrote ${r(e.deterministicFindingsPath)} and ${r(e.agentChecksPath)}. Continue by reading the agent checks. Running \`check\` again is always safe; do so once source files change (step 7).`}var T=JSON.stringify({include_dirs:[],excludes:[],no_git_ignore:!1});function k(e){return e?{json:JSON.stringify(e),guidance:"`scope` is the scope of the `check` run these results come from. Copy it into the document unchanged."}:{json:T,guidance:"Fill in `scope` with the flags you settled on with `--list-files`: `include_dirs` and `excludes` hold the `--include-dir` and `--exclude` values exactly as you typed them, in order, and `no_git_ignore` is `true` only if you passed `--no-git-ignore`."}}function $(e,n){return Object.entries(n).reduce((t,[i,o])=>t.replaceAll(i,()=>o),e)}var D={copyToClipboard:e=>E.write(e),writeToFile:l,output:p,outputConfirmation:e=>{h({headline:e})}};function x(e){let n=e.shell??g(),t=A(e.appDirectory,e.resultsKey,n,e.commands),i=e.scanScope?O(t):P(t),o=k(e.scanScope);return $(m(),{[I]:i,"{{WORKING_DIRECTORY_LINE}}":`Run these commands from ${r(d())}.`,"{{SCOPE_JSON}}":o.json,"{{SCOPE_GUIDANCE}}":o.guidance,"{{SCAN_COMMAND}}":t.scanCommand,"{{RECORD_COMMAND}}":t.recordInstructions,"{{REVIEW_COMMAND}}":t.reviewCommand,"{{CLEAN_COMMAND}}":t.cleanCommand,"{{DETERMINISTIC_FINDINGS_PATH}}":r(t.deterministicFindingsPath),"{{AGENT_CHECKS_PATH}}":r(t.agentChecksPath),"{{AGENT_FINDINGS_PATH}}":r(t.agentFindingsPath)}).trimEnd()}async function R(e,n=D){let t=x({appDirectory:e.appDirectory,resultsKey:e.resultsKey,commands:e.commands,scanScope:e.scanScope});e.copy?(await n.copyToClipboard(t),n.outputConfirmation("Copied app security check instructions to the clipboard")):e.writePath?(await n.writeToFile(e.writePath,`${t}
|
|
16
|
+
`),n.outputConfirmation(`Wrote app security check instructions to ${e.writePath}`)):n.output(t)}export{R as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as C}from"./chunk-
|
|
1
|
+
import{a as C}from"./chunk-YGFEUXKQ.js";import{a as y}from"./chunk-JTPVSO6Y.js";import{Ca as k,Fa as w,Ga as A,Ha as P}from"./chunk-2KLXRVGQ.js";import{b as h}from"./chunk-DGMRL5DQ.js";import{z as g}from"./chunk-SKRUMRB4.js";import{i as u}from"./chunk-FCULF3JA.js";import{j as r}from"./chunk-3VYOLEQE.js";import{g as n}from"./chunk-VKWPEFWQ.js";n();n();async function s(p){let{directory:t,configName:o,configPath:e,configuration:a,remoteApp:i}=p;if(!a.client_id)throw new u("The selected configuration is not linked to a remote app.","Run `shopify app config link` first to link this configuration to a Shopify app.");let c=i.developerPlatformClient,l=await k({developerPlatformClient:c,app:i}),m=i.flags,b={directory:t,configName:o,developerPlatformClient:c,apiKey:a.client_id},d=await w(b,l,m,i.apiKey),v=r(e),x=await A({remoteApp:i,developerPlatformClient:c,specifications:l,flags:m,configFileName:v,appDirectory:d.appDirectory??t,localAppOptions:d});return{configPath:e,configuration:x,remoteApp:i}}var f=class p extends C{static summary="Refresh an already-linked app configuration without prompts.";static descriptionWithMarkdown="Pulls the latest configuration from the already-linked Shopify app and updates the selected configuration file.\n\nThis command reuses the existing linked app and organization and skips all interactive prompts. Use `--config` to target a specific configuration file, or omit it to use the default one.";static description=this.descriptionForHelp();static flags={...h,...y};async run(){let{flags:t}=await this.parse(p),{app:o,remoteApp:e}=await P({directory:t.path,clientId:t["client-id"],forceRelink:t.reset,userProvidedConfigName:t.config}),{configuration:a,configPath:i}=await s({directory:t.path,configName:t.config,configPath:o.configPath,configuration:o.configuration,remoteApp:e});return g({headline:`Pulled latest configuration for "${a.name}"`,body:`Updated ${r(i)} with the remote data.`}),{app:o}}};export{f as a};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import{a}from"./chunk-YBQKJHZW.js";import{p as n,q as m,v as l}from"./chunk-P3Z5RLVV.js";import{b as s,c as h}from"./chunk-DGMRL5DQ.js";import{oa as o}from"./chunk-L5XWYTHY.js";import{b as v}from"./chunk-JA2QZ635.js";import{e as u,g as r}from"./chunk-VKWPEFWQ.js";r();var e=u(v(),1);var i=class extends l{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
|
+
|
|
3
|
+
If no theme is specified, then you're prompted to select the theme to overwrite from the list of the themes in your store.
|
|
4
|
+
|
|
5
|
+
You can run this command only in a directory that matches the [default Shopify theme folder structure](https://shopify.dev/docs/themes/tools/cli#directory-structure).
|
|
6
|
+
|
|
7
|
+
This command returns the following information:
|
|
8
|
+
|
|
9
|
+
- A link to the [editor](https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.
|
|
10
|
+
- A [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with others.
|
|
11
|
+
|
|
12
|
+
If you use the \`--json\` flag, then theme information is returned in JSON format, which can be used as a machine-readable input for scripts or continuous integration.
|
|
13
|
+
|
|
14
|
+
Sample output:
|
|
15
|
+
|
|
16
|
+
\`\`\`json
|
|
17
|
+
{
|
|
18
|
+
"theme": {
|
|
19
|
+
"id": 108267175958,
|
|
20
|
+
"name": "MyTheme",
|
|
21
|
+
"role": "unpublished",
|
|
22
|
+
"shop": "mystore.myshopify.com",
|
|
23
|
+
"editor_url": "https://mystore.myshopify.com/admin/themes/108267175958/editor",
|
|
24
|
+
"preview_url": "https://mystore.myshopify.com/?preview_theme_id=108267175958"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
\`\`\`
|
|
28
|
+
`;static description=this.descriptionForHelp();static flags={...s,...n,...m("upload"),...h,theme:e.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:e.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":e.Flags.string({char:"c",description:"Unique identifier for a development theme context (e.g., PR number, branch name). Reuses an existing development theme with this context name, or creates one if none exists.",env:"SHOPIFY_FLAG_DEVELOPMENT_CONTEXT",dependsOn:["development"],exclusive:["theme"]}),live:e.Flags.boolean({char:"l",description:"Push theme files from your remote live theme. Use --development, --live, --theme, or --unpublished in non-interactive environments.",env:"SHOPIFY_FLAG_LIVE"}),unpublished:e.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:e.Flags.boolean({char:"n",description:"Prevent deleting remote files that don't exist locally.",env:"SHOPIFY_FLAG_NODELETE"}),"allow-live":e.Flags.boolean({char:"a",description:"Allow push to a live theme. Required in non-interactive environments when targeting the live theme.",env:"SHOPIFY_FLAG_ALLOW_LIVE"}),publish:e.Flags.boolean({char:"p",description:"Publish as the live theme after uploading.",env:"SHOPIFY_FLAG_PUBLISH"}),force:e.Flags.boolean({hidden:!0,char:"f",description:"Proceed without confirmation, if current directory does not seem to be theme directory.",env:"SHOPIFY_FLAG_FORCE"}),strict:e.Flags.boolean({description:"Require theme check to pass without errors before pushing. Warnings are allowed.",env:"SHOPIFY_FLAG_STRICT_PUSH"}),listing:e.Flags.string({description:"The listing preset to use for multi-preset themes. Applies preset files from listings/[preset-name] directory.",env:"SHOPIFY_FLAG_LISTING"}),environment:n.environment};static multiEnvironmentsFlags=["store","password","path",["live","development","theme"]];static nonTTYFlagRequirements(){return[{flags:["theme","development","live","unpublished"]},{flags:["theme"],when:t=>!!(t.unpublished&&!t.development)},{flags:["allow-live"],when:t=>!!t.live}]}async command(t,p,d,g,c){o("theme-command:push"),await a({...t,allowLive:t["allow-live"],noColor:t["no-color"],developmentContext:t["development-context"]},p,d,c),o("theme-command:push")}storeAuthScopes(){return["read_themes","write_themes"]}};export{i as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as Ot}from"./chunk-5HBIIYSK.js";import{a as Gt}from"./chunk-GB3YC4TI.js";import{a as ce}from"./chunk-RJ5VF3QY.js";import{a as ae}from"./chunk-636CTEW7.js";import{
|
|
1
|
+
import{a as Ot}from"./chunk-5HBIIYSK.js";import{a as Gt}from"./chunk-GB3YC4TI.js";import{a as ce}from"./chunk-RJ5VF3QY.js";import{a as ae}from"./chunk-636CTEW7.js";import{Eb as ue,Nb as de}from"./chunk-YJWNM4XO.js";import{a as y,c as h,e as A,g as s}from"./chunk-VKWPEFWQ.js";var he=h((rr,pe)=>{s();pe.exports=fe;fe.sync=kt;var le=y("fs");function Nt(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var o=r[n].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1}function me(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:Nt(t,r)}function fe(e,t,r){le.stat(e,function(n,o){r(n,n?!1:me(o,e,t))})}function kt(e,t){return me(le.statSync(e),e,t)}});var xe=h((ir,Ee)=>{s();Ee.exports=Se;Se.sync=Ut;var ge=y("fs");function Se(e,t,r){ge.stat(e,function(n,o){r(n,n?!1:ye(o,t))})}function Ut(e,t){return ye(ge.statSync(e),t)}function ye(e,t){return e.isFile()&&Lt(e,t)}function Lt(e,t){var r=e.mode,n=e.uid,o=e.gid,i=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),c=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),u=parseInt("010",8),d=parseInt("001",8),l=a|u,f=r&d||r&u&&o===c||r&a&&n===i||r&l&&i===0;return f}});var we=h((ar,be)=>{s();var cr=y("fs"),$;process.platform==="win32"||global.TESTING_WINDOWS?$=he():$=xe();be.exports=U;U.sync=Mt;function U(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,o){U(e,t||{},function(i,c){i?o(i):n(c)})})}$(e,t||{},function(n,o){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,o=!1),r(n,o)})}function Mt(e,t){try{return $.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var $e=h((dr,Ae)=>{s();var x=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Te=y("path"),Ft=x?";":":",Ie=we(),ve=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Ce=(e,t)=>{let r=t.colon||Ft,n=e.match(/\//)||x&&e.match(/\\/)?[""]:[...x?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=x?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=x?o.split(r):[""];return x&&e.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:o}},Pe=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:o,pathExtExe:i}=Ce(e,t),c=[],a=d=>new Promise((l,f)=>{if(d===n.length)return t.all&&c.length?l(c):f(ve(e));let m=n[d],g=/^".*"$/.test(m)?m.slice(1,-1):m,p=Te.join(g,e),S=!g&&/^\.[\\\/]/.test(e)?e.slice(0,2)+p:p;l(u(S,d,0))}),u=(d,l,f)=>new Promise((m,g)=>{if(f===o.length)return m(a(l+1));let p=o[f];Ie(d+p,{pathExt:i},(S,E)=>{if(!S&&E)if(t.all)c.push(d+p);else return m(d+p);return m(u(d,l,f+1))})});return r?a(0).then(d=>r(null,d),r):a(0)},jt=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:o}=Ce(e,t),i=[];for(let c=0;c<r.length;c++){let a=r[c],u=/^".*"$/.test(a)?a.slice(1,-1):a,d=Te.join(u,e),l=!u&&/^\.[\\\/]/.test(e)?e.slice(0,2)+d:d;for(let f=0;f<n.length;f++){let m=l+n[f];try{if(Ie.sync(m,{pathExt:o}))if(t.all)i.push(m);else return m}catch{}}}if(t.all&&i.length)return i;if(t.nothrow)return null;throw ve(e)};Ae.exports=Pe;Pe.sync=jt});var Ge=h((mr,L)=>{"use strict";s();var Re=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};L.exports=Re;L.exports.default=Re});var Ue=h((pr,ke)=>{"use strict";s();var Oe=y("path"),Bt=$e(),Dt=Ge();function Ne(e,t){let r=e.options.env||process.env,n=process.cwd(),o=e.options.cwd!=null,i=o&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(e.options.cwd)}catch{}let c;try{c=Bt.sync(e.command,{path:r[Dt({env:r})],pathExt:t?Oe.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return c&&(c=Oe.resolve(o?e.options.cwd:"",c)),c}function qt(e){return Ne(e)||Ne(e,!0)}ke.exports=qt});var Le=h((gr,F)=>{"use strict";s();var M=/([()\][%!^"`<>&|;, *?])/g;function Wt(e){return e=e.replace(M,"^$1"),e}function _t(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(M,"^$1"),t&&(e=e.replace(M,"^$1")),e}F.exports.command=Wt;F.exports.argument=_t});var Fe=h((yr,Me)=>{"use strict";s();Me.exports=/^#!(.*)/});var Be=h((xr,je)=>{"use strict";s();var Ht=Fe();je.exports=(e="")=>{let t=e.match(Ht);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),o=r.split("/").pop();return o==="env"?n:n?`${o} ${n}`:o}});var qe=h((wr,De)=>{"use strict";s();var j=y("fs"),zt=Be();function Xt(e){let r=Buffer.alloc(150),n;try{n=j.openSync(e,"r"),j.readSync(n,r,0,150,0),j.closeSync(n)}catch{}return zt(r.toString())}De.exports=Xt});var ze=h((Ir,He)=>{"use strict";s();var Kt=y("path"),We=Ue(),_e=Le(),Vt=qe(),Yt=process.platform==="win32",Qt=/\.(?:com|exe)$/i,Zt=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Jt(e){e.file=We(e);let t=e.file&&Vt(e.file);return t?(e.args.unshift(e.file),e.command=t,We(e)):e.file}function en(e){if(!Yt)return e;let t=Jt(e),r=!Qt.test(t);if(e.options.forceShell||r){let n=Zt.test(t);e.command=Kt.normalize(e.command),e.command=_e.command(e.command),e.args=e.args.map(i=>_e.argument(i,n));let o=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${o}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function tn(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:en(n)}He.exports=tn});var Ve=h((Cr,Ke)=>{"use strict";s();var B=process.platform==="win32";function D(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function nn(e,t){if(!B)return;let r=e.emit;e.emit=function(n,o){if(n==="exit"){let i=Xe(o,t);if(i)return r.call(e,"error",i)}return r.apply(e,arguments)}}function Xe(e,t){return B&&e===1&&!t.file?D(t.original,"spawn"):null}function rn(e,t){return B&&e===1&&!t.file?D(t.original,"spawnSync"):null}Ke.exports={hookChildProcess:nn,verifyENOENT:Xe,verifyENOENTSync:rn,notFoundError:D}});var Ze=h((Ar,b)=>{"use strict";s();var Ye=y("child_process"),q=ze(),W=Ve();function Qe(e,t,r){let n=q(e,t,r),o=Ye.spawn(n.command,n.args,n.options);return W.hookChildProcess(o,n),o}function on(e,t,r){let n=q(e,t,r),o=Ye.spawnSync(n.command,n.args,n.options);return o.error=o.error||W.verifyENOENTSync(o.status,n),o}b.exports=Qe;b.exports.spawn=Qe;b.exports.sync=on;b.exports._parse=q;b.exports._enoent=W});var ht=h((mo,pt)=>{"use strict";s();var{PassThrough:An}=y("stream");pt.exports=function(){var e=[],t=new An({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",o),Array.prototype.slice.call(arguments).forEach(r),t;function r(i){return Array.isArray(i)?(i.forEach(r),this):(e.push(i),i.once("end",o.bind(null,i)),i.once("error",t.emit.bind(t,"error")),i.pipe(t,{end:!1}),this)}function n(){return e.length==0}function o(i){e=e.filter(function(c){return c!==i}),!e.length&&t.readable&&t.end()}}});s();s();var At=A(Ze(),1);import{Buffer as Hn}from"node:buffer";import zn from"node:path";import ne from"node:child_process";import k from"node:process";s();function _(e){let t=typeof e=="string"?`
|
|
2
2
|
`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}s();var R=new WeakMap,Je=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,o=e.displayName||e.name||"<anonymous>",i=function(...c){if(R.set(i,++n),n===1)r=e.apply(this,c),e=null;else if(t.throw===!0)throw new Error(`Function \`${o}\` can only be called once`);return r};return ce(i,e),R.set(i,n),i};Je.callCount=e=>{if(!R.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return R.get(e)};var et=Je;s();import hn from"node:process";s();import{constants as un}from"node:os";s();var tt=()=>{let e=rt-nt+1;return Array.from({length:e},sn)},sn=(e,t)=>({name:`SIGRT${t+1}`,number:nt+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),nt=34,rt=64;s();import{constants as cn}from"node:os";s();var ot=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var H=()=>{let e=tt();return[...ot,...e].map(an)},an=({name:e,number:t,description:r,action:n,forced:o=!1,standard:i})=>{let{signals:{[e]:c}}=cn,a=c!==void 0;return{name:e,number:a?c:t,description:r,supported:a,action:n,forced:o,standard:i}};var dn=()=>{let e=H();return Object.fromEntries(e.map(ln))},ln=({name:e,number:t,description:r,supported:n,action:o,forced:i,standard:c})=>[e,{name:e,number:t,description:r,supported:n,action:o,forced:i,standard:c}],it=dn(),mn=()=>{let e=H(),t=65,r=Array.from({length:t},(n,o)=>fn(o,e));return Object.assign({},...r)},fn=(e,t)=>{let r=pn(e,t);if(r===void 0)return{};let{name:n,description:o,supported:i,action:c,forced:a,standard:u}=r;return{[e]:{name:n,number:e,description:o,supported:i,action:c,forced:a,standard:u}}},pn=(e,t)=>{let r=t.find(({name:n})=>un.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},zr=mn();var gn=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:o,exitCode:i,isCanceled:c})=>e?`timed out after ${t} milliseconds`:c?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${o})`:i!==void 0?`failed with exit code ${i}`:"failed",w=({stdout:e,stderr:t,all:r,error:n,signal:o,exitCode:i,command:c,escapedCommand:a,timedOut:u,isCanceled:d,killed:l,parsed:{options:{timeout:f,cwd:m=hn.cwd()}}})=>{i=i===null?void 0:i,o=o===null?void 0:o;let g=o===void 0?void 0:it[o].description,p=n&&n.code,E=`Command ${gn({timedOut:u,timeout:f,errorCode:p,signal:o,signalDescription:g,exitCode:i,isCanceled:d})}: ${c}`,v=Object.prototype.toString.call(n)==="[object Error]",C=v?`${E}
|
|
3
3
|
${n.message}`:E,P=[C,t,e].filter(Boolean).join(`
|
|
4
4
|
`);return v?(n.originalMessage=n.message,n.message=P):n=new Error(P),n.shortMessage=C,n.command=c,n.escapedCommand=a,n.exitCode=i,n.signal=o,n.signalDescription=g,n.stdout=e,n.stderr=t,n.cwd=m,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!u,n.isCanceled=d,n.killed=l&&!u,n};s();var G=["stdin","stdout","stderr"],Sn=e=>G.some(t=>e[t]!==void 0),st=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return G.map(n=>e[n]);if(Sn(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${G.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,G.length);return Array.from({length:r},(n,o)=>t[o])};s();var ct=A(Ot(),1);import yn from"node:os";var En=1e3*5,at=(e,t="SIGTERM",r={})=>{let n=e(t);return xn(e,t,r,n),n},xn=(e,t,r,n)=>{if(!bn(t,r,n))return;let o=Tn(r),i=setTimeout(()=>{e("SIGKILL")},o);i.unref&&i.unref()},bn=(e,{forceKillAfterTimeout:t},r)=>wn(e)&&t!==!1&&r,wn=e=>e===yn.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",Tn=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return En;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},ut=(e,t)=>{e.kill()&&(t.isCanceled=!0)},In=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},dt=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let o,i=new Promise((a,u)=>{o=setTimeout(()=>{In(e,r,u)},t)}),c=n.finally(()=>{clearTimeout(o)});return Promise.race([i,c])},lt=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},mt=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let o=(0,ct.default)(()=>{e.kill()});return n.finally(()=>{o()})};s();import{createWriteStream as vn}from"node:fs";import{ChildProcess as Cn}from"node:child_process";s();function O(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function z(e){return O(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var Pn=e=>e instanceof Cn&&typeof e.then=="function",X=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(vn(r)),e;if(z(r))return e[t].pipe(r),e;if(!Pn(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!z(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},ft=e=>{e.stdout!==null&&(e.pipeStdout=X.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=X.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=X.bind(void 0,e,"all"))};s();import{createReadStream as $n,readFileSync as Rn}from"node:fs";var Y=A(Gt(),1),gt=A(ht(),1),St=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},Gn=({input:e,inputFile:t})=>typeof t!="string"?e:(St(e),Rn(t)),yt=e=>{let t=Gn(e);if(O(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},On=({input:e,inputFile:t})=>typeof t!="string"?e:(St(e),$n(t)),Et=(e,t)=>{let r=On(t);r!==void 0&&(O(r)?r.pipe(e.stdin):e.stdin.end(r))},xt=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,gt.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},K=async(e,t)=>{if(!(!e||t===void 0)){e.destroy();try{return await t}catch(r){return r.bufferedData}}},V=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t?(0,Y.default)(e,{encoding:t,maxBuffer:n}):Y.default.buffer(e,{maxBuffer:n})},bt=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:o,maxBuffer:i},c)=>{let a=V(e,{encoding:n,buffer:o,maxBuffer:i}),u=V(t,{encoding:n,buffer:o,maxBuffer:i}),d=V(r,{encoding:n,buffer:o,maxBuffer:i*2});try{return await Promise.all([c,a,u,d])}catch(l){return Promise.all([{error:l,signal:l.signal,timedOut:l.timedOut},K(e,a),K(t,u),K(r,d)])}};s();var Nn=(async()=>{})().constructor.prototype,kn=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(Nn,e)]),Q=(e,t)=>{for(let[r,n]of kn){let o=typeof t=="function"?(...i)=>Reflect.apply(n.value,t(),i):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:o})}},wt=e=>new Promise((t,r)=>{e.on("exit",(n,o)=>{t({exitCode:n,signal:o})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});s();import{Buffer as Un}from"node:buffer";import{ChildProcess as Ln}from"node:child_process";var vt=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],Mn=/^[\w.-]+$/,Fn=/"/g,jn=e=>typeof e!="string"||Mn.test(e)?e:`"${e.replace(Fn,'\\"')}"`,Z=(e,t)=>vt(e,t).join(" "),J=(e,t)=>vt(e,t).map(r=>jn(r)).join(" "),Bn=/ +/g;var Tt=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof Ln)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(Un.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},It=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e[e.length-1]}${t[0]}`,...t.slice(1)],Dn=({templates:e,expressions:t,tokens:r,index:n,template:o})=>{let i=o??e.raw[n],c=i.split(Bn).filter(Boolean),a=It(r,c,i.startsWith(" "));if(n===t.length)return a;let u=t[n],d=Array.isArray(u)?u.map(l=>Tt(l)):[Tt(u)];return It(a,d,i.endsWith(" "))},ee=(e,t)=>{let r=[];for(let[n,o]of e.entries())r=Dn({templates:e,expressions:t,tokens:r,index:n,template:o});return r};s();import{debuglog as qn}from"node:util";import Wn from"node:process";var Ct=qn("execa").enabled,N=(e,t)=>String(e).padStart(t,"0"),_n=()=>{let e=new Date;return`${N(e.getHours(),2)}:${N(e.getMinutes(),2)}:${N(e.getSeconds(),2)}.${N(e.getMilliseconds(),3)}`},te=(e,{verbose:t})=>{t&&Wn.stderr.write(`[${_n()}] ${e}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
1
|
+
import{a as n}from"./chunk-ZO4IBP4B.js";import{b as i}from"./chunk-FW5HGFSZ.js";import{g as e}from"./chunk-VKWPEFWQ.js";e();var t=class extends i{static description="Generate a notifications.json file for the the CLI, appending a new notification to the current file.";static hidden=!0;async run(){await n()}};export{t as a};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{a as p}from"./chunk-ECEOBSGD.js";import{a as f}from"./chunk-LYPNQFWX.js";import{f as c,o as v}from"./chunk-R757TSQ6.js";import{p as l,v as d}from"./chunk-P3Z5RLVV.js";import{b as s,f as h}from"./chunk-DGMRL5DQ.js";import{z as a}from"./chunk-SKRUMRB4.js";import{b as T}from"./chunk-JA2QZ635.js";import{e as F,g as r}from"./chunk-VKWPEFWQ.js";r();r();async function u(e,n){let m=e.name??await c("New name for the theme"),i=await f(n,{header:"Select a theme to rename",filter:{theme:e.theme,development:e.development,live:e.live}});await v(i.id,{name:m},n),a({body:[...e.environment?[{subdued:`Environment: ${e.environment}
|
|
2
|
+
|
|
3
|
+
`}]:[],"The theme",...p(i),"was renamed to",`'${m}'`]})}var t=F(T(),1);var o=class extends d{static summary="Renames an existing theme.";static descriptionWithMarkdown=`Renames a theme in your store.
|
|
4
|
+
|
|
5
|
+
If no theme is specified, then you're prompted to select the theme that you want to rename from the list of themes in your store.
|
|
6
|
+
`;static description=this.descriptionForHelp();static flags={...s,...l,name:h(t.Flags.string({char:"n",description:"The new name for the theme.",env:"SHOPIFY_FLAG_NEW_NAME",required:!1})),development:t.Flags.boolean({char:"d",description:"Rename your development theme. Use --development, --live, or --theme in non-interactive environments.",env:"SHOPIFY_FLAG_DEVELOPMENT"}),theme:t.Flags.string({char:"t",description:"Theme ID or name of the remote theme. Use --development, --live, or --theme in non-interactive environments.",env:"SHOPIFY_FLAG_THEME_ID"}),live:t.Flags.boolean({char:"l",description:"Rename your remote live theme. Use --development, --live, or --theme in non-interactive environments.",env:"SHOPIFY_FLAG_LIVE"})};static multiEnvironmentsFlags=["store","password","name",["live","development","theme"]];static nonTTYFlagRequirements(){return[{flags:["theme","development","live"]}]}async command(n,m){await u(n,m)}};export{o as a};
|