Skip to content

feat(translations): Add Simplified Chinese translation #37

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion application/src/translations/index.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
import enTranslations from './en';
import kmTranslations from './km';
import deTranslations from './de';
import zhcnTranslations from './zhcn';

export type Language = "en" | "km" | "de";
export type Language = "en" | "km" | "de" | "zhcn";

export const translations = {
en: enTranslations,
km: kmTranslations,
de: deTranslations,
zhcn: zhcnTranslations,
};

// Type for accessing translations by module and key
Expand Down
18 changes: 18 additions & 0 deletions application/src/translations/zhcn/about.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@

import { AboutTranslations } from '../types/about';

export const aboutTranslations: AboutTranslations = {
aboutCheckcle: "关于 Checkcle",
systemDescription: "Checkcle 是一个开源监控堆栈,可实时洞察服务器和服务健康状况,提供事件管理与操作透明度。采用 MIT 许可证发布。",
systemVersion: "系统版本",
license: "许可证",
mitLicense: "MIT 许可证",
links: "链接",
viewOnGithub: "在 GitHub 上查看",
viewDocumentation: "查看文档",
followOnX: "在 X 上关注",
joinDiscord: "加入 Discord",
quickActions: "快速操作",
quickActionsDescription: "快速访问常用监控操作和功能。请从以下操作中选择一项开始。",
quickTips: "快速提示",
};
29 changes: 29 additions & 0 deletions application/src/translations/zhcn/common.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@

import { CommonTranslations } from '../types/common';

export const commonTranslations: CommonTranslations = {
welcome: "欢迎",
logout: "登出",
language: "语言",
english: "English",
khmer: "Khmer",
german: "Deutsch",
goodMorning: "早上好",
goodAfternoon: "下午好",
goodEvening: "晚上好",
profile: "个人资料",
settings: "文档",
documentation: "文档",
notifications: "通知",
close: "关闭",
cancel: "取消",
view: "查看",
edit: "编辑",
delete: "删除",
status: "状态",
time: "时间",
title: "标题",
description: "描述",
success: "成功",
error: "错误",
};
55 changes: 55 additions & 0 deletions application/src/translations/zhcn/incident.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@

import { IncidentTranslations } from '../types/incident';

export const incidentTranslations: IncidentTranslations = {
incidentManagement: 'Incident Management',
incidentsManagementDesc: 'Track and manage service incidents and their resolutions',
unresolvedIncidents: 'Unresolved',
resolvedIncidents: 'Resolved',
activeIncidents: 'Active Incidents',
criticalIssues: 'Critical Issues',
avgResolutionTime: 'Avg. Resolution Time',
noIncidents: 'No Active Incidents',
createIncident: 'Create Incident',
investigating: 'Investigating',
identified: 'Identified',
monitoring: 'Monitoring',
resolved: 'Resolved',
scheduleIncidentManagement: 'Schedule & Incident Management',
incidentName: 'Incident Name',
incidentStatus: 'Incident Status',
highPriority: 'High Priority',
configurationSettings: 'Configuration Settings',
incidentCreatedSuccess: 'Incident created successfully',
basicInfo: 'Basic Information',
serviceId: 'Service ID',
assignedTo: 'Assigned To',
unassigned: 'Unassigned',
timeline: 'Timeline',
incidentTime: 'Incident Time',
resolutionTime: 'Resolution Time',
systems: 'Systems',
noSystems: 'No systems affected',
impactAnalysis: 'Impact Analysis',
rootCause: 'Root Cause',
resolutionSteps: 'Resolution Steps',
lessonsLearned: 'Lessons Learned',
resolutionDetails: 'Resolution Details',
assignment: 'Assignment',
download: 'Download',
downloadPdf: 'Download PDF',
print: 'Print',
confidentialNote: 'This document is confidential and intended for internal use only.',
generatedOn: 'Generated on',
enterResolutionSteps: 'Enter steps taken to resolve the incident',
enterLessonsLearned: 'Enter lessons learned from this incident',
editIncident: 'Edit Incident',
editIncidentDesc: 'Update details for this incident',
updating: 'Updating...',
update: 'Update',
create: 'Create',
creating: 'Creating...',
configuration: 'Configuration',
failedToUpdateStatus: 'Failed to update status',
inProgress: 'In Progress',
};
25 changes: 25 additions & 0 deletions application/src/translations/zhcn/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

