-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathwebpack.config.js
More file actions
52 lines (51 loc) · 1.06 KB
/
webpack.config.js
File metadata and controls
52 lines (51 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
const childProcess = require('child_process');
const webpack = require('webpack');
const env = process.env.WEBPACK_ENV || 'dev';
const name = 'reach';
const umd = {
entry: './src/index.js',
output: {
filename: `dist/${name}.min.js`,
library: name,
libraryTarget: 'umd',
umdNamedDefine: true,
},
module: {
loaders: [
{
test: /(\.jsx|\.js)$/,
loader: 'babel-loader',
exclude: /(node_modules|bower_components)/,
},
],
},
node: {
Buffer: false,
},
externals: [
{
fs: 'commonjs fs', // a is not external
https: 'commonjs https',
http: 'commonjs http',
url: 'commonjs url',
'form-data': 'commonjs form-data',
},
],
plugins: [],
};
if (env !== 'dev') {
umd.plugins.unshift(new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
},
output: {
comments: false,
},
}));
}
if (env === 'dev') {
childProcess.exec('npm run test', (error, stdout, stderr) => {
console.log(error || stdout || stderr);
});
}
module.exports = umd;