import { defineConfig } from "vite"; import { svelte } from "@sveltejs/vite-plugin-svelte"; const TEST_MODE = process.env.TEST_MODE || "happy-dom"; export default defineConfig(({ mode }) => { if (mode === "preview") { return { entry: "index.html" }; } return { build: { lib: { entry: "src/index.ts", formats: ["es"], fileName: (format) => `index.${format}.js` }, rollupOptions: { input: "src/index.ts", output: { dir: "dist" } } }, plugins: [svelte()], mode: process.env.MODE || "development", test: { include: ["./src/test/*.test.*"], environment: TEST_MODE }, ssr: { target: "node", format: "esm", noExternal: [ "ws", "semiver", "bufferutil", "@gradio/upload", "fetch-event-stream" ] } }; });