50 lines
1.1 KiB
TypeScript
50 lines
1.1 KiB
TypeScript
import { resolve } from 'path'
|
|
import { defineConfig } from 'vite'
|
|
import solidPlugin from 'vite-plugin-solid'
|
|
|
|
// Конфигурация для разных окружений
|
|
const isProd = process.env.NODE_ENV === 'production'
|
|
|
|
export default defineConfig({
|
|
plugins: [solidPlugin()],
|
|
build: {
|
|
target: 'esnext',
|
|
outDir: 'dist',
|
|
minify: isProd,
|
|
sourcemap: !isProd,
|
|
|
|
// Оптимизация сборки
|
|
cssCodeSplit: true,
|
|
assetsInlineLimit: 4096,
|
|
chunkSizeWarningLimit: 500
|
|
},
|
|
|
|
// Настройка dev сервера
|
|
server: {
|
|
port: 3000,
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://localhost:8000',
|
|
changeOrigin: true
|
|
},
|
|
'/graphql': {
|
|
target: 'http://localhost:8000',
|
|
changeOrigin: true
|
|
}
|
|
}
|
|
},
|
|
|
|
// Оптимизация зависимостей
|
|
optimizeDeps: {
|
|
include: ['solid-js', '@solidjs/router'],
|
|
exclude: []
|
|
},
|
|
|
|
// Настройка алиасов для путей
|
|
resolve: {
|
|
alias: {
|
|
'~': resolve(__dirname, 'panel')
|
|
}
|
|
}
|
|
})
|