@@ -185,20 +185,20 @@ namespace ts.codefix {
185
185
186
186
const defaultInfo = getDefaultLikeExportInfo ( moduleSymbol , checker , compilerOptions ) ;
187
187
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 ) } ) ;
189
189
}
190
190
191
191
for ( const exported of checker . getExportsOfModule ( moduleSymbol ) ) {
192
192
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 ) } ) ;
194
194
}
195
195
}
196
196
} ) ;
197
197
return result ;
198
198
}
199
199
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 ) ;
202
202
}
203
203
204
204
function getFixForImport (
@@ -398,7 +398,7 @@ namespace ts.codefix {
398
398
// Maps symbol id to info for modules providing that symbol (original export + re-exports).
399
399
const originalSymbolToExportInfos = createMultiMap < SymbolExportInfo > ( ) ;
400
400
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 ) } ) ;
402
402
}
403
403
forEachExternalModuleToImportFrom ( checker , sourceFile , program . getSourceFiles ( ) , moduleSymbol => {
404
404
cancellationToken . throwIfCancellationRequested ( ) ;
@@ -424,7 +424,7 @@ namespace ts.codefix {
424
424
if ( ! exported ) return undefined ;
425
425
const { symbol, kind } = exported ;
426
426
const info = getDefaultExportInfoWorker ( symbol , moduleSymbol , checker , compilerOptions ) ;
427
- return info && { symbol, symbolForMeaning : info . symbolForMeaning , name : info . name , kind } ;
427
+ return info && { symbol, kind , ... info } ;
428
428
}
429
429
430
430
function getDefaultLikeExportWorker ( moduleSymbol : Symbol , checker : TypeChecker ) : { readonly symbol : Symbol , readonly kind : ImportKind . Default | ImportKind . Equals } | undefined {
0 commit comments