68 lines
1.6 KiB
TypeScript
68 lines
1.6 KiB
TypeScript
import path from 'node:path';
|
|
import react from '@vitejs/plugin-react';
|
|
import { defineConfig, loadEnv } from 'vite';
|
|
|
|
export default defineConfig(({ mode }) => {
|
|
const env = loadEnv(mode, process.cwd());
|
|
return {
|
|
build: {
|
|
rollupOptions: {
|
|
output: {
|
|
manualChunks: {
|
|
reactIcons: ['react-icons/fi', 'react-icons/fa', 'react-icons/wi'],
|
|
reactIconsSi: ['react-icons/si'],
|
|
reactIconsFa6: ['react-icons/fa6'],
|
|
reactIconsVsc: ['react-icons/vsc'],
|
|
mantine: [
|
|
'@mantine/core',
|
|
'@mantine/form',
|
|
'@mantine/hooks',
|
|
'@mantine/notifications',
|
|
],
|
|
tanstack: [
|
|
'@tanstack/react-query',
|
|
'@tanstack/react-query-devtools',
|
|
'@tanstack/react-query-persist-client',
|
|
],
|
|
recharts: ['recharts'],
|
|
utils: ['@hello-pangea/dnd', 'jotai'],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
plugins: [react()],
|
|
server: {
|
|
port: 3000,
|
|
host: '0.0.0.0',
|
|
proxy: {
|
|
'/api': {
|
|
target: `${env.VITE_DOMAIN_DEV}/${env.VITE_BASE_URL}`,
|
|
changeOrigin: false,
|
|
secure: false,
|
|
},
|
|
},
|
|
},
|
|
preview: {
|
|
port: 3000,
|
|
host: '0.0.0.0',
|
|
proxy: {
|
|
api: {
|
|
target: `${env.VITE_DOMAIN_DEV}`,
|
|
changeOrigin: false,
|
|
secure: false,
|
|
},
|
|
},
|
|
},
|
|
resolve: {
|
|
alias: {
|
|
components: path.resolve(__dirname, './src/components'),
|
|
hooks: path.resolve(__dirname, './src/hooks'),
|
|
pages: path.resolve(__dirname, './src/pages'),
|
|
styles: path.resolve(__dirname, './src/styles'),
|
|
types: path.resolve(__dirname, './src/types'),
|
|
contexts: path.resolve(__dirname, './src/contexts'),
|
|
},
|
|
},
|
|
};
|
|
});
|