31 lines
		
	
	
		
			939 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			939 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/*
 | 
						|
	MIT License http://www.opensource.org/licenses/mit-license.php
 | 
						|
	Author Tobias Koppers @sokra
 | 
						|
*/
 | 
						|
 | 
						|
"use strict";
 | 
						|
 | 
						|
const DelegatedModuleFactoryPlugin = require("./DelegatedModuleFactoryPlugin");
 | 
						|
const DelegatedSourceDependency = require("./dependencies/DelegatedSourceDependency");
 | 
						|
const DelegatedExportsDependency = require("./dependencies/DelegatedExportsDependency");
 | 
						|
const NullFactory = require("./NullFactory");
 | 
						|
 | 
						|
class DelegatedPlugin {
 | 
						|
	constructor(options) {
 | 
						|
		this.options = options;
 | 
						|
	}
 | 
						|
 | 
						|
	apply(compiler) {
 | 
						|
		compiler.plugin("compilation", (compilation, params) => {
 | 
						|
			compilation.dependencyFactories.set(DelegatedSourceDependency, params.normalModuleFactory);
 | 
						|
			compilation.dependencyFactories.set(DelegatedExportsDependency, new NullFactory());
 | 
						|
		});
 | 
						|
 | 
						|
		compiler.plugin("compile", (params) => {
 | 
						|
			params.normalModuleFactory.apply(new DelegatedModuleFactoryPlugin(this.options));
 | 
						|
		});
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
module.exports = DelegatedPlugin;
 |