neptune-privacy/vite.config.ts

71 lines
1.7 KiB
TypeScript

import path from 'node:path'
import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
// https://vite.dev/config/
export default defineConfig({
plugins: [
vue(),
tailwindcss(),
AutoImport({
imports: [
{
'vue-router': ['useRoute', 'useRouter'],
},
{
'vue-i18n': ['useI18n'],
},
],
dts: 'src/auto-imports.d.ts',
vueTemplate: true,
eslintrc: {
enabled: true,
filepath: './.eslintrc-auto-import.json',
},
}),
Components({
dts: 'src/components.d.ts',
dirs: ['src/components'],
extensions: ['vue'],
deep: true,
directoryAsNamespace: false,
}),
],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
},
},
server: {
port: 5173,
strictPort: true,
host: '0.0.0.0',
hmr: {
protocol: 'ws',
host: 'localhost',
port: 5183,
},
},
// Prevent vite from obscuring rust errors
clearScreen: false,
// Env variables starting with the item of `envPrefix` will be exposed in tauri's source code through `import.meta.env`
envPrefix: ['VITE_', 'TAURI_'],
build: {
// Tauri uses Chromium on Windows and WebKit on macOS and Linux
target: process.env.TAURI_ENV_PLATFORM == 'windows' ? 'chrome105' : 'safari13',
// Don't minify for debug builds
minify: !process.env.TAURI_ENV_DEBUG ? 'esbuild' : false,
// Produce sourcemaps for debug builds
sourcemap: !!process.env.TAURI_ENV_DEBUG,
},
})