UNPKG

shopify

Version:

A CLI tool to build for the Shopify platform

88 lines (85 loc) 2.91 kB
import { getOutputUpdateCLIReminder } from "../chunk-DUNGALP3.js"; import { fetchNotificationsInBackground } from "../chunk-SUFC4ISB.js"; import { startAnalytics } from "../chunk-A2CZGTAP.js"; import "../chunk-SHWOPMLQ.js"; import "../chunk-VBBBCVMH.js"; import { checkForCachedNewVersion, checkForNewVersion, runAtMinimumInterval } from "../chunk-HAG3HJ2V.js"; import { CLI_KIT_VERSION } from "../chunk-NYP3N62G.js"; import { isPreReleaseVersion, outputDebug, outputWarn } from "../chunk-E4GUDBAR.js"; import "../chunk-6NVYATES.js"; import "../chunk-CTFDRWUN.js"; import "../chunk-7IK72W75.js"; import "../chunk-CEUL3KX5.js"; import "../chunk-KUJQ4AB6.js"; import "../chunk-UMUTXITN.js"; import "../chunk-G2ZZKGSV.js"; import "../chunk-UV5N2VL7.js"; import "../chunk-XE5EOEBL.js"; import "../chunk-Q2H6D2MH.js"; import "../chunk-EG6MBBEN.js"; import { init_cjs_shims } from "../chunk-PKR7KJ6P.js"; // src/hooks/prerun.ts init_cjs_shims(); // ../cli-kit/dist/public/node/hooks/prerun.js init_cjs_shims(); var hook = async (options) => { let commandContent = parseCommandContent({ id: options.Command.id, aliases: options.Command.aliases, pluginAlias: options.Command.plugin?.alias }), args = options.argv; await warnOnAvailableUpgrade(), outputDebug(`Running command ${commandContent.command}`), await startAnalytics({ commandContent, args, commandClass: options.Command }), fetchNotificationsInBackground(options.Command.id); }; function parseCommandContent(cmdInfo) { let commandContent = parseCreateCommand(cmdInfo.pluginAlias); return commandContent || (commandContent = parseNormalCommand(cmdInfo.id, cmdInfo.aliases)), commandContent; } function parseNormalCommand(id, aliases) { return { command: id.replace(/:/g, " "), topic: parseTopic(id), alias: findAlias(aliases) }; } function parseCreateCommand(pluginAlias) { if (pluginAlias?.startsWith("@shopify/create-")) return { command: pluginAlias.substring(pluginAlias.indexOf("/") + 1) }; } function parseTopic(cmd) { if (cmd.lastIndexOf(":") !== -1) return cmd.slice(0, cmd.lastIndexOf(":")).replace(/:/g, " "); } function findAlias(aliases) { let existingAlias = aliases.find((alias) => alias.split(":").every((aliasToken) => process.argv.includes(aliasToken))); if (existingAlias) return existingAlias.replace(/:/g, " "); } async function warnOnAvailableUpgrade() { let cliDependency = "@shopify/cli", currentVersion = CLI_KIT_VERSION; isPreReleaseVersion(currentVersion) || (checkForNewVersion(cliDependency, currentVersion, { cacheExpiryInHours: 24 }), await runAtMinimumInterval("warn-on-available-upgrade", { days: 1 }, async () => { let newerVersion = checkForCachedNewVersion(cliDependency, currentVersion); newerVersion && outputWarn(getOutputUpdateCLIReminder(newerVersion)); })); } export { hook as default }; //# sourceMappingURL=prerun.js.map