From 40c0f939e543a90e69eae60b4eaef8fa23f25fdb Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Thu, 4 Jan 2024 06:40:11 +0800 Subject: [PATCH] Fix optionalReplacementSpan not being applied to completion entries (#200945) * Fix optionalReplacementSpan not being applied to completion entries * Format completions.ts --- .../src/languageFeatures/completions.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/extensions/typescript-language-features/src/languageFeatures/completions.ts b/extensions/typescript-language-features/src/languageFeatures/completions.ts index b97c9b8b3fb..943a2437449 100644 --- a/extensions/typescript-language-features/src/languageFeatures/completions.ts +++ b/extensions/typescript-language-features/src/languageFeatures/completions.ts @@ -760,6 +760,12 @@ class TypeScriptCompletionItemProvider implements vscode.CompletionItemProvider< isIncomplete = !!response.body.isIncomplete || (response as any).metadata && (response as any).metadata.isIncomplete; entries = response.body.entries; metadata = response.metadata; + + if (response.body.optionalReplacementSpan) { + for (const entry of entries) { + entry.replacementSpan ??= response.body.optionalReplacementSpan; + } + } } else { const response = await this.client.interruptGetErr(() => this.client.execute('completions', args, token)); if (response.type !== 'response' || !response.body) {