import { defineConfig } from 'vite'; import { cpSync, existsSync } from 'node:fs'; import { resolve } from 'node:path'; function copyVendorAssets() { return { name: 'copy-vendor-assets', closeBundle() { const root = process.cwd(); const sourceDir = resolve(root, 'vendor'); const targetDir = resolve(root, 'dist/vendor'); if (existsSync(sourceDir)) { cpSync(sourceDir, targetDir, { recursive: true }); } }, }; } export default defineConfig({ base: './', plugins: [copyVendorAssets()], server: { host: true, }, preview: { host: true, }, });