mirror of
https://github.com/simstudioai/sim.git
synced 2026-09-23 22:14:16 +08:00
* chore(deps): upgrade next.js to 16.2.4 - Bump next and @next/env to 16.2.4 across root, apps/sim, apps/docs - Replace next-runtime-env's env() helper (calls unstable_noStore(), rejected by Next 16.2 outside request scope) with a direct window.__ENV / process.env getter - Add export const dynamic = 'force-dynamic' on landing /privacy and /terms pages so NEXT_PUBLIC_* runtime env reads aren't baked at build * fix(whitelabel): force dynamic rendering for manifest.ts Without this, NEXT_PUBLIC_BRAND_* values are baked into the manifest at build time. Pairs with the next-runtime-env removal in the prior commit, restoring Docker runtime injection for whitelabel deployments. * fix(oauth): wrap consent page useSearchParams in Suspense Next 16.2's stricter prerender check fails the build when useSearchParams() is used without a Suspense boundary. Splits the client component into an outer wrapper and inner body. * fix(whitelabel): force dynamic rendering for landing segment Client components in (landing) (e.g. Navbar) read NEXT_PUBLIC_BRAND_* via getEnv. Without this, SSR prerender would bake the build-time process.env values into HTML, mismatching window.__ENV after hydration in Docker runtime-env deployments. Cascades to all landing routes via the layout. * revert(whitelabel): drop force-dynamic from landing layout Cascading force-dynamic neutered dynamicParams = false + generateStaticParams on /blog/[slug], /integrations/[slug], /models/[provider], /models/[provider]/[model] — killing static prerender for SEO-critical pages. The hydration concern only materializes for whitelabel Docker deployments where build-time and runtime NEXT_PUBLIC_BRAND_* differ; those deployments can set the vars at build instead. Keeping force-dynamic on /privacy, /terms, and /manifest where it actually matters. * fix(prerender): wrap useSearchParams callsites for Next 16.2 Next 16.2 fails the build when a client component using useSearchParams() is statically prerendered without a Suspense boundary. - Wrap landing Navbar in Suspense (imported by /oauth/consent and other pages) - Add force-dynamic to reset-password, invite/[id], and unsubscribe pages whose client bodies call useSearchParams * fix(navbar): preserve SSR HTML, drop Suspense bailout Reading useSearchParams() forced a Suspense fallback that emitted no navbar HTML during SSR — leaving crawlers and no-JS users without nav. The 'home' query param only affects client-side link targets, so read it from window.location in an effect after hydration. Restores full SSR navbar markup. * chore: trim verbose comments in next.js upgrade The force-dynamic export name is self-documenting; the remaining env.ts comment is tightened to the essential WHY (why we don't use next-runtime-env's helper).
50 lines
1.3 KiB
JSON
50 lines
1.3 KiB
JSON
{
|
|
"name": "docs",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"license": "Apache-2.0",
|
|
"scripts": {
|
|
"dev": "next dev --port 3001",
|
|
"build": "fumadocs-mdx && NODE_OPTIONS='--max-old-space-size=8192' next build",
|
|
"start": "next start",
|
|
"postinstall": "fumadocs-mdx",
|
|
"type-check": "tsc --noEmit",
|
|
"lint": "biome check --write --unsafe .",
|
|
"lint:check": "biome check .",
|
|
"format": "biome format --write .",
|
|
"format:check": "biome format ."
|
|
},
|
|
"dependencies": {
|
|
"@sim/db": "workspace:*",
|
|
"@tabler/icons-react": "^3.31.0",
|
|
"@vercel/og": "^0.6.5",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"drizzle-orm": "^0.45.2",
|
|
"fumadocs-core": "16.8.5",
|
|
"fumadocs-mdx": "14.3.2",
|
|
"fumadocs-openapi": "10.8.1",
|
|
"fumadocs-ui": "16.8.5",
|
|
"lucide-react": "^0.511.0",
|
|
"next": "16.2.4",
|
|
"next-themes": "^0.4.6",
|
|
"postgres": "^3.4.5",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"shiki": "4.0.0",
|
|
"tailwind-merge": "^3.0.2"
|
|
},
|
|
"devDependencies": {
|
|
"@sim/tsconfig": "workspace:*",
|
|
"@tailwindcss/postcss": "^4.0.12",
|
|
"@types/mdx": "^2.0.13",
|
|
"@types/node": "^22.14.1",
|
|
"@types/react": "^19.1.2",
|
|
"@types/react-dom": "^19.0.4",
|
|
"dotenv-cli": "^8.0.0",
|
|
"postcss": "^8.5.3",
|
|
"tailwindcss": "^4.0.12",
|
|
"typescript": "^5.8.2"
|
|
}
|
|
}
|