UNPKG

@wocker/ws

Version:

Docker workspace for web projects

30 lines (29 loc) 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.YarnProvider = void 0; const PackageManagerProvider_1 = require("../types/PackageManagerProvider"); const utils_1 = require("../../../utils"); class YarnProvider extends PackageManagerProvider_1.PackageManagerProvider { async getPackages() { const res = await (0, utils_1.exec)("yarn --cwd `yarn global dir` list --json --depth=0"), three = JSON.parse(res), packages = []; for (const item of three.data.trees) { const [, name, version] = /^(.*)@(.*)$/.exec(item.name); packages.push({ name, version }); } return packages; } async install(name, version) { const command = `yarn global add ${version ? `${name}@${version}` : name}`; console.info(`> ${command}`); await (0, utils_1.exec)(command); } async uninstall(name) { const command = `yarn global remove ${name}`; console.info(`> ${command}`); await (0, utils_1.exec)(command); } } exports.YarnProvider = YarnProvider;