From 90c3c6a01f46c9b29c5d92702d7383f32e8951d7 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Wed, 19 Aug 2026 16:36:29 +0200 Subject: feat(ui): 11-point UI overhaul — tabs, transfers, settings, uploads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hub/UI: - Icon-only group tabs (chat, files, settings) with per-group default tab - Transfer widget: filename becomes a clickable link to open completed downloads - Pulse animation on transfer icon (pale→dark green) while active - Download button feedback in FilePreview (spinner, auto-reset) - Group mute toggle persists across navigation - Login page autofocus, chat refocus after send - Theme toggle closes menu, status badge and duplicate connecting removed - Create-folder restricted to operators, download-path note removed - User preferences API (CRUD) with Alembic migration - Profile: email display/edit via PATCH /v1/users/me - Settings: "Defaults" section for default tab selector - All 10 locale files updated Node: - upload_dir in node.toml: separate filesystem path for uploads - Root.direct flag: uploads land at root path, no subdirectory - CLI --upload-dir flag on `group add` - Admin UI accepts upload_dir Client (Electron): - shell.openPath bridge for opening completed downloads - platform.js passes open callback from native save Co-Authored-By: Claude Opus 4.6 --- .../meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'packages/meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js') diff --git a/packages/meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js b/packages/meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js index 3276db8d..f2498357 100644 --- a/packages/meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js +++ b/packages/meshbay-hub/src/meshbay_hub/static/locales/zh-CN.js @@ -122,6 +122,7 @@ export default { 'status.idle': '空闲', 'status.discovering': '正在查找 node…', 'status.connecting': '正在通过 WebRTC 连接…', + 'status.connecting_short': '正在连接…', 'status.fetching': '正在获取索引…', 'status.files': { other: '{n} 个文件', @@ -161,13 +162,17 @@ export default { 'settings.dl_choose': '选择文件夹', 'settings.dl_change': '更改', 'settings.dl_forget': '忘记', - 'settings.dl_path_note': '网页无法被指定一个路径,因此这里没有什么需要输入:' - + '由您的浏览器授予对所选文件夹的访问权限,而 MeshBay 只会写入该文件夹之内。' - + '每个会话可能会要求您确认一次。', - 'settings.dl_unsupported': '此浏览器无法写入您指定的文件夹(不支持 File System ' - + 'Access API),因此下载内容会进入它自己的下载文件夹。Chrome 和 Edge 支持自行选择。', + 'settings.profile': '个人资料', 'settings.username': '用户名', + 'settings.email': 'Email', + 'settings.email_save': 'Save', + 'settings.email_saved': 'Email updated', + 'settings.notif_global_disable': 'Disable all notifications', + 'settings.notif_global_hint': 'When enabled, no notifications are created for any group.', + 'settings.defaults': '默认值', + 'settings.default_tab': 'Default tab', + 'settings.default_tab_hint': 'Which tab opens first when you enter a group.', 'settings.node_pins': 'node 身份', 'settings.node_pins_hint': '每个 node 的身份密钥都会在您首次连接时被记住。' + '如果它发生变化,连接会被拒绝——只有当运营者重装 node 时才应如此。' @@ -421,6 +426,8 @@ export default { 'chat.jump_new': '新消息', 'group.leave': '退出群组', 'group.leave_confirm': '退出“{name}”?您将失去其文件和聊天的访问权。您上传的文件仍留在 node 上,node 也会保留它为您固定的身份,直到其运营者将其移除。', + 'group.mute': 'Mute notifications', + 'group.unmute': 'Unmute notifications', 'profile.title': '个人资料', 'usermenu.profile': '个人资料', }; -- cgit v1.2.3