@@ -16,20 +16,29 @@ import { getWrapEnumsTransformer, testWrapEnums } from '../transforms/wrap-enums
16
16
17
17
18
18
const whitelistedAngularModules = [
19
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) a n i m a t i o n s ( \\ | \/ ) / ,
20
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) c o m m o n ( \\ | \/ ) / ,
21
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) c o m p i l e r ( \\ | \/ ) / ,
22
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) c o r e ( \\ | \/ ) / ,
23
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) f o r m s ( \\ | \/ ) / ,
24
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) h t t p ( \\ | \/ ) / ,
25
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) p l a t f o r m - b r o w s e r - d y n a m i c ( \\ | \/ ) / ,
26
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) p l a t f o r m - b r o w s e r ( \\ | \/ ) / ,
27
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) p l a t f o r m - w e b w o r k e r - d y n a m i c ( \\ | \/ ) / ,
28
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) p l a t f o r m - w e b w o r k e r ( \\ | \/ ) / ,
29
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) r o u t e r ( \\ | \/ ) / ,
30
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) u p g r a d e ( \\ | \/ ) / ,
31
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) m a t e r i a l ( \\ | \/ ) / ,
32
- / ( \\ | \/ ) n o d e _ m o d u l e s ( \\ | \/ ) @ a n g u l a r ( \\ | \/ ) c d k ( \\ | \/ ) / ,
19
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] a n i m a t i o n s [ \\ \/ ] / ,
20
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] c o m m o n [ \\ \/ ] / ,
21
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] c o m p i l e r [ \\ \/ ] / ,
22
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] c o r e [ \\ \/ ] / ,
23
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] f o r m s [ \\ \/ ] / ,
24
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] h t t p [ \\ \/ ] / ,
25
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] p l a t f o r m - b r o w s e r - d y n a m i c [ \\ \/ ] / ,
26
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] p l a t f o r m - b r o w s e r [ \\ \/ ] / ,
27
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] p l a t f o r m - w e b w o r k e r - d y n a m i c [ \\ \/ ] / ,
28
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] p l a t f o r m - w e b w o r k e r [ \\ \/ ] / ,
29
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] r o u t e r [ \\ \/ ] / ,
30
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] u p g r a d e [ \\ \/ ] / ,
31
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] m a t e r i a l [ \\ \/ ] / ,
32
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] c d k [ \\ \/ ] / ,
33
+ ] ;
34
+
35
+ const es5AngularModules = [
36
+ // Angular 4 packaging format has .es5.js as the extension.
37
+ / .e s 5 .j s $ / , // Angular 4
38
+ // Angular 5 has esm5 folders.
39
+ / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] @ a n g u l a r [ \\ \/ ] [ ^ \\ / ] [ \\ \/ ] e s m 5 [ \\ \/ ] / ,
40
+ // All Angular versions have UMD with es5.
41
+ / .u m d .j s $ / ,
33
42
] ;
34
43
35
44
export interface BuildOptimizerOptions {
@@ -70,9 +79,10 @@ export function buildOptimizer(options: BuildOptimizerOptions): TransformJavascr
70
79
71
80
if ( inputFilePath
72
81
&& whitelistedAngularModules . some ( ( re ) => re . test ( inputFilePath ) )
82
+ && es5AngularModules . some ( ( re ) => re . test ( inputFilePath ) )
73
83
) {
74
84
getTransforms . push (
75
- // getPrefixFunctionsTransformer is rather dangerous, apply only to known pure modules.
85
+ // getPrefixFunctionsTransformer is rather dangerous, apply only to known pure es5 modules.
76
86
// It will mark both `require()` calls and `console.log(stuff)` as pure.
77
87
// We only apply it to whitelisted modules, since we know they are safe.
78
88
// getPrefixFunctionsTransformer needs to be before getFoldFileTransformer.
0 commit comments