diff --git a/src/vs/workbench/api/common/extHostTreeViews.ts b/src/vs/workbench/api/common/extHostTreeViews.ts index 1165641848c..537c3e15849 100644 --- a/src/vs/workbench/api/common/extHostTreeViews.ts +++ b/src/vs/workbench/api/common/extHostTreeViews.ts @@ -100,7 +100,10 @@ export class ExtHostTreeViews implements ExtHostTreeViewsShape { get onDidChangeSelection() { return treeView.onDidChangeSelection; }, get visible() { return treeView.visible; }, get onDidChangeVisibility() { return treeView.onDidChangeVisibility; }, - get onDidChangeCheckboxState() { checkProposedApiEnabled(extension, 'treeItemCheckbox'); return treeView.onDidChangeCheckboxState; }, + get onDidChangeCheckboxState() { + checkProposedApiEnabled(extension, 'treeItemCheckbox'); + return treeView.onDidChangeCheckboxState; + }, get message() { return treeView.message; }, set message(message: string) { treeView.message = message; @@ -488,6 +491,7 @@ class ExtHostTreeView extends Disposable { } async setCheckboxState(checkboxUpdates: CheckboxUpdate[]) { + type CheckboxUpdateWithItem = { extensionItem: NonNullable; treeItem: vscode.TreeItem2; newState: TreeItemCheckboxState }; const items = (await Promise.all(checkboxUpdates.map(async checkboxUpdate => { const extensionItem = this.getExtensionElement(checkboxUpdate.treeItemHandle); if (extensionItem) { @@ -498,7 +502,7 @@ class ExtHostTreeView extends Disposable { }; } return Promise.resolve(undefined); - }))).filter((item) => item !== undefined) as { extensionItem: T; treeItem: vscode.TreeItem2; newState: TreeItemCheckboxState }[]; + }))).filter((item): item is CheckboxUpdateWithItem => item !== undefined); items.forEach(item => { item.treeItem.checkboxState = item.newState ? TreeItemCheckboxState.Checked : TreeItemCheckboxState.Unchecked;