Eliminates dual React ecosystems and reduces dependency
duplication by consolidating on a single React version and
expanding the pnpm workspace catalog.
- Upgrade all packages from React 18 to React 19
- Remove @types/react and @types/node overrides (no longer
needed with single React version)
- Standardise @types/node to ^22 across all packages
- Add prisma-kysely>@prisma/internals override to eliminate
old prisma 6.16.x subtree
- Fix React 19 type changes: useRef requires initial value,
JSX namespace needs explicit import, RefObject includes null
- Expand catalog with 14 new entries (ai, dotenv, pino,
playwright, prisma tooling, nodemailer, pdfjs-dist, etc.)
- Catalog radix-ui, next, lucide-react, postcss, and
typescript for docs/openpage-api alignment
- Run pnpm dedupe to collapse peer-dep context duplicates
Replace use() with useEffect/useState pattern to prevent 'async Client
Component' errors in Next.js 16 / React 19. Also strip colons from
useId() output which broke mermaid's render().