mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 09:46:22 +00:00
81 lines
1.8 KiB
JavaScript
81 lines
1.8 KiB
JavaScript
var webpack = require('webpack')
|
|
var path = require('path')
|
|
var JsonpTemplatePlugin = webpack.JsonpTemplatePlugin
|
|
var FunctionModulePlugin = require('webpack/lib/FunctionModulePlugin')
|
|
var NodeTargetPlugin = require('webpack/lib/node/NodeTargetPlugin')
|
|
|
|
var opt = {
|
|
path: path.join(__dirname, 'compiled'),
|
|
filename: '[name].js',
|
|
sourceMapFilename: '[name].map',
|
|
libraryTarget: 'commonjs2',
|
|
publicPath: 'http://localhost:8080/assets/'
|
|
}
|
|
|
|
var config = {
|
|
module: {
|
|
loaders: [
|
|
{
|
|
test: /(\.js|\.jsx)?$/,
|
|
exclude: /(node_modules|bower_components)/,
|
|
loader: 'babel'
|
|
},
|
|
{
|
|
test: /\.styl?$/,
|
|
exclude: /(node_modules|bower_components)/,
|
|
loader: 'style-loader!css-loader!stylus-loader'
|
|
}
|
|
]
|
|
},
|
|
entry: {
|
|
main: './browser/main/index.js',
|
|
finder: './browser/finder/index.js'
|
|
},
|
|
output: opt,
|
|
resolve: {
|
|
extensions: ['', '.js', '.jsx'],
|
|
packageMains: ['webpack', 'browser', 'web', 'browserify', ['jam', 'main'], 'main'],
|
|
alias: {
|
|
'boost': path.resolve(__dirname, 'lib')
|
|
}
|
|
},
|
|
plugins: [
|
|
new webpack.NoErrorsPlugin(),
|
|
new NodeTargetPlugin(),
|
|
new webpack.optimize.OccurenceOrderPlugin(),
|
|
new webpack.DefinePlugin({
|
|
'process.env': {
|
|
'NODE_ENV': JSON.stringify('production'),
|
|
'BABEL_ENV': JSON.stringify('production')
|
|
}
|
|
}),
|
|
new webpack.optimize.UglifyJsPlugin({
|
|
compressor: {
|
|
warnings: false
|
|
}
|
|
})
|
|
],
|
|
externals: [
|
|
'electron',
|
|
'socket.io-client',
|
|
'md5',
|
|
'superagent',
|
|
'superagent-promise',
|
|
'lodash',
|
|
'markdown-it',
|
|
'moment',
|
|
'highlight.js',
|
|
'markdown-it-emoji',
|
|
'fs-jetpack'
|
|
]
|
|
}
|
|
|
|
config.target = function renderer (compiler) {
|
|
compiler.apply(
|
|
new JsonpTemplatePlugin(opt),
|
|
new FunctionModulePlugin(opt)
|
|
)
|
|
}
|
|
|
|
module.exports = config
|