const path = require('path'); const webpack = require('webpack'); const BundleAnalyzerPlugin = require("webpack-bundle-analyzer").BundleAnalyzerPlugin; const { VueLoaderPlugin } = require('vue-loader'); const execSync = require('child_process').execSync; let commitShaId; try { commitShaId = '#'+execSync('git rev-parse HEAD').toString().substr(0,10); } catch (e) {} const mode = process.env.NODE_ENV || 'development'; module.exports = { mode, entry: { upload: './src/upload.js', download: './src/download.js', admin: './src/admin.js', }, output: { path: path.resolve(__dirname, '../public/app'), publicPath: '/app/', filename: '[name].js' }, optimization: { splitChunks: { chunks: 'all', name: 'common' } }, // devtool: 'source-map', devtool: 'none', module: { rules: [ { test: /\.vue$/, loader: 'vue-loader', }, { test: /\.js$/, exclude: /node_modules\/(?!(vue-awesome|)\/).*/, use: { loader: 'babel-loader', options: { presets: [['@babel/preset-env', { modules: false, "useBuiltIns": "usage", "targets": ["last 2 version", "ie 11", "not dead"] }]], } } }, { test: /\.pug$/, oneOf: [ // this applies to `