发布v2.0.0分支

This commit is contained in:
zhangtao
2025-07-13 19:31:23 +08:00
parent 4150a39713
commit 6a8ca3becc
342 changed files with 39441 additions and 14737 deletions
+31
View File
@@ -0,0 +1,31 @@
import type { App } from "vue";
import { createI18n } from "vue-i18n";
import { useAppStoreHook } from "@/store/modules/app.store";
// 本地语言包
import enLocale from "./package/en";
import zhCnLocale from "./package/zh-cn";
const appStore = useAppStoreHook();
const messages = {
"zh-cn": {
...zhCnLocale,
},
en: {
...enLocale,
},
};
const i18n = createI18n({
legacy: false,
locale: appStore.language,
messages,
globalInjection: true,
});
// 全局注册 i18n
export function setupI18n(app: App<Element>) {
app.use(i18n);
}
export default i18n;
+205
View File
@@ -0,0 +1,205 @@
export default {
// Common section
common: {
confirm: "Confirm",
cancel: "Cancel",
reset: "Reset",
save: "Save",
edit: "Edit",
delete: "Delete",
add: "Add",
export: "Export",
import: "Import",
query: "Query",
resetQuery: "Reset Query",
back: "Back",
close: "Close",
refresh: "Refresh",
inputText: 'Please enter',
selectText: 'Please select',
startTimeText: 'Start Time',
endTimeText: 'End Time',
login: 'Login',
required: 'This field is required',
loginOut: 'Logout',
document: 'Project Documentation',
reminder: 'Reminder',
loginOutMessage: 'Are you sure you want to log out?',
ok: 'OK',
reload: 'Reload',
closeTab: 'Close Tab',
closeTheLeftTab: 'Close Left Tabs',
closeTheRightTab: 'Close Right Tabs',
closeOther: 'Close Other Tabs',
closeAll: 'Close All Tabs',
prevLabel: 'Previous',
nextLabel: 'Next',
skipLabel: 'Skip',
doneLabel: 'Done',
menu: 'Menu',
menuDes: 'Menu rendered based on route structure',
collapse: 'Collapse/Expand',
collapseDes: 'Expand and collapse the menu bar',
tagsView: 'Tags View',
tagsViewDes: 'Used to record route history',
tool: 'Tool',
toolDes: 'Used to customize system settings',
shrink: 'Collapse',
expand: 'Expand',
delMessage: 'Delete selected data?',
delWarning: 'Warning',
delOk: 'OK',
delCancel: 'Cancel',
delNoData: 'Please select data to delete',
delSuccess: 'Deleted successfully',
fullscreen: 'Fullscreen',
size: 'Size',
columnSetting: 'Column Settings',
lengthRange: 'Length must be between {min} and {max} characters',
notSpace: 'Cannot contain spaces',
notSpecialCharacters: 'Cannot contain special characters',
isEqual: 'The two inputs are inconsistent',
setting: 'Settings',
copySuccess: 'Copy successfully',
copyFailed: 'Copy failed',
},
// Menu internationalization
route: {
dashboard: "Dashboard",
document: "Document",
},
// 登录页面国际化
login: {
themeToggle: "Theme Switch",
languageToggle: "Language Switch",
dark: "Dark",
light: "Light",
username: "Please enter Username",
password: "Please enter Password",
newPassword: "Please enter new Password",
login: "Login",
captchaCode: "Please enter Verify Code",
capsLock: "Caps Lock is On",
rememberMe: "Remember Me",
forgetPassword: "Forget Password?",
message: {
username: {
required: "Please enter Username",
},
password: {
required: "Please enter Password",
min: "The password cannot be less than 6 characters",
confirm: "Please confirm the password again",
inconformity: "The two password entries are inconsistent",
},
captchaCode: {
required: "Please enter Verify Code",
},
mobile: {
required: "Please enter mobile number",
invalid: "Invalid mobile number format",
exist: "Mobile number already exists",
},
email: {
required: "Please enter email",
invalid: "Invalid email format",
exist: "Email already exists",
},
name: {
required: "Please enter account",
invalid: "Invalid account format",
min: "Account cannot be less than 2 characters",
},
agree: {
required: "Please agree to the User Agreement",
}
},
otherLoginMethods: "Other",
resetPassword: "Reset password",
thinkOfPasswd: "Remember your password?",
register: "Register account",
agree: "I have read and agree to the",
userAgreement: "User Agreement",
haveAccount: "Already have an account?",
noAccount: "Don't have an account?",
quickFill: "Quick fill",
reg: "Register",
},
// 导航栏国际化
navbar: {
dashboard: "Dashboard",
logout: "Logout",
document: "Document",
gitee: "Gitee",
lock: 'Lock',
unlock: 'Unlock',
profile: "User Profile",
config: "Config Center",
tour: "Project Tour",
refresh: "Refresh",
close: "Close",
closeLeft: "Close Left",
closeRight: "Close Right",
closeOther: "Close Other",
closeAll: "Close All",
},
lock: {
lockScreen: 'Lock screen',
lockPassword: 'Lock screen password',
unlock: 'Click to unlock',
backToLogin: 'Back to login',
entrySystem: 'Entry the system',
placeholder: 'Please enter the lock screen password',
message: 'Lock screen password error'
},
sizeSelect: {
tooltip: "Layout Size",
default: "Default",
large: "Large",
small: "Small",
message: {
success: "Switch Layout Size Successful!",
},
},
langSelect: {
message: {
success: "Switch Language Successful!",
},
},
settings: {
project: "Project Settings",
theme: "Theme",
interface: "Interface",
navigation: "Navigation",
themeColor: "Theme Color",
showTagsView: "Show Tags View",
showAppLogo: "Show App Logo",
sidebarColorScheme: "Sidebar Color Scheme",
showWatermark: "Show Watermark",
classicBlue: "Classic Blue",
minimalWhite: "Minimal White",
copyConfig: "Copy Config",
resetConfig: "Reset Default",
copySuccess: "Configuration copied to clipboard",
resetSuccess: "Reset to default configuration",
copyDescription:
"Copy config will generate current settings code, reset will restore all settings to default",
confirmReset: "Are you sure to reset all settings to default? This operation cannot be undone.",
applyToFile: "Apply to File",
onlyCopy: "Only Copy",
leftLayout: "Left Mode",
topLayout: "Top Mode",
mixLayout: "Mix Mode",
configManagement: "Config Management",
copyConfigDescription:
"Generate current settings code and copy to clipboard, then overwrite src/settings.ts file",
resetConfigDescription: "Restore all settings to system default values",
systemTheme: "System Theme",
},
error: {
noPermission: `Sorry, you don't have permission to access this page.`,
pageError: 'Sorry, the page you visited does not exist.',
networkError: 'Sorry, the server reported an error.',
returnToHome: 'Return to home'
},
};
+207
View File
@@ -0,0 +1,207 @@
export default {
// 公共部分
common: {
confirm: "确定",
cancel: "取消",
reset: "重置",
save: "保存",
edit: "编辑",
delete: "删除",
add: "添加",
export: "导出",
import: "导入",
query: "查询",
resetQuery: "重置查询",
back: "返回",
close: "关闭",
refresh: "刷新",
inputText: '请输入',
selectText: '请选择',
startTimeText: '开始时间',
endTimeText: '结束时间',
login: '登录',
required: '该项为必填项',
loginOut: '退出系统',
document: '项目文档',
reminder: '温馨提示',
loginOutMessage: '是否退出本系统?',
ok: '确定',
reload: '重新加载',
closeTab: '关闭标签页',
closeTheLeftTab: '关闭左侧标签页',
closeTheRightTab: '关闭右侧标签页',
closeOther: '关闭其它标签页',
closeAll: '关闭全部标签页',
prevLabel: '上一步',
nextLabel: '下一步',
skipLabel: '跳过',
doneLabel: '结束',
menu: '菜单',
menuDes: '以路由的结构渲染的菜单栏',
collapse: '展开缩收',
collapseDes: '展开和缩放菜单栏',
tagsView: '标签页',
tagsViewDes: '用于记录路由历史记录',
tool: '工具',
toolDes: '用于设置定制系统',
shrink: '收起',
expand: '展开',
delMessage: '是否删除所选中数据?',
delWarning: '提示',
delOk: '确定',
delCancel: '取消',
delNoData: '请选择需要删除的数据',
delSuccess: '删除成功',
fullscreen: '全屏',
size: '尺寸',
columnSetting: '列设置',
lengthRange: '长度在 {min} 到 {max} 个字符',
notSpace: '不能包含空格',
notSpecialCharacters: '不能包含特殊字符',
isEqual: '两次输入不一致',
setting: '设置',
copySuccess: '复制成功',
copyFailed: '复制失败',
},
// 菜单国际化
route: {
dashboard: "首页",
document: "项目文档",
},
// 登录页面国际化
login: {
themeToggle: "主题切换",
languageToggle: "语言切换",
dark: "暗黑",
light: "明亮",
username: "请输入账号",
password: "请输入密码",
newPassword: "请输入新密码",
login: "登 录",
captchaCode: "请输入验证码",
capsLock: "大写锁定已打开",
rememberMe: "记住我",
forgetPassword: "忘记密码?",
message: {
username: {
required: "请输入账号",
},
password: {
required: "请输入密码",
min: "密码不能少于6位",
confirm: "请再次确认密码",
inconformity: "两次密码输入不一致",
},
captchaCode: {
required: "请输入验证码",
},
mobile: {
required: "请输入手机号",
invalid: "手机号格式不正确",
exist: "手机号已存在",
},
email: {
required: "请输入邮箱",
invalid: "邮箱格式不正确",
exist: "邮箱已存在",
},
name: {
required: "请输入名称",
invalid: "名称格式不正确",
min: "名称不能少于2位",
},
agree: {
required: "请先勾选同意用户协议",
}
},
otherLoginMethods: "其他",
resetPassword: "重置密码",
thinkOfPasswd: "想起密码?",
register: "注册账号",
agree: "我已同意并阅读",
userAgreement: "用户协议",
haveAccount: "已有账号?",
noAccount: "您没有账号?",
quickFill: "快速填写",
reg: "注 册",
},
// 导航栏国际化
navbar: {
dashboard: "首页",
logout: "退出登录",
document: "项目文档",
gitee: "项目地址",
lock: '锁定屏幕',
unlock: '解锁屏幕',
profile: "个人中心",
config: "配置中心",
tour: "项目引导",
refresh: "刷新",
close: "关闭",
closeLeft: "关闭左侧",
closeRight: "关闭右侧",
closeOther: "关闭其他",
closeAll: "关闭所有",
},
lock: {
lockScreen: '锁定屏幕',
lockPassword: '锁屏密码',
unlock: '点击解锁',
backToLogin: '返回登录',
entrySystem: '进入系统',
placeholder: '请输入锁屏密码',
required: '请输入必填项',
message: '锁屏密码错误'
},
sizeSelect: {
tooltip: "布局大小",
default: "默认",
large: "大型",
small: "小型",
message: {
success: "切换布局大小成功!",
},
},
langSelect: {
message: {
success: "切换语言成功!",
},
},
settings: {
project: "项目配置",
theme: "主题设置",
interface: "界面设置",
navigation: "导航主题",
themeColor: "主题颜色",
themeColorTip: "主题颜色",
darkMode: "暗黑模式",
layoutSetting: "布局设置",
sidebarColorScheme: "侧边栏配色",
showTagsView: "显示页签",
showAppLogo: "显示Logo",
showWatermark: "显示水印",
classicBlue: "经典蓝",
minimalWhite: "极简白",
copyConfig: "复制配置",
resetConfig: "重置默认",
copySuccess: "配置已复制到剪贴板",
resetSuccess: "已重置为默认配置",
copyDescription: "复制配置将生成当前设置的代码,重置将恢复所有设置为默认值",
confirmReset: "确定要重置所有设置为默认值吗?此操作不可恢复。",
applyToFile: "应用到文件",
onlyCopy: "仅复制",
leftLayout: "左侧模式",
topLayout: "顶部模式",
mixLayout: "混合模式",
configManagement: "配置管理",
copyConfigDescription: "生成当前设置的代码并复制到剪贴板,然后覆盖 src/settings.ts 文件",
resetConfigDescription: "恢复所有设置为系统默认值",
systemTheme: "系统主题",
},
error: {
noPermission: `抱歉,您无权访问此页面。`,
pageError: '抱歉,您访问的页面不存在。',
networkError: '抱歉,服务器报告错误。',
returnToHome: '返回首页'
},
};