- Extract Elysia app from route.ts into lib/api/app.ts to avoid
Next.js 16 invalid export validation ('app' is not a valid route
export field)
- Remove runtime='nodejs' from opengraph-image.tsx (invalid segment
config in Next.js 16)
- Replace computed revalidate expression in sitemap.ts with literal
(Next.js cannot statically evaluate BinaryExpression for segment
configs)
- Update eden.ts imports to match new app.ts location
12 lines
542 B
TypeScript
12 lines
542 B
TypeScript
import { treaty } from "@elysia/eden"
|
|
import type { App } from "@/lib/api/app"
|
|
|
|
// Use require() on the server branch to prevent the client bundler from
|
|
// pulling in Elysia and the route module. The typeof window check is the
|
|
// standard Next.js server-vs-client guard.
|
|
export const api =
|
|
typeof window === "undefined"
|
|
? // eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
treaty((require("@/lib/api/app") as { app: App }).app).api
|
|
: treaty<App>(process.env.NEXT_PUBLIC_SITE_URL || "http://localhost:3000").api
|