@@ -22,8 +22,9 @@ export = function ({ typescript }: { typescript: typeof import('typescript/lib/t
2222 proxy [ k ] = ( ...args : Array < Record < string , unknown > > ) => x . apply ( info . languageService , args )
2323 }
2424
25- let prevCompletions : any
25+ let prevCompletionsMap : any
2626 proxy . getCompletionsAtPosition = ( fileName , position , options ) => {
27+ prevCompletionsMap = { }
2728 if ( ! _configuration ) {
2829 console . log ( 'no received configuration!' )
2930 }
@@ -105,7 +106,13 @@ export = function ({ typescript }: { typescript: typeof import('typescript/lib/t
105106 // TODO lift up!
106107 prior . entries = prior . entries . map ( entry => {
107108 if ( ! standardProps . includes ( entry . name ) ) {
108- return { ...entry , insertText : entry . insertText ?? entry . name , name : `☆${ entry . name } ` }
109+ const newName = `☆${ entry . name } `
110+ prevCompletionsMap [ newName ] = entry . name
111+ return {
112+ ...entry ,
113+ insertText : entry . insertText ?? entry . name ,
114+ name : newName ,
115+ }
109116 }
110117 return entry
111118 } )
@@ -166,7 +173,15 @@ export = function ({ typescript }: { typescript: typeof import('typescript/lib/t
166173 const program = info . languageService . getProgram ( )
167174 const sourceFile = program ?. getSourceFile ( fileName )
168175 if ( ! program || ! sourceFile ) return
169- const prior = info . languageService . getCompletionEntryDetails ( fileName , position , entryName , formatOptions , source , preferences , data )
176+ const prior = info . languageService . getCompletionEntryDetails (
177+ fileName ,
178+ position ,
179+ prevCompletionsMap [ entryName ] || entryName ,
180+ formatOptions ,
181+ source ,
182+ preferences ,
183+ data ,
184+ )
170185 if ( ! prior ) return
171186 // if (prior.kind === typescript.ScriptElementKind.constElement && prior.displayParts.map(item => item.text).join('').match(/: \(.+\) => .+/)) prior.codeActions?.push({
172187 // description: '',
0 commit comments