chore: fill remaining webui locale keys

This commit is contained in:
Stellar鱼
2026-05-23 00:01:52 +08:00
committed by Xubin Ren
parent 545294c62c
commit 8c5acea3b0
5 changed files with 415 additions and 120 deletions
+83 -24
View File
@@ -9,6 +9,18 @@
"title": "Không thể kết nối tới nanobot",
"gatewayHint": "Hãy chắc chắn gateway đang chạy (`nanobot gateway`) và trang này được mở trên cùng máy."
},
"auth": {
"title": "Cần xác thực",
"hint": "Nhập secret được cấu hình là tokenIssueSecret trong cấu hình gateway.",
"placeholder": "Mật khẩu",
"submit": "Kết nối",
"invalid": "Mật khẩu không hợp lệ. Hãy thử lại."
},
"account": {
"section": "Tài khoản",
"logoutHint": "Ngắt kết nối trình duyệt này khỏi gateway.",
"logout": "Đăng xuất"
},
"system": {
"section": "Hệ thống",
"restartHint": "Khởi động lại nanobot để áp dụng thay đổi runtime.",
@@ -27,9 +39,13 @@
}
},
"sidebar": {
"navigation": "Điều hướng thanh bên",
"globalActions": "Hành động toàn cục",
"collapse": "Thu gọn thanh bên",
"toggleTheme": "Chuyển giao diện",
"home": "Trang chủ",
"newChat": "Cuộc trò chuyện mới",
"searchAria": "Tìm kiếm",
"viewOptions": "View",
"compactList": "Compact list",
"showPreviews": "Show previews",
@@ -38,17 +54,16 @@
"sortUpdated": "Recently updated",
"sortCreated": "Recently created",
"sortTitle": "Title A-Z",
"searchPlaceholder": "Tìm kiếm",
"searchResults": "Kết quả",
"noSearchResults": "Không có cuộc trò chuyện phù hợp.",
"recent": "Gần đây",
"refreshSessions": "Làm mới phiên",
"settings": "Cài đặt",
"language": {
"label": "Ngôn ngữ",
"ariaLabel": "Đổi ngôn ngữ"
},
"searchAria": "Tìm kiếm",
"searchPlaceholder": "Tìm kiếm",
"searchResults": "Kết quả",
"noSearchResults": "Không có cuộc trò chuyện phù hợp."
}
},
"settings": {
"backToChat": "Quay lại trò chuyện",
@@ -75,10 +90,13 @@
"status": "Status",
"localPreferences": "Local preferences",
"presets": "Presets",
"imageGeneration": "Tạo ảnh",
"imageDefaults": "Mặc định",
"webSearch": "Web search",
"webBehavior": "Behavior",
"identity": "Identity",
"safety": "Safety",
"capabilities": "Khả năng",
"integrations": "Integrations"
},
"rows": {
@@ -91,6 +109,7 @@
"activePreset": "Active preset",
"gateway": "Gateway",
"restartState": "Restart state",
"pendingChanges": "Thay đổi đang chờ",
"selectedPreset": "Selected preset",
"presetModel": "Preset model",
"density": "Density",
@@ -99,6 +118,15 @@
"maxResults": "Max results",
"timeout": "Timeout",
"jinaReader": "Jina reader",
"imageGeneration": "Tạo ảnh",
"imageProvider": "Nhà cung cấp ảnh",
"imageProviderStatus": "Trạng thái nhà cung cấp",
"imageProviderBase": "Cơ sở nhà cung cấp",
"imageModel": "Mô hình ảnh",
"defaultAspectRatio": "Tỷ lệ mặc định",
"defaultImageSize": "Kích thước mặc định",
"maxImagesPerTurn": "Số ảnh tối đa mỗi lượt",
"imageSaveDir": "Thư mục lưu",
"botName": "Bot name",
"botIcon": "Bot icon",
"timezone": "Timezone",
@@ -129,6 +157,13 @@
"maxResults": "Results returned by each web_search call.",
"timeout": "Seconds before a search provider request times out.",
"jinaReader": "Use Jina Reader for web_fetch when available.",
"imageGeneration": "Hiển thị generate_image trong chat khi có nhà cung cấp ảnh đã cấu hình.",
"imageProvider": "Chọn nhà cung cấp registry được generate_image sử dụng.",
"imageProviderStatus": "Tạo ảnh dùng lại thông tin xác thực nhà cung cấp từ Providers.",
"imageModel": "Tên mô hình gửi tới nhà cung cấp ảnh đã chọn.",
"defaultAspectRatio": "Được dùng khi prompt không chọn tỷ lệ khung hình.",
"defaultImageSize": "Gợi ý kích thước gửi tới các nhà cung cấp hỗ trợ.",
"maxImagesPerTurn": "Giới hạn trên cho một yêu cầu generate_image.",
"botName": "Shown in runtime surfaces that use the configured bot identity.",
"botIcon": "Short emoji or text shown beside the bot name.",
"timezone": "IANA timezone used by runtime context and schedules.",
@@ -141,8 +176,8 @@
"notAvailable": "Không khả dụng",
"enabled": "Enabled",
"disabled": "Disabled",
"restartRequired": "Restart required",
"liveReload": "Live reload ready",
"restartPending": "Đang chờ khởi động lại",
"ready": "Sẵn sàng",
"comfortable": "Comfortable",
"compact": "Compact",
"auto": "Auto",
@@ -150,13 +185,19 @@
"on": "On",
"off": "Off",
"configured": "Configured",
"notConfigured": "Not configured"
"notConfigured": "Not configured",
"restartRequired": "Restart required",
"liveReload": "Live reload ready"
},
"status": {
"loading": "Đang tải cài đặt...",
"loadError": "Không thể tải cài đặt",
"unsaved": "Có thay đổi chưa lưu.",
"savedRestart": "Đã lưu. Khởi động lại nanobot để áp dụng."
"upToDate": "Đã cập nhật.",
"savedRestart": "Đã lưu. Khởi động lại nanobot để áp dụng.",
"restartAfterSaving": "Lưu thay đổi, rồi khởi động lại khi sẵn sàng.",
"savedRestartApply": "Đã lưu. Khởi động lại khi sẵn sàng.",
"imageProviderRestart": "Đã lưu thay đổi nhà cung cấp ảnh. Khởi động lại khi sẵn sàng."
},
"actions": {
"save": "Lưu",
@@ -213,18 +254,25 @@
"configuredCount": "{{count}} configured",
"totalProviders": "{{count}} available",
"webSearch": "Web search",
"imageGeneration": "Tạo ảnh",
"workspace": "Workspace"
},
"providers": {
"searchPlaceholder": "Search providers",
"noMatches": "No providers match this search."
},
"image": {
"selectProvider": "Chọn nhà cung cấp",
"selectAspect": "Chọn tỷ lệ",
"selectSize": "Chọn kích thước",
"configureProvider": "Cấu hình nhà cung cấp",
"missingCredential": "Cấu hình nhà cung cấp này trước khi bật tạo ảnh."
}
},
"chat": {
"fallbackTitle": "Trò chuyện {{id}}",
"loading": "Đang tải…",
"noSessions": "Chưa có phiên nào.",
"showMore": "Hiển thị thêm {{count}}",
"actions": "Tác vụ cho cuộc trò chuyện {{title}}",
"activity": {
"running": "Agent running",
@@ -269,7 +317,6 @@
"thread": {
"loadingConversation": "Đang tải cuộc trò chuyện…",
"empty": {
"description": "Hãy đặt câu hỏi, tiếp tục công việc cục bộ hoặc bắt đầu một luồng mới.",
"greeting": "Tôi có thể giúp gì cho bạn?",
"quickActions": {
"plan": {
@@ -322,10 +369,14 @@
"title": "Chỉnh sửa ảnh",
"prompt": "Giúp tôi chỉnh sửa một ảnh. Trước tiên hãy yêu cầu tôi tải lên hoặc chỉ định ảnh, rồi tạo kết quả đã chỉnh sửa."
}
}
},
"description": "Hãy đặt câu hỏi, tiếp tục công việc cục bộ hoặc bắt đầu một luồng mới."
},
"header": {
"toggleSidebar": "Bật/tắt thanh bên"
"toggleSidebar": "Bật/tắt thanh bên",
"newChat": "Bắt đầu chat mới",
"toggleTheme": "Chuyển chủ đề từ header",
"settings": "Mở cài đặt"
},
"composer": {
"placeholderThread": "Nhập tin nhắn…",
@@ -339,6 +390,7 @@
"goalStateFallback": "Mục tiêu",
"goalStateExpandAria": "Xem đầy đủ mục tiêu",
"goalStateSheetTitle": "Mục tiêu",
"goalStateCloseAria": "Đóng mục tiêu",
"send": "Gửi tin nhắn",
"stop": "Dừng phản hồi",
"attachImage": "Đính kèm ảnh",
@@ -357,16 +409,11 @@
"16_9": "Rộng 16:9"
}
},
"encoding": "Đang xử lý…",
"remove": "Xóa tệp đính kèm",
"normalizedSizeHint": "{{orig}} → {{current}} (tự động)",
"imageRejected": {
"unsupported_type": "Loại tệp không được hỗ trợ",
"too_many_images": "Tối đa {{max}} ảnh mỗi tin nhắn",
"magic_mismatch": "Tệp này không phải là một ảnh thực",
"decode_failed": "Không thể giải mã ảnh này",
"too_large": "Ảnh quá lớn — hãy thử ảnh nhỏ hơn",
"io": "Không thể đọc tệp này"
"tools": {
"search": "Tìm kiếm",
"reason": "Suy luận",
"deepResearch": "Nghiên cứu sâu",
"voice": "Nhập bằng giọng nói"
},
"slash": {
"ariaLabel": "Lệnh slash",
@@ -417,7 +464,17 @@
}
}
},
"goalStateCloseAria": óng mục tiêu"
"encoding": ang xử lý…",
"remove": "Xóa tệp đính kèm",
"normalizedSizeHint": "{{orig}} → {{current}} (tự động)",
"imageRejected": {
"unsupported_type": "Loại tệp không được hỗ trợ",
"too_many_images": "Tối đa {{max}} ảnh mỗi tin nhắn",
"magic_mismatch": "Tệp này không phải là một ảnh thực",
"decode_failed": "Không thể giải mã ảnh này",
"too_large": "Ảnh quá lớn — hãy thử ảnh nhỏ hơn",
"io": "Không thể đọc tệp này"
}
},
"scrollToBottom": "Cuộn xuống cuối",
"loadEarlier": "Tải tin nhắn trước đó"
@@ -439,6 +496,8 @@
"agentActivityLiveSummary": "Đang chạy… · {{reasoning}} bước · {{tools}} lần gọi công cụ",
"agentActivityLiveToolsOnly": "Đang chạy… · {{tools}} lần gọi công cụ",
"imageAttachment": "Tệp hình ảnh đính kèm",
"copyReply": "Sao chép trả lời",
"copiedReply": "Đã sao chép trả lời",
"turnLatencyTitle": "Thời gian phản hồi (end-to-end)"
},
"lightbox": {