105 lines
3.1 KiB
JavaScript
105 lines
3.1 KiB
JavaScript
/* eslint-env node */
|
|
|
|
/*
|
|
* This file runs in a Node context (it's NOT transpiled by Babel), so use only
|
|
* the ES6 features that are supported by your Node version. https://node.green/
|
|
*/
|
|
|
|
const { configure } = require('quasar/wrappers');
|
|
const VueI18nPlugin = require('@intlify/unplugin-vue-i18n/vite');
|
|
const path = require('path');
|
|
|
|
module.exports = configure(function (/* ctx */) {
|
|
return {
|
|
eslint: {
|
|
warnings: true,
|
|
errors: true,
|
|
},
|
|
boot: ['i18n', 'axios', 'vnDate', 'validations', 'quasar', 'quasar.defaults'],
|
|
css: ['app.scss'],
|
|
extras: ['roboto-font', 'material-icons-outlined', 'material-symbols-outlined'],
|
|
build: {
|
|
target: {
|
|
browser: ['es2022', 'edge88', 'firefox78', 'chrome87', 'safari13.1'],
|
|
node: 'node18',
|
|
},
|
|
vueRouterMode: 'hash',
|
|
rawDefine: {
|
|
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
|
|
},
|
|
extendViteConf(viteConf) {
|
|
delete viteConf.build.polyfillModulePreload;
|
|
viteConf.build.modulePreload = {
|
|
polyfill: false,
|
|
};
|
|
},
|
|
alias: {
|
|
composables: path.join(__dirname, './src/composables'),
|
|
filters: path.join(__dirname, './src/filters'),
|
|
},
|
|
vitePlugins: [
|
|
[
|
|
VueI18nPlugin({
|
|
runtimeOnly: false,
|
|
include: [
|
|
path.resolve(__dirname, './src/i18n/locale/**'),
|
|
path.resolve(__dirname, './src/pages/**/locale/**'),
|
|
],
|
|
}),
|
|
],
|
|
],
|
|
},
|
|
devServer: {
|
|
server: {
|
|
type: 'http',
|
|
},
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://0.0.0.0:3000',
|
|
logLevel: 'debug',
|
|
changeOrigin: true,
|
|
secure: false,
|
|
},
|
|
},
|
|
open: false,
|
|
},
|
|
framework: {
|
|
config: {
|
|
dark: 'auto',
|
|
},
|
|
lang: 'en-GB',
|
|
plugins: ['Notify', 'Dialog'],
|
|
all: 'auto',
|
|
autoImportComponentCase: 'pascal',
|
|
},
|
|
animations: [],
|
|
ssr: {
|
|
pwa: false,
|
|
prodPort: 3000,
|
|
middlewares: ['render'],
|
|
},
|
|
pwa: {
|
|
workboxMode: 'generateSW',
|
|
injectPwaMetaTags: true,
|
|
swFilename: 'sw.js',
|
|
manifestFilename: 'manifest.json',
|
|
useCredentialsForManifestTag: false,
|
|
},
|
|
cordova: {},
|
|
capacitor: {
|
|
hideSplashscreen: true,
|
|
},
|
|
electron: {
|
|
inspectPort: 5858,
|
|
bundler: 'packager',
|
|
packager: {},
|
|
builder: {
|
|
appId: 'salix-frontend',
|
|
},
|
|
},
|
|
bex: {
|
|
contentScripts: ['my-content-script'],
|
|
},
|
|
};
|
|
});
|