@@ -7,6 +7,10 @@ namespace ts {
7
7
return isExternalModule ( sourceFile ) || isDeclarationFile ( sourceFile ) ;
8
8
}
9
9
10
+ export function getModuleName ( host : EmitHost , file : SourceFile ) : string {
11
+ return file . moduleName || getExternalModuleNameFromPath ( host , file . fileName ) ;
12
+ }
13
+
10
14
type DependencyGroup = Array < ImportDeclaration | ImportEqualsDeclaration | ExportDeclaration > ;
11
15
12
16
let entities : Map < number > = {
@@ -578,12 +582,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
578
582
forEach ( host . getSourceFiles ( ) , emitEmitHelpers ) ;
579
583
}
580
584
forEach ( host . getSourceFiles ( ) , sourceFile => {
581
- if ( ! isExternalModuleOrDeclarationFile ( sourceFile ) ) {
585
+ if ( ( ! isExternalModuleOrDeclarationFile ( sourceFile ) ) || ( modulekind && isExternalModule ( sourceFile ) ) ) {
582
586
emitSourceFile ( sourceFile ) ;
583
587
}
584
- else if ( modulekind && isExternalModule ( sourceFile ) ) {
585
- emitConcatenatedModule ( sourceFile ) ;
586
- }
587
588
} ) ;
588
589
}
589
590
@@ -597,14 +598,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
597
598
emit ( sourceFile ) ;
598
599
}
599
600
600
- function emitConcatenatedModule ( sourceFile : SourceFile ) : void {
601
- currentSourceFile = sourceFile ;
602
- exportFunctionForFile = undefined ;
603
- let canonicalName = getExternalModuleNameFromPath ( host , sourceFile . fileName ) ;
604
- sourceFile . moduleName = sourceFile . moduleName || canonicalName ;
605
- emit ( sourceFile ) ;
606
- }
607
-
608
601
function isUniqueName ( name : string ) : boolean {
609
602
return ! resolver . hasGlobalName ( name ) &&
610
603
! hasProperty ( currentSourceFile . identifiers , name ) &&
@@ -7282,6 +7275,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
7282
7275
write ( "}" ) ; // execute
7283
7276
}
7284
7277
7278
+ function writeModuleName ( node : SourceFile , resolveModuleNames ?: boolean ) : void {
7279
+ let moduleName = node . moduleName ;
7280
+ if ( moduleName || ( resolveModuleNames && ( moduleName = getModuleName ( host , node ) ) ) ) {
7281
+ write ( `"${ moduleName } ", ` ) ;
7282
+ }
7283
+ }
7284
+
7285
7285
function emitSystemModule ( node : SourceFile , resolveModuleNames ?: boolean ) : void {
7286
7286
collectExternalModuleInfo ( node ) ;
7287
7287
// System modules has the following shape
@@ -7297,9 +7297,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
7297
7297
exportFunctionForFile = makeUniqueName ( "exports" ) ;
7298
7298
writeLine ( ) ;
7299
7299
write ( "System.register(" ) ;
7300
- if ( node . moduleName ) {
7301
- write ( `"${ node . moduleName } ", ` ) ;
7302
- }
7300
+ writeModuleName ( node , resolveModuleNames ) ;
7303
7301
write ( "[" ) ;
7304
7302
7305
7303
let groupIndices : Map < number > = { } ;
@@ -7459,9 +7457,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
7459
7457
7460
7458
writeLine ( ) ;
7461
7459
write ( "define(" ) ;
7462
- if ( node . moduleName ) {
7463
- write ( "\"" + node . moduleName + "\", " ) ;
7464
- }
7460
+ writeModuleName ( node , resolveModuleNames ) ;
7465
7461
emitAMDDependencies ( node , /*includeNonAmdDependencies*/ true , resolveModuleNames ) ;
7466
7462
increaseIndent ( ) ;
7467
7463
let startIndex = emitDirectivePrologues ( node . statements , /*startWithNewLine*/ true ) ;
0 commit comments