uninstall all versions of an extension

fixes #8664
This commit is contained in:
Joao Moreno 2016-07-26 16:16:37 +02:00
parent 1518e267b6
commit 450cf5d4d2

View file

@ -125,18 +125,20 @@ class Main {
private uninstallExtension(ids: string[]): TPromise<any> {
return sequence(ids.map(id => () => {
return this.extensionManagementService.getInstalled().then(installed => {
const [extension] = installed.filter(e => getId(e.manifest) === id);
return this.extensionManagementService.getInstalled(true).then(installed => {
const extensions = installed.filter(e => getId(e.manifest) === id);
if (!extension) {
if (extensions.length === 0) {
return TPromise.wrapError(`${ notInstalled(id) }\n${ useId }`);
}
console.log(localize('uninstalling', "Uninstalling {0}...", id));
return this.extensionManagementService.uninstall(extension).then(() => {
console.log(localize('successUninstall', "Extension '{0}' was successfully uninstalled!", id));
});
const promises = extensions
.map(extension => this.extensionManagementService.uninstall(extension));
return TPromise.join(promises)
.then(() => console.log(localize('successUninstall', "Extension '{0}' was successfully uninstalled!", id)));
});
}));
}