9ffa30cc03
Remove `**...**` emphasis markers from inline comments and JSDoc blocks across auth and chat components, machine mappers, and quota helpers. These are plain code comments, not rendered markdown, so the bold syntax was noise. Files touched: - src/app/auth/components/auth-screen.tsx - src/app/chat/components/chat-header.tsx - src/app/chat/components/chat-screen.tsx - chat machine mapper / quota helpers No functional or behavioral changes.
17 lines
748 B
TypeScript
17 lines
748 B
TypeScript
"use client";
|
||
/**
|
||
* SessionProvider 客户端包装
|
||
*
|
||
* 背景:next-auth v4 的 `SessionProvider`(从 `next-auth/react` 导出)
|
||
* 没有 `"use client"` 指令。这是 v4 的历史遗留(v5 / Auth.js 已修正)。
|
||
*
|
||
* 当 Server Component(如 `src/app/layout.tsx`)直接 import 时,Next.js
|
||
* 不会自动把它当 client component 渲染,会继续在服务端 tree 里执行,导致
|
||
* `useContext` / `useState` 报错:
|
||
* "Error: React Context is unavailable in Server Components"
|
||
*
|
||
* 修复:新建一个显式 `"use client"` 的 wrapper,re-export `SessionProvider`。
|
||
* 这样 Server Component 看到的入口是 `"use client"`,会触发 RSC 边界。
|
||
*/
|
||
export { SessionProvider } from "next-auth/react";
|