/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ var Compiler = require("./Compiler"); var WebEnvironmentPlugin = require("./web/WebEnvironmentPlugin"); var WebpackOptionsApply = require("./WebpackOptionsApply"); var WebpackOptionsDefaulter = require("./WebpackOptionsDefaulter"); function webpack(options, callback) { new WebpackOptionsDefaulter().process(options); var compiler = new Compiler(); compiler.options = options; compiler.options = new WebpackOptionsApply().process(options, compiler); new WebEnvironmentPlugin(options.inputFileSystem, options.outputFileSystem).apply(compiler); if(callback) { compiler.run(callback); } return compiler; } module.exports = webpack; webpack.WebpackOptionsDefaulter = WebpackOptionsDefaulter; webpack.WebpackOptionsApply = WebpackOptionsApply; webpack.Compiler = Compiler; webpack.WebEnvironmentPlugin = WebEnvironmentPlugin;