Files
continuum-app/apps/web/nuxt.config.ts
T
octoturge 88b242d914 Add members/invitations and code-based gateway setup to the Setup page
Gateway setup shows a `continuum-proxy enrol` command with a one-time
code; the manual settings stay behind "Set it up by hand". New members
section for inviting by email, plus an /invite page to accept, and the
login page honours a safe `next` redirect.
2026-10-30 08:13:00 +00:00

66 lines
2.4 KiB
TypeScript

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
compatibilityDate: "2026-01-01",
// Disabled so the exact same static bundle can be served from the browser
// and embedded verbatim into the Tauri desktop shell.
ssr: false,
devtools: { enabled: true },
modules: ["@nuxtjs/supabase", "@pinia/nuxt"],
supabase: {
redirect: true,
redirectOptions: {
login: "/login",
callback: "/confirm",
exclude: ["/login", "/invite"],
},
},
runtimeConfig: {
public: {
// 3000, which is what continuum-backend listens on when PORT is unset
// (src/index.ts, and its .env.example). These defaulted to 3001, so a
// developer who started both with no configuration got a console that
// could not reach its own backend - every request refused by a port
// with nothing behind it, which reads like a broken API rather than a
// wrong address. Keep these in step with that default.
apiBase: process.env.NUXT_PUBLIC_API_BASE || "http://localhost:3000",
wsBase: process.env.NUXT_PUBLIC_WS_BASE || "ws://localhost:3000",
// Shows a password form on the login page. Off unless asked for: the
// real sign-in is a magic link, but that needs the Supabase project to
// send email, and the devstack's does not (`POST /auth/v1/otp` answers
// 500 "Error sending magic link email"), which left no way to sign in
// at all. A build meant for real users must not set this.
passwordLogin: process.env.NUXT_PUBLIC_PASSWORD_LOGIN === "true",
// There is deliberately no go2rtcStreamBase here any more. A camera
// stream lives on a gateway inside a particular farm's network, each
// farm has its own, and the gateway tells the backend its address when
// it connects - so a build-time constant could only ever be right for a
// single-farm install, and its localhost:1984 default meant the UI
// quietly pointed every player at the operator's own machine. Asked for
// per printer instead: see `usePrinterStream`.
},
},
// apps/desktop's src-tauri config points at this static output directory.
nitro: {
output: {
publicDir: "../desktop/dist",
},
},
vite: {
// Tauri needs a fixed, predictable dev server port.
server: {
strictPort: true,
},
},
typescript: {
strict: true,
},
});