zksync-cli
Version:
CLI tool that simplifies the process of developing applications and interacting with the ZKsync network
69 lines • 2.04 kB
JavaScript
import { executeCommand } from "./helpers.js";
// The package manager implementations
export const packageManagers = {
npm: {
install(packages) {
return `npm install${packages ? ` ${packages}` : ""} --force`;
},
run(script) {
return `npm run ${script}`;
},
uninstall(packages) {
return `npm uninstall ${packages}`;
},
isInstalled() {
return executeCommand("npm --version", { silent: true })
.then(() => true)
.catch(() => false);
},
},
yarn: {
install(packages) {
return `yarn${packages ? ` add ${packages}` : ""} --force`;
},
run(script) {
return `yarn ${script}`;
},
uninstall(packages) {
return `yarn remove ${packages}`;
},
isInstalled() {
return executeCommand("yarn --version", { silent: true })
.then(() => true)
.catch(() => false);
},
},
pnpm: {
install(packages) {
return packages ? `pnpm add ${packages}` : "pnpm install --force";
},
run(script) {
return `pnpm ${script}`;
},
uninstall(packages) {
return `pnpm uninstall ${packages}`;
},
isInstalled() {
return executeCommand("pnpm --version", { silent: true })
.then(() => true)
.catch(() => false);
},
},
bun: {
install(packages) {
return packages ? `bun add ${packages}` : "bun install --force";
},
run(script) {
return `bun run ${script}`;
},
uninstall(packages) {
return `bun remove ${packages}`;
},
isInstalled() {
return executeCommand("bun --version", { silent: true })
.then(() => true)
.catch(() => false);
},
},
};
//# sourceMappingURL=packageManager.js.map