UNPKG

@shopify/create-app

Version:

A CLI tool to create a new Shopify app.

118 lines (115 loc) 4.66 kB
import { treeKill } from "./chunk-VJHCFG5K.js"; import { init_cjs_shims } from "./chunk-3XNI6LP4.js"; // ../cli-kit/dist/public/node/hooks/postrun.js init_cjs_shims(); var postRunHookCompleted = !1; function postRunHookHasCompleted() { return postRunHookCompleted; } function waitForPostRunHookAndExit() { let elapsed = 0, terminating = !1, handle = setInterval(() => { if (!terminating) { if (postRunHookHasCompleted() || elapsed >= 12e4) { terminating = !0, clearInterval(handle), treeKill(process.pid, "SIGINT", !1, () => { process.exit(0); }); return; } elapsed += 100; } }, 100); } var hook = async ({ config, Command }) => { await detectStopCommand(Command); let metadata = await import("./metadata-4WOIDT2F.js"), { commandStartOptions } = metadata.getAllSensitiveMetadata(); commandStartOptions && await metadata.addSensitiveMetadata(() => ({ commandStartOptions: { ...commandStartOptions, endTime: (/* @__PURE__ */ new Date()).getTime() } })); let { postrun: deprecationsHook } = await import("./deprecations-37ZUNG4Z.js"); deprecationsHook(Command); let { outputDebug } = await import("./output-2RGSJNA6.js"), command = Command.id.replace(/:/g, " "); outputDebug(`Completed command ${command}`), !command.includes("notifications") && !command.includes("upgrade") && !command.includes("send-analytics") && await autoUpgradeIfNeeded(); let { reportAnalyticsEvent } = await import("./analytics-CVOS4X5D.js"); await reportAnalyticsEvent({ config, exitMode: "ok" }), postRunHookCompleted = !0; }; async function autoUpgradeIfNeeded() { let { versionToAutoUpgrade, warnIfUpgradeAvailable } = await import("./upgrade-QE6OI6PW.js"), newerVersion = versionToAutoUpgrade(); if (!newerVersion) { await warnIfUpgradeAvailable(); return; } if (process.env.SHOPIFY_CLI_FORCE_AUTO_UPGRADE === "1") await performAutoUpgrade(newerVersion); else { let { runAtMinimumInterval } = await import("./conf-store-NT7HUXZL.js"); await runAtMinimumInterval("auto-upgrade", { days: 1 }, async () => { await performAutoUpgrade(newerVersion); }); } } async function performAutoUpgrade(newerVersion) { let [{ CLI_KIT_VERSION }, { isMajorVersionChange }, { outputWarn, outputDebug }, { getOutputUpdateCLIReminder, runCLIUpgrade, hasBlockingAutoUpgradeNotification }, metadata] = await Promise.all([ import("./version-AALUTWIR.js"), import("./version-6CVFB4SF.js"), import("./output-2RGSJNA6.js"), import("./upgrade-QE6OI6PW.js"), import("./metadata-4WOIDT2F.js") ]); if (isMajorVersionChange(CLI_KIT_VERSION, newerVersion)) { outputWarn(getOutputUpdateCLIReminder(newerVersion, !0)), await metadata.addPublicMetadata(() => ({ env_auto_upgrade_skipped_reason: "major_version" })); return; } if (await hasBlockingAutoUpgradeNotification()) { await metadata.addPublicMetadata(() => ({ env_auto_upgrade_skipped_reason: "blocked_by_notification" })); return; } try { await runCLIUpgrade({ autoupgrade: !0 }), await metadata.addPublicMetadata(() => ({ env_auto_upgrade_success: !0 })); } catch (error) { let errorMessage = `Auto-upgrade failed: ${error}`; outputDebug(errorMessage), outputWarn(getOutputUpdateCLIReminder(newerVersion)), await metadata.addPublicMetadata(() => ({ env_auto_upgrade_success: !1 })); let [{ sendErrorToBugsnag }, { inferPackageManagerForGlobalCLI }] = await Promise.all([ import("./error-handler-GGBOXL7F.js"), import("./is-global-DL3ZQWOO.js") ]), enrichedError = Object.assign(new Error(errorMessage), { packageManager: inferPackageManagerForGlobalCLI(), platform: process.platform, cliVersion: CLI_KIT_VERSION }); await sendErrorToBugsnag(enrichedError, "expected_error"); } } async function detectStopCommand(commandClass) { let currentTime = (/* @__PURE__ */ new Date()).getTime(); if (commandClass && "analyticsStopCommand" in commandClass && typeof commandClass.analyticsStopCommand == "function") { let stopCommand = commandClass.analyticsStopCommand(); if (stopCommand) { let metadata = await import("./metadata-4WOIDT2F.js"), { commandStartOptions } = metadata.getAllSensitiveMetadata(); if (!commandStartOptions) return; await metadata.addSensitiveMetadata(() => ({ commandStartOptions: { ...commandStartOptions, startTime: currentTime, startCommand: stopCommand } })); } } } export { waitForPostRunHookAndExit, hook }; //# sourceMappingURL=chunk-A67PO4UO.js.map