The-Bingo-Experience/vite.config.ts
2023-11-14 17:11:24 +01:00

86 lines
1.4 KiB
TypeScript

import {
fileURLToPath, URL
} from 'node:url';
import {
defineConfig
} from 'vite';
import vue from '@vitejs/plugin-vue';
import vueJsx from '@vitejs/plugin-vue-jsx';
import Components from 'unplugin-vue-components/vite';
import {
QuasarResolver
} from 'unplugin-vue-components/resolvers';
import {
quasar, transformAssetUrls
} from '@quasar/vite-plugin';
import AutoImport from 'unplugin-auto-import/vite';
import VueRouter from 'unplugin-vue-router/vite';
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
VueRouter(),
Components({
resolvers: [ QuasarResolver() ]
}),
AutoImport({
include: [
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
/\.vue$/,
/\.vue\?vue/, // .vue
/\.md$/ // .md
],
// imports: [
// // presets
// 'vue',
// 'vue-router'
// ],
imports: [ {
'vue-facing-decorator': [
'Component',
'ComponentBase',
'Setup',
'Ref',
'Watch',
'Prop',
'Provide',
'Inject',
'Emit',
'VModel',
'Model',
'Vanilla',
'Hook',
'toNative',
'Vue'
],
'vue-markdown': [ 'VueMarkdown' ]
} ],
dirs: [ './src/components/**' ],
dts: true,
eslintrc: {
enabled: true
}
}),
vue({
template: {
transformAssetUrls
}
}),
vueJsx(),
quasar({
sassVariables: 'src/assets/quasar-variables.sass'
})
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
}
});