pnpm
Version:
Fast, disk space efficient package manager
34 lines • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const supi_1 = require("supi");
const writePkg = require("write-pkg");
const createStoreController_1 = require("../createStoreController");
const findWorkspacePackages_1 = require("../findWorkspacePackages");
const readImporterManifest_1 = require("../readImporterManifest");
async function uninstallCmd(input, opts) {
const store = await createStoreController_1.default(opts);
const uninstallOpts = Object.assign(opts, {
store: store.path,
storeController: store.ctrl,
});
if (opts.lockfileDirectory === opts.prefix) {
const manifest = await supi_1.uninstall(await readImporterManifest_1.readImporterManifestFromDir(opts.prefix), input, uninstallOpts);
await writePkg(opts.prefix, manifest);
return;
}
uninstallOpts['localPackages'] = opts.linkWorkspacePackages && opts.workspacePrefix
? findWorkspacePackages_1.arrayOfLocalPackagesToMap(await findWorkspacePackages_1.default(opts.workspacePrefix))
: undefined;
const [{ manifest }] = await supi_1.mutateModules([
{
bin: opts.bin,
dependencyNames: input,
manifest: await readImporterManifest_1.readImporterManifestFromDir(opts.prefix),
mutation: 'uninstallSome',
prefix: opts.prefix,
},
], uninstallOpts);
await writePkg(opts.prefix, manifest);
}
exports.default = uninstallCmd;
//# sourceMappingURL=uninstall.js.map