@@ -54,15 +54,16 @@ export class NgccProcessor {
5454 resolvedModule : ts . ResolvedModule | ts . ResolvedTypeReferenceDirective ,
5555 ) : void {
5656 const resolvedFileName = resolvedModule . resolvedFileName ;
57- if ( ! resolvedFileName || moduleName . startsWith ( '.' ) || this . _processedModules . has ( moduleName ) ) {
57+ if ( ! resolvedFileName || moduleName . startsWith ( '.' )
58+ || this . _processedModules . has ( resolvedFileName ) ) {
5859 // Skip when module is unknown, relative or NGCC compiler is not found or already processed.
5960 return ;
6061 }
6162
6263 const packageJsonPath = this . tryResolvePackage ( moduleName , resolvedFileName ) ;
6364 if ( ! packageJsonPath ) {
6465 // add it to processed so the second time round we skip this.
65- this . _processedModules . add ( moduleName ) ;
66+ this . _processedModules . add ( resolvedFileName ) ;
6667
6768 return ;
6869 }
@@ -73,7 +74,7 @@ export class NgccProcessor {
7374 accessSync ( packageJsonPath , constants . W_OK ) ;
7475 } catch {
7576 // add it to processed so the second time round we skip this.
76- this . _processedModules . add ( moduleName ) ;
77+ this . _processedModules . add ( resolvedFileName ) ;
7778
7879 return ;
7980 }
@@ -97,7 +98,11 @@ export class NgccProcessor {
9798 // tslint:disable-next-line:no-any
9899 ( this . inputFileSystem as any ) . purge ( packageJsonPath ) ;
99100
100- this . _processedModules . add ( moduleName ) ;
101+ this . _processedModules . add ( resolvedFileName ) ;
102+ }
103+
104+ invalidate ( fileName : string ) {
105+ this . _processedModules . delete ( fileName ) ;
101106 }
102107
103108 /**
0 commit comments