diff --git a/src/shared/i18n/en-US.ts b/src/shared/i18n/en-US.ts index c4e4fe5..cf73003 100644 --- a/src/shared/i18n/en-US.ts +++ b/src/shared/i18n/en-US.ts @@ -1627,6 +1627,115 @@ const enUS: Record = { 'workflow.retry': 'Retry', 'newsArticle.closeAriaLabel': 'Close article', + + // sidebar / common + 'sidebar.library': 'Library', + 'common.skip': 'Skip', + 'common.done': 'Done', + + // instanceDetail — multiplayer + 'instanceDetail.screenshots': 'Screenshots', + 'instanceDetail.mpInstallSuccess': 'Multiplayer module installed successfully', + 'instanceDetail.mpInstallFailed': 'Multiplayer module installation failed', + 'instanceDetail.mpStarted': 'Multiplayer started', + 'instanceDetail.mpStartFailed': 'Failed to start multiplayer', + 'instanceDetail.mpStopped': 'Multiplayer stopped', + 'instanceDetail.mpStopFailed': 'Failed to stop multiplayer', + 'instanceDetail.mpHosting': 'Hosting room', + 'instanceDetail.mpHostFailed': 'Failed to host room', + 'instanceDetail.mpJoining': 'Joining room', + 'instanceDetail.mpJoinFailed': 'Failed to join room', + 'instanceDetail.mpDisconnected': 'Disconnected', + 'instanceDetail.mpDisconnectFailed': 'Failed to disconnect', + 'instanceDetail.mpTitle': 'Multiplayer Lobby', + 'instanceDetail.mpNotInstalled': 'Multiplayer module not installed', + 'instanceDetail.mpInstalling': 'Installing multiplayer module', + 'instanceDetail.mpInstall': 'Install multiplayer module', + 'instanceDetail.mpReady': 'Multiplayer ready', + 'instanceDetail.mpStart': 'Start multiplayer', + 'instanceDetail.mpStatus': 'Multiplayer status', + 'instanceDetail.mpIdle': 'Idle', + 'instanceDetail.mpHostingStatus': 'Hosting', + 'instanceDetail.mpGuestingStatus': 'Connected as guest', + 'instanceDetail.mpScanningStatus': 'Scanning for rooms', + 'instanceDetail.mpStop': 'Stop multiplayer', + 'instanceDetail.mpHostMode': 'Host mode', + 'instanceDetail.mpHostDesc': 'Create a room for friends to join', + 'instanceDetail.mpCreateRoom': 'Create room', + 'instanceDetail.mpGuestMode': 'Guest mode', + 'instanceDetail.mpGuestDesc': 'Enter invitation code to join', + 'instanceDetail.mpEnterCode': 'Enter invitation code', + 'instanceDetail.mpJoin': 'Join', + 'instanceDetail.mpInvitationCode': 'Invitation code', + 'instanceDetail.mpCopied': 'Copied', + 'instanceDetail.mpCopy': 'Copy', + 'instanceDetail.mpHostHint': 'Share the invitation code with friends', + 'instanceDetail.mpDisconnect': 'Disconnect', + 'instanceDetail.mpConnected': 'Connected', + 'instanceDetail.mpGuestHint': "Enter the host's invitation code", + 'instanceDetail.mpScanning': 'Scanning', + + // library — mod updates + 'library.modDirectoryChanged': 'Mod directory changed', + 'library.modDirectoryChangedDesc': 'Mod directory has changed, please rescan.', + 'library.modUpdates': 'Mod updates', + 'library.noModUpdates': 'No mod updates', + 'library.rescanMods': 'Rescan mods', + 'library.checkingModUpdates': 'Checking mod updates', + 'library.checkModUpdates': 'Check mod updates', + 'library.modsFound': '{count} mods found', + 'library.dirChanged': 'Directory changed', + 'library.updateAvailable': 'Update available', + + // settings — about + 'settings.about.upToDate': 'Up to date', + 'settings.about.checkFailed': 'Update check failed', + 'settings.about.title': 'About', + 'settings.about.currentVersion': 'Current version', + 'settings.about.checkForUpdates': 'Check for updates', + 'settings.about.checking': 'Checking...', + 'settings.about.checkNow': 'Check now', + 'settings.about.updateAvailable': 'Update available', + + // settings — plugins + 'settings.plugins.title': 'Plugins', + 'settings.plugins.subtitle': 'Manage installed plugins', + 'settings.plugins.registered': 'Registered plugins', + 'settings.plugins.installed': 'Installed', + 'settings.plugins.noRegistered': 'No registered plugins', + 'settings.plugins.loading': 'Loading...', + 'settings.plugins.noInstalled': 'No installed plugins', + 'settings.plugins.installing': 'Installing...', + 'settings.plugins.installBtn': 'Install', + 'settings.plugins.downloadedAwaitingApproval': 'Downloaded, awaiting approval', + 'settings.plugins.permissionApproval': 'Permission approval', + 'settings.plugins.cancel': 'Cancel', + 'settings.plugins.approve': 'Approve', + 'settings.plugins.downloadedPrompt': 'Plugin downloaded. Activate?', + 'settings.plugins.downloadedNoPermsPrompt': 'Plugin downloaded (no permissions). Activate?', + 'settings.plugins.permissionPrompt': 'This plugin requires the following permissions:', + 'settings.plugins.activateNoPermsPrompt': 'Activate this plugin?', + 'settings.plugins.noPermissionsDeclared': 'No permissions declared', + + // settings — section titles + 'settings.skinStation': 'Skin Station', + 'settings.fontCustom': 'Custom font', + 'settings.javaPath': 'Java path', + 'settings.jreManagement': 'Java runtime management', + 'settings.cleanup': 'Cleanup', + 'settings.fileManagement': 'File management', + 'settings.dataDirectory': 'Data directory', + 'settings.dynamicBackground': 'Dynamic background', + 'settings.hardware': 'Hardware', + 'settings.securityOverview': 'Security overview', + 'settings.credentialProtection': 'Credential protection', + 'settings.networkSecurity': 'Network security', + 'settings.launchSecurity': 'Launch security', + 'settings.apiKeyManagement': 'API key management', + 'settings.securityAudit': 'Security audit', + 'settings.aiAssistant': 'AI assistant', + 'settings.achievements': 'Achievements', + 'settings.nav.plugins': 'Plugins', }; export default enUS; diff --git a/src/shared/i18n/zh-CN.ts b/src/shared/i18n/zh-CN.ts index 2279ae0..4631d77 100644 --- a/src/shared/i18n/zh-CN.ts +++ b/src/shared/i18n/zh-CN.ts @@ -1602,6 +1602,139 @@ const zhCN: Record = { 'workflow.retry': '重试', 'newsArticle.closeAriaLabel': '关闭文章', + + // marketplace (previously missing in zh-CN) + 'marketplace.searchPlaceholder': '搜索 {type}、整合包、光影...', + 'marketplace.modrinth': 'MODRINTH', + 'marketplace.curseforge': 'CURSEFORGE', + 'marketplace.clearFilters': '清除筛选', + 'marketplace.allVersions': '所有版本', + 'marketplace.trending': '本周热门', + 'marketplace.recentlyUpdated': '最近更新', + 'marketplace.view': '查看', + 'marketplace.noInstance': '无实例', + 'marketplace.noInstanceDesc': '请先创建实例以安装内容。', + 'marketplace.noFiles': '无文件', + 'marketplace.noFilesDesc': '{title} 没有可下载的文件。', + 'marketplace.notCompatible': '不兼容', + 'marketplace.notCompatibleDesc': '{title} 没有适配您环境的版本。', + 'marketplace.installed': '已安装', + 'marketplace.installFailed': '安装失败', + 'marketplace.needInstance': '需要先创建实例才能安装内容。', + 'marketplace.newInstance': '+ 新建实例', + 'marketplace.noResults': '未找到结果', + 'marketplace.discoverContent': '发现内容', + 'marketplace.noResultsDesc': '试试其他关键词或按分类浏览。', + 'marketplace.discoverDesc': '搜索你喜欢的内容,或切换到发现视图查看热门。', + + // sidebar / common + 'sidebar.library': '内容库', + 'common.skip': '跳过', + 'common.done': '完成', + + // instanceDetail — multiplayer + 'instanceDetail.screenshots': '截图', + 'instanceDetail.mpInstallSuccess': '联机模块安装成功', + 'instanceDetail.mpInstallFailed': '联机模块安装失败', + 'instanceDetail.mpStarted': '联机已启动', + 'instanceDetail.mpStartFailed': '联机启动失败', + 'instanceDetail.mpStopped': '联机已停止', + 'instanceDetail.mpStopFailed': '联机停止失败', + 'instanceDetail.mpHosting': '正在主持房间', + 'instanceDetail.mpHostFailed': '创建房间失败', + 'instanceDetail.mpJoining': '正在加入房间', + 'instanceDetail.mpJoinFailed': '加入房间失败', + 'instanceDetail.mpDisconnected': '已断开连接', + 'instanceDetail.mpDisconnectFailed': '断开连接失败', + 'instanceDetail.mpTitle': '联机大厅', + 'instanceDetail.mpNotInstalled': '联机模块未安装', + 'instanceDetail.mpInstalling': '正在安装联机模块', + 'instanceDetail.mpInstall': '安装联机模块', + 'instanceDetail.mpReady': '联机就绪', + 'instanceDetail.mpStart': '启动联机', + 'instanceDetail.mpStatus': '联机状态', + 'instanceDetail.mpIdle': '空闲', + 'instanceDetail.mpHostingStatus': '正在主持', + 'instanceDetail.mpGuestingStatus': '已加入房间', + 'instanceDetail.mpScanningStatus': '正在扫描房间', + 'instanceDetail.mpStop': '停止联机', + 'instanceDetail.mpHostMode': '主持模式', + 'instanceDetail.mpHostDesc': '创建房间让好友加入', + 'instanceDetail.mpCreateRoom': '创建房间', + 'instanceDetail.mpGuestMode': '访客模式', + 'instanceDetail.mpGuestDesc': '输入邀请码加入房间', + 'instanceDetail.mpEnterCode': '输入邀请码', + 'instanceDetail.mpJoin': '加入', + 'instanceDetail.mpInvitationCode': '邀请码', + 'instanceDetail.mpCopied': '已复制', + 'instanceDetail.mpCopy': '复制', + 'instanceDetail.mpHostHint': '分享邀请码给好友', + 'instanceDetail.mpDisconnect': '断开连接', + 'instanceDetail.mpConnected': '已连接', + 'instanceDetail.mpGuestHint': '输入主持玩家的邀请码', + 'instanceDetail.mpScanning': '正在扫描', + + // library — mod updates + 'library.modDirectoryChanged': '模组目录已更改', + 'library.modDirectoryChangedDesc': '模组目录已更改,请重新扫描。', + 'library.modUpdates': '模组更新', + 'library.noModUpdates': '暂无模组更新', + 'library.rescanMods': '重新扫描模组', + 'library.checkingModUpdates': '正在检查模组更新', + 'library.checkModUpdates': '检查模组更新', + 'library.modsFound': '找到 {count} 个模组', + 'library.dirChanged': '目录已更改', + 'library.updateAvailable': '有可用更新', + + // settings — about + 'settings.about.upToDate': '已是最新版本', + 'settings.about.checkFailed': '检查更新失败', + 'settings.about.title': '关于', + 'settings.about.currentVersion': '当前版本', + 'settings.about.checkForUpdates': '检查更新', + 'settings.about.checking': '检查中...', + 'settings.about.checkNow': '立即检查', + 'settings.about.updateAvailable': '有可用更新', + + // settings — plugins + 'settings.plugins.title': '插件', + 'settings.plugins.subtitle': '管理已安装的插件', + 'settings.plugins.registered': '已注册插件', + 'settings.plugins.installed': '已安装', + 'settings.plugins.noRegistered': '没有已注册的插件', + 'settings.plugins.loading': '加载中...', + 'settings.plugins.noInstalled': '没有已安装的插件', + 'settings.plugins.installing': '正在安装...', + 'settings.plugins.installBtn': '安装', + 'settings.plugins.downloadedAwaitingApproval': '已下载,等待审批', + 'settings.plugins.permissionApproval': '权限审批', + 'settings.plugins.cancel': '取消', + 'settings.plugins.approve': '批准', + 'settings.plugins.downloadedPrompt': '插件已下载,是否激活?', + 'settings.plugins.downloadedNoPermsPrompt': '插件已下载(无需权限),是否激活?', + 'settings.plugins.permissionPrompt': '此插件需要以下权限:', + 'settings.plugins.activateNoPermsPrompt': '是否激活此插件?', + 'settings.plugins.noPermissionsDeclared': '此插件未声明任何权限', + + // settings — section titles + 'settings.skinStation': '皮肤站', + 'settings.fontCustom': '自定义字体', + 'settings.javaPath': 'Java 路径', + 'settings.jreManagement': 'Java 运行时管理', + 'settings.cleanup': '清理', + 'settings.fileManagement': '文件管理', + 'settings.dataDirectory': '数据目录', + 'settings.dynamicBackground': '动态背景', + 'settings.hardware': '硬件', + 'settings.securityOverview': '安全概览', + 'settings.credentialProtection': '凭证保护', + 'settings.networkSecurity': '网络安全', + 'settings.launchSecurity': '启动安全', + 'settings.apiKeyManagement': 'API 密钥管理', + 'settings.securityAudit': '安全审计', + 'settings.aiAssistant': 'AI 助手', + 'settings.achievements': '成就', + 'settings.nav.plugins': '插件', }; export default zhCN;