From 91d55c965aac78db4afb2d15f299d6cbe524c0de Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Fri, 20 Jul 2018 14:32:21 -0700 Subject: [PATCH] Make sure we disable suggestions properly --- .../src/features/diagnostics.ts | 25 ++++++------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/extensions/typescript-language-features/src/features/diagnostics.ts b/extensions/typescript-language-features/src/features/diagnostics.ts index 726db79617c..5915247fe0c 100644 --- a/extensions/typescript-language-features/src/features/diagnostics.ts +++ b/extensions/typescript-language-features/src/features/diagnostics.ts @@ -13,8 +13,6 @@ export enum DiagnosticKind { Suggestion } -const allDiagnosticKinds = [DiagnosticKind.Syntax, DiagnosticKind.Semantic, DiagnosticKind.Suggestion]; - class FileDiagnostics { private readonly _diagnostics = new Map(); @@ -23,13 +21,6 @@ class FileDiagnostics { public language: DiagnosticLanguage ) { } - public isEmpty(): boolean { - return allDiagnosticKinds.every(kind => { - const diagnostics = this._diagnostics.get(kind); - return !!(diagnostics && diagnostics.length); - }); - } - public updateDiagnostics( language: DiagnosticLanguage, kind: DiagnosticKind, @@ -58,26 +49,26 @@ class FileDiagnostics { } return [ - ...(this._diagnostics.get(DiagnosticKind.Syntax) || []), - ...(this._diagnostics.get(DiagnosticKind.Semantic) || []), + ...this.get(DiagnosticKind.Syntax), + ...this.get(DiagnosticKind.Semantic), ...this.getSuggestionDiagnostics(settings), ]; } private getSuggestionDiagnostics(settings: DiagnosticSettings) { - if (!this._diagnostics.get(DiagnosticKind.Suggestion)) { - return []; - } - const enableSuggestions = settings.getEnableSuggestions(this.language); - return this._diagnostics.get(DiagnosticKind.Suggestion)!.filter(x => { - if (enableSuggestions) { + return this.get(DiagnosticKind.Suggestion).filter(x => { + if (!enableSuggestions) { // Still show unused return x.tags && x.tags.indexOf(vscode.DiagnosticTag.Unnecessary) !== -1; } return true; }); } + + private get(kind: DiagnosticKind): vscode.Diagnostic[] { + return this._diagnostics.get(kind) || []; + } } interface LangaugeDiagnosticSettings { -- GitLab