Don't return trigger characters for ambient JS suggestions

Fixes #130096
This commit is contained in:
Matt Bierner
2021-08-12 15:34:34 -07:00
parent 2974a014fd
commit 5fe071c2e7

View File

@@ -89,7 +89,7 @@ class MyCompletionItem extends vscode.CompletionItem {
this.useCodeSnippet = completionContext.useCodeSnippetsOnMethodSuggest && (this.kind === vscode.CompletionItemKind.Function || this.kind === vscode.CompletionItemKind.Method);
this.range = this.getRangeFromReplacementSpan(tsEntry, completionContext);
this.commitCharacters = MyCompletionItem.getCommitCharacters(completionContext);
this.commitCharacters = MyCompletionItem.getCommitCharacters(completionContext, tsEntry);
this.insertText = isSnippet && tsEntry.insertText ? new vscode.SnippetString(tsEntry.insertText) : tsEntry.insertText;
this.filterText = this.getFilterText(completionContext.line, tsEntry.insertText);
@@ -489,7 +489,11 @@ class MyCompletionItem extends vscode.CompletionItem {
}
}
private static getCommitCharacters(context: CompletionContext): string[] | undefined {
private static getCommitCharacters(context: CompletionContext, entry: Proto.CompletionEntry): string[] | undefined {
if (entry.kind === PConst.Kind.warning) { // Ambient JS word based suggestion
return undefined;
}
if (context.isNewIdentifierLocation || !context.isInValidCommitCharacterContext) {
return undefined;
}