@@ -674,8 +674,7 @@ namespace ts {
674
674
sourceFileToPackageName,
675
675
redirectTargetsSet,
676
676
isEmittedFile,
677
- getConfigFileParsingDiagnostics,
678
- resolveModuleName : resolveModuleNamesWorker
677
+ getConfigFileParsingDiagnostics
679
678
} ;
680
679
681
680
verifyCompilerOptions ( ) ;
@@ -749,7 +748,7 @@ namespace ts {
749
748
const result : ResolvedModuleFull [ ] = [ ] ;
750
749
for ( const moduleName of moduleNames ) {
751
750
const resolvedModule = file . resolvedModules . get ( moduleName ) ;
752
- result . push ( getResolvedModuleFromState ( resolvedModule ) ) ;
751
+ result . push ( resolvedModule ) ;
753
752
}
754
753
return result ;
755
754
}
@@ -778,7 +777,7 @@ namespace ts {
778
777
const moduleName = moduleNames [ i ] ;
779
778
// If the source file is unchanged and doesnt have invalidated resolution, reuse the module resolutions
780
779
if ( file === oldSourceFile && ! hasInvalidatedResolution ( oldSourceFile . path ) ) {
781
- const oldResolvedModule = getResolvedModuleFromState ( oldSourceFile && oldSourceFile . resolvedModules . get ( moduleName ) ) ;
780
+ const oldResolvedModule = oldSourceFile && oldSourceFile . resolvedModules . get ( moduleName ) ;
782
781
if ( oldResolvedModule ) {
783
782
if ( isTraceEnabled ( options , host ) ) {
784
783
trace ( host , Diagnostics . Reusing_resolution_of_module_0_to_file_1_from_old_program , moduleName , containingFile ) ;
@@ -844,7 +843,7 @@ namespace ts {
844
843
// If we change our policy of rechecking failed lookups on each program create,
845
844
// we should adjust the value returned here.
846
845
function moduleNameResolvesToAmbientModuleInNonModifiedFile ( moduleName : string , oldProgramState : OldProgramState ) : boolean {
847
- const resolutionToFile = getResolvedModuleFromState ( getResolvedModule ( oldProgramState . oldSourceFile , moduleName ) ) ;
846
+ const resolutionToFile = getResolvedModule ( oldProgramState . oldSourceFile , moduleName ) ;
848
847
const resolvedFile = resolutionToFile && oldProgramState . program && oldProgramState . program . getSourceFile ( resolutionToFile . resolvedFileName ) ;
849
848
if ( resolutionToFile && resolvedFile && ! resolvedFile . externalModuleIndicator ) {
850
849
// In the old program, we resolved to an ambient module that was in the same
@@ -1027,10 +1026,10 @@ namespace ts {
1027
1026
const oldProgramState : OldProgramState = { program : oldProgram , oldSourceFile, modifiedFilePaths } ;
1028
1027
const resolutions = resolveModuleNamesReusingOldState ( moduleNames , newSourceFilePath , newSourceFile , oldProgramState ) ;
1029
1028
// ensure that module resolution results are still correct
1030
- const resolutionsChanged = hasChangesInResolutions ( moduleNames , resolutions , oldSourceFile . resolvedModules , moduleResolutionIsEqualTo , getResolvedModuleFromState ) ;
1029
+ const resolutionsChanged = hasChangesInResolutions ( moduleNames , resolutions , oldSourceFile . resolvedModules , moduleResolutionIsEqualTo ) ;
1031
1030
if ( resolutionsChanged ) {
1032
1031
oldProgram . structureIsReused = StructureIsReused . SafeModules ;
1033
- newSourceFile . resolvedModules = zipToMap ( moduleNames , map ( resolutions , r => ( { tag : "success" as "success" , data : r } ) ) ) ;
1032
+ newSourceFile . resolvedModules = zipToMap ( moduleNames , resolutions ) ;
1034
1033
}
1035
1034
else {
1036
1035
newSourceFile . resolvedModules = oldSourceFile . resolvedModules ;
@@ -1688,12 +1687,19 @@ namespace ts {
1688
1687
imports = append ( imports , node . arguments [ 0 ] as StringLiteralLike ) ;
1689
1688
}
1690
1689
else if ( isLiteralImportTypeNode ( node ) ) {
1691
- ( imports || ( imports = [ ] ) ) . push ( node . argument . literal ) ;
1690
+ imports = append ( imports , node . argument . literal ) ;
1692
1691
}
1693
1692
else {
1694
- forEachChild ( node , collectDynamicImportOrRequireCalls ) ;
1693
+ collectDynamicImportOrRequireCallsForEachChild ( node ) ;
1694
+ if ( hasJSDocNodes ( node ) ) {
1695
+ forEach ( node . jsDoc , collectDynamicImportOrRequireCallsForEachChild ) ;
1696
+ }
1695
1697
}
1696
1698
}
1699
+
1700
+ function collectDynamicImportOrRequireCallsForEachChild ( node : Node ) {
1701
+ forEachChild ( node , collectDynamicImportOrRequireCalls ) ;
1702
+ }
1697
1703
}
1698
1704
1699
1705
/** This should have similar behavior to 'processSourceFile' without diagnostics or mutation. */
0 commit comments