123456789101112131415161718192021222324252627282930313233 |
- const webpack = require('webpack');
- const debug = require('debug')('app:build:webpack-compiler');
- function webpackCompiler(webpackConfig) {
- return new Promise((resolve, reject) => {
- const compiler = webpack(webpackConfig);
- compiler.run((err, stats) => {
- if (err) {
- debug('Webpack compiler encountered a fatal error.', err);
- return reject(err);
- }
- const jsonStats = stats.toJson();
- debug('Webpack compile completed.');
- if (jsonStats.errors.length > 0) {
- debug('Webpack compiler encountered errors.');
- debug(jsonStats.errors.join('\n'));
- return reject(new Error('Webpack compiler encountered errors'));
- }
- if (jsonStats.warnings.length > 0) {
- debug('Webpack compiler encountered warnings.');
- debug(jsonStats.warnings.join('\n'));
- } else {
- debug('No errors or warnings encountered.');
- }
- return resolve(jsonStats);
- });
- });
- }
- module.exports = webpackCompiler;
|