2016-06-21 09:04:08 +12:00
|
|
|
|
2016-06-21 18:39:26 +12:00
|
|
|
import path from 'path'
|
2016-08-15 08:42:57 +12:00
|
|
|
import nodeExternals from 'webpack-node-externals'
|
2016-06-21 09:04:08 +12:00
|
|
|
|
2016-08-15 21:11:20 +12:00
|
|
|
let inProduction = process.env.NODE_ENV === 'production' || process.argv.indexOf('-p') !== -1
|
2016-06-21 09:04:08 +12:00
|
|
|
|
2016-08-15 08:42:57 +12:00
|
|
|
const bundleExtensionConfig = {
|
2016-06-21 18:39:26 +12:00
|
|
|
entry: {
|
2016-08-15 08:42:57 +12:00
|
|
|
eventPage: ['./src/eventPage'],
|
|
|
|
fimfic2epub: ['./src/main']
|
2016-06-21 18:39:26 +12:00
|
|
|
},
|
2016-08-15 08:42:57 +12:00
|
|
|
|
2016-06-21 18:39:26 +12:00
|
|
|
output: {
|
|
|
|
path: path.join(__dirname, '/'),
|
|
|
|
filename: './extension/[name].js'
|
|
|
|
},
|
2016-08-15 08:42:57 +12:00
|
|
|
|
2016-06-21 18:39:26 +12:00
|
|
|
module: {
|
2016-11-22 01:57:05 +13:00
|
|
|
rules: [
|
2016-06-21 18:39:26 +12:00
|
|
|
{
|
2016-08-29 22:12:04 +12:00
|
|
|
test: /\.js$/,
|
2017-04-12 08:00:45 +12:00
|
|
|
loader: 'babel-loader',
|
2016-08-29 22:12:04 +12:00
|
|
|
exclude: /node_modules/,
|
|
|
|
query: {
|
2016-08-15 21:11:20 +12:00
|
|
|
sourceMaps: true,
|
|
|
|
presets: ['es2015']
|
2016-06-21 18:39:26 +12:00
|
|
|
}
|
2016-06-21 21:32:49 +12:00
|
|
|
},
|
|
|
|
{
|
|
|
|
test: /\.styl$/,
|
2016-11-22 01:57:05 +13:00
|
|
|
use: ['raw-loader', 'stylus-loader']
|
2016-06-21 18:39:26 +12:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2016-06-21 09:04:08 +12:00
|
|
|
|
2016-06-21 18:39:26 +12:00
|
|
|
resolve: {
|
2016-11-22 01:57:05 +13:00
|
|
|
extensions: ['.js', '.json', '.styl'],
|
2016-06-23 02:30:10 +12:00
|
|
|
modules: [
|
|
|
|
path.resolve('./src'),
|
|
|
|
'node_modules'
|
2016-08-22 08:21:49 +12:00
|
|
|
],
|
|
|
|
alias: {
|
|
|
|
fs: require.resolve('./src/false.js')
|
|
|
|
}
|
2016-06-21 18:39:26 +12:00
|
|
|
},
|
2016-06-21 09:04:08 +12:00
|
|
|
|
2017-06-07 08:15:05 +12:00
|
|
|
externals: ['request'],
|
2016-08-15 08:42:57 +12:00
|
|
|
|
2016-06-21 18:39:26 +12:00
|
|
|
plugins: [],
|
2016-11-22 01:57:05 +13:00
|
|
|
devtool: 'source-map'
|
2016-08-15 08:42:57 +12:00
|
|
|
}
|
|
|
|
|
|
|
|
const bundleNpmModuleConfig = {
|
|
|
|
entry: './src/FimFic2Epub',
|
|
|
|
|
|
|
|
output: {
|
|
|
|
path: path.join(__dirname, '/'),
|
|
|
|
filename: './fimfic2epub.js',
|
|
|
|
libraryTarget: 'commonjs2'
|
|
|
|
},
|
|
|
|
|
|
|
|
target: 'node',
|
|
|
|
|
|
|
|
module: {
|
2016-11-22 01:57:05 +13:00
|
|
|
rules: [
|
2016-08-15 08:42:57 +12:00
|
|
|
{
|
2016-08-29 22:12:04 +12:00
|
|
|
test: /\.js$/,
|
2017-04-12 08:00:45 +12:00
|
|
|
loader: 'babel-loader',
|
2016-08-29 22:12:04 +12:00
|
|
|
exclude: /node_modules/,
|
|
|
|
query: {
|
2016-08-15 21:11:20 +12:00
|
|
|
sourceMaps: !inProduction,
|
|
|
|
presets: ['es2015']
|
2016-08-15 08:42:57 +12:00
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
test: /\.styl$/,
|
2016-11-22 01:57:05 +13:00
|
|
|
use: ['raw-loader', 'stylus-loader']
|
2016-08-15 08:42:57 +12:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2016-06-21 09:04:08 +12:00
|
|
|
|
2016-08-15 08:42:57 +12:00
|
|
|
resolve: {
|
2016-11-22 01:57:05 +13:00
|
|
|
extensions: ['.js', '.json', '.styl'],
|
2016-08-15 08:42:57 +12:00
|
|
|
modules: [
|
|
|
|
path.resolve('./src'),
|
|
|
|
'node_modules'
|
|
|
|
]
|
|
|
|
},
|
|
|
|
|
2017-06-07 08:15:05 +12:00
|
|
|
externals: [nodeExternals({whitelist: ['es6-event-emitter', /^babel-runtime/]})],
|
2016-08-15 08:42:57 +12:00
|
|
|
|
|
|
|
plugins: [],
|
2016-11-22 01:57:05 +13:00
|
|
|
devtool: 'source-map'
|
2016-06-21 09:04:08 +12:00
|
|
|
}
|
2016-08-15 08:42:57 +12:00
|
|
|
|
|
|
|
export default [bundleExtensionConfig, bundleNpmModuleConfig]
|