44 append ,
55 arrayIsEqualTo ,
66 CancellationToken ,
7- CompilerOptions ,
87 consumesNodeCoreModules ,
98 createMultiMap ,
109 Debug ,
@@ -18,9 +17,7 @@ import {
1817 GetCanonicalFileName ,
1918 getDefaultLikeExportNameFromDeclaration ,
2019 getDirectoryPath ,
21- getEmitScriptTarget ,
2220 getLocalSymbolForExportDefault ,
23- getNamesForExportedSymbol ,
2421 getNodeModulePathParts ,
2522 getPackageNameFromTypesPackageName ,
2623 getRegexFromPattern ,
@@ -46,6 +43,7 @@ import {
4643 Path ,
4744 pathContainsNodeModules ,
4845 Program ,
46+ ScriptTarget ,
4947 skipAlias ,
5048 SourceFile ,
5149 startsWith ,
@@ -198,7 +196,7 @@ export function createCacheableExportInfoMap(host: CacheableExportInfoMapHost):
198196 // get a better name.
199197 const names = exportKind === ExportKind . Named || isExternalModuleSymbol ( namedSymbol )
200198 ? unescapeLeadingUnderscores ( symbolTableKey )
201- : getNamesForExportedSymbol ( namedSymbol , /*scriptTarget*/ undefined ) ;
199+ : getNamesForExportedSymbol ( namedSymbol , checker , /*scriptTarget*/ undefined ) ;
202200
203201 const symbolName = typeof names === "string" ? names : names [ 0 ] ;
204202 const capitalizedSymbolName = typeof names === "string" ? undefined : names [ 1 ] ;
@@ -558,12 +556,21 @@ function isImportableSymbol(symbol: Symbol, checker: TypeChecker) {
558556 return ! checker . isUndefinedSymbol ( symbol ) && ! checker . isUnknownSymbol ( symbol ) && ! isKnownSymbol ( symbol ) && ! isPrivateIdentifierSymbol ( symbol ) ;
559557}
560558
559+ function getNamesForExportedSymbol ( defaultExport : Symbol , checker : TypeChecker , scriptTarget : ScriptTarget | undefined ) {
560+ let names : string | string [ ] | undefined ;
561+ forEachNameOfDefaultExport ( defaultExport , checker , scriptTarget , ( name , capitalizedName ) => {
562+ names = capitalizedName ? [ name , capitalizedName ] : name ;
563+ return true ;
564+ } ) ;
565+ return Debug . checkDefined ( names ) ;
566+ }
567+
561568/**
562569 * @internal
563570 * May call `cb` multiple times with the same name.
564571 * Terminates when `cb` returns a truthy value.
565572 */
566- export function forEachNameOfDefaultExport < T > ( defaultExport : Symbol , checker : TypeChecker , compilerOptions : CompilerOptions , preferCapitalizedNames : boolean , cb : ( name : string ) => T | undefined ) : T | undefined {
573+ export function forEachNameOfDefaultExport < T > ( defaultExport : Symbol , checker : TypeChecker , scriptTarget : ScriptTarget | undefined , cb : ( name : string , capitalizedName ? : string ) => T | undefined ) : T | undefined {
567574 let chain : Symbol [ ] | undefined ;
568575 let current : Symbol | undefined = defaultExport ;
569576
@@ -588,7 +595,10 @@ export function forEachNameOfDefaultExport<T>(defaultExport: Symbol, checker: Ty
588595
589596 for ( const symbol of chain ?? emptyArray ) {
590597 if ( symbol . parent && isExternalModuleSymbol ( symbol . parent ) ) {
591- const final = cb ( moduleSymbolToValidIdentifier ( symbol . parent , getEmitScriptTarget ( compilerOptions ) , preferCapitalizedNames ) ) ;
598+ const final = cb (
599+ moduleSymbolToValidIdentifier ( symbol . parent , scriptTarget , /*forceCapitalize*/ false ) ,
600+ moduleSymbolToValidIdentifier ( symbol . parent , scriptTarget , /*forceCapitalize*/ true ) ,
601+ ) ;
592602 if ( final ) return final ;
593603 }
594604 }
0 commit comments