| 
									
										
										
										
											2013-07-11 05:20:07 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 	MIT License http://www.opensource.org/licenses/mit-license.php
 | 
					
						
							|  |  |  | 	Author Tobias Koppers @sokra | 
					
						
							|  |  |  | */ | 
					
						
							| 
									
										
										
										
											2017-01-02 07:52:40 +08:00
										 |  |  | "use strict"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const Compiler = require("./Compiler"); | 
					
						
							|  |  |  | const WebEnvironmentPlugin = require("./web/WebEnvironmentPlugin"); | 
					
						
							|  |  |  | const WebpackOptionsApply = require("./WebpackOptionsApply"); | 
					
						
							|  |  |  | const WebpackOptionsDefaulter = require("./WebpackOptionsDefaulter"); | 
					
						
							| 
									
										
										
										
											2013-07-11 05:20:07 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | function webpack(options, callback) { | 
					
						
							|  |  |  | 	new WebpackOptionsDefaulter().process(options); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-01-02 07:52:40 +08:00
										 |  |  | 	const compiler = new Compiler(); | 
					
						
							| 
									
										
										
										
											2013-07-11 05:20:07 +08:00
										 |  |  | 	compiler.options = options; | 
					
						
							|  |  |  | 	compiler.options = new WebpackOptionsApply().process(options, compiler); | 
					
						
							|  |  |  | 	new WebEnvironmentPlugin(options.inputFileSystem, options.outputFileSystem).apply(compiler); | 
					
						
							| 
									
										
										
										
											2015-07-16 06:19:23 +08:00
										 |  |  | 	if(callback) { | 
					
						
							| 
									
										
										
										
											2013-07-11 05:20:07 +08:00
										 |  |  | 		compiler.run(callback); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 	return compiler; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | module.exports = webpack; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | webpack.WebpackOptionsDefaulter = WebpackOptionsDefaulter; | 
					
						
							|  |  |  | webpack.WebpackOptionsApply = WebpackOptionsApply; | 
					
						
							|  |  |  | webpack.Compiler = Compiler; | 
					
						
							|  |  |  | webpack.WebEnvironmentPlugin = WebEnvironmentPlugin; |