@frank-auth/react
Version:
Flexible and customizable React UI components for Frank Authentication
770 lines (769 loc) • 29.5 kB
text/typescript
import type {LocaleMessages} from './types';
export const zh: LocaleMessages = {
common: {
actions: {
save: '保存',
cancel: '取消',
delete: '删除',
edit: '编辑',
update: '更新',
create: '创建',
submit: '提交',
reset: '重置',
clear: '清除',
search: '搜索',
filter: '筛选',
sort: '排序',
refresh: '刷新',
reload: '重新加载',
back: '返回',
next: '下一步',
previous: '上一步',
continue: '继续',
finish: '完成',
close: '关闭',
open: '打开',
show: '显示',
hide: '隐藏',
copy: '复制',
paste: '粘贴',
cut: '剪切',
select: '选择',
selectAll: '全选',
deselect: '取消选择',
confirm: '确认',
deny: '拒绝',
approve: '批准',
reject: '拒绝',
retry: '重试',
undo: '撤销',
redo: '重做'
},
status: {
loading: '加载中...',
success: '成功',
error: '错误',
warning: '警告',
info: '信息',
pending: '待处理',
completed: '已完成',
failed: '失败',
cancelled: '已取消',
active: '活跃',
inactive: '非活跃',
enabled: '已启用',
disabled: '已禁用',
online: '在线',
offline: '离线',
connected: '已连接',
disconnected: '已断开'
},
timeAgo: {
justNow: '刚刚',
minutesAgo: '{count}分钟前',
hoursAgo: '{count}小时前',
daysAgo: '{count}天前',
weeksAgo: '{count}周前',
monthsAgo: '{count}个月前',
yearsAgo: '{count}年前'
},
navigation: {
home: '首页',
dashboard: '仪表板',
profile: '个人资料',
settings: '设置',
help: '帮助',
support: '支持',
documentation: '文档',
feedback: '反馈',
about: '关于',
privacy: '隐私',
terms: '条款',
contact: '联系'
},
general: {
yes: '是',
no: '否',
ok: '确定',
maybe: '也许',
none: '无',
all: '全部',
other: '其他',
unknown: '未知',
optional: '可选',
required: '必需',
recommended: '推荐',
advanced: '高级',
basic: '基础',
custom: '自定义',
default: '默认',
example: '示例',
placeholder: '占位符',
noData: '无数据',
noResults: '无结果',
empty: '空',
total: '总计',
subtotal: '小计',
count: '数量',
limit: '限制',
unlimited: '无限制'
}
},
auth: {
signIn: {
title: '登录',
subtitle: '登录到您的账户',
emailLabel: '邮箱',
emailPlaceholder: '请输入邮箱',
usernameLabel: '用户名',
usernamePlaceholder: '请输入用户名',
passwordLabel: '密码',
passwordPlaceholder: '请输入密码',
rememberMe: '记住我',
forgotPassword: '忘记密码?',
signInButton: '登录',
signInWithProvider: '使用{provider}登录',
orDivider: '或',
noAccount: '还没有账户?',
createAccount: '创建账户',
success: '登录成功',
welcomeBack: '欢迎回来!'
},
signUp: {
title: '注册',
subtitle: '创建您的账户',
firstNameLabel: '名',
firstNamePlaceholder: '请输入名字',
lastNameLabel: '姓',
lastNamePlaceholder: '请输入姓氏',
emailLabel: '邮箱',
emailPlaceholder: '请输入邮箱',
usernameLabel: '用户名',
usernamePlaceholder: '请选择用户名',
passwordLabel: '密码',
passwordPlaceholder: '请创建密码',
confirmPasswordLabel: '确认密码',
confirmPasswordPlaceholder: '请再次输入密码',
phoneLabel: '电话',
phonePlaceholder: '请输入电话号码',
signUpButton: '注册',
signUpWithProvider: '使用{provider}注册',
orDivider: '或',
hasAccount: '已有账户?',
signInLink: '登录',
termsAcceptance: '我同意{terms}和{privacy}',
termsOfService: '服务条款',
privacyPolicy: '隐私政策',
success: '注册成功',
welcomeMessage: '欢迎!'
},
passwordReset: {
title: '重置密码',
subtitle: '我们将发送重置密码的链接给您',
emailLabel: '邮箱',
emailPlaceholder: '请输入邮箱',
sendResetButton: '发送重置链接',
backToSignIn: '返回登录',
success: '链接已发送!',
checkEmail: '请检查您的邮箱以获取重置链接',
resetPassword: '设置新密码',
newPasswordLabel: '新密码',
newPasswordPlaceholder: '请输入新密码',
confirmNewPasswordLabel: '确认新密码',
confirmNewPasswordPlaceholder: '请再次输入新密码',
resetButton: '重置密码',
passwordUpdated: '密码已更新'
},
mfa: {
title: '双因子认证',
subtitle: '请输入验证应用中的代码',
codeLabel: '验证码',
codePlaceholder: '请输入6位数字',
verifyButton: '验证',
resendCode: '重新发送代码',
useBackupCode: '使用备用代码',
backupCodeLabel: '备用代码',
backupCodePlaceholder: '请输入备用代码',
useAuthenticator: '使用验证器应用',
success: '验证成功',
setup: {
title: '设置双因子认证',
subtitle: '为您的账户添加额外的安全层',
step1: '下载验证器应用',
step2: '扫描二维码',
step3: '输入验证码',
downloadApp: '下载Google Authenticator或Authy',
scanQR: '使用应用扫描此二维码',
enterCode: '从应用中输入6位数字代码',
manualEntry: '手动输入',
secretKey: '密钥',
verificationCode: '验证码',
enableButton: '启用2FA',
backupCodes: '备用代码',
saveBackupCodes: '请将这些代码保存在安全的地方',
backupCodesWarning: '这些代码只能使用一次'
}
},
passkeys: {
title: '通行密钥',
subtitle: '安全登录,无需密码',
setup: '设置通行密钥',
use: '使用通行密钥',
notSupported: '此浏览器不支持通行密钥',
setupButton: '设置通行密钥',
useButton: '使用通行密钥',
success: '通行密钥设置成功',
registered: '通行密钥已注册',
manage: {
title: '管理通行密钥',
noPasskeys: '未设置通行密钥',
addPasskey: '添加通行密钥',
deviceName: '设备名称',
createdAt: '创建时间',
lastUsed: '最后使用',
remove: '移除',
removeConfirm: '确定要移除此通行密钥吗?'
}
},
oauth: {
signInWith: '使用{provider}登录',
signUpWith: '使用{provider}注册',
continueWith: '使用{provider}继续',
connecting: '连接中...',
success: '连接成功',
error: '连接错误',
cancelled: '连接已取消',
providers: {
google: 'Google',
github: 'GitHub',
microsoft: 'Microsoft',
facebook: 'Facebook',
apple: 'Apple',
twitter: 'Twitter',
linkedin: 'LinkedIn',
discord: 'Discord',
slack: 'Slack',
spotify: 'Spotify'
}
},
verification: {
email: {
title: '邮箱验证',
subtitle: '我们已向您的邮箱发送了验证链接',
checkEmail: '请检查您的邮箱',
resendEmail: '重新发送邮件',
changeEmail: '更改邮箱',
success: '邮箱已验证',
verified: '邮箱验证成功'
},
phone: {
title: '手机验证',
subtitle: '请输入发送到您手机的验证码',
codeLabel: '验证码',
codePlaceholder: '请输入6位数字',
resendCode: '重新发送验证码',
verifyButton: '验证',
success: '手机已验证',
verified: '手机验证成功'
}
},
magicLink: {
title: '魔法链接',
subtitle: '我们将发送安全登录链接给您',
emailLabel: '邮箱',
emailPlaceholder: '请输入邮箱',
sendLinkButton: '发送魔法链接',
checkEmail: '请检查您的邮箱以获取魔法链接',
success: '魔法链接已发送',
expired: '魔法链接已过期',
invalid: '魔法链接无效'
},
logout: {
title: '退出登录',
subtitle: '确定要退出登录吗?',
button: '退出登录',
confirm: '是的,退出登录',
success: '已退出登录',
goodbye: '再见!'
},
session: {
expired: '会话已过期',
invalid: '无效的会话',
refresh: '刷新会话',
refreshing: '正在刷新会话...',
multipleWarning: '检测到多个会话',
deviceLimit: '已达到设备限制'
}
},
user: {
profile: {
title: '个人资料',
personalInfo: '个人信息',
accountInfo: '账户信息',
security: '安全',
preferences: '偏好设置',
firstName: '名',
lastName: '姓',
email: '邮箱',
username: '用户名',
phone: '电话',
bio: '个人简介',
website: '网站',
location: '位置',
timezone: '时区',
language: '语言',
avatar: '头像',
changeAvatar: '更改头像',
removeAvatar: '移除头像',
updateProfile: '更新个人资料',
profileUpdated: '个人资料已更新'
},
security: {
title: '安全',
changePassword: '更改密码',
currentPassword: '当前密码',
newPassword: '新密码',
confirmPassword: '确认密码',
passwordStrength: '密码强度',
passwordRequirements: '密码要求',
twoFactor: '双因子认证',
enableTwoFactor: '启用2FA',
disableTwoFactor: '禁用2FA',
twoFactorEnabled: '2FA已启用',
twoFactorDisabled: '2FA已禁用',
backupCodes: '备用代码',
viewBackupCodes: '查看备用代码',
regenerateBackupCodes: '重新生成备用代码',
devices: '设备',
trustedDevices: '受信任的设备',
removeDevice: '移除设备',
deviceRemoved: '设备已移除',
sessions: '会话',
activeSessions: '活跃会话',
terminateSession: '终止会话',
terminateAllSessions: '终止所有会话',
sessionTerminated: '会话已终止',
connectedAccounts: '关联账户',
disconnect: '断开连接',
accountDisconnected: '账户已断开连接',
deleteAccount: '删除账户',
deleteAccountWarning: '此操作无法撤销',
deleteAccountConfirm: '删除我的账户',
accountDeleted: '账户已删除'
},
preferences: {
title: '偏好设置',
theme: '主题',
lightMode: '浅色模式',
darkMode: '深色模式',
systemMode: '系统',
notifications: '通知',
emailNotifications: '邮件通知',
pushNotifications: '推送通知',
smsNotifications: '短信通知',
marketingEmails: '营销邮件',
securityAlerts: '安全警报',
accountActivity: '账户活动',
productUpdates: '产品更新',
preferences: '偏好设置',
preferencesUpdated: '偏好设置已更新'
}
},
organization: {
general: {
title: '组织',
name: '名称',
description: '描述',
website: '网站',
logo: '标志',
settings: '设置',
members: '成员',
billing: '计费',
usage: '使用情况',
security: '安全',
integrations: '集成',
audit: '审核',
support: '支持'
},
profile: {
title: '组织资料',
updateOrganization: '更新组织',
organizationUpdated: '组织已更新',
logo: '标志',
changeLogo: '更改标志',
removeLogo: '移除标志',
brandColors: '品牌颜色',
primaryColor: '主色',
secondaryColor: '辅色',
customBranding: '自定义品牌',
domain: '域名',
customDomain: '自定义域名',
verifyDomain: '验证域名',
domainVerified: '域名已验证',
domainPending: '域名验证待处理',
contact: '联系方式',
contactEmail: '联系邮箱',
supportUrl: '支持网址',
address: '地址',
country: '国家',
timezone: '时区'
},
members: {
title: '成员',
totalMembers: '总成员数',
activeMembers: '活跃成员',
pendingInvitations: '待处理邀请',
roles: '角色',
permissions: '权限',
inviteMember: '邀请成员',
inviteMembers: '邀请成员',
emailAddress: '邮箱地址',
role: '角色',
customMessage: '自定义消息',
sendInvitation: '发送邀请',
invitationSent: '邀请已发送',
resendInvitation: '重新发送邀请',
cancelInvitation: '取消邀请',
invitationCancelled: '邀请已取消',
memberName: '成员姓名',
memberEmail: '成员邮箱',
memberRole: '成员角色',
memberStatus: '成员状态',
memberJoined: '加入日期',
lastActive: '最后活跃',
changeRole: '更改角色',
removeMember: '移除成员',
removeMemberConfirm: '确定要移除此成员吗?',
memberRemoved: '成员已移除',
transferOwnership: '转移所有权',
transferOwnershipConfirm: '确定要转移所有权吗?',
ownershipTransferred: '所有权已转移',
bulkActions: '批量操作',
selectAll: '全选',
selectedMembers: '选中的成员',
bulkRemove: '批量移除',
bulkChangeRole: '批量更改角色',
export: '导出',
exportMembers: '导出成员'
},
roles: {
title: '角色',
createRole: '创建角色',
editRole: '编辑角色',
deleteRole: '删除角色',
roleName: '角色名称',
roleDescription: '角色描述',
permissions: '权限',
systemPermissions: '系统权限',
organizationPermissions: '组织权限',
memberPermissions: '成员权限',
billingPermissions: '计费权限',
defaultRole: '默认角色',
customRole: '自定义角色',
roleCreated: '角色已创建',
roleUpdated: '角色已更新',
roleDeleted: '角色已删除',
assignRole: '分配角色',
unassignRole: '取消分配角色',
roleAssigned: '角色已分配',
roleUnassigned: '角色已取消分配',
owner: '所有者',
admin: '管理员',
member: '成员',
guest: '访客',
viewer: '查看者',
editor: '编辑者',
manager: '管理者'
},
settings: {
title: '设置',
general: '常规',
authentication: '认证',
security: '安全',
integrations: '集成',
advanced: '高级',
allowPublicSignup: '允许公开注册',
requireEmailVerification: '需要邮箱验证',
allowUsernameSignup: '允许用户名注册',
passwordPolicy: '密码策略',
minPasswordLength: '最短密码长度',
requireUppercase: '需要大写字母',
requireLowercase: '需要小写字母',
requireNumbers: '需要数字',
requireSymbols: '需要符号',
sessionDuration: '会话持续时间',
mfaRequired: '需要MFA',
allowedDomains: '允许的域名',
blockedDomains: '阻止的域名',
ipWhitelist: 'IP白名单',
ssoEnabled: '启用SSO',
ssoProvider: 'SSO提供商',
auditLogRetention: '审核日志保留期',
dataExport: '数据导出',
deleteOrganization: '删除组织',
deleteOrganizationWarning: '此操作将永久删除组织',
deleteOrganizationConfirm: '删除组织',
organizationDeleted: '组织已删除',
settingsUpdated: '设置已更新'
},
billing: {
title: '计费',
plan: '计划',
currentPlan: '当前计划',
usage: '使用情况',
billing: '计费',
invoices: '发票',
paymentMethod: '付款方式',
subscription: '订阅',
seats: '席位',
usedSeats: '已使用席位',
availableSeats: '可用席位',
addSeats: '添加席位',
removeSeats: '移除席位',
monthlyBilling: '月付',
yearlyBilling: '年付',
upgrade: '升级',
downgrade: '降级',
cancel: '取消',
pauseSubscription: '暂停订阅',
resumeSubscription: '恢复订阅',
billingHistory: '计费历史',
downloadInvoice: '下载发票',
updatePaymentMethod: '更新付款方式',
paymentMethodUpdated: '付款方式已更新',
subscriptionUpdated: '订阅已更新',
subscriptionCancelled: '订阅已取消',
subscriptionPaused: '订阅已暂停',
subscriptionResumed: '订阅已恢复',
trialExpired: '试用已过期',
trialDaysLeft: '试用剩余天数',
upgradeNow: '立即升级'
},
invitations: {
title: '邀请',
youreInvited: '您被邀请了',
invitedBy: '邀请人',
invitedTo: '被邀请到',
roleOffered: '提供的角色',
acceptInvitation: '接受邀请',
declineInvitation: '拒绝邀请',
invitationAccepted: '邀请已接受',
invitationDeclined: '邀请已拒绝',
invitationExpired: '邀请已过期',
invitationInvalid: '邀请无效',
alreadyMember: '已是成员',
pendingInvitations: '待处理邀请',
sentInvitations: '已发送邀请',
receivedInvitations: '已收到邀请',
invitationDetails: '邀请详情',
expiresAt: '过期时间',
customMessage: '自定义消息'
}
},
validation: {
required: '此字段为必填项',
email: '请输入有效的邮箱地址',
phone: '请输入有效的电话号码',
url: '请输入有效的网址',
minLength: '至少需要{min}个字符',
maxLength: '不能超过{max}个字符',
min: '最小值为{min}',
max: '最大值为{max}',
pattern: '格式无效',
passwordMismatch: '密码不匹配',
invalidFormat: '格式无效',
invalid: '无效',
tooShort: '太短',
tooLong: '太长',
tooSmall: '太小',
tooLarge: '太大',
notFound: '未找到',
alreadyExists: '已存在',
expired: '已过期',
weak: '弱',
strong: '强',
medium: '中等',
passwordStrength: {
veryWeak: '非常弱',
weak: '弱',
fair: '一般',
good: '良好',
strong: '强'
},
passwordRequirements: {
minLength: '至少{min}个字符',
uppercase: '至少一个大写字母',
lowercase: '至少一个小写字母',
number: '至少一个数字',
symbol: '至少一个符号'
}
},
errors: {
generic: {
unknown: '发生未知错误',
network: '网络错误',
timeout: '请求超时',
serverError: '服务器错误',
notFound: '未找到',
unauthorized: '未授权',
forbidden: '访问被拒绝',
badRequest: '错误的请求',
conflict: '冲突',
tooManyRequests: '请求过多',
maintenance: '系统维护中',
offline: '无网络连接'
},
auth: {
invalidCredentials: '无效的凭据',
accountLocked: '账户已锁定',
accountDisabled: '账户已禁用',
accountNotVerified: '账户未验证',
sessionExpired: '会话已过期',
invalidToken: '无效的令牌',
mfaRequired: '需要双因子认证',
invalidMfaCode: '无效的MFA代码',
passkeyNotSupported: '不支持通行密钥',
passkeyFailed: '通行密钥认证失败',
oauthFailed: 'OAuth认证失败',
oauthCancelled: 'OAuth认证已取消',
magicLinkExpired: '魔法链接已过期',
magicLinkInvalid: '无效的魔法链接',
passwordTooWeak: '密码太弱',
passwordReused: '密码已被使用',
emailNotVerified: '邮箱未验证',
phoneNotVerified: '手机未验证',
invitationExpired: '邀请已过期',
invitationInvalid: '无效的邀请',
invitationAlreadyAccepted: '邀请已被接受'
},
organization: {
notFound: '组织未找到',
accessDenied: '组织访问被拒绝',
memberLimitReached: '成员数量达到限制',
ownerRequired: '需要所有者',
cannotRemoveOwner: '无法移除所有者',
cannotRemoveSelf: '无法移除自己',
alreadyMember: '已是成员',
notMember: '不是成员',
invalidRole: '无效的角色',
roleNotFound: '角色未找到',
domainTaken: '域名已被使用',
domainInvalid: '无效的域名',
seatLimitReached: '席位数量达到限制',
subscriptionRequired: '需要订阅',
paymentFailed: '付款失败'
},
validation: {
invalidEmail: '无效的邮箱',
invalidPhone: '无效的电话号码',
invalidUrl: '无效的网址',
fieldRequired: '字段必填',
fieldTooShort: '字段太短',
fieldTooLong: '字段太长',
fieldInvalid: '字段无效',
passwordsDoNotMatch: '密码不匹配',
emailTaken: '邮箱已被使用',
usernameTaken: '用户名已被使用',
phoneNumberTaken: '电话号码已被使用',
domainTaken: '域名已被使用'
}
},
success: {
generic: {
saved: '已保存',
updated: '已更新',
created: '已创建',
deleted: '已删除',
sent: '已发送',
completed: '已完成',
copied: '已复制到剪贴板',
uploaded: '已上传',
downloaded: '已下载',
imported: '已导入',
exported: '已导出'
},
auth: {
signedIn: '已登录',
signedUp: '注册成功',
signedOut: '已退出登录',
passwordChanged: '密码已更改',
passwordReset: '密码已重置',
emailVerified: '邮箱已验证',
phoneVerified: '手机已验证',
mfaEnabled: '双因子认证已启用',
mfaDisabled: '双因子认证已禁用',
passkeyAdded: '通行密钥已添加',
passkeyRemoved: '通行密钥已移除',
accountConnected: '账户已连接',
accountDisconnected: '账户已断开连接'
},
organization: {
created: '组织已创建',
updated: '组织已更新',
deleted: '组织已删除',
memberInvited: '成员已邀请',
memberRemoved: '成员已移除',
roleChanged: '角色已更改',
ownershipTransferred: '所有权已转移',
settingsUpdated: '设置已更新',
domainVerified: '域名已验证',
subscriptionUpdated: '订阅已更新',
paymentMethodUpdated: '付款方式已更新'
}
},
components: {
loading: {
generic: '加载中...',
signIn: '正在登录...',
signUp: '正在注册...',
profile: '正在加载个人资料...',
organization: '正在加载组织...',
members: '正在加载成员...',
settings: '正在加载设置...',
verification: '正在验证...',
mfa: '正在验证MFA...',
passkey: '正在设置通行密钥...',
oauth: '正在连接OAuth...'
},
empty: {
generic: '暂无可用数据',
members: '未找到成员',
invitations: '暂无邀请',
sessions: '暂无活跃会话',
devices: '暂无注册设备',
notifications: '暂无通知',
history: '暂无历史记录',
logs: '暂无日志',
search: '未找到搜索结果',
filter: '没有匹配过滤器的项目'
},
confirm: {
delete: '确定要删除此项目吗?',
remove: '确定要移除此项目吗?',
cancel: '确定要取消吗?',
logout: '确定要退出登录吗?',
transfer: '确定要转移吗?',
disable: '确定要禁用吗?',
enable: '确定要启用吗?',
reset: '确定要重置吗?',
clear: '确定要清除吗?',
proceed: '要继续吗?',
areYouSure: '您确定吗?',
cannotUndo: '此操作无法撤销',
permanentAction: '这是永久操作'
},
help: {
password: '使用至少8个字符,包含字母、数字和符号',
mfa: '双因子认证提供额外的安全保护',
passkey: '通行密钥比密码更安全',
backup: '请将备用代码保存在安全的地方',
domain: '域名需要验证后才能使用',
webhook: 'Webhook发送实时通知',
apiKey: 'API密钥用于程序化访问',
role: '角色决定用户权限',
permission: '权限控制功能访问',
billing: '每月处理计费',
usage: '当前计划中监控使用情况'
}
}
};