@@ -87,6 +87,27 @@ function _replaceBootstrap(plugin: AotPlugin, refactor: TypeScriptFileRefactor)
87
87
refactor . insertImport ( entryModule . className + 'NgFactory' , ngFactoryPath ) ;
88
88
}
89
89
90
+ export function removeModuleIdOnlyForTesting ( refactor : TypeScriptFileRefactor ) {
91
+ _removeModuleId ( refactor ) ;
92
+ }
93
+
94
+ function _removeModuleId ( refactor : TypeScriptFileRefactor ) {
95
+ const sourceFile = refactor . sourceFile ;
96
+
97
+ refactor . findAstNodes ( sourceFile , ts . SyntaxKind . ObjectLiteralExpression , true )
98
+ // Get all their property assignments.
99
+ . filter ( ( node : ts . ObjectLiteralExpression ) =>
100
+ node . properties . some ( prop => prop . name . getText ( ) == 'moduleId' ) )
101
+ . forEach ( ( node : ts . ObjectLiteralExpression ) => {
102
+ const moduleIdProp = node . properties . filter ( ( prop : ts . ObjectLiteralElement , idx : number ) => {
103
+ return prop . name . getText ( ) == 'moduleId' ;
104
+ } ) [ 0 ] ;
105
+ // get the trailing comma
106
+ const moduleIdCommaProp = moduleIdProp . parent . getChildAt ( 1 ) . getChildren ( ) [ 1 ] ;
107
+ refactor . removeNodes ( moduleIdProp , moduleIdCommaProp ) ;
108
+ } ) ;
109
+ }
110
+
90
111
function _replaceResources ( refactor : TypeScriptFileRefactor ) : void {
91
112
const sourceFile = refactor . sourceFile ;
92
113
@@ -163,7 +184,9 @@ export function ngcLoader(source: string) {
163
184
. then ( ( ) => _removeDecorators ( refactor ) )
164
185
. then ( ( ) => _replaceBootstrap ( plugin , refactor ) ) ;
165
186
} else {
166
- return _replaceResources ( refactor ) ;
187
+ return Promise . resolve ( )
188
+ . then ( ( ) => _replaceResources ( refactor ) )
189
+ . then ( ( ) => _removeModuleId ( refactor ) ) ;
167
190
}
168
191
} )
169
192
. then ( ( ) => {
0 commit comments