1const CompressionPlugin = require('compression-webpack-plugin'); 2 3module.exports = { 4 css: { 5 loaderOptions: { 6 scss: { 7 prependData: ` 8 @import "@/assets/styles/_obmc-custom.scss"; 9 ` 10 } 11 } 12 }, 13 devServer: { 14 https: true, 15 proxy: { 16 '/': { 17 target: process.env.BASE_URL, 18 onProxyRes: proxyRes => { 19 // This header is ignored in the browser so removing 20 // it so we don't see warnings in the browser console 21 delete proxyRes.headers['strict-transport-security']; 22 } 23 } 24 }, 25 port: 8000 26 }, 27 productionSourceMap: false, 28 configureWebpack: config => { 29 const envName = process.env.VUE_APP_ENV_NAME; 30 31 if (process.env.NODE_ENV === 'production') { 32 config.plugins.push( 33 new CompressionPlugin({ 34 deleteOriginalAssets: true 35 }) 36 ); 37 } 38 if (envName !== undefined) { 39 // Resolve store and router modules in src/main.js 40 // depending on environment (VUE_APP_ENV_NAME) variable 41 config.resolve.alias['./store$'] = `./env/store/${envName}.js`; 42 config.resolve.alias['./router$'] = `./env/router/${envName}.js`; 43 } 44 }, 45 chainWebpack: config => { 46 if (process.env.NODE_ENV === 'production') { 47 config.plugins.delete('prefetch'); 48 config.plugins.delete('preload'); 49 } 50 }, 51 pluginOptions: { 52 i18n: { 53 localeDir: 'locales', 54 enableInSFC: true 55 } 56 } 57}; 58