feat: 增强国际化支持与安全头配置

- 在 .env.example 中新增 i18next 相关配置项以支持多语言功能
- 在 next.config.ts 中添加安全头配置以支持 iframe 嵌入
- 更新 Providers 组件以引入 i18n 配置
- 在 PlayerAppShell 中集成 LanguageSwitcher 组件以实现语言切换功能
- 优化 HallWalletStrip 组件的网络状态管理逻辑
- 更新多个组件以支持国际化文本
This commit is contained in:
2026-05-13 17:53:56 +08:00
parent c8f8f90515
commit 587a6ad66c
32 changed files with 2126 additions and 436 deletions

View File

@@ -0,0 +1,65 @@
{
"header": {
"backgroundAlt": "Header background"
},
"loading": {
"title": "Loading lottery hall",
"progress": "Progress"
},
"steps": {
"token": {
"title": "Checking token",
"description": "Verifying your session securely."
},
"account": {
"title": "Creating account",
"description": "Setting up your account."
},
"hall": {
"title": "Loading lottery hall",
"description": "Preparing the lottery hall."
}
},
"messages": {
"initializing": "Initializing…",
"retrying": "Retrying…",
"verifying": "Verifying session…",
"connectingHall": "Connecting to lottery hall…",
"ready": "Ready",
"retryProgress": "Retrying ({{current}}/{{total}})…"
},
"failure": {
"title": "Authorization failed",
"subtitle": "We couldnt authorize your session. Please try again.",
"detailsTitle": "Failure details",
"table": {
"no": "No.",
"check": "Check",
"reason": "Reason"
},
"reenter": "Re-enter"
},
"success": {
"title": "Authorization successful!",
"subtitle": "Your session has been verified successfully.",
"doneLabel": "Done",
"continue": "Continue to lottery hall"
},
"footer": {
"secure": "Secure. Trusted. Authorized access."
},
"errors": {
"noToken": "No authorization token found",
"noTokenDetail": "Please return to the main site and try again.",
"authFailed": "Authorization failed",
"unknown": "Unknown error",
"network": "Network error occurred",
"networkDetail": "Please check your internet connection and try again.",
"maxRetries": "Unable to connect after multiple attempts",
"maxRetriesDetail": "The server may be temporarily unavailable.",
"tryLater": "Please try again later",
"http401": "Token is invalid or expired",
"http403": "Account has been blocked",
"http404": "Account not found in the system"
}
}