Skip to content

Commit ab8ed4b

Browse files
authored
Fallback to use insert text when label is falsy (microsoft#184944)
For #184812
1 parent 23fe766 commit ab8ed4b

File tree

1 file changed

+5
-4
lines changed
  • extensions/typescript-language-features/src/languageFeatures

1 file changed

+5
-4
lines changed

extensions/typescript-language-features/src/languageFeatures/completions.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,8 @@ class MyCompletionItem extends vscode.CompletionItem {
5858
public readonly metadata: any | undefined,
5959
client: ITypeScriptServiceClient,
6060
) {
61-
super(tsEntry.name, MyCompletionItem.convertKind(tsEntry.kind));
61+
const label = tsEntry.name || (tsEntry.insertText ?? '');
62+
super(label, MyCompletionItem.convertKind(tsEntry.kind));
6263

6364
if (tsEntry.source && tsEntry.hasAction && client.apiVersion.lt(API.v490)) {
6465
// De-prioritze auto-imports
@@ -72,18 +73,18 @@ class MyCompletionItem extends vscode.CompletionItem {
7273
// Render "fancy" when source is a workspace path
7374
const qualifierCandidate = vscode.workspace.asRelativePath(tsEntry.source);
7475
if (qualifierCandidate !== tsEntry.source) {
75-
this.label = { label: tsEntry.name, description: qualifierCandidate };
76+
this.label = { label, description: qualifierCandidate };
7677
}
7778

7879
}
7980

8081
const { sourceDisplay, isSnippet } = tsEntry;
8182
if (sourceDisplay) {
82-
this.label = { label: tsEntry.name, description: Previewer.asPlainTextWithLinks(sourceDisplay, client) };
83+
this.label = { label, description: Previewer.asPlainTextWithLinks(sourceDisplay, client) };
8384
}
8485

8586
if (tsEntry.labelDetails) {
86-
this.label = { label: tsEntry.name, ...tsEntry.labelDetails };
87+
this.label = { label, ...tsEntry.labelDetails };
8788
}
8889

8990
this.preselect = tsEntry.isRecommended;

0 commit comments

Comments
 (0)