import { defineConfig } from 'vite'; import { resolve } from 'path'; export default defineConfig({ root: '.', build: { outDir: 'dist', assetsDir: 'assets', minify: 'terser', terserOptions: { compress: { drop_console: true, drop_debugger: true, }, }, rollupOptions: { input: { main: resolve(__dirname, 'index.html'), }, output: { assetFileNames: (assetInfo) => { let extType = assetInfo.name.split('.').at(1); if (/png|jpe?g|svg|gif|tiff|bmp|ico/i.test(extType)) { extType = 'images'; } if (/css/i.test(extType)) { extType = 'css'; } return `assets/${extType}/[name]-[hash][extname]`; }, chunkFileNames: 'assets/js/[name]-[hash].js', entryFileNames: 'assets/js/[name]-[hash].js', }, }, }, server: { port: 5173, open: true, }, });