UNPKG

@reliverse/rse

Version:

@reliverse/rse is your all-in-one companion for bootstrapping and improving any kind of projects (especially web apps built with frameworks like Next.js) — whether you're kicking off something new or upgrading an existing app. It is also a little AI-power

30 lines (29 loc) 910 B
import { re } from "@reliverse/relico"; import { cancel, isCancel, select } from "@reliverse/rempts"; import { getUserPkgManager } from "../utils/get-package-manager.js"; export async function getPackageManagerChoice(packageManager) { if (packageManager !== void 0) return packageManager; const detectedPackageManager = getUserPkgManager(); const response = await select({ message: "Choose package manager", options: [ { value: "npm", label: "npm", hint: "Node Package Manager" }, { value: "pnpm", label: "pnpm", hint: "Fast, disk space efficient package manager" }, { value: "bun", label: "bun", hint: "All-in-one JavaScript runtime & toolkit" } ], initialValue: detectedPackageManager }); if (isCancel(response)) { cancel(re.red("Operation cancelled")); process.exit(0); } return response; }