From bdc02f368f64040cbac2767325d7ff2f9ce4931a Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Mon, 23 Aug 2021 11:18:53 +0200 Subject: [PATCH] pass promise to quickpick --- .../contrib/extensions/browser/extensionsActions.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts b/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts index 95dafa29014..83a847e7677 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsActions.ts @@ -987,9 +987,7 @@ export class InstallAnotherVersionAction extends ExtensionAction { if (!this.enabled) { return; } - const allVersions = await this.extensionGalleryService.getAllCompatibleVersions(this.extension!.gallery!, await this.extension!.server!.getTargetPlatform()); - const versionEntries = allVersions.map((v, i) => ({ id: v.version, label: v.version, description: `${getRelativeDateLabel(new Date(Date.parse(v.date)))}${v.version === this.extension!.version ? ` (${localize('current', "Current")})` : ''}`, latest: i === 0 })); - const pick = await this.quickInputService.pick(versionEntries, { placeHolder: localize('selectVersion', "Select Version to Install"), matchOnDetail: true }); + const pick = await this.quickInputService.pick(this.getVersionEntries(), { placeHolder: localize('selectVersion', "Select Version to Install"), matchOnDetail: true }); if (pick) { if (this.extension!.version === pick.id) { return; @@ -1006,6 +1004,11 @@ export class InstallAnotherVersionAction extends ExtensionAction { } return null; } + + private async getVersionEntries(): Promise<(IQuickPickItem & { latest: boolean, id: string })[]> { + const allVersions = await this.extensionGalleryService.getAllCompatibleVersions(this.extension!.gallery!, await this.extension!.server!.getTargetPlatform()); + return allVersions.map((v, i) => ({ id: v.version, label: v.version, description: `${getRelativeDateLabel(new Date(Date.parse(v.date)))}${v.version === this.extension!.version ? ` (${localize('current', "Current")})` : ''}`, latest: i === 0 })); + } } export class EnableForWorkspaceAction extends ExtensionAction {