fix(web): code review round 1 remaining UI fixes
- EmojiPanel: add missing 手势/物品 categories, 12-column grid per README §3.3
- DetailColumn: add 投诉举报 row, real ID/region/签名 via new getUserProfile
API, chevron_right icons now use --color-icon-arrow token (were tertiary
text color), regroup rows so dividers only sit between sections not every
row (matches design-code reference exactly)
- MessageBubble/ConversationView: right-clicked message bubble now gets the
spec's outline while its context menu is open
- ChatListColumn/AppShell: pinned 系统消息/文件助手 rows using confirmed
bootstrap entries/entry_badges topic names ("sys"/"slf"); route to the
existing SectionPlaceholder pattern since their own dedicated layouts are
Phase 8, not built yet
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
a7da4dc079
commit
93d4077d1e
@@ -1,5 +1,6 @@
|
||||
import { Outlet } from 'react-router-dom';
|
||||
|
||||
import { useBootstrap } from '@/lib/api/hooks';
|
||||
import { useChatList } from '@/lib/tinode/hooks';
|
||||
|
||||
import { BottomTabBar } from './BottomTabBar';
|
||||
@@ -13,7 +14,11 @@ import { NavRail } from './NavRail';
|
||||
*/
|
||||
export function AppShell() {
|
||||
const contacts = useChatList();
|
||||
const unreadMessages = contacts.reduce((sum, c) => sum + (c.unread || 0), 0);
|
||||
const bootstrap = useBootstrap();
|
||||
const unreadMessages =
|
||||
contacts.reduce((sum, c) => sum + (c.unread || 0), 0) +
|
||||
(bootstrap.data?.entry_badges?.system_unread_count || 0) +
|
||||
(bootstrap.data?.entry_badges?.file_assistant_unread_count || 0);
|
||||
|
||||
return (
|
||||
<div className="flex h-dvh w-full overflow-hidden bg-surface-page">
|
||||
|
||||
Reference in New Issue
Block a user