import { Translations } from '../types';
import { commonTranslations } from './common';
import { menuTranslations } from './menu';
import { loginTranslations } from './login';
import { aboutTranslations } from './about';
import { servicesTranslations } from './services';
import { maintenanceTranslations } from './maintenance';
import { incidentTranslations } from './incident';
import { sslTranslations } from './ssl';
import { settingsTranslations } from './settings';

const enTranslations: Translations = {
common: commonTranslations,
menu: menuTranslations,
login: loginTranslations,
about: aboutTranslations,
services: servicesTranslations,
maintenance: maintenanceTranslations,
incident: incidentTranslations,
ssl: sslTranslations,
settings: settingsTranslations
};

export default enTranslations;
23 changes: 23 additions & 0 deletions application/src/translations/zhcn/login.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@

import { LoginTranslations } from '../types/login';

export const loginTranslations: LoginTranslations = {
signInToYourAccount: "登录您的账户",
dontHaveAccount: "没有账号?",
createOne: "创建一个",
signInWithGoogle: "使用 Google 登录",
orContinueWith: "或",
email: "电子邮件",
password: "密码",
forgot: "忘记密码?",
signIn: "登录",
signingIn: "登录中...",
loginSuccessful: "登录成功",
loginSuccessMessage: "您已成功登录。",
loginFailed: "登录失败",
authenticationFailed: "认证失败",
bySigningIn: "登录即表示您同意我们的",
termsAndConditions: "条款与条件",
and: "和",
privacyPolicy: "隐私政策",
};
68 changes: 68 additions & 0 deletions application/src/translations/zhcn/maintenance.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@

import { MaintenanceTranslations } from '../types/maintenance';

export const maintenanceTranslations: MaintenanceTranslations = {
scheduledMaintenance: '计划维护',
scheduledMaintenanceDesc: '查看并管理系统和服务的计划维护窗口',
upcomingMaintenance: '即将上线',
ongoingMaintenance: '进行中',
completedMaintenance: '已完成',
createMaintenanceWindow: '创建维护',
totalScheduledHours: '计划总工时',
maintenanceName: '维护名称',
maintenanceStatus: '状态',
scheduledStart: '计划开始',
scheduledEnd: '计划结束',
affectedServices: '受影响的服务',
impact: '影响',
minor: '轻微',
major: '严重',
critical: '关键',
none: '无',
actions: '行动',
scheduled: '已安排',
inprogress: '进行中',
completed: '已完成',
cancelled: '已取消',
markAsInProgress: '标记为进行中',
markAsCompleted: '标记为已完成',
markAsCancelled: '标记为已取消',
confirmDelete: '确认删除',
deleteMaintenanceConfirmation: '您确定要删除此维护窗口吗?',
thisActionCannotBeUndone: '此操作无法撤销。',
maintenanceDeleted: '维护已删除',
maintenanceDeletedDesc: '维护窗口已成功删除。',
errorDeletingMaintenance: '删除维护窗口时出错。',
statusUpdated: '状态已更新',
maintenanceStatusUpdated: '维护状态已成功更新。',
errorUpdatingMaintenanceStatus: '更新维护状态时出错。',
createMaintenance: '创建维护',
createMaintenanceDesc: '为您的服务安排新的维护窗口',
enterTitle: '输入维护标题',
enterDescription: '输入维护的详细描述',
startTime: '开始时间',
endTime: '结束时间',
selectDate: '选择一个日期',
enterAffectedServices: '受影响的服务',
separateServicesWithComma: '用 , 分隔多个服务',
priority: '优先级',
selectPriority: '选择优先级',
selectStatus: '选择状态',
selectImpact: '选择影响',
notifySubscribers: '通知订阅者',
notifySubscribersDesc: '当此次维护开始时,向所有订阅者发送通知',
maintenanceCreated: '维护已创建',
maintenanceCreatedDesc: '维护窗口已成功安排。',
errorCreatingMaintenance: '创建维护窗口时出错。',
errorFetchingMaintenanceData: '获取维护数据时出错。',
low: '低',
medium: '中',
high: '高',
created: '已创建',
lastUpdated: '最后更新',
subscribersWillBeNotified: '维护开始时将通知订阅用户',
noNotifications: '不会发送任何通知',
noScheduledMaintenance: '无计划维护',
noMaintenanceWindows: '在此期间没有维护窗口。点击“创建维护”按钮创建一个。',
maintenanceCreatedSuccess: '维护窗口已成功创建',
};
21 changes: 21 additions & 0 deletions application/src/translations/zhcn/menu.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@

