vue-material/build/webpack/base.js
2017-02-07 21:18:41 -02:00

69 lines
1.4 KiB
JavaScript

import path from 'path';
import webpack from 'webpack';
import eslintFormatter from 'eslint-friendly-formatter';
import config from '../config';
const resolvePath = (dir) => {
return path.resolve(__dirname, '..', '..', dir);
};
export default {
entry: {
docs: './docs/src/index.js'
},
output: {
path: config.rootPath,
publicPath: config.publicPath,
filename: '[name].js'
},
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
assets: resolvePath('docs/src/assets')
}
},
module: {
rules: [
{
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [
resolvePath('build'),
resolvePath('src'),
resolvePath('docs')
],
options: {
fix: true,
formatter: eslintFormatter
}
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [
resolvePath('build'),
resolvePath('src'),
resolvePath('docs')
]
},
{
test: /\.theme$/,
use: ['raw-loader', 'sass-loader']
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
query: {
limit: 10000,
name: '/assets/[name].[hash:8].[ext]'
}
}
]
},
plugins: [
new webpack.DefinePlugin({
'process.env': config.env
})
]
};