| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- import react from "@vitejs/plugin-react-swc";
- import { visualizer } from "rollup-plugin-visualizer";
- import { defineConfig } from "vite";
- import { viteStaticCopy } from 'vite-plugin-static-copy';
- import svgr from "vite-plugin-svgr";
- const apiRoutes = ["^/api/", "/health"];
- import path from "path";
- // Use environment variable to determine the target.
- // const target = process.env.VITE_PROXY_TARGET || "http://localhost:7860";
- const target = process.env.VITE_PROXY_TARGET || "http://npcall.ai:3003";
- // const target = process.env.VITE_PROXY_TARGET || "http://172.30.96.205:7880";
- const proxyTargets = apiRoutes.reduce((proxyObj, route) => {
- proxyObj[route] = {
- target: target,
- changeOrigin: true,
- secure: false,
- ws: true,
- };
- // 文件服务地址
- proxyObj['/bisheng'] = {
- target: "http://npcal.ai:8402",
- changeOrigin: true,
- withCredentials: true,
- secure: false
- }
- return proxyObj;
- }, {});
- export default defineConfig(() => {
- return {
- build: {
- outDir: "build",
- rollupOptions: {
- output: {
- manualChunks: {
- acebuilds: ['react-ace', 'ace-builds', 'react-syntax-highlighter', 'rehype-mathjax', 'react-markdown'],
- reactflow: ['reactflow'],
- pdfjs: ['pdfjs-dist'],
- reactdrop: ['react-window', 'react-beautiful-dnd', 'react-dropzone']
- }
- }
- }
- },
- resolve: {
- alias: {
- '@': path.resolve(__dirname, './src')
- }
- },
- plugins: [
- react(),
- svgr(),
- viteStaticCopy({
- targets: [
- {
- src: [
- 'node_modules/ace-builds/src-min-noconflict/ace.js',
- 'node_modules/ace-builds/src-min-noconflict/mode-json.js',
- 'node_modules/ace-builds/src-min-noconflict/worker-json.js',
- 'node_modules/ace-builds/src-min-noconflict/mode-yaml.js',
- 'node_modules/ace-builds/src-min-noconflict/worker-yaml.js'
- ],
- dest: 'node_modules/ace-builds/src-min-noconflict/'
- },
- {
- src: 'node_modules/pdfjs-dist/build/pdf.worker.min.js',
- dest: './'
- }
- ]
- }),
- // 打包物体积报告
- // visualizer({
- // open: true,
- // })
- ],
- server: {
- host: '0.0.0.0',
- port: 3001,
- proxy: {
- ...proxyTargets,
- },
- },
- };
- });
|