@@ -21,17 +21,17 @@ class ProvidePlugin {
2121 } ) => {
2222 compilation . dependencyFactories . set ( ConstDependency , new NullFactory ( ) ) ;
2323 compilation . dependencyTemplates . set ( ConstDependency , new ConstDependency . Template ( ) ) ;
24- normalModuleFactory . plugin ( [ "parser javascript/auto" , "parser javascript/dynamic" , "parser javascript/esm" ] , ( parser , parserOptions ) => {
24+ const handler = ( parser , parserOptions ) => {
2525 Object . keys ( definitions ) . forEach ( name => {
2626 var request = [ ] . concat ( definitions [ name ] ) ;
2727 var splittedName = name . split ( "." ) ;
2828 if ( splittedName . length > 0 ) {
2929 splittedName . slice ( 1 ) . forEach ( ( _ , i ) => {
3030 const name = splittedName . slice ( 0 , i + 1 ) . join ( "." ) ;
31- parser . plugin ( `can-rename ${ name } ` , ParserHelpers . approve ) ;
31+ parser . hooks . canRename . for ( name ) . tap ( "ProvidePlugin" , ParserHelpers . approve ) ;
3232 } ) ;
3333 }
34- parser . plugin ( ` expression ${ name } ` , expr => {
34+ parser . hooks . expression . for ( name ) . tap ( "ProvidePlugin" , expr => {
3535 let nameIdentifier = name ;
3636 const scopedName = name . indexOf ( "." ) >= 0 ;
3737 let expression = `require(${ JSON . stringify ( request [ 0 ] ) } )` ;
@@ -50,7 +50,10 @@ class ProvidePlugin {
5050 return true ;
5151 } ) ;
5252 } ) ;
53- } ) ;
53+ } ;
54+ normalModuleFactory . hooks . parser . for ( "javascript/auto" ) . tap ( "ProvidePlugin" , handler ) ;
55+ normalModuleFactory . hooks . parser . for ( "javascript/dynamic" ) . tap ( "ProvidePlugin" , handler ) ;
56+ normalModuleFactory . hooks . parser . for ( "javascript/esm" ) . tap ( "ProvidePlugin" , handler ) ;
5457 } ) ;
5558 }
5659}
0 commit comments