mirror of
https://github.com/tiennm99/goclaw.git
synced 2026-10-15 16:14:43 +00:00
refactor(ui): restructure sidebar into 7 groups, keep Nodes/TTS untranslated
Regroup sidebar from 4 to 7 sections (Core, Conversations, Connectivity, Capabilities, Data, Monitoring, System) for better organization. Keep technical terms Nodes and TTS as-is across all languages.
This commit is contained in:
1 parent
f073c5d275
commit
d301c64dd0
6 files changed
+40
-17
No files matched your search
@@ -23,6 +23,7 @@ import {
|
||||
HardDrive,
|
||||
Inbox,
|
||||
Brain,
|
||||
Network,
|
||||
Contact,
|
||||
} from "lucide-react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
@@ -72,21 +73,34 @@ export function Sidebar({ collapsed, onNavItemClick }: SidebarProps) {
|
||||
<SidebarGroup label={t("groups.core")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.OVERVIEW} icon={LayoutDashboard} label={t("nav.overview")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CHAT} icon={MessageSquare} label={t("nav.chat")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.management")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.AGENTS} icon={Bot} label={t("nav.agents")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.TEAMS} icon={Users} label={t("nav.agentTeams")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.conversations")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.SESSIONS} icon={History} label={t("nav.sessions")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.PENDING_MESSAGES} icon={Inbox} label={t("nav.pendingMessages")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CHANNELS} icon={Radio} label={t("nav.channels")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CONTACTS} icon={Contact} label={t("nav.contacts")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.connectivity")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.CHANNELS} icon={Radio} label={t("nav.channels")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.NODES} icon={Link} label={t("nav.nodes")} collapsed={collapsed} badge={pendingCount} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.capabilities")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.SKILLS} icon={Zap} label={t("nav.skills")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CRON} icon={Clock} label={t("nav.cron")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CUSTOM_TOOLS} icon={Wrench} label={t("nav.customTools")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.BUILTIN_TOOLS} icon={Package} label={t("nav.builtinTools")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.MCP} icon={Plug} label={t("nav.mcpServers")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.TTS} icon={Volume2} label={t("nav.tts")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CRON} icon={Clock} label={t("nav.cron")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.data")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.MEMORY} icon={Brain} label={t("nav.memory")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.KNOWLEDGE_GRAPH} icon={Network} label={t("nav.knowledgeGraph")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.STORAGE} icon={HardDrive} label={t("nav.storage")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.monitoring")} collapsed={collapsed}>
|
||||
@@ -95,15 +109,12 @@ export function Sidebar({ collapsed, onNavItemClick }: SidebarProps) {
|
||||
<SidebarItem to={ROUTES.DELEGATIONS} icon={ArrowRightLeft} label={t("nav.delegations")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.USAGE} icon={BarChart3} label={t("nav.usage")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.LOGS} icon={Terminal} label={t("nav.logs")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.STORAGE} icon={HardDrive} label={t("nav.storage")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
|
||||
<SidebarGroup label={t("groups.system")} collapsed={collapsed}>
|
||||
<SidebarItem to={ROUTES.PROVIDERS} icon={Cpu} label={t("nav.providers")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.CONFIG} icon={Settings} label={t("nav.config")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.APPROVALS} icon={ShieldCheck} label={t("nav.approvals")} collapsed={collapsed} />
|
||||
<SidebarItem to={ROUTES.NODES} icon={Link} label={t("nav.nodes")} collapsed={collapsed} badge={pendingCount} />
|
||||
<SidebarItem to={ROUTES.TTS} icon={Volume2} label={t("nav.tts")} collapsed={collapsed} />
|
||||
</SidebarGroup>
|
||||
</nav>
|
||||
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
{
|
||||
"groups": {
|
||||
"core": "Core",
|
||||
"management": "Management",
|
||||
"conversations": "Conversations",
|
||||
"connectivity": "Connectivity",
|
||||
"capabilities": "Capabilities",
|
||||
"data": "Data",
|
||||
"monitoring": "Monitoring",
|
||||
"system": "System"
|
||||
},
|
||||
@@ -20,6 +23,7 @@
|
||||
"builtinTools": "Built-in Tools",
|
||||
"mcpServers": "MCP Servers",
|
||||
"memory": "Memory",
|
||||
"knowledgeGraph": "Knowledge Graph",
|
||||
"traces": "Traces",
|
||||
"realtimeEvents": "Realtime Events",
|
||||
"delegations": "Delegations",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"title": "Nút",
|
||||
"title": "Nodes",
|
||||
"description": "Quản lý thiết bị ghép nối và yêu cầu ghép nối đang chờ",
|
||||
"emptyTitle": "Không có thiết bị nào",
|
||||
"emptyDescription": "Không có thiết bị ghép nối hoặc yêu cầu ghép nối đang chờ.",
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
{
|
||||
"groups": {
|
||||
"core": "Chính",
|
||||
"management": "Quản lý",
|
||||
"conversations": "Hội thoại",
|
||||
"connectivity": "Kết nối",
|
||||
"capabilities": "Khả năng",
|
||||
"data": "Dữ liệu",
|
||||
"monitoring": "Giám sát",
|
||||
"system": "Hệ thống"
|
||||
},
|
||||
@@ -20,6 +23,7 @@
|
||||
"builtinTools": "Công cụ tích hợp",
|
||||
"mcpServers": "Máy chủ MCP",
|
||||
"memory": "Bộ nhớ",
|
||||
"knowledgeGraph": "Knowledge Graph",
|
||||
"traces": "Theo dõi",
|
||||
"realtimeEvents": "Sự kiện thời gian thực",
|
||||
"delegations": "Ủy quyền",
|
||||
@@ -29,7 +33,7 @@
|
||||
"providers": "Provider",
|
||||
"config": "Cấu hình",
|
||||
"approvals": "Phê duyệt",
|
||||
"nodes": "Nút",
|
||||
"tts": "Chuyển văn bản thành giọng nói"
|
||||
"nodes": "Nodes",
|
||||
"tts": "TTS"
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"title": "节点",
|
||||
"title": "Nodes",
|
||||
"description": "管理已配对设备和待处理配对请求",
|
||||
"emptyTitle": "没有设备",
|
||||
"emptyDescription": "没有已配对设备或待处理配对请求。",
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
{
|
||||
"groups": {
|
||||
"core": "核心",
|
||||
"management": "管理",
|
||||
"conversations": "会话",
|
||||
"connectivity": "连接",
|
||||
"capabilities": "能力",
|
||||
"data": "数据",
|
||||
"monitoring": "监控",
|
||||
"system": "系统"
|
||||
},
|
||||
@@ -20,7 +23,8 @@
|
||||
"logs": "日志",
|
||||
"mcpServers": "MCP 服务器",
|
||||
"memory": "记忆",
|
||||
"nodes": "节点",
|
||||
"knowledgeGraph": "Knowledge Graph",
|
||||
"nodes": "Nodes",
|
||||
"overview": "概览",
|
||||
"pendingMessages": "待处理消息",
|
||||
"providers": "Provider",
|
||||
@@ -29,7 +33,7 @@
|
||||
"skills": "Skill",
|
||||
"storage": "存储",
|
||||
"traces": "追踪",
|
||||
"tts": "语音合成",
|
||||
"tts": "TTS",
|
||||
"usage": "用量"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user