feat(game): 更新游戏规则并优化充值提现界面

- 在 api.type.ts 中为支付渠道、存款配置和取款字段添加新的接口属性
- 替换桌面端规则模态框中的纯文本内容为支持 Markdown 格式的组件
- 重构桌面端充值组件的 UI 结构,使用自定义按钮替代原生选择器
- 为取款组件添加最低最高金额验证及支付方式选择功能
- 更新英文本地化文件中的游戏规则内容,提供详细的玩法指南
This commit is contained in:
JiaJun
2026-07-09 16:43:52 +08:00
parent 1535cb243b
commit 69cd9a7521
18 changed files with 3071 additions and 1056 deletions

View File

@@ -1,6 +1,7 @@
import { useTranslation } from 'react-i18next'
import lengthBlueBtn from '@/assets/system/length-blue-btn.webp'
import { CenterModal } from '@/components/center-modal.tsx'
import RulesMarkdownContent from '@/components/rules-markdown-content.tsx'
import { SmartBackground } from '@/components/smart-background.tsx'
import { useModalStore } from '@/store'
@@ -27,8 +28,8 @@ function DesktopRulesModal() {
className={'w-design-1040 h-design-720'}
>
<div className="flex h-full flex-col gap-design-24 px-design-28 pb-design-30 pt-design-10">
<div className="flex-1 overflow-y-auto rounded-[12px] bg-black/35 p-design-20 text-design-18 leading-[1.8] text-[#B9E7EA] whitespace-pre-line">
{t('game.modals.rules.content')}
<div className="flex-1 overflow-y-auto rounded-[12px] bg-black/35 p-design-20 text-design-18 text-[#B9E7EA]">
<RulesMarkdownContent content={t('game.modals.rules.content')} />
</div>
<div className="flex justify-center">

View File

@@ -1,6 +1,7 @@
import { useTranslation } from 'react-i18next'
import lengthBlueBtn from '@/assets/system/length-blue-btn.webp'
import { MobileCenterModal } from '@/components/mobile-center-modal.tsx'
import RulesMarkdownContent from '@/components/rules-markdown-content.tsx'
import { SmartBackground } from '@/components/smart-background.tsx'
import { useModalStore } from '@/store'
@@ -27,8 +28,11 @@ function MobileRulesModal() {
className="!h-design-320"
>
<div className="flex h-full min-h-0 flex-col gap-design-12 px-design-14 pb-design-16 pt-design-4">
<div className="min-h-0 flex-1 overflow-y-auto rounded-[calc(var(--design-unit)*10)] bg-black/35 px-design-14 py-design-12 text-design-12 leading-[1.62] text-[#B9E7EA] whitespace-pre-line">
{t('game.modals.rules.content')}
<div className="min-h-0 flex-1 overflow-y-auto rounded-[calc(var(--design-unit)*10)] bg-black/35 px-design-14 py-design-12 text-design-12 text-[#B9E7EA]">
<RulesMarkdownContent
compact
content={t('game.modals.rules.content')}
/>
</div>
<div className="flex shrink-0 justify-center">