@@ -185,20 +185,20 @@ namespace ts.codefix {
185185
186186 const defaultInfo = getDefaultLikeExportInfo ( moduleSymbol , checker , compilerOptions ) ;
187187 if ( defaultInfo && defaultInfo . name === symbolName && skipAlias ( defaultInfo . symbol , checker ) === exportedSymbol ) {
188- result . push ( { moduleSymbol, importKind : defaultInfo . kind , exportedSymbolIsTypeOnly : isTypeOnlySymbol ( defaultInfo . symbol ) } ) ;
188+ result . push ( { moduleSymbol, importKind : defaultInfo . kind , exportedSymbolIsTypeOnly : isTypeOnlySymbol ( defaultInfo . symbol , checker ) } ) ;
189189 }
190190
191191 for ( const exported of checker . getExportsOfModule ( moduleSymbol ) ) {
192192 if ( exported . name === symbolName && skipAlias ( exported , checker ) === exportedSymbol ) {
193- result . push ( { moduleSymbol, importKind : ImportKind . Named , exportedSymbolIsTypeOnly : isTypeOnlySymbol ( exported ) } ) ;
193+ result . push ( { moduleSymbol, importKind : ImportKind . Named , exportedSymbolIsTypeOnly : isTypeOnlySymbol ( exported , checker ) } ) ;
194194 }
195195 }
196196 } ) ;
197197 return result ;
198198 }
199199
200- function isTypeOnlySymbol ( s : Symbol ) : boolean {
201- return ! ( s . flags & SymbolFlags . Value ) ;
200+ function isTypeOnlySymbol ( s : Symbol , checker : TypeChecker ) : boolean {
201+ return ! ( skipAlias ( s , checker ) . flags & SymbolFlags . Value ) ;
202202 }
203203
204204 function getFixForImport (
@@ -398,7 +398,7 @@ namespace ts.codefix {
398398 // Maps symbol id to info for modules providing that symbol (original export + re-exports).
399399 const originalSymbolToExportInfos = createMultiMap < SymbolExportInfo > ( ) ;
400400 function addSymbol ( moduleSymbol : Symbol , exportedSymbol : Symbol , importKind : ImportKind ) : void {
401- originalSymbolToExportInfos . add ( getUniqueSymbolId ( exportedSymbol , checker ) . toString ( ) , { moduleSymbol, importKind, exportedSymbolIsTypeOnly : isTypeOnlySymbol ( exportedSymbol ) } ) ;
401+ originalSymbolToExportInfos . add ( getUniqueSymbolId ( exportedSymbol , checker ) . toString ( ) , { moduleSymbol, importKind, exportedSymbolIsTypeOnly : isTypeOnlySymbol ( exportedSymbol , checker ) } ) ;
402402 }
403403 forEachExternalModuleToImportFrom ( checker , sourceFile , program . getSourceFiles ( ) , moduleSymbol => {
404404 cancellationToken . throwIfCancellationRequested ( ) ;
@@ -424,7 +424,7 @@ namespace ts.codefix {
424424 if ( ! exported ) return undefined ;
425425 const { symbol, kind } = exported ;
426426 const info = getDefaultExportInfoWorker ( symbol , moduleSymbol , checker , compilerOptions ) ;
427- return info && { symbol, symbolForMeaning : info . symbolForMeaning , name : info . name , kind } ;
427+ return info && { symbol, kind , ... info } ;
428428 }
429429
430430 function getDefaultLikeExportWorker ( moduleSymbol : Symbol , checker : TypeChecker ) : { readonly symbol : Symbol , readonly kind : ImportKind . Default | ImportKind . Equals } | undefined {
0 commit comments