feat: update UI components and settings structure, remove unused icons

This commit is contained in:
duanshuwen
2026-04-18 20:31:52 +08:00
parent ef46c73c3e
commit 92ec3189bc
10 changed files with 50 additions and 211 deletions

View File

@@ -1,4 +1,5 @@
import { useRef } from 'react';
import { SendHorizontal, Square, X, Paperclip, FileText, Film, Music, FileArchive, File, Loader2, AtSign } from 'lucide-react';
import type { AttachedFileMeta } from '../../shared/chat-model';
type ChatComposerProps = {
@@ -32,9 +33,6 @@ export default function ChatComposer({
<div className="border-t border-[#edf2f7] px-6 py-4 dark:border-[#2a2a2d]">
<div className="rounded-[18px] border border-[#dfeaf6] bg-white p-4 shadow-[0_10px_30px_rgba(15,23,42,0.04)] dark:border-[#2a2a2d] dark:bg-[#1f1f22]">
<div className="flex items-start gap-3">
<div className="mt-1 flex h-9 w-9 flex-none items-center justify-center rounded-full bg-[#eff6ff] text-xs font-bold text-[#2B7FFF] dark:bg-[#222225]">
AI
</div>
<div className="min-w-0 flex-1">
{error ? (
<div className="mb-3 flex items-center justify-between gap-3 rounded-[14px] border border-[#fecaca] bg-[#fff1f2] px-4 py-3 text-sm text-[#b91c1c] dark:border-[#7f1d1d] dark:bg-[#2d1618] dark:text-[#fca5a5]">
@@ -100,21 +98,14 @@ export default function ChatComposer({
className="rounded-full border border-[#E5E8EE] px-3 py-1.5 text-xs text-[#525866] transition-colors hover:border-[#2B7FFF] hover:text-[#2B7FFF] dark:border-[#2a2a2d] dark:text-gray-300"
onClick={() => fileInputRef.current?.click()}
>
<Paperclip className="h-4 w-4" />
</button>
<button
type="button"
className="rounded-full border border-[#E5E8EE] px-3 py-1.5 text-xs text-[#525866] transition-colors hover:border-[#2B7FFF] hover:text-[#2B7FFF] dark:border-[#2a2a2d] dark:text-gray-300"
onClick={isSending ? onStop : onSend}
>
{isSending ? '停止生成' : '发送消息'}
</button>
<button
type="button"
className="rounded-full border border-[#E5E8EE] px-3 py-1.5 text-xs text-[#525866] transition-colors hover:border-[#2B7FFF] hover:text-[#2B7FFF] dark:border-[#2a2a2d] dark:text-gray-300"
onClick={() => onChange('')}
>
{isSending ? <Square className="h-4 w-4" /> : <SendHorizontal className="h-4 w-4" />}
</button>
</div>
</div>