console: 按 Muse 网页端/桌面端视觉重做
仅视觉与布局改动,功能与 API 未改:全屏四栏(56px 图标栏 + 260px 列表 + 弹性对话 + 300px 右侧栏),左侧搜索 + 主要聊天 列表,中间灰/浅蓝气泡对话 + 圆角输入条,右侧头像 + 已连接 (真实 key/健康状态)+ 今天任务清单,下方仍可展开原详情。 旧 v3 松绿/朱印与顶部大标题栏已移除,产物为单文件 (316226 字节,sha f8fea987…,本地重建字节一致)。 console 标记单测未动,本地 53 项通过。
This commit is contained in:
1 parent
5ca5cc91cc
commit
66790b5123
12 files changed
+394
-227
No files matched your search
@@ -54,19 +54,25 @@ export function ChatInput({ onSend, disabled, placeholder }: {
|
||||
onSend(v);
|
||||
setText("");
|
||||
};
|
||||
// Pill input bar, Muse screenshot style: the textarea is the pill
|
||||
// itself, and send is a light-blue circular arrow. No mic or
|
||||
// attachment button here: the continue chat has no voice or
|
||||
// attachment API (attachments live in Dispatch), so a mic/+ icon
|
||||
// would be a dead button; the left list header's + is the new-task
|
||||
// entry instead.
|
||||
return (
|
||||
<div className="chat-input-bar">
|
||||
<textarea
|
||||
aria-label="会话输入"
|
||||
className="chat-input"
|
||||
rows={1}
|
||||
placeholder={placeholder || "输入消息,回车发送,Shift+回车换行"}
|
||||
placeholder={placeholder || "消息"}
|
||||
value={text}
|
||||
disabled={disabled}
|
||||
onChange={(e) => setText(e.target.value)}
|
||||
onKeyDown={(e) => { if (e.key === "Enter" && !e.shiftKey) { e.preventDefault(); send(); } }}
|
||||
/>
|
||||
<button className="primary chat-send" disabled={disabled || !text.trim()} onClick={send}>发送</button>
|
||||
<button type="button" className="chat-send" aria-label="发送" disabled={disabled || !text.trim()} onClick={send}>↑</button>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in new issue
Block a user