CreatBotMainsail/vue.config.js
Stefan Dej 11f46e8ec8 update vue.config.js
Signed-off-by: Stefan Dej <meteyou@gmail.com>
2021-04-23 21:18:44 +02:00

98 lines
2.2 KiB
JavaScript

const webpack = require('webpack')
const generate = require('generate-file-webpack-plugin')
const MonacoEditorPlugin = require('monaco-editor-webpack-plugin')
const fs = require('fs')
const packageJson = fs.readFileSync('./package.json')
const version = JSON.parse(packageJson).version || 0
module.exports = {
productionSourceMap: false,
"transpileDependencies": [
"vuetify"
],
pluginOptions: {
i18n: {
locale: 'en',
fallbackLocale: 'en',
localeDir: 'locales',
enableInSFC: true
}
},
configureWebpack: {
plugins: [
new MonacoEditorPlugin({
// https://github.com/Microsoft/monaco-editor-webpack-plugin#options
// Include a subset of languages support
// Some language extensions like typescript are so huge that may impact build performance
// e.g. Build full languages support with webpack 4.0 takes over 80 seconds
// Languages are loaded on demand at runtime
languages: ['css', 'javascript', 'html', 'shell']
}),
new webpack.DefinePlugin({
'process.env': {
PACKAGE_VERSION: '"' + version + '"'
}
}),
generate({
file: '.version',
content: 'v' + version
}),
],
},
css: {
loaderOptions: {
sass: {
sassOptions: {
}
}
}
},
/*chainWebpack: config => {
config.module
.rule('scss')
.use('sass-loader')
.loader('sass-loader')
.end();
},*/
pwa: {
serviceWorker: false,
iconPaths: {
favicon16: 'img/icons/favicon-16x16.png',
favicon32: 'img/icons/favicon-32x32.png',
appleTouchIcon: 'img/icons/apple-touch-icon-152x152.png',
msTileImage: 'img/icons/mstile-150x150.png'
},
manifestPath: 'manifest.json',
name: 'Mainsail',
themeColor: '#121212',
msTileColor: '#121212',
appleMobileWebAppCapable: 'yes',
appleMobileWebAppStatusBarStyle: 'black',
manifestOptions: {
"short_name": "Mainsail",
"name": "Mainsail",
"start_url": "/",
"display": "standalone",
"theme_color": "#D51F26",
"background_color": "#121212",
"icons": [
{
"src": "./img/icons/icon-196-maskable.png",
"sizes": "196x196",
"type": "image/png",
"purpose": "maskable",
},
{
"src": "./img/icons/icon-512-maskable.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable",
},
]
}
}
}