import { MenuTranslations } from '../types/menu';

export const menuTranslations: MenuTranslations = {
uptimeMonitoring: "可用时间监控",
instanceMonitoring: "实例监控",
sslDomain: "SSL和域名",
scheduleIncident: "计划与事件",
operationalPage: "操作页面",
reports: "报告",
apiDocumentation: "API 文档",
settingPanel: "设置面板",
generalSettings: "常规设置",
userManagement: "用户管理",
notificationSettings: "通知设置",
alertsTemplates: "警报模板",
rolesManagement: "角色管理",
dataRetention: "数据保留",
backupSettings: "备份设置",
aboutSystem: "关于系统",
};
12 changes: 12 additions & 0 deletions application/src/translations/zhcn/services.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@

import { ServicesTranslations } from '../types/services';

export const servicesTranslations: ServicesTranslations = {
serviceName: "服务名称",
serviceType: "服务类型",
serviceStatus: "服务状态",
responseTime: "响应时间",
uptime: "可用时间",
lastChecked: "上次检查",
noServices: "没有服务符合您的筛选条件。",
};
52 changes: 52 additions & 0 deletions application/src/translations/zhcn/settings.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@

import { SettingsTranslations } from '../types/settings';

export const settingsTranslations: SettingsTranslations = {
// Tabs
systemSettings: "系统设置",
mailSettings: "邮件设置",

// System Settings
appName: "应用名称",
appURL: "应用 URL",
senderName: "发件人名称",
senderEmail: "发件人邮箱地址",
hideControls: "隐藏控件",

// Mail Settings
smtpSettings: "SMTP 配置",
smtpEnabled: "启用 SMTP",
smtpHost: "SMTP 主机",
smtpPort: "SMTP 端口",
smtpUsername: "SMTP 用户名",
smtpPassword: "SMTP 密码",
smtpAuthMethod: "认证方法",
enableTLS: "启用 TLS",
localName: "本地名称",

// Test Email
testEmail: "测试邮件",
sendTestEmail: "发送测试邮件",
emailTemplate: "电子邮件模板",
verification: "验证",
passwordReset: "密码重置",
confirmEmailChange: "确认邮箱更改",
otp: "OTP",
loginAlert: "登录提醒",
authCollection: "认证集合",
selectCollection: "选择集合",
toEmailAddress: "收件人邮箱地址",
enterEmailAddress: "输入电子邮件地址",
sending: "发送中...",

// Actions and status
save: "保存更改",
saving: "保存中...",
settingsUpdated: "设置已成功更新",
errorSavingSettings: "保存设置时出错",
errorFetchingSettings: "加载设置时出错",
testConnection: "测试连接",
testingConnection: "测试连接中...",
connectionSuccess: "连接成功",
connectionFailed: "连接失败"
};
Loading