@@ -699,6 +699,7 @@ namespace ts.Completions {
699699 let source = getSourceFromOrigin ( origin ) ;
700700 let sourceDisplay ;
701701 let hasAction ;
702+ let labelDetails ;
702703
703704 const typeChecker = program . getTypeChecker ( ) ;
704705 const insertQuestionDot = origin && originIsNullableMember ( origin ) ;
@@ -778,7 +779,7 @@ namespace ts.Completions {
778779 if ( ! entry ) {
779780 return undefined ;
780781 }
781- ( { insertText, isSnippet, importAdder, sourceDisplay } = entry ) ;
782+ ( { insertText, isSnippet, importAdder, labelDetails } = entry ) ;
782783 source = CompletionSource . ObjectLiteralMethodSnippet ;
783784 sortText = SortText . SortBelow ( sortText ) ;
784785 if ( importAdder . hasFixes ( ) ) {
@@ -840,6 +841,7 @@ namespace ts.Completions {
840841 insertText,
841842 replacementSpan,
842843 sourceDisplay,
844+ labelDetails,
843845 isSnippet,
844846 isPackageJsonImport : originIsPackageJsonImport ( origin ) || undefined ,
845847 isImportStatementCompletion : ! ! importCompletionNode || undefined ,
@@ -1064,7 +1066,7 @@ namespace ts.Completions {
10641066 options : CompilerOptions ,
10651067 preferences : UserPreferences ,
10661068 formatContext : formatting . FormatContext | undefined ,
1067- ) : { insertText : string , isSnippet ?: true , importAdder : codefix . ImportAdder , sourceDisplay : SymbolDisplayPart [ ] } | undefined {
1069+ ) : { insertText : string , isSnippet ?: true , importAdder : codefix . ImportAdder , labelDetails : CompletionEntryLabelDetails } | undefined {
10681070 let isSnippet : true | undefined ;
10691071 let insertText : string = name ;
10701072
@@ -1101,16 +1103,22 @@ namespace ts.Completions {
11011103 insertText = printer . printSnippetList ( ListFormat . CommaDelimited | ListFormat . AllowTrailingComma , factory . createNodeArray ( [ method ] , /*hasTrailingComma*/ true ) , sourceFile ) ;
11021104 }
11031105
1106+ const signaturePrinter = createPrinter ( {
1107+ removeComments : true ,
1108+ module : options . module ,
1109+ target : options . target ,
1110+ omitTrailingSemicolon : true ,
1111+ } ) ;
11041112 const methodSignature = factory . createMethodSignature (
11051113 method . modifiers ,
1106- method . name ,
1114+ /* name*/ "" ,
11071115 method . questionToken ,
11081116 method . typeParameters ,
11091117 method . parameters ,
11101118 method . type ) ;
1111- const sourceDisplay = nodeToDisplayParts ( methodSignature , enclosingDeclaration ) ;
1119+ const labelDetails = { detail : signaturePrinter . printNode ( EmitHint . Unspecified , methodSignature , sourceFile ) } ;
11121120
1113- return { isSnippet, insertText, importAdder, sourceDisplay } ;
1121+ return { isSnippet, insertText, importAdder, labelDetails } ;
11141122
11151123 } ;
11161124
0 commit comments