import { reactRouter } from "@react-router/dev/vite"; import tailwindcss from "@tailwindcss/vite"; import path from "node:path"; import { fileURLToPath } from "node:url"; import { defineConfig } from "vite"; import tsconfigPaths from "vite-tsconfig-paths"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); export default defineConfig(({ isSsrBuild }) => ({ build: { rollupOptions: isSsrBuild ? { input: "./server/app.ts", } : undefined, }, plugins: [ { name: "database-context-alias", enforce: "pre" as const, resolveId(id, _importer, options) { if (id === "~/database/context") { return options?.ssr ? path.resolve(__dirname, "database/context.ts") : path.resolve(__dirname, "database/context.browser-stub.ts"); } }, }, tailwindcss(), reactRouter(), tsconfigPaths(), ], server: { allowedHosts: true, }, }));