@@ -262,7 +262,7 @@ namespace ts.codefix {
262262 }
263263
264264 const defaultInfo = getDefaultLikeExportInfo ( importingFile , moduleSymbol , checker , compilerOptions ) ;
265- if ( defaultInfo && ( defaultInfo . name === symbolName || moduleSymbolToValidIdentifier ( moduleSymbol , compilerOptions . target ) === symbolName ) && skipAlias ( defaultInfo . symbol , checker ) === exportedSymbol ) {
265+ if ( defaultInfo && getNameForExportedSymbol ( defaultInfo . symbol , compilerOptions . target ) === symbolName && skipAlias ( defaultInfo . symbol , checker ) === exportedSymbol ) {
266266 result . push ( { moduleSymbol, importKind : defaultInfo . kind , exportedSymbolIsTypeOnly : isTypeOnlySymbol ( defaultInfo . symbol , checker ) } ) ;
267267 }
268268
@@ -581,7 +581,7 @@ namespace ts.codefix {
581581
582582 const compilerOptions = program . getCompilerOptions ( ) ;
583583 const defaultInfo = getDefaultLikeExportInfo ( sourceFile , moduleSymbol , checker , compilerOptions ) ;
584- if ( defaultInfo && ( defaultInfo . name === symbolName || moduleSymbolToValidIdentifier ( moduleSymbol , compilerOptions . target ) === symbolName ) && symbolHasMeaning ( defaultInfo . symbolForMeaning , currentTokenMeaning ) ) {
584+ if ( defaultInfo && getNameForExportedSymbol ( defaultInfo . symbol , compilerOptions . target ) === symbolName && symbolHasMeaning ( defaultInfo . symbolForMeaning , currentTokenMeaning ) ) {
585585 addSymbol ( moduleSymbol , defaultInfo . symbol , defaultInfo . kind , checker ) ;
586586 }
587587
@@ -636,7 +636,7 @@ namespace ts.codefix {
636636 return allowSyntheticDefaults ? ImportKind . Default : ImportKind . CommonJS ;
637637 }
638638
639- function getDefaultExportInfoWorker ( defaultExport : Symbol , moduleSymbol : Symbol , checker : TypeChecker , compilerOptions : CompilerOptions ) : { readonly symbolForMeaning : Symbol , readonly name : string } | undefined {
639+ function getDefaultExportInfoWorker ( defaultExport : Symbol , _moduleSymbol : Symbol , checker : TypeChecker , compilerOptions : CompilerOptions ) : { readonly symbolForMeaning : Symbol , readonly name : string } | undefined {
640640 const localSymbol = getLocalSymbolForExportDefault ( defaultExport ) ;
641641 if ( localSymbol ) return { symbolForMeaning : localSymbol , name : localSymbol . name } ;
642642
@@ -658,15 +658,13 @@ namespace ts.codefix {
658658 defaultExport . escapedName !== InternalSymbolName . ExportEquals ) {
659659 return { symbolForMeaning : defaultExport , name : defaultExport . getName ( ) } ;
660660 }
661- return { symbolForMeaning : defaultExport , name : moduleSymbolToValidIdentifier ( moduleSymbol , compilerOptions . target ) } ;
661+ return { symbolForMeaning : defaultExport , name : getNameForExportedSymbol ( defaultExport , compilerOptions . target ) } ;
662662 }
663663
664664 function getNameForExportDefault ( symbol : Symbol ) : string | undefined {
665665 return symbol . declarations && firstDefined ( symbol . declarations , declaration => {
666666 if ( isExportAssignment ( declaration ) ) {
667- if ( isIdentifier ( declaration . expression ) ) {
668- return declaration . expression . text ;
669- }
667+ return tryCast ( skipOuterExpressions ( declaration . expression ) , isIdentifier ) ?. text ;
670668 }
671669 else if ( isExportSpecifier ( declaration ) ) {
672670 Debug . assert ( declaration . name . text === InternalSymbolName . Default , "Expected the specifier to be a default export" ) ;
0 commit comments