Files
LokiStack/frontend/src/i18n/locales/en/hosts.ts
T
opsx f3733f0bfc feat: 品牌统一 LokiStack + 全站中英 i18n + 用户批量删除 + 主题定时切换与浅色侧栏
- 品牌: Go 模块/数据文件/二进制/构建部署资产全部 opsx→lokistack;前端 localStorage 命名空间迁移(读旧写新,含按用户 id 前缀迁移);修复 nginx upstream 与 Makefile 引用已改名服务的断裂
- i18n: react-i18next 落地,common + 11 个页面域命名空间全站中英(菜单/顶栏/登录/列表页/表单/确认弹窗/状态徽章);设置页语言即时切换;修复词典自注册导致的循环导入白屏
- 用户管理: 批量删除(POST /users/batch-delete,不删自己/最后管理员,部分失败不阻断)+ 行复选/全选/批量工具条
- 主题: 浅色侧栏(中性灰激活态)、四态模式(浅色/深色/跟随系统/定时切换,按时区判定)、顶栏太阳月亮二态、设置页紧凑分段选择器
- UI: 登录记住用户名、CardActionButton 统一五页卡片操作钮、shadcn Badge 替换手写徽章、语义色修正
- 清理: 移除主机 Web 终端(前后端)、k8s-helm/Helm 遗留代码与字段、README 重写精简
- 修复: 侧栏与日志告警 order 重复、路由标题 i18n key 未翻译、词典双逗号等
2026-10-27 17:11:38 +08:00

82 lines
2.4 KiB
TypeScript

// hosts namespace — host management page (English)
export default {
title: 'Hosts',
description: 'Manage SSH hosts for binary-based Loki deployment',
actions: {
add: 'Add Host',
detail: 'Details',
editAria: 'Edit host {{name}}',
validateAria: 'Validate host {{name}}',
deleteAria: 'Delete host {{name}}',
},
fields: {
address: 'Address',
user: 'User',
auth: 'Auth',
authPassword: 'Password',
authKey: 'SSH Key',
os: 'OS',
unknown: 'Unknown',
},
empty: {
title: 'No hosts yet',
description: 'Add your first SSH host to get started',
},
delete: {
warning:
'Delete "{{name}}"? Warning: {{dep}} deployments and {{col}} collector policies still reference this host; they will stop working once it is deleted.',
},
toast: {
deleteFailed: 'Failed to delete host',
validateFailed: 'Validation failed',
createFailed: 'Failed to add host',
},
form: {
addTitle: 'Add SSH Host',
editTitle: 'Edit Host',
editTitleWithName: 'Edit Host · {{name}}',
nameLabel: 'Name *',
hostIpLabel: 'Host IP *',
portLabel: 'Port',
userLabel: 'Username *',
authTypeLabel: 'Authentication',
passwordLabel: 'Password *',
passwordLabelEdit: 'Password (leave blank to keep unchanged)',
passwordPlaceholder: 'SSH login password',
privateKeyLabel: 'Private Key *',
privateKeyLabelEdit: 'Private Key (leave blank to keep unchanged)',
keyPhraseLabel: 'Passphrase (optional)',
keyPhrasePlaceholder: 'Leave blank if no passphrase',
labelsLabel: 'Labels (JSON)',
submitAdd: 'Add Host',
submitSave: 'Save Changes',
submittingAdd: 'Adding...',
submittingSave: 'Saving...',
validation: {
nameRequired: 'Host name is required',
hostIpRequired: 'Host IP is required',
portRequired: 'Port is required',
portNumeric: 'Port must be a number',
portRange: 'Port must be between 1 and 65535',
userRequired: 'Username is required',
passwordRequired: 'SSH password is required',
privateKeyRequired: 'Paste the SSH private key content',
},
},
detail: {
loadError: 'Failed to load host details',
usage: 'Resource Usage',
memory: 'Memory',
disk: 'Disk',
usageDetail: '({{detail}})',
basicInfo: 'Basic Info',
hostname: 'Hostname',
os: 'OS',
arch: 'Architecture',
kernel: 'Kernel',
cpuCores: 'CPU Cores',
uptime: 'Uptime',
unknown: 'Unknown',
},
}