insomnia/webpack/webpack.config.electron.babel.js
2017-11-24 01:39:53 +00:00

43 lines
1.1 KiB
JavaScript

const webpack = require('webpack');
const path = require('path');
const productionConfig = require('./webpack.config.production.babel');
const pkg = require('../package.json');
let devtool;
let plugins;
const output = {
libraryTarget: 'commonjs2',
filename: 'main.min.js'
};
if (process.env.NODE_ENV === 'development') {
output.path = path.join(__dirname, '../app');
devtool = 'eval-source-map';
const port = pkg.dev['webpack-dev-server-port'];
plugins = [
new webpack.DefinePlugin({
'process.env.APP_RENDER_URL': JSON.stringify(`http://localhost:${port}/renderer.html`),
'process.env.NODE_ENV': JSON.stringify('development'),
'process.env.INSOMNIA_ENV': JSON.stringify('development')
})
]
} else {
output.path = path.join(__dirname, '../build');
devtool = productionConfig.devtool;
plugins = productionConfig.plugins;
}
module.exports = {
...productionConfig,
devtool: devtool,
entry: [
'./main.development.js'
],
output: output,
node: {
__dirname: false // Use node.js __dirname
},
target: 'electron-main',
plugins: plugins
};