1538 lines
36 KiB
Dart
1538 lines
36 KiB
Dart
// ignore: unused_import
|
||
import 'package:intl/intl.dart' as intl;
|
||
import 'app_localizations.dart';
|
||
|
||
// ignore_for_file: type=lint
|
||
|
||
/// The translations for Chinese (`zh`).
|
||
class AppLocalizationsZh extends AppLocalizations {
|
||
AppLocalizationsZh([String locale = 'zh']) : super(locale);
|
||
|
||
@override
|
||
String get appTitle => '我智能体';
|
||
|
||
@override
|
||
String get appSubtitle => '服务器集群运维智能体';
|
||
|
||
@override
|
||
String get navHome => '主页';
|
||
|
||
@override
|
||
String get navMyAgents => '我的智能体';
|
||
|
||
@override
|
||
String get navBilling => '账单';
|
||
|
||
@override
|
||
String get navProfile => '我';
|
||
|
||
@override
|
||
String get cancelButton => '取消';
|
||
|
||
@override
|
||
String get confirmButton => '确认';
|
||
|
||
@override
|
||
String get saveButton => '保存';
|
||
|
||
@override
|
||
String get retryButton => '重试';
|
||
|
||
@override
|
||
String get loadingLabel => '加载中...';
|
||
|
||
@override
|
||
String get unknownLabel => '未知';
|
||
|
||
@override
|
||
String get unnamedLabel => '未命名';
|
||
|
||
@override
|
||
String homeGreeting(String greeting, String name) {
|
||
return '$greeting,$name';
|
||
}
|
||
|
||
@override
|
||
String get homeSubtitle => '我智能体 随时为你服务';
|
||
|
||
@override
|
||
String get greetingEarlyMorning => '早上好';
|
||
|
||
@override
|
||
String get greetingNoon => '中午好';
|
||
|
||
@override
|
||
String get greetingAfternoon => '下午好';
|
||
|
||
@override
|
||
String get greetingEvening => '晚上好';
|
||
|
||
@override
|
||
String get greetingLateNight => '夜深了';
|
||
|
||
@override
|
||
String get agentStatusIdle => '空闲中';
|
||
|
||
@override
|
||
String get agentStatusThinking => '正在思考...';
|
||
|
||
@override
|
||
String get agentStatusExecuting => '执行指令中...';
|
||
|
||
@override
|
||
String get agentStatusAwaitingApproval => '等待审批';
|
||
|
||
@override
|
||
String get agentStatusError => '发生错误';
|
||
|
||
@override
|
||
String get officialAgentsSection => 'IT0 官方智能体';
|
||
|
||
@override
|
||
String get myAgentsSection => '我的智能体';
|
||
|
||
@override
|
||
String get officialBadge => '官方';
|
||
|
||
@override
|
||
String get officialAgent1Name => '我智能体 运维助手';
|
||
|
||
@override
|
||
String get officialAgent1Desc => '服务器管理、SSH 执行、日志分析';
|
||
|
||
@override
|
||
String get officialAgent2Name => '安全审计助手';
|
||
|
||
@override
|
||
String get officialAgent2Desc => '漏洞扫描、权限审查、合规检查';
|
||
|
||
@override
|
||
String get officialAgent3Name => '数据库巡检';
|
||
|
||
@override
|
||
String get officialAgent3Desc => '慢查询分析、索引优化、备份验证';
|
||
|
||
@override
|
||
String get noOwnAgentsTitle => '还没有自己的智能体';
|
||
|
||
@override
|
||
String get noOwnAgentsDesc => '点击下方机器人按钮,告诉 我智能体\n\"帮我招募一个 小龙虾 智能体\"';
|
||
|
||
@override
|
||
String get quickTipsHeader => '你可以这样说...';
|
||
|
||
@override
|
||
String get quickTip1 => '💬 \"帮我招募一个监控 GitHub Actions 的智能体\"';
|
||
|
||
@override
|
||
String get quickTip2 => '🔧 \"把我的 小龙虾 配置导出为 JSON\"';
|
||
|
||
@override
|
||
String get quickTip3 => '📊 \"分析我的服务器最近7天的负载情况\"';
|
||
|
||
@override
|
||
String get quickTip4 => '🛡️ \"帮我设置每天凌晨2点自动备份数据库\"';
|
||
|
||
@override
|
||
String get myAgentsTitle => '我的智能体';
|
||
|
||
@override
|
||
String get myAgentsEmptyTitle => '招募你的专属智能体';
|
||
|
||
@override
|
||
String get myAgentsEmptyDesc =>
|
||
'通过与 我智能体 对话,你可以招募各种智能体:\n小龙虾 编程助手、运维机器人、数据分析师...';
|
||
|
||
@override
|
||
String get myAgentsStep1Title => '点击下方机器人';
|
||
|
||
@override
|
||
String get myAgentsStep1Desc => '打开与 我智能体 的对话窗口';
|
||
|
||
@override
|
||
String get myAgentsStep2Title => '描述你想要的智能体';
|
||
|
||
@override
|
||
String get myAgentsStep2Desc => '例如:\"帮我招募一个 小龙虾 编程助手\"';
|
||
|
||
@override
|
||
String get myAgentsStep3Title => '我智能体 自动部署';
|
||
|
||
@override
|
||
String get myAgentsStep3Desc => '部署完成后出现在这里,通过 Telegram/WhatsApp 等渠道与它对话';
|
||
|
||
@override
|
||
String get myAgentsTemplatesHeader => '热门模板(告诉 我智能体 你想要哪种)';
|
||
|
||
@override
|
||
String summaryTotal(int count) {
|
||
return '总计 $count';
|
||
}
|
||
|
||
@override
|
||
String summaryRunning(int count) {
|
||
return '运行中 $count';
|
||
}
|
||
|
||
@override
|
||
String summaryStopped(int count) {
|
||
return '已停止 $count';
|
||
}
|
||
|
||
@override
|
||
String get statusRunning => '运行中';
|
||
|
||
@override
|
||
String get statusDeploying => '部署中';
|
||
|
||
@override
|
||
String get statusStopped => '已停止';
|
||
|
||
@override
|
||
String get statusError => '错误';
|
||
|
||
@override
|
||
String get dismissTitle => '解聘智能体';
|
||
|
||
@override
|
||
String dismissConfirmContent(String name) {
|
||
return '确认要解聘「$name」吗?\n\n解聘后将停止并删除该智能体容器,此操作不可撤销。';
|
||
}
|
||
|
||
@override
|
||
String get dismissButton => '解聘';
|
||
|
||
@override
|
||
String get renameButton => '重命名';
|
||
|
||
@override
|
||
String get renameTitle => '重命名';
|
||
|
||
@override
|
||
String get renameHint => '输入新名称';
|
||
|
||
@override
|
||
String dismissSuccessMessage(String name) {
|
||
return '已解聘「$name」';
|
||
}
|
||
|
||
@override
|
||
String dismissErrorMessage(String error) {
|
||
return '解聘失败:$error';
|
||
}
|
||
|
||
@override
|
||
String get renameSuccessMessage => '重命名成功';
|
||
|
||
@override
|
||
String renameErrorMessage(String error) {
|
||
return '重命名失败:$error';
|
||
}
|
||
|
||
@override
|
||
String get loginPasswordTab => '密码登录';
|
||
|
||
@override
|
||
String get loginOtpTab => '验证码登录';
|
||
|
||
@override
|
||
String get emailLabel => '邮箱';
|
||
|
||
@override
|
||
String get emailHint => 'user@example.com';
|
||
|
||
@override
|
||
String get emailRequiredError => '请输入邮箱地址';
|
||
|
||
@override
|
||
String get invalidEmailError => '请输入有效的邮箱地址';
|
||
|
||
@override
|
||
String get passwordLabel => '密码';
|
||
|
||
@override
|
||
String get passwordRequiredError => '请输入密码';
|
||
|
||
@override
|
||
String get phoneLabel => '手机号';
|
||
|
||
@override
|
||
String get phoneHint => '+86 138 0000 0000';
|
||
|
||
@override
|
||
String get phoneRequiredError => '请输入手机号';
|
||
|
||
@override
|
||
String get otpLabel => '验证码';
|
||
|
||
@override
|
||
String get otpHint => '6 位数字';
|
||
|
||
@override
|
||
String get otpRequiredError => '请输入验证码';
|
||
|
||
@override
|
||
String get sendingLabel => '发送中';
|
||
|
||
@override
|
||
String get getOtpButton => '获取验证码';
|
||
|
||
@override
|
||
String get enterPhoneFirstError => '请先输入手机号';
|
||
|
||
@override
|
||
String get loginButton => '登录';
|
||
|
||
@override
|
||
String get accountCreationNote => '账号由管理员在后台创建或通过邀请链接注册';
|
||
|
||
@override
|
||
String get chatNewConversationTooltip => '新对话';
|
||
|
||
@override
|
||
String get chatStopTooltip => '停止';
|
||
|
||
@override
|
||
String get chatVoiceCallTooltip => '语音通话';
|
||
|
||
@override
|
||
String get chatSelectFromAlbum => '从相册选择';
|
||
|
||
@override
|
||
String get chatMultiSelectSupport => '支持多选';
|
||
|
||
@override
|
||
String get chatTakePhoto => '拍照';
|
||
|
||
@override
|
||
String get chatSelectFile => '选择文件';
|
||
|
||
@override
|
||
String get chatImagesPdfLabel => '图片、PDF';
|
||
|
||
@override
|
||
String get chatThinkingLabel => '思考中...';
|
||
|
||
@override
|
||
String get chatNeedsApprovalLabel => '需要审批';
|
||
|
||
@override
|
||
String get chatExecutionFailedLabel => '执行失败';
|
||
|
||
@override
|
||
String get chatExecutionResultLabel => '执行结果';
|
||
|
||
@override
|
||
String get chatStandingOrderDraftLabel => '常驻指令草案';
|
||
|
||
@override
|
||
String get chatProcessingLabel => '处理中...';
|
||
|
||
@override
|
||
String get chatReplyingLabel => '回复中...';
|
||
|
||
@override
|
||
String get chatReplyLabel => '回复';
|
||
|
||
@override
|
||
String get chatStartConversationPrompt => '开始与 我智能体 对话';
|
||
|
||
@override
|
||
String get chatInputInstructionHint => '输入指令或拨打语音通话';
|
||
|
||
@override
|
||
String get chatAdditionalInstructionHint => '追加指令...';
|
||
|
||
@override
|
||
String get chatInstructionHint => '输入指令...';
|
||
|
||
@override
|
||
String get chatAddImageTooltip => '添加图片';
|
||
|
||
@override
|
||
String get chatInjectionTooltip => '追加指令';
|
||
|
||
@override
|
||
String get chatCollapseLabel => '收起';
|
||
|
||
@override
|
||
String chatExpandLabel(int lineCount) {
|
||
return '展开 ($lineCount 行)';
|
||
}
|
||
|
||
@override
|
||
String get chatRecognizingLabel => '识别中…';
|
||
|
||
@override
|
||
String get chatSpeechRecognitionError => '语音识别失败,请重试';
|
||
|
||
@override
|
||
String get chatTargetsLabel => '目标: ';
|
||
|
||
@override
|
||
String get agentCallVoiceCallTitle => '语音通话';
|
||
|
||
@override
|
||
String get agentCallRingingStatus => '我智能体 语音通话';
|
||
|
||
@override
|
||
String get agentCallActiveStatus => '我智能体';
|
||
|
||
@override
|
||
String get agentCallConnectingStatus => '连接中...';
|
||
|
||
@override
|
||
String get agentCallEndedStatus => '通话结束';
|
||
|
||
@override
|
||
String get agentCallThinking => '思考中...';
|
||
|
||
@override
|
||
String get terminalTitle => '远程终端';
|
||
|
||
@override
|
||
String get terminalInitMessage => '我智能体 远程终端';
|
||
|
||
@override
|
||
String get terminalSelectServerMessage => '请选择服务器并点击连接。';
|
||
|
||
@override
|
||
String get terminalSelectServerFirst => '请先选择服务器';
|
||
|
||
@override
|
||
String get terminalConnectingMessage => '正在连接服务器';
|
||
|
||
@override
|
||
String get terminalConnectedLabel => '已连接';
|
||
|
||
@override
|
||
String get terminalConnectingLabel => '连接中...';
|
||
|
||
@override
|
||
String get terminalDisconnectedLabel => '未连接';
|
||
|
||
@override
|
||
String get terminalSelectServerHint => '选择服务器...';
|
||
|
||
@override
|
||
String get terminalNoAvailableServers => '暂无可用服务器';
|
||
|
||
@override
|
||
String get terminalLoadServersError => '加载服务器失败';
|
||
|
||
@override
|
||
String get terminalConnectButton => '连接';
|
||
|
||
@override
|
||
String get terminalDisconnectButton => '断开';
|
||
|
||
@override
|
||
String get terminalDisconnectMessage => '已断开连接';
|
||
|
||
@override
|
||
String get tasksPageTitle => '任务';
|
||
|
||
@override
|
||
String get opsTasksTab => '运维任务';
|
||
|
||
@override
|
||
String get standingOrdersTab => '常驻指令';
|
||
|
||
@override
|
||
String get noTasksTitle => '暂无任务';
|
||
|
||
@override
|
||
String get createNewTaskHint => '点击 + 创建新任务';
|
||
|
||
@override
|
||
String get noStandingOrdersTitle => '暂无常驻指令';
|
||
|
||
@override
|
||
String get standingOrdersHint => '通过 我智能体 对话新增常驻指令';
|
||
|
||
@override
|
||
String get createTaskTitle => '新建任务';
|
||
|
||
@override
|
||
String get taskTitleLabel => '标题';
|
||
|
||
@override
|
||
String get taskTitleHint => '例如: 重启 web-01 的 nginx';
|
||
|
||
@override
|
||
String get taskDescriptionLabel => '描述';
|
||
|
||
@override
|
||
String get taskDescriptionHint => '可选详情...';
|
||
|
||
@override
|
||
String get taskPriorityLabel => '优先级';
|
||
|
||
@override
|
||
String get taskServerOptionalLabel => '服务器(可选)';
|
||
|
||
@override
|
||
String get taskNoServerSelection => '不指定';
|
||
|
||
@override
|
||
String get createTaskButton => '创建任务';
|
||
|
||
@override
|
||
String createTaskError(String error) {
|
||
return '创建任务失败: $error';
|
||
}
|
||
|
||
@override
|
||
String get notificationInboxTitle => '站内消息';
|
||
|
||
@override
|
||
String get notificationMarkAllRead => '全部已读';
|
||
|
||
@override
|
||
String get notificationLoadingFailed => '加载失败';
|
||
|
||
@override
|
||
String get noMessagesTitle => '暂无消息';
|
||
|
||
@override
|
||
String get operationFailedError => '操作失败,请重试';
|
||
|
||
@override
|
||
String get linkLabel => '链接:';
|
||
|
||
@override
|
||
String get notificationPreferencesTitle => '通知偏好设置';
|
||
|
||
@override
|
||
String get noNotificationChannels => '暂无可配置的通知频道';
|
||
|
||
@override
|
||
String get notificationPreferencesInfo => '您可以选择接收哪些类型的通知。强制通知(如安全告警)无法关闭。';
|
||
|
||
@override
|
||
String get mandatoryNotificationsSection => '重要通知(不可关闭)';
|
||
|
||
@override
|
||
String get optionalNotificationsSection => '可选通知';
|
||
|
||
@override
|
||
String get savePreferencesButton => '保存偏好设置';
|
||
|
||
@override
|
||
String get requiredLabel => '必需';
|
||
|
||
@override
|
||
String get preferencesSavedMessage => '通知偏好已保存';
|
||
|
||
@override
|
||
String saveFailedMessage(String error) {
|
||
return '保存失败: $error';
|
||
}
|
||
|
||
@override
|
||
String get referralScreenTitle => '邀请有礼';
|
||
|
||
@override
|
||
String get yourReferralCodeLabel => '你的推荐码';
|
||
|
||
@override
|
||
String get copyReferralCodeTooltip => '复制推荐码';
|
||
|
||
@override
|
||
String get copyInviteLinkButton => '复制邀请链接';
|
||
|
||
@override
|
||
String get shareButton => '分享';
|
||
|
||
@override
|
||
String get copiedToClipboard => '已复制到剪贴板';
|
||
|
||
@override
|
||
String get referralRecordsSection => '推荐记录';
|
||
|
||
@override
|
||
String get viewAllReferralsLink => '查看全部 >';
|
||
|
||
@override
|
||
String get pendingRewardsSection => '待领积分';
|
||
|
||
@override
|
||
String get viewAllRewardsLink => '查看全部 >';
|
||
|
||
@override
|
||
String get referredLabel => '已推荐';
|
||
|
||
@override
|
||
String get peopleUnit => '人';
|
||
|
||
@override
|
||
String get activatedLabel => '已激活';
|
||
|
||
@override
|
||
String get pendingCreditsLabel => '待领积分';
|
||
|
||
@override
|
||
String get rewardRulesTitle => '奖励规则';
|
||
|
||
@override
|
||
String get proReferralReward => '推荐 Pro 套餐:你获得 \$15 积分,对方获得 \$5 积分';
|
||
|
||
@override
|
||
String get enterpriseReferralReward =>
|
||
'推荐 Enterprise 套餐:你获得 \$50 积分,对方获得 \$20 积分';
|
||
|
||
@override
|
||
String get renewalBonusReward => '对方续订后,你持续获得每月付款额 10% 的积分,最长 12 个月';
|
||
|
||
@override
|
||
String get creditDeductionNote => '积分自动抵扣你的下期账单';
|
||
|
||
@override
|
||
String get noReferralsMessage => '暂无推荐记录,分享推荐码邀请好友吧';
|
||
|
||
@override
|
||
String get pendingPaymentStatus => '待付款';
|
||
|
||
@override
|
||
String get activeStatus => '已激活';
|
||
|
||
@override
|
||
String get rewardedStatus => '已奖励';
|
||
|
||
@override
|
||
String get expiredStatus => '已过期';
|
||
|
||
@override
|
||
String get registeredAt => '注册于';
|
||
|
||
@override
|
||
String get noPendingRewardsMessage => '暂无待领积分';
|
||
|
||
@override
|
||
String get noReferralRecordsMessage => '暂无推荐记录';
|
||
|
||
@override
|
||
String get noRewardRecordsMessage => '暂无奖励记录';
|
||
|
||
@override
|
||
String get pendingDeductionStatus => '待抵扣';
|
||
|
||
@override
|
||
String get billingTitle => '订阅与用量';
|
||
|
||
@override
|
||
String get upgradeButton => '升级套餐';
|
||
|
||
@override
|
||
String get upgradeDialogTitle => '升级套餐';
|
||
|
||
@override
|
||
String get upgradeDialogMessage => '请前往 Web 管理后台 → 账单 → 套餐 完成升级。';
|
||
|
||
@override
|
||
String get acknowledgeButton => '知道了';
|
||
|
||
@override
|
||
String get currentPlanLabel => '当前套餐';
|
||
|
||
@override
|
||
String get periodEndLabel => '当期结束:';
|
||
|
||
@override
|
||
String get tokenUsageLabel => '本月 Token 用量';
|
||
|
||
@override
|
||
String get unlimitedLabel => '不限量';
|
||
|
||
@override
|
||
String get billingStatusActive => '正常';
|
||
|
||
@override
|
||
String get billingStatusTrialing => '试用期';
|
||
|
||
@override
|
||
String get billingStatusPastDue => '待付款';
|
||
|
||
@override
|
||
String get billingStatusCancelled => '已取消';
|
||
|
||
@override
|
||
String get billingStatusExpired => '已过期';
|
||
|
||
@override
|
||
String get invoicePaidStatus => '已付款';
|
||
|
||
@override
|
||
String get invoiceUnpaidStatus => '待付款';
|
||
|
||
@override
|
||
String get serversPageTitle => '服务器';
|
||
|
||
@override
|
||
String get noServersTitle => '未找到服务器';
|
||
|
||
@override
|
||
String get noServersFiltered => '没有匹配当前筛选条件的服务器';
|
||
|
||
@override
|
||
String get allEnvironments => '全部';
|
||
|
||
@override
|
||
String get ipAddressLabel => 'IP 地址';
|
||
|
||
@override
|
||
String get osLabel => '操作系统';
|
||
|
||
@override
|
||
String get cpuLabel => 'CPU';
|
||
|
||
@override
|
||
String get memoryLabel => '内存';
|
||
|
||
@override
|
||
String get regionLabel => '区域';
|
||
|
||
@override
|
||
String get cloudProviderLabel => '云厂商';
|
||
|
||
@override
|
||
String get createdAtLabel => '创建时间';
|
||
|
||
@override
|
||
String get standingOrdersPageTitle => '常驻指令';
|
||
|
||
@override
|
||
String get standingOrdersEmptyHint => '配置后常驻指令将显示在此处';
|
||
|
||
@override
|
||
String executionHistoryLabel(int count) {
|
||
return '执行历史 ($count)';
|
||
}
|
||
|
||
@override
|
||
String get unnamedOrderName => '未命名指令';
|
||
|
||
@override
|
||
String get neverExecuted => '从未执行';
|
||
|
||
@override
|
||
String updateStatusError(String error) {
|
||
return '更新状态失败: $error';
|
||
}
|
||
|
||
@override
|
||
String get settingsPageTitle => '设置';
|
||
|
||
@override
|
||
String get appearanceThemeLabel => '外观主题';
|
||
|
||
@override
|
||
String get languageLabel => '语言';
|
||
|
||
@override
|
||
String get languageZh => '简体中文';
|
||
|
||
@override
|
||
String get languageZhTW => '繁體中文';
|
||
|
||
@override
|
||
String get languageEn => 'English';
|
||
|
||
@override
|
||
String get languageAuto => '自动(跟随系统)';
|
||
|
||
@override
|
||
String get referralTabTenant => '企业推荐';
|
||
|
||
@override
|
||
String get referralTabPersonal => '我的圈子';
|
||
|
||
@override
|
||
String get loadFailed => '加载失败';
|
||
|
||
@override
|
||
String get myPersonalInviteCode => '我的个人邀请码';
|
||
|
||
@override
|
||
String get pointsBalanceTitle => '积分余额';
|
||
|
||
@override
|
||
String get currentBalanceLabel => '当前余额';
|
||
|
||
@override
|
||
String get circleMembersCountLabel => '圈子成员';
|
||
|
||
@override
|
||
String get totalEarnedLabel => '累计获得';
|
||
|
||
@override
|
||
String get circleRewardRulesTitle => '圈子奖励规则';
|
||
|
||
@override
|
||
String get circleRule1 => '新成员加入你的圈子,你和对方各获 200 积分欢迎礼';
|
||
|
||
@override
|
||
String get circleRule2 => '圈子成员订阅 Pro 时,你获 1500 pts,对方获 500 pts';
|
||
|
||
@override
|
||
String get circleRule3 => '圈子成员订阅 Enterprise 时,你获 5000 pts,对方获 2000 pts';
|
||
|
||
@override
|
||
String get circleRule4 => '每月续订时你持续获得付款额 10% 的积分,最长 12 个月';
|
||
|
||
@override
|
||
String get circleRule5 => '二级圈子续订,你获 5% 积分,最长 6 个月';
|
||
|
||
@override
|
||
String get circleRule6 => '积分可兑换额外使用配额或解锁智能体';
|
||
|
||
@override
|
||
String get myCircleMembersSection => '我的圈子成员';
|
||
|
||
@override
|
||
String get pointsHistorySection => '积分记录';
|
||
|
||
@override
|
||
String get noCircleMembersMessage => '暂无圈子成员,快去邀请好友吧!';
|
||
|
||
@override
|
||
String get noPointsHistoryMessage => '暂无积分记录';
|
||
|
||
@override
|
||
String get activatedStatus => '已激活';
|
||
|
||
@override
|
||
String get joinedAtLabel => '加入于';
|
||
|
||
@override
|
||
String get viewAllButton => '查看全部';
|
||
|
||
@override
|
||
String get rewardHistoryPageTitle => '奖励历史';
|
||
|
||
@override
|
||
String get noRewardsHistoryMessage => '暂无奖励记录';
|
||
|
||
@override
|
||
String get creditDeductionReward => '积分自动抵扣你的下期账单';
|
||
|
||
@override
|
||
String get selectLanguageTitle => '选择语言';
|
||
|
||
@override
|
||
String get pushNotificationsLabel => '推送通知';
|
||
|
||
@override
|
||
String get soundLabel => '提示音';
|
||
|
||
@override
|
||
String get hapticFeedbackLabel => '震动反馈';
|
||
|
||
@override
|
||
String get conversationEngineLabel => '对话引擎';
|
||
|
||
@override
|
||
String get ttsVoiceLabel => '语音音色';
|
||
|
||
@override
|
||
String get ttsStyleLabel => '语音风格';
|
||
|
||
@override
|
||
String get subscriptionLabel => '订阅与用量';
|
||
|
||
@override
|
||
String get changePasswordLabel => '修改密码';
|
||
|
||
@override
|
||
String get versionLabel => '版本';
|
||
|
||
@override
|
||
String get checkUpdateLabel => '检查更新';
|
||
|
||
@override
|
||
String get tenantLabel => '租户';
|
||
|
||
@override
|
||
String get logoutButton => '退出登录';
|
||
|
||
@override
|
||
String get selectThemeTitle => '选择主题';
|
||
|
||
@override
|
||
String get darkModeLabel => '深色模式';
|
||
|
||
@override
|
||
String get lightModeLabel => '浅色模式';
|
||
|
||
@override
|
||
String get followSystemLabel => '跟随系统';
|
||
|
||
@override
|
||
String get selectVoiceTitle => '选择语音音色';
|
||
|
||
@override
|
||
String get voiceCoralDesc => '女 · 温暖';
|
||
|
||
@override
|
||
String get voiceNovaDesc => '女 · 活泼';
|
||
|
||
@override
|
||
String get voiceSageDesc => '女 · 知性';
|
||
|
||
@override
|
||
String get voiceShimmerDesc => '女 · 柔和';
|
||
|
||
@override
|
||
String get voiceMarinDesc => '女 · 清澈';
|
||
|
||
@override
|
||
String get voiceAshDesc => '男 · 沉稳';
|
||
|
||
@override
|
||
String get voiceEchoDesc => '男 · 清朗';
|
||
|
||
@override
|
||
String get voiceOnyxDesc => '男 · 低沉';
|
||
|
||
@override
|
||
String get voiceVerseDesc => '男 · 磁性';
|
||
|
||
@override
|
||
String get voiceBalladDesc => '男 · 浑厚';
|
||
|
||
@override
|
||
String get voiceCedarDesc => '男 · 自然';
|
||
|
||
@override
|
||
String get voiceAlloyDesc => '中性';
|
||
|
||
@override
|
||
String get voiceFableDesc => '中性 · 叙事';
|
||
|
||
@override
|
||
String get selectEngineTitle => '选择对话引擎';
|
||
|
||
@override
|
||
String get agentSdkDesc => '支持工具审批、技能注入、会话恢复';
|
||
|
||
@override
|
||
String get claudeApiDesc => '直连 API,响应更快';
|
||
|
||
@override
|
||
String get selectStyleTitle => '选择语音风格';
|
||
|
||
@override
|
||
String get defaultStyleLabel => '默认';
|
||
|
||
@override
|
||
String get customStyleLabel => '自定义风格';
|
||
|
||
@override
|
||
String get customStyleHint => '例如:用东北话说话,幽默风趣';
|
||
|
||
@override
|
||
String get resetToDefaultButton => '恢复默认';
|
||
|
||
@override
|
||
String get styleProfessionalName => '专业干练';
|
||
|
||
@override
|
||
String get styleProfessionalDesc => '用专业、简洁、干练的语气说话,不拖泥带水。';
|
||
|
||
@override
|
||
String get styleGentleName => '温柔耐心';
|
||
|
||
@override
|
||
String get styleGentleDesc => '用温柔、耐心的语气说话,像一个贴心的朋友。';
|
||
|
||
@override
|
||
String get styleRelaxedName => '轻松活泼';
|
||
|
||
@override
|
||
String get styleRelaxedDesc => '用轻松、活泼的语气说话,带一点幽默感。';
|
||
|
||
@override
|
||
String get styleFormalName => '严肃正式';
|
||
|
||
@override
|
||
String get styleFormalDesc => '用严肃、正式的语气说话,像在正式会议中发言。';
|
||
|
||
@override
|
||
String get styleScifiName => '科幻AI';
|
||
|
||
@override
|
||
String get styleScifiDesc => '用科幻电影中AI的语气说话,冷静、理性、略带未来感。';
|
||
|
||
@override
|
||
String get editNameDialogTitle => '修改显示名称';
|
||
|
||
@override
|
||
String get displayNameLabel => '显示名称';
|
||
|
||
@override
|
||
String get displayNameHint => '输入新的显示名称';
|
||
|
||
@override
|
||
String get changePasswordTitle => '修改密码';
|
||
|
||
@override
|
||
String get currentPasswordLabel => '当前密码';
|
||
|
||
@override
|
||
String get newPasswordLabel => '新密码';
|
||
|
||
@override
|
||
String get confirmPasswordLabel => '确认新密码';
|
||
|
||
@override
|
||
String get passwordMismatchError => '两次输入的密码不一致';
|
||
|
||
@override
|
||
String get passwordMinLengthError => '新密码至少6个字符';
|
||
|
||
@override
|
||
String get confirmChangeButton => '确认修改';
|
||
|
||
@override
|
||
String get passwordChangedMessage => '密码已修改';
|
||
|
||
@override
|
||
String get nameUpdatedMessage => '名称已更新';
|
||
|
||
@override
|
||
String get updateFailedMessage => '更新失败';
|
||
|
||
@override
|
||
String get changeFailedMessage => '修改失败';
|
||
|
||
@override
|
||
String get logoutDialogTitle => '退出登录';
|
||
|
||
@override
|
||
String get logoutConfirmMessage => '确定要退出登录吗?';
|
||
|
||
@override
|
||
String get logoutConfirmButton => '退出';
|
||
|
||
@override
|
||
String get profileSubscriptionLabel => '订阅套餐与用量';
|
||
|
||
@override
|
||
String get profileFreePlanLabel => 'Free';
|
||
|
||
@override
|
||
String get profileReferralLabel => '邀请有礼';
|
||
|
||
@override
|
||
String get profileReferralHint => '推荐赚积分';
|
||
|
||
@override
|
||
String get profileInSiteMessagesLabel => '站内消息';
|
||
|
||
@override
|
||
String get profileViewMessagesLabel => '查看消息';
|
||
|
||
@override
|
||
String get errorNetworkError => '无法连接到服务器,请检查网络';
|
||
|
||
@override
|
||
String get errorDataFormat => '数据格式异常';
|
||
|
||
@override
|
||
String get errorUnknown => '发生未知错误';
|
||
|
||
@override
|
||
String get errorConnectionTimeout => '连接超时,服务器无响应';
|
||
|
||
@override
|
||
String get errorSendTimeout => '发送请求超时,请检查网络';
|
||
|
||
@override
|
||
String get errorReceiveTimeout => '等待响应超时,请稍后重试';
|
||
|
||
@override
|
||
String get errorBadCertificate => '安全证书验证失败';
|
||
|
||
@override
|
||
String get errorRequestCancelled => '请求已取消';
|
||
|
||
@override
|
||
String get errorBadRequest => '请求参数错误';
|
||
|
||
@override
|
||
String get errorPermissionDenied => '没有权限执行此操作';
|
||
|
||
@override
|
||
String get errorNotFound => '请求的资源不存在';
|
||
|
||
@override
|
||
String get errorConflict => '数据冲突,请刷新后重试';
|
||
|
||
@override
|
||
String get errorInvalidData => '提交的数据不合法';
|
||
|
||
@override
|
||
String get errorTooManyRequests => '请求过于频繁,请稍后重试';
|
||
|
||
@override
|
||
String get errorInternalServer => '服务器内部错误,请稍后重试';
|
||
|
||
@override
|
||
String get errorBadGateway => '服务器网关错误,请稍后重试';
|
||
|
||
@override
|
||
String get errorServiceUnavailable => '服务器暂时不可用,请稍后重试';
|
||
|
||
@override
|
||
String get errorConnectionReset => '连接被服务器重置,请稍后重试';
|
||
|
||
@override
|
||
String get errorConnectionRefused => '服务器拒绝连接,请确认服务是否启动';
|
||
|
||
@override
|
||
String get errorConnectionClosed => '连接已关闭,请稍后重试';
|
||
|
||
@override
|
||
String get errorSocketException => '网络连接异常,请检查网络设置';
|
||
|
||
@override
|
||
String get errorTlsException => '安全连接失败,请检查网络环境';
|
||
|
||
@override
|
||
String get errorNetworkRequestFailed => '网络请求失败,请检查网络后重试';
|
||
|
||
@override
|
||
String get defaultUserName => '用户';
|
||
|
||
@override
|
||
String agentInConversation(int count) {
|
||
return '对话中 · $count 条消息';
|
||
}
|
||
}
|
||
|
||
/// The translations for Chinese, as used in Taiwan (`zh_TW`).
|
||
class AppLocalizationsZhTw extends AppLocalizationsZh {
|
||
AppLocalizationsZhTw() : super('zh_TW');
|
||
|
||
@override
|
||
String get appTitle => '我智能體';
|
||
|
||
@override
|
||
String get appSubtitle => '伺服器叢集運維智能體';
|
||
|
||
@override
|
||
String get navMyAgents => '我的智能體';
|
||
|
||
@override
|
||
String get homeSubtitle => '我智能體 隨時為你服務';
|
||
|
||
@override
|
||
String get myAgentsSection => '我的智能體';
|
||
|
||
@override
|
||
String get officialAgent1Name => '我智能體 運維助手';
|
||
|
||
@override
|
||
String get officialAgent1Desc => '伺服器管理、SSH 執行、日誌分析';
|
||
|
||
@override
|
||
String get noOwnAgentsTitle => '還沒有自己的智能體';
|
||
|
||
@override
|
||
String get noOwnAgentsDesc => '點擊下方機器人按鈕,告訴 我智能體\n\"幫我招募一個 小龍蝦 智能體\"';
|
||
|
||
@override
|
||
String get quickTipsHeader => '你可以這樣說...';
|
||
|
||
@override
|
||
String get quickTip1 => '💬 \"幫我招募一個監控 GitHub Actions 的智能體\"';
|
||
|
||
@override
|
||
String get quickTip2 => '🔧 \"把我的 小龍蝦 配置匯出為 JSON\"';
|
||
|
||
@override
|
||
String get quickTip3 => '📊 \"分析我的伺服器最近7天的負載情況\"';
|
||
|
||
@override
|
||
String get quickTip4 => '🛡️ \"幫我設置每天凌晨2點自動備份資料庫\"';
|
||
|
||
@override
|
||
String get myAgentsTitle => '我的智能體';
|
||
|
||
@override
|
||
String get myAgentsEmptyTitle => '招募你的專屬智能體';
|
||
|
||
@override
|
||
String get myAgentsEmptyDesc =>
|
||
'透過與 我智能體 對話,你可以招募各種智能體:\n小龍蝦 程式助手、運維機器人、資料分析師...';
|
||
|
||
@override
|
||
String get myAgentsStep1Desc => '打開與 我智能體 的對話視窗';
|
||
|
||
@override
|
||
String get myAgentsStep2Desc => '例如:\"幫我招募一個 小龍蝦 程式助手\"';
|
||
|
||
@override
|
||
String get myAgentsStep3Title => '我智能體 自動部署';
|
||
|
||
@override
|
||
String get myAgentsStep3Desc => '部署完成後出現在這裡,透過 Telegram/WhatsApp 等渠道與它對話';
|
||
|
||
@override
|
||
String get myAgentsTemplatesHeader => '熱門模板(告訴 我智能體 你想要哪種)';
|
||
|
||
@override
|
||
String get statusRunning => '運行中';
|
||
|
||
@override
|
||
String get statusDeploying => '部署中';
|
||
|
||
@override
|
||
String get statusStopped => '已停止';
|
||
|
||
@override
|
||
String get dismissTitle => '解聘智能體';
|
||
|
||
@override
|
||
String dismissConfirmContent(String name) {
|
||
return '確認要解聘「$name」嗎?\n\n解聘後將停止並刪除該智能體容器,此操作不可撤銷。';
|
||
}
|
||
|
||
@override
|
||
String dismissSuccessMessage(String name) {
|
||
return '已解聘「$name」';
|
||
}
|
||
|
||
@override
|
||
String get chatStandingOrderDraftLabel => '常駐指令草稿';
|
||
|
||
@override
|
||
String get chatStartConversationPrompt => '開始與 我智能體 對話';
|
||
|
||
@override
|
||
String get agentCallRingingStatus => '我智能體 語音通話';
|
||
|
||
@override
|
||
String get agentCallActiveStatus => '我智能體';
|
||
|
||
@override
|
||
String get terminalTitle => '遠端終端機';
|
||
|
||
@override
|
||
String get terminalInitMessage => '我智能體 遠端終端機';
|
||
|
||
@override
|
||
String get tasksPageTitle => '任務';
|
||
|
||
@override
|
||
String get standingOrdersTab => '常駐指令';
|
||
|
||
@override
|
||
String get noStandingOrdersTitle => '暫無常駐指令';
|
||
|
||
@override
|
||
String get standingOrdersHint => '透過 我智能體 對話新增常駐指令';
|
||
|
||
@override
|
||
String get notificationInboxTitle => '站內訊息';
|
||
|
||
@override
|
||
String get notificationMarkAllRead => '全部已讀';
|
||
|
||
@override
|
||
String get noMessagesTitle => '暫無訊息';
|
||
|
||
@override
|
||
String get notificationPreferencesTitle => '通知偏好設定';
|
||
|
||
@override
|
||
String get notificationPreferencesInfo => '您可以選擇接收哪些類型的通知。強制通知(如安全告警)無法關閉。';
|
||
|
||
@override
|
||
String get mandatoryNotificationsSection => '重要通知(不可關閉)';
|
||
|
||
@override
|
||
String get savePreferencesButton => '儲存偏好設定';
|
||
|
||
@override
|
||
String get preferencesSavedMessage => '通知偏好已儲存';
|
||
|
||
@override
|
||
String get referralScreenTitle => '邀請有禮';
|
||
|
||
@override
|
||
String get yourReferralCodeLabel => '你的推薦碼';
|
||
|
||
@override
|
||
String get copyReferralCodeTooltip => '複製推薦碼';
|
||
|
||
@override
|
||
String get copyInviteLinkButton => '複製邀請連結';
|
||
|
||
@override
|
||
String get copiedToClipboard => '已複製到剪貼簿';
|
||
|
||
@override
|
||
String get referralRecordsSection => '推薦記錄';
|
||
|
||
@override
|
||
String get pendingRewardsSection => '待領積分';
|
||
|
||
@override
|
||
String get rewardRulesTitle => '獎勵規則';
|
||
|
||
@override
|
||
String get billingTitle => '訂閱與用量';
|
||
|
||
@override
|
||
String get upgradeButton => '升級方案';
|
||
|
||
@override
|
||
String get upgradeDialogTitle => '升級方案';
|
||
|
||
@override
|
||
String get currentPlanLabel => '目前方案';
|
||
|
||
@override
|
||
String get tokenUsageLabel => '本月 Token 用量';
|
||
|
||
@override
|
||
String get serversPageTitle => '伺服器';
|
||
|
||
@override
|
||
String get noServersTitle => '未找到伺服器';
|
||
|
||
@override
|
||
String get ipAddressLabel => 'IP 位址';
|
||
|
||
@override
|
||
String get cloudProviderLabel => '雲端廠商';
|
||
|
||
@override
|
||
String get createdAtLabel => '建立時間';
|
||
|
||
@override
|
||
String get settingsPageTitle => '設置';
|
||
|
||
@override
|
||
String get appearanceThemeLabel => '外觀主題';
|
||
|
||
@override
|
||
String get languageLabel => '語言';
|
||
|
||
@override
|
||
String get languageZh => '簡體中文';
|
||
|
||
@override
|
||
String get languageZhTW => '繁體中文';
|
||
|
||
@override
|
||
String get languageEn => 'English';
|
||
|
||
@override
|
||
String get languageAuto => '自動(跟隨系統)';
|
||
|
||
@override
|
||
String get referralTabTenant => '企業推薦';
|
||
|
||
@override
|
||
String get referralTabPersonal => '我的圈子';
|
||
|
||
@override
|
||
String get loadFailed => '加載失敗';
|
||
|
||
@override
|
||
String get myPersonalInviteCode => '我的個人邀請碼';
|
||
|
||
@override
|
||
String get pointsBalanceTitle => '積分餘額';
|
||
|
||
@override
|
||
String get currentBalanceLabel => '當前餘額';
|
||
|
||
@override
|
||
String get circleMembersCountLabel => '圈子成員';
|
||
|
||
@override
|
||
String get totalEarnedLabel => '累計獲得';
|
||
|
||
@override
|
||
String get circleRewardRulesTitle => '圈子獎勵規則';
|
||
|
||
@override
|
||
String get circleRule1 => '新成員加入你的圈子,你和對方各獲 200 積分歡迎禮';
|
||
|
||
@override
|
||
String get circleRule2 => '圈子成員訂閱 Pro 時,你獲 1500 pts,對方獲 500 pts';
|
||
|
||
@override
|
||
String get circleRule3 => '圈子成員訂閱 Enterprise 時,你獲 5000 pts,對方獲 2000 pts';
|
||
|
||
@override
|
||
String get circleRule4 => '每月續訂時你持續獲得付款額 10% 的積分,最長 12 個月';
|
||
|
||
@override
|
||
String get circleRule5 => '二級圈子續訂,你獲 5% 積分,最長 6 個月';
|
||
|
||
@override
|
||
String get circleRule6 => '積分可兌換額外使用配額或解鎖智能體';
|
||
|
||
@override
|
||
String get myCircleMembersSection => '我的圈子成員';
|
||
|
||
@override
|
||
String get pointsHistorySection => '積分記錄';
|
||
|
||
@override
|
||
String get noCircleMembersMessage => '暫無圈子成員,快去邀請好友吧!';
|
||
|
||
@override
|
||
String get noPointsHistoryMessage => '暫無積分記錄';
|
||
|
||
@override
|
||
String get activatedStatus => '已激活';
|
||
|
||
@override
|
||
String get joinedAtLabel => '加入於';
|
||
|
||
@override
|
||
String get viewAllButton => '查看全部';
|
||
|
||
@override
|
||
String get rewardHistoryPageTitle => '獎勵歷史';
|
||
|
||
@override
|
||
String get noRewardsHistoryMessage => '暫無獎勵記錄';
|
||
|
||
@override
|
||
String get creditDeductionReward => '積分自動抵扣下期賬單';
|
||
|
||
@override
|
||
String get selectLanguageTitle => '選擇語言';
|
||
|
||
@override
|
||
String get pushNotificationsLabel => '推送通知';
|
||
|
||
@override
|
||
String get soundLabel => '提示音';
|
||
|
||
@override
|
||
String get hapticFeedbackLabel => '震動反饋';
|
||
|
||
@override
|
||
String get conversationEngineLabel => '對話引擎';
|
||
|
||
@override
|
||
String get ttsVoiceLabel => '語音音色';
|
||
|
||
@override
|
||
String get ttsStyleLabel => '語音風格';
|
||
|
||
@override
|
||
String get subscriptionLabel => '訂閱與用量';
|
||
|
||
@override
|
||
String get changePasswordLabel => '修改密碼';
|
||
|
||
@override
|
||
String get tenantLabel => '租戶';
|
||
|
||
@override
|
||
String get logoutButton => '退出登入';
|
||
|
||
@override
|
||
String get selectThemeTitle => '選擇主題';
|
||
|
||
@override
|
||
String get darkModeLabel => '深色模式';
|
||
|
||
@override
|
||
String get lightModeLabel => '淺色模式';
|
||
|
||
@override
|
||
String get followSystemLabel => '跟隨系統';
|
||
|
||
@override
|
||
String get selectVoiceTitle => '選擇語音音色';
|
||
|
||
@override
|
||
String get selectEngineTitle => '選擇對話引擎';
|
||
|
||
@override
|
||
String get selectStyleTitle => '選擇語音風格';
|
||
|
||
@override
|
||
String get defaultStyleLabel => '預設';
|
||
|
||
@override
|
||
String get customStyleHint => '例如:用臺灣腔說話,親切自然';
|
||
|
||
@override
|
||
String get resetToDefaultButton => '恢復預設';
|
||
|
||
@override
|
||
String get editNameDialogTitle => '修改顯示名稱';
|
||
|
||
@override
|
||
String get displayNameLabel => '顯示名稱';
|
||
|
||
@override
|
||
String get displayNameHint => '輸入新的顯示名稱';
|
||
|
||
@override
|
||
String get changePasswordTitle => '修改密碼';
|
||
|
||
@override
|
||
String get currentPasswordLabel => '目前密碼';
|
||
|
||
@override
|
||
String get newPasswordLabel => '新密碼';
|
||
|
||
@override
|
||
String get confirmPasswordLabel => '確認新密碼';
|
||
|
||
@override
|
||
String get passwordMismatchError => '兩次輸入的密碼不一致';
|
||
|
||
@override
|
||
String get passwordMinLengthError => '新密碼至少6個字元';
|
||
|
||
@override
|
||
String get confirmChangeButton => '確認修改';
|
||
|
||
@override
|
||
String get passwordChangedMessage => '密碼已修改';
|
||
|
||
@override
|
||
String get logoutDialogTitle => '退出登入';
|
||
|
||
@override
|
||
String get logoutConfirmMessage => '確定要退出登入嗎?';
|
||
|
||
@override
|
||
String get logoutConfirmButton => '退出';
|
||
|
||
@override
|
||
String get profileSubscriptionLabel => '訂閱方案與用量';
|
||
|
||
@override
|
||
String get profileReferralLabel => '邀請有禮';
|
||
|
||
@override
|
||
String get profileReferralHint => '推薦賺積分';
|
||
|
||
@override
|
||
String get profileInSiteMessagesLabel => '站內訊息';
|
||
|
||
@override
|
||
String get profileViewMessagesLabel => '查看訊息';
|
||
|
||
@override
|
||
String get defaultUserName => '用戶';
|
||
|
||
@override
|
||
String agentInConversation(int count) {
|
||
return '對話中 · $count 則訊息';
|
||
}
|
||
}
|