import { defineConfig } from 'vite'; import { svelte } from '@sveltejs/vite-plugin-svelte'; // The edge Connect service is scrabble.edge.v1.Gateway; the gateway serves it over // h2c on :8081 by default. In dev we proxy the RPC path so the browser (which can // not speak h2c directly) talks to the dev server on the same origin. In `mock` // mode the app runs entirely against an in-memory fake transport — no gateway, // no backend, no Postgres — which is what `pnpm start` launches. const RPC_PREFIX = '/scrabble.edge.v1.Gateway'; export default defineConfig(({ mode }) => ({ // Relative asset base so the one build serves under any path — the gateway maps the // Telegram Mini App to /telegram/ (the hash router is path-agnostic). base: './', plugins: [svelte()], server: { port: 5173, proxy: mode === 'mock' ? undefined : { [RPC_PREFIX]: { target: process.env.GATEWAY_URL || 'http://localhost:8081', changeOrigin: true, }, }, }, build: { target: 'es2022', sourcemap: true, }, }));