- 新增用户排行榜页面和待发布页面,支持查看和发布排行榜 - 新增排行榜相关API接口,包括获取活动排行列表、修改队伍分数、发布排名和获取用户排名列表 - 新增RankPublishStatus枚举,用于管理排行榜发布状态 - 在活动卡片中新增结束活动按钮,点击后调用结束活动接口并生成排行榜数据 - 优化用户活动首页,只显示已发布和处理中的活动 - 调整游戏页面定时刷新间隔从2秒改为3秒,优化性能 - 修复排行榜详情页分数输入最大值限制问题 - 清理未使用的代码文件,移除results-detail-copy相关组件和路由 - 更新路由配置和类型定义,支持新的排行榜页面
394 lines
13 KiB
TypeScript
394 lines
13 KiB
TypeScript
const local: App.I18n.Schema = {
|
|
system: {
|
|
title: 'reader-starAdmin',
|
|
updateTitle: 'System Version Update Notification',
|
|
updateContent: 'A new version of the system has been detected. Do you want to refresh the page immediately?',
|
|
updateConfirm: 'Refresh immediately',
|
|
updateCancel: 'Later',
|
|
},
|
|
common: {
|
|
action: 'Action',
|
|
add: 'Add',
|
|
addSuccess: 'Add Success',
|
|
backToHome: 'Back to home',
|
|
batchDelete: 'Batch Delete',
|
|
cancel: 'Cancel',
|
|
close: 'Close',
|
|
check: 'Check',
|
|
expandColumn: 'Expand Column',
|
|
columnSetting: 'Column Setting',
|
|
config: 'Config',
|
|
confirm: 'Confirm',
|
|
delete: 'Delete',
|
|
deleteSuccess: 'Delete Success',
|
|
confirmDelete: 'Are you sure you want to delete?',
|
|
edit: 'Edit',
|
|
warning: 'Warning',
|
|
error: 'Error',
|
|
index: 'Index',
|
|
keywordSearch: 'Please enter keyword',
|
|
logout: 'Logout',
|
|
logoutConfirm: 'Are you sure you want to log out?',
|
|
lookForward: 'Coming soon',
|
|
modify: 'Modify',
|
|
modifySuccess: 'Modify Success',
|
|
noData: 'No Data',
|
|
operate: 'Operate',
|
|
pleaseCheckValue: 'Please check whether the value is valid',
|
|
refresh: 'Refresh',
|
|
reset: 'Reset',
|
|
search: 'Search',
|
|
switch: 'Switch',
|
|
tip: 'Tip',
|
|
trigger: 'Trigger',
|
|
update: 'Update',
|
|
updateSuccess: 'Update Success',
|
|
userCenter: 'User Center',
|
|
yesOrNo: {
|
|
yes: 'Yes',
|
|
no: 'No',
|
|
},
|
|
},
|
|
request: {
|
|
logout: 'Logout user after request failed',
|
|
logoutMsg: 'User status is invalid, please log in again',
|
|
logoutWithModal: 'Pop up modal after request failed and then log out user',
|
|
logoutWithModalMsg: 'User status is invalid, please log in again',
|
|
refreshToken: 'The requested token has expired, refresh the token',
|
|
tokenExpired: 'The requested token has expired',
|
|
},
|
|
theme: {
|
|
themeDrawerTitle: 'Theme Configuration',
|
|
tabs: {
|
|
appearance: 'Appearance',
|
|
layout: 'Layout',
|
|
general: 'General',
|
|
preset: 'Preset',
|
|
},
|
|
appearance: {
|
|
themeSchema: {
|
|
title: 'Theme Schema',
|
|
light: 'Light',
|
|
dark: 'Dark',
|
|
auto: 'Follow System',
|
|
},
|
|
grayscale: 'Grayscale',
|
|
colourWeakness: 'Colour Weakness',
|
|
themeColor: {
|
|
title: 'Theme Color',
|
|
primary: 'Primary',
|
|
info: 'Info',
|
|
success: 'Success',
|
|
warning: 'Warning',
|
|
error: 'Error',
|
|
followPrimary: 'Follow Primary',
|
|
unpublished: 'Unpublished',
|
|
published: 'Published',
|
|
processing: 'Processing',
|
|
finished: 'Finished',
|
|
},
|
|
themeRadius: {
|
|
title: 'Theme Radius',
|
|
},
|
|
recommendColor: 'Apply Recommended Color Algorithm',
|
|
recommendColorDesc: 'The recommended color algorithm refers to',
|
|
preset: {
|
|
title: 'Theme Presets',
|
|
apply: 'Apply',
|
|
applySuccess: 'Preset applied successfully',
|
|
default: {
|
|
name: 'Default Preset',
|
|
desc: 'Default theme preset with balanced settings',
|
|
},
|
|
dark: {
|
|
name: 'Dark Preset',
|
|
desc: 'Dark theme preset for night time usage',
|
|
},
|
|
compact: {
|
|
name: 'Compact Preset',
|
|
desc: 'Compact layout preset for small screens',
|
|
},
|
|
azir: {
|
|
name: 'Azir\'s Preset',
|
|
desc: 'It is a cold and elegant preset that Azir likes',
|
|
},
|
|
},
|
|
},
|
|
layout: {
|
|
layoutMode: {
|
|
'title': 'Layout Mode',
|
|
'vertical': 'Vertical Mode',
|
|
'horizontal': 'Horizontal Mode',
|
|
'vertical-mix': 'Vertical Mix Mode',
|
|
'vertical-hybrid-header-first': 'Left Hybrid Header-First',
|
|
'top-hybrid-sidebar-first': 'Top-Hybrid Sidebar-First',
|
|
'top-hybrid-header-first': 'Top-Hybrid Header-First',
|
|
'vertical_detail': 'Vertical menu layout, with the menu on the left and content on the right.',
|
|
'vertical-mix_detail':
|
|
'Vertical mix-menu layout, with the primary menu on the dark left side and the secondary menu on the lighter left side.',
|
|
'vertical-hybrid-header-first_detail':
|
|
'Left hybrid layout, with the primary menu at the top, the secondary menu on the dark left side, and the tertiary menu on the lighter left side.',
|
|
'horizontal_detail': 'Horizontal menu layout, with the menu at the top and content below.',
|
|
'top-hybrid-sidebar-first_detail':
|
|
'Top hybrid layout, with the primary menu on the left and the secondary menu at the top.',
|
|
'top-hybrid-header-first_detail':
|
|
'Top hybrid layout, with the primary menu at the top and the secondary menu on the left.',
|
|
},
|
|
tab: {
|
|
title: 'Tab Settings',
|
|
visible: 'Tab Visible',
|
|
cache: 'Tag Bar Info Cache',
|
|
cacheTip: 'One-click to open/close global keepalive',
|
|
height: 'Tab Height',
|
|
mode: {
|
|
title: 'Tab Mode',
|
|
slider: 'Slider',
|
|
chrome: 'Chrome',
|
|
button: 'Button',
|
|
},
|
|
closeByMiddleClick: 'Close Tab by Middle Click',
|
|
closeByMiddleClickTip: 'Enable closing tabs by clicking with the middle mouse button',
|
|
},
|
|
header: {
|
|
title: 'Header Settings',
|
|
height: 'Header Height',
|
|
breadcrumb: {
|
|
visible: 'Breadcrumb Visible',
|
|
showIcon: 'Breadcrumb Icon Visible',
|
|
},
|
|
},
|
|
sider: {
|
|
title: 'Sider Settings',
|
|
inverted: 'Dark Sider',
|
|
width: 'Sider Width',
|
|
collapsedWidth: 'Sider Collapsed Width',
|
|
mixWidth: 'Mix Sider Width',
|
|
mixCollapsedWidth: 'Mix Sider Collapse Width',
|
|
mixChildMenuWidth: 'Mix Child Menu Width',
|
|
autoSelectFirstMenu: 'Auto Select First Submenu',
|
|
autoSelectFirstMenuTip:
|
|
'When a first-level menu is clicked, the first submenu is automatically selected and navigated to the deepest level',
|
|
},
|
|
footer: {
|
|
title: 'Footer Settings',
|
|
visible: 'Footer Visible',
|
|
fixed: 'Fixed Footer',
|
|
height: 'Footer Height',
|
|
right: 'Right Footer',
|
|
},
|
|
content: {
|
|
title: 'Content Area Settings',
|
|
scrollMode: {
|
|
title: 'Scroll Mode',
|
|
tip: 'The theme scroll only scrolls the main part, the outer scroll can carry the header and footer together',
|
|
wrapper: 'Wrapper',
|
|
content: 'Content',
|
|
},
|
|
page: {
|
|
animate: 'Page Animate',
|
|
mode: {
|
|
'title': 'Page Animate Mode',
|
|
'fade': 'Fade',
|
|
'fade-slide': 'Slide',
|
|
'fade-bottom': 'Fade Zoom',
|
|
'fade-scale': 'Fade Scale',
|
|
'zoom-fade': 'Zoom Fade',
|
|
'zoom-out': 'Zoom Out',
|
|
'none': 'None',
|
|
},
|
|
},
|
|
fixedHeaderAndTab: 'Fixed Header And Tab',
|
|
},
|
|
},
|
|
general: {
|
|
title: 'General Settings',
|
|
watermark: {
|
|
title: 'Watermark Settings',
|
|
visible: 'Watermark Full Screen Visible',
|
|
text: 'Custom Watermark Text',
|
|
enableUserName: 'Enable User Name Watermark',
|
|
enableTime: 'Show Current Time',
|
|
timeFormat: 'Time Format',
|
|
},
|
|
multilingual: {
|
|
title: 'Multilingual Settings',
|
|
visible: 'Display multilingual button',
|
|
},
|
|
globalSearch: {
|
|
title: 'Global Search Settings',
|
|
visible: 'Display GlobalSearch button',
|
|
},
|
|
},
|
|
configOperation: {
|
|
copyConfig: 'Copy Config',
|
|
copySuccessMsg: 'Copy Success, Please replace the variable "themeSettings" in "src/theme/settings.ts"',
|
|
resetConfig: 'Reset Config',
|
|
resetSuccessMsg: 'Reset Success',
|
|
},
|
|
},
|
|
route: {
|
|
'login': 'Login',
|
|
'403': 'No Permission',
|
|
'404': 'Page Not Found',
|
|
'500': 'Server Error',
|
|
'iframe-page': 'Iframe',
|
|
'competition': 'Competition',
|
|
'question-store': 'Question Store',
|
|
'template': 'Template',
|
|
'rank': 'Rank',
|
|
'rank_rank-detail': 'Rank Detail',
|
|
'rank_rank-list': 'Rank List',
|
|
'template_template-detail': 'Template Detail',
|
|
'template_template-list': 'Template List',
|
|
'user': 'User',
|
|
'results': 'Results',
|
|
'competition_competition-add': 'Competition Add',
|
|
'competition_competition-detail': 'Competition Detail',
|
|
'competition_competition-list': 'Competition List',
|
|
'dictionary': 'Dictionary',
|
|
'admin-home': 'Admin Home',
|
|
'user_analysis': 'User Analysis',
|
|
'user_cover': 'User Cover',
|
|
'user_draw': 'User Draw',
|
|
'user_game': 'User Game',
|
|
'user_teams': 'User Teams',
|
|
'user_rules': 'User Rules',
|
|
'user_groups': 'User Groups',
|
|
'user_home': 'User Home',
|
|
'results_results-list': 'Results List',
|
|
'results_results-detail': 'Results Detail',
|
|
'test': 'Test',
|
|
'user_rank-list': 'User Rank List',
|
|
},
|
|
page: {
|
|
login: {
|
|
common: {
|
|
loginOrRegister: 'Login / Register',
|
|
userNamePlaceholder: 'Please enter user name',
|
|
phonePlaceholder: 'Please enter phone number',
|
|
codePlaceholder: 'Please enter verification code',
|
|
passwordPlaceholder: 'Please enter password',
|
|
confirmPasswordPlaceholder: 'Please enter password again',
|
|
codeLogin: 'Verification code login',
|
|
confirm: 'Confirm',
|
|
back: 'Back',
|
|
validateSuccess: 'Verification passed',
|
|
loginSuccess: 'Login successfully',
|
|
welcomeBack: 'Welcome back, {userName} !',
|
|
},
|
|
pwdLogin: {
|
|
title: 'Password Login',
|
|
rememberMe: 'Remember me',
|
|
forgetPassword: 'Forget password?',
|
|
register: 'Register',
|
|
otherAccountLogin: 'Other Account Login',
|
|
otherLoginMode: 'Other Login Mode',
|
|
superAdmin: 'Super Admin',
|
|
admin: 'Admin',
|
|
user: 'User',
|
|
},
|
|
codeLogin: {
|
|
title: 'Verification Code Login',
|
|
getCode: 'Get verification code',
|
|
reGetCode: 'Reacquire after {time}s',
|
|
sendCodeSuccess: 'Verification code sent successfully',
|
|
imageCodePlaceholder: 'Please enter image verification code',
|
|
},
|
|
register: {
|
|
title: 'Register',
|
|
agreement: 'I have read and agree to',
|
|
protocol: '《User Agreement》',
|
|
policy: '《Privacy Policy》',
|
|
},
|
|
resetPwd: {
|
|
title: 'Reset Password',
|
|
},
|
|
bindWeChat: {
|
|
title: 'Bind WeChat',
|
|
},
|
|
},
|
|
home: {
|
|
branchDesc:
|
|
'For the convenience of everyone in developing and updating the merge, we have streamlined the code of the main branch, only retaining the homepage menu, and the rest of the content has been moved to the example branch for maintenance. The preview address displays the content of the example branch.',
|
|
greeting: 'Good morning, {userName}, today is another day full of vitality!',
|
|
weatherDesc: 'Today is cloudy to clear, 20℃ - 25℃!',
|
|
projectCount: 'Project Count',
|
|
todo: 'Todo',
|
|
message: 'Message',
|
|
downloadCount: 'Download Count',
|
|
registerCount: 'Register Count',
|
|
schedule: 'Work and rest Schedule',
|
|
study: 'Study',
|
|
work: 'Work',
|
|
rest: 'Rest',
|
|
entertainment: 'Entertainment',
|
|
visitCount: 'Visit Count',
|
|
turnover: 'Turnover',
|
|
dealCount: 'Deal Count',
|
|
projectNews: {
|
|
title: 'Project News',
|
|
moreNews: 'More News',
|
|
desc1: 'reader-star created the open source project reader-star-admin on May 28, 2021!',
|
|
desc2: 'Yanbowe submitted a bug to reader-star-admin, the multi-tab bar will not adapt.',
|
|
desc3: 'reader-star is ready to do sufficient preparation for the release of reader-star-admin!',
|
|
desc4: 'reader-star is busy writing project documentation for reader-star-admin!',
|
|
desc5: 'reader-star just wrote some of the workbench pages casually, and it was enough to see!',
|
|
},
|
|
creativity: 'Creativity',
|
|
},
|
|
},
|
|
form: {
|
|
required: 'Cannot be empty',
|
|
userName: {
|
|
required: 'Please enter user name',
|
|
invalid: 'User name format is incorrect',
|
|
},
|
|
phone: {
|
|
required: 'Please enter phone number',
|
|
invalid: 'Phone number format is incorrect',
|
|
},
|
|
pwd: {
|
|
required: 'Please enter password',
|
|
invalid: '6-18 characters, including letters, numbers, and underscores',
|
|
},
|
|
confirmPwd: {
|
|
required: 'Please enter password again',
|
|
invalid: 'The two passwords are inconsistent',
|
|
},
|
|
code: {
|
|
required: 'Please enter verification code',
|
|
invalid: 'Verification code format is incorrect',
|
|
},
|
|
email: {
|
|
required: 'Please enter email',
|
|
invalid: 'Email format is incorrect',
|
|
},
|
|
},
|
|
dropdown: {
|
|
closeCurrent: 'Close Current',
|
|
closeOther: 'Close Other',
|
|
closeLeft: 'Close Left',
|
|
closeRight: 'Close Right',
|
|
closeAll: 'Close All',
|
|
pin: 'Pin Tab',
|
|
unpin: 'Unpin Tab',
|
|
},
|
|
icon: {
|
|
themeConfig: 'Theme Configuration',
|
|
themeSchema: 'Theme Schema',
|
|
lang: 'Switch Language',
|
|
fullscreen: 'Fullscreen',
|
|
fullscreenExit: 'Exit Fullscreen',
|
|
reload: 'Reload Page',
|
|
collapse: 'Collapse Menu',
|
|
expand: 'Expand Menu',
|
|
pin: 'Pin',
|
|
unpin: 'Unpin',
|
|
},
|
|
datatable: {
|
|
itemCount: 'Total {total} items',
|
|
},
|
|
}
|
|
|
|
export default local
|