import { fileURLToPath, URL } from "node:url";
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { VantResolver } from "@vant/auto-import-resolver";
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import vueJsx from "@vitejs/plugin-vue-jsx";
import vueDevTools from "vite-plugin-vue-devtools";

// https://vite.dev/config/
export default defineConfig({
    server: {
        host: "0.0.0.0", // 设置为 0.0.0.0 允许局域网访问
        port: 5678, // 自定义端口号，可选
        strictPort: true, // 如果端口被占用则抛出错误而不是使用下一个可用端口
        proxy: {
            '/api/v1': {
                target: 'https://www.tianyuancha.cn', // 本地接口地址
                changeOrigin: true,
            },

            "/api/v1/chat": {
                target: "https://www.tianyuancha.cn", // 本地接口地址
                changeOrigin: true,
                // rewrite: (path) => path.replace(/^\/api\/v1\/chat/, '/chat')
            },

            // "/api/v1": {
            //     target: "https://6m4685017o.goho.co", // 本地接口地址
            //     changeOrigin: true,
            // },
        },
    },
    plugins: [
        vue(),
        AutoImport({
            imports: [
                "vue", // 自动引入 Vue Composition API，如 ref、computed、onMounted 等
                "vue-router", // 自动引入 vue-router 中的方法，如 useRoute、useRouter 等（可选）
                "@vueuse/core", // 自动引入 VueUse 中的工具函数（可选）
            ],
            dts: "src/auto-imports.d.ts", // 生成类型定义文件（可选）
            dirs: ["src/composables", "src/stores", "src/components"],
            resolvers: [VantResolver()],
        }),
        Components({
            resolvers: [VantResolver()],
        }),
        vueJsx(),
        vueDevTools(),
    ],
    resolve: {
        alias: {
            "@": fileURLToPath(new URL("./src", import.meta.url)),
        },
    },
});
