新增公告弹窗和无人收件开关

This commit is contained in:
eoao
2025-08-03 21:03:54 +08:00
parent 3a40cfc63b
commit 658c1776d5
43 changed files with 857 additions and 474 deletions

View File

@@ -5,18 +5,18 @@ const en = {
starred: 'Starred',
settings: 'Settings',
analytics: 'Analytics',
allUsers: 'All users',
allMail: 'All mail',
allUsers: 'All Users',
allMail: 'All Mail',
permissions: 'Role',
inviteCode: 'Invite code',
SystemSettings: 'System settings',
inviteCode: 'Invite Code',
SystemSettings: 'System Settings',
noMoreData: 'No more data',
noMessagesFound: 'No messages found',
addAccount: 'Add account',
addAccount: 'Add Account',
emailAccount: 'Email',
deleteUser: 'Delete account',
deleteUser: 'Delete Account',
deleteUserBtn: 'Delete',
changePassword: 'Change password',
changePassword: 'Change Password',
newPassword: 'New password',
confirmPassword: 'Confirm password',
add: 'Add',
@@ -29,22 +29,23 @@ const en = {
changePwdBtn: 'Change',
username: 'Username',
password: 'Password',
delAccount: 'Delete account',
delAccount: 'Delete Account',
delAccountMsg: 'This will permanently delete your account and data. It cannot be reactivated.',
totalReceived: 'Total received',
totalSent: 'Total sent',
totalMailboxes: 'Total accounts',
totalUsers: 'Total users',
totalReceived: 'Total Received',
totalSent: 'Total Sent',
totalMailboxes: 'Total Accounts',
totalUsers: 'Total Users',
deleted: 'Deleted',
selectDeleted: 'Deleted',
active: 'Active',
emailSource: 'Email source',
userGrowth: 'User growth',
emailGrowth: 'Email growth',
emailSource: 'Email Source',
userGrowth: 'User Growth',
emailGrowth: 'Email Growth',
emailSent: 'Sent',
emailReceived: 'Received',
sentToday: 'Sent today',
sentToday: 'Sent Today',
total: 'Total',
growthTotalUsers: 'Total users',
growthTotalUsers: 'Total Users',
searchByEmail: 'Enter email to search',
tabEmailAddress: 'Email',
tabReceived: 'Received',
@@ -63,9 +64,9 @@ const en = {
tabSetting: 'Settings',
registrationIp: 'Registration IP',
recentIP: 'Recent IP',
recentActivity: 'Recent activity',
loginDevice: 'Login device',
loginSystem: 'Login system',
recentActivity: 'Recent Activity',
loginDevice: 'Login Device',
loginSystem: 'Login System',
browserLogin: 'Browser Login',
unauthorized: 'Unauthorized',
unlimited: 'Unlimited',
@@ -76,10 +77,10 @@ const en = {
perm: 'Role',
btnBan: 'Ban',
admin: 'Admin',
addUser: 'Add user',
addUser: 'Add User',
select: 'Select',
unknown: 'Unknown',
changePerm: 'Change role',
changePerm: 'Change Role',
from: 'From',
subject: 'Subject',
sender: 'Sender',
@@ -91,22 +92,22 @@ const en = {
order: 'Order',
default: 'Default',
description: 'Description',
removeBody: 'Remove body',
removeContent: 'Remove content',
removeAll: 'Remove all',
expand: 'Expand',
collapse: 'Collapse',
daily: 'Daily',
searchRegKeyDesc: 'Enter invite code to search',
remainingUses: 'Remaining uses',
remainingUses: 'Remaining Uses',
exhausted: 'Exhausted',
validUntil: 'Valid until',
validUntil: 'Valid Until',
expired: 'Expired',
copy: 'Copy',
history: 'History',
addRegKey: 'Add invite code',
regKey: 'Invite code',
addRegKey: 'Add Invite Code',
regKey: 'Invite Code',
noCodeFound: 'No messages found',
useHistory: 'Usage history',
useHistory: 'Usage History',
date: 'Date',
roleDesc: 'Role',
noSubject: 'No subject',
@@ -131,43 +132,43 @@ const en = {
regSwitch: 'Sign up',
loginSwitch: 'Sign in',
websiteSetting: 'Website',
websiteReg: 'Sign up',
multipleEmail: 'Multiple accounts',
multipleEmailDesc: 'Enable this feature to allow users to add multiple accounts',
physicallyWipeData: 'Physically wipe data',
physicallyWipeDataDesc: 'This action will permanently erase all deleted data',
websiteReg: 'Sign Up',
multipleEmail: 'Multiple Accounts',
multipleEmailDesc: 'Enable this feature to allow users to add multiple accounts.',
physicallyWipeData: 'Physically Wipe Data',
physicallyWipeDataDesc: 'This action will permanently erase all deleted data.',
customization: 'Customization',
websiteTitle: 'Title',
loginBoxOpacity: 'Login box opacity',
loginBoxOpacity: 'Login Box Opacity',
loginBackground: 'Background',
emailSetting: 'Email',
receiveEmails: 'Receive email',
autoRefresh: 'Auto refresh',
autoRefreshDesc: 'Automatically fetch the latest emails from the server',
sendEmail: 'Send email',
receiveEmail: 'Receive Email',
autoRefresh: 'Auto Refresh',
autoRefreshDesc: 'Automatically fetch the latest emails from the server.',
sendEmail: 'Send Email',
resendToken: 'Resend Token',
R2OS: 'R2 Object storage',
R2OS: 'R2 Object Storage',
osDomain: 'Domain',
emailPush: 'Email push',
tgBot: 'Telegram bot',
emailPush: 'Email Push',
tgBot: 'Telegram Bot',
disable: 'Disable',
disabled: 'Disabled',
otherEmail: 'Forwarding to external email',
otherEmail: 'Forwarding to External Email',
forwardingRules: 'Forwarding Rules',
forwardAll: 'All',
rules: 'Rules',
turnstileSetting: 'Turnstile',
signUpVerification: 'Sign up verification',
addEmailVerification: 'Add account verification',
signUpVerification: 'Sign Up Verification',
addEmailVerification: 'Add Account Verification',
about: 'About',
version: 'Version',
community: 'Community',
changeTitle: 'Change title',
changeTitle: 'Change Title',
addResendTokenDesc: 'Input to add; leave empty to delete.',
addOsDomain: 'Add domain',
addOsDomain: 'Add Domain',
domainDesc: 'Domain',
addTurnstileSecret: 'Add turnstile secret',
backgroundTitle: 'Change background',
backgroundTitle: 'Change Background',
tgBotDesc: 'Forward received emails to a Telegram bot',
tgBotToken: 'Bot token',
toBotTokenDesc: 'Multiple user chat_ids, separated by commas',
@@ -175,11 +176,11 @@ const en = {
otherEmailInputDesc: 'Separate multiple email addresses with commas.',
forwardingRulesDesc: 'Rule-based forwarding only forwards emails received by the specified address.',
ruleEmailsInputDesc: 'Separate multiple email addresses with commas.',
resendTokenList: 'Token list',
resendTokenList: 'Token List',
domain: 'Domain',
optional: 'Optional',
subjectInputDesc: 'Please enter the email subject.',
changeUserName: 'Change username',
changeUserName: 'Change Username',
sendSeparately: 'Separately',
send: 'Send',
reply: 'Reply',
@@ -204,9 +205,9 @@ const en = {
addSuccessMsg: 'Addition successful',
delConfirm: 'Confirm deleting {msg}?',
emptyRoleNameMsg: 'Role name cannot be empty',
changSuccessMsg: 'Changes saved successfully',
changeRoleTitle: 'Change role',
addRoleTitle: 'Add role',
saveSuccessMsg: 'Saved successfully',
changeRoleTitle: 'Change Role',
addRoleTitle: 'Add Role',
emptyUserNameMsg: 'Name cannot be empty',
delAccountConfirm: 'Confirm deleting current account and all associated data?',
clearAllDelConfirm: 'This action is irreversible. Enter <b style="font-weight: bold">DELETE</b> to proceed',
@@ -216,7 +217,7 @@ const en = {
delBackgroundConfirm: 'Confirm deleting this background?',
enable: 'Enable',
enabled: 'Enabled',
reSendConfirm: 'Confirm reset of {msg} send total?',
reSendConfirm: 'Confirm reset of {msg} send count?',
reSuccessMsg: 'Reset successful',
restoreConfirm: 'Confirm restoring {msg}?',
normalRestore: 'Normal restore',
@@ -234,7 +235,7 @@ const en = {
sendFailMsg: 'Send failed',
saveDraftConfirm: 'Save draft?',
delEmailsConfirm: 'Confirm batch delete these emails?',
sending: 'Sending Email...',
sending: 'Sending email...',
sendingErrorMsg: 'Sending in progress',
networkErrorMsg: 'Network error. Check your internet',
timeoutErrorMsg: 'Timeout. Try again later',
@@ -249,8 +250,8 @@ const en = {
supportDesc: 'Buy me tea',
featDesc: 'Feature Description',
emailInterception: 'Email Interception',
emailInterceptionDesc: '*Intercept emails by blocking entire domain using example.com to prevent users from receiving emails from certain websites.',
availableDomains: 'Available domains',
emailInterceptionDesc: 'Enter a domain or email address to prevent users from receiving emails from certain websites.',
availableDomains: 'Available Domains',
availableDomainsDesc: 'Restrict users to email domains specified. Domains not on the approved list will be blocked from registration, adding email addresses, and sending/receiving emails. If left blank, all domains will be allowed by default.',
backgroundUrlDesc: 'Image URL',
localUpload: ' Local upload',
@@ -260,6 +261,24 @@ const en = {
rulesVerify: 'Rules',
rulesVerifyTitle: 'Trigger After {count} Daily Uses per IP',
botVerifyMsg: 'Please verify that you are human',
noticeTitle: 'Notice',
noticePopup: 'Sign-in Popup',
icon: 'Icon',
position: 'Position',
offset: 'Offset',
duration: 'Duration',
topRight: 'Top Right',
topLeft: 'Top Left',
bottomRight: 'Bottom Right',
bottomLeft: 'Bottom Left',
width: 'Width',
titleDesc: 'Title',
noticeContentDesc: 'Notice content supports HTML',
verifyModuleFailed: 'Verification module failed to load. Please refresh the page',
popUp: 'Pop Up',
noRecipientTitle: 'No Recipient',
noRecipientDesc: 'Emails can be received even without a registered email address.',
preview: 'Preview'
}
export default en

View File

@@ -36,6 +36,7 @@ const zh = {
totalMailboxes: '邮箱数量',
totalUsers: '用户数量',
deleted: '删除',
selectDeleted: '已删除',
active: '正常',
emailSource: '邮件来源',
userGrowth: '用户增长',
@@ -91,7 +92,7 @@ const zh = {
order: '排序',
default: '默认',
description: '描述',
removeBody: '移除正文',
removeContent: '移除正文',
removeAll: '丢弃邮件',
expand: '展开',
collapse: '收起',
@@ -141,7 +142,7 @@ const zh = {
loginBoxOpacity: '登录透明',
loginBackground: '登录背景',
emailSetting: '邮件设置',
receiveEmails: '邮件接收',
receiveEmail: '邮件接收',
autoRefresh: '自动刷新',
autoRefreshDesc: '轮询请求服务器获取最新邮件',
sendEmail: '邮件发送',
@@ -164,7 +165,7 @@ const zh = {
community: '交流',
changeTitle: '修改标题',
addResendTokenDesc: '输入内容添加,不填则删除',
addOsDomain: '添加访问域名',
addOsDomain: '添加域名',
domainDesc: '域名',
addTurnstileSecret: '添加 Turnstile 密钥',
backgroundTitle: '设置背景',
@@ -204,7 +205,7 @@ const zh = {
addSuccessMsg: '添加成功',
delConfirm: '确认删除{msg}吗?',
emptyRoleNameMsg: '身份名不能为空',
changSuccessMsg: '修改成功',
saveSuccessMsg: '保存成功',
changeRoleTitle: '修改身份',
addRoleTitle: '添加身份',
emptyUserNameMsg: '用户名不能为空',
@@ -249,7 +250,7 @@ const zh = {
supportDesc: '请我喝杯奶茶',
featDesc: '功能说明',
emailInterception: '邮件拦截',
emailInterceptionDesc: '拦截邮件, 要拦截整个域名输入 *example.com, 可用于禁止用户接收某些网站的邮件',
emailInterceptionDesc: '输入邮箱或域名拦截邮件,可用于禁止用户接收某些网站的邮件',
availableDomains: '可用域名',
availableDomainsDesc: '限制用户只能使用指定的域名邮箱,不在配置名单内的域名会被禁止使用注册添加邮箱,接收发送邮件等功能,留空默认允许可用所有域名',
backgroundUrlDesc: '在线图片链接',
@@ -260,5 +261,24 @@ const zh = {
rulesVerify: '规则',
rulesVerifyTitle: 'IP 每天使用 {count} 次后触发',
botVerifyMsg: '请完成人机验证',
noticeTitle: '网站公告',
noticePopup: '登录弹窗',
icon: '图标',
position: '位置',
offset: '偏移距离',
duration: '显示时长',
topRight: '右上',
topLeft: '左上',
bottomRight: '右下',
bottomLeft: '左下',
width: '宽度',
titleDesc: '标题',
noticeContentDesc: '公告内容支持HTML',
verifyModuleFailed: '人机验证模块加载失败,请刷新页面',
popUp: '弹出',
noRecipientTitle: '无人收件',
noRecipientDesc: '即使没有注册的邮箱也能收到邮件',
preview: '预览'
}
export default zh