Files
agenciapsilmno/vite.config.mjs
2026-03-25 09:11:05 -03:00

60 lines
1.6 KiB
JavaScript

import { fileURLToPath, URL } from 'node:url';
import { PrimeVueResolver } from '@primevue/auto-import-resolver';
import tailwindcss from '@tailwindcss/vite';
import vue from '@vitejs/plugin-vue';
import { visualizer } from 'rollup-plugin-visualizer'; // bundle analyzer
import AutoImport from 'unplugin-auto-import/vite'; // auto import Vue composables
import Components from 'unplugin-vue-components/vite';
import { defineConfig } from 'vitest/config';
// https://vitejs.dev/config/
export default defineConfig({
test: {
environment: 'node',
include: ['src/**/*.spec.js'],
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
plugins: [
vue(),
tailwindcss(),
// Auto import de APIs do Vue (ref, computed, onMounted, etc)
AutoImport({
imports: ['vue'],
dts: 'src/auto-imports.d.ts' // gera tipagem automática
}),
// Auto import de componentes do PrimeVue
Components({
resolvers: [PrimeVueResolver()]
}),
// Visualizador de bundle (gera stats.html no build)
visualizer({
filename: 'dist/stats-before.html', // depois você muda pra stats-after.html
open: true,
gzipSize: true,
brotliSize: true
})
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
css: {
preprocessorOptions: {
scss: {
api: 'modern-compiler'
}
}
}
});