diff --git a/AGENTS.md b/AGENTS.md index 8bd0e39..7e2b30f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -3,3 +3,11 @@ This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` before writing any code. Heed deprecation notices. + +## Learned User Preferences + +- 玩家端信用盘文案与钱包盘区分:不用「派彩」口径,中奖走账期结算语义;提示语避免生硬重复「信用盘」字样。 + +## Learned Workspace Facts + +- 信用盘流水对外类型:`win_credit`(中奖释额)、`bill_settlement`(账期收付),与钱包 `prize`/派彩文案分离。 diff --git a/src/app/(player)/login/page.tsx b/src/app/(player)/login/page.tsx index 0235512..1282559 100644 --- a/src/app/(player)/login/page.tsx +++ b/src/app/(player)/login/page.tsx @@ -1,5 +1,16 @@ +import type { ReactNode } from "react"; +import { Suspense } from "react"; + import { PlayerLoginScreen } from "@/features/player/player-login-screen"; -export default function PlayerLoginPage() { - return ; +function LoginFallback(): ReactNode { + return
; +} + +export default function PlayerLoginPage() { + return ( + }> + + + ); } diff --git a/src/app/(player)/page.tsx b/src/app/(player)/page.tsx index eded347..b3bb5f8 100644 --- a/src/app/(player)/page.tsx +++ b/src/app/(player)/page.tsx @@ -4,11 +4,7 @@ import { Suspense } from "react"; import { EntryGate } from "@/features/player/entry-gate"; function EntryFallback(): ReactNode { - return ( -
-

Loading...

-
- ); + return
; } export default function EntryPage() { diff --git a/src/components/layout/player-bottom-nav.tsx b/src/components/layout/player-bottom-nav.tsx index 3fd7fa5..259eabc 100644 --- a/src/components/layout/player-bottom-nav.tsx +++ b/src/components/layout/player-bottom-nav.tsx @@ -7,7 +7,9 @@ import { BarChart3, ClipboardList, Home, Wallet } from "lucide-react"; import { useTranslation } from "react-i18next"; import { playerViewportFixedBarClass } from "@/lib/player-viewport"; +import { isCreditFundingPlayer } from "@/lib/player-funding-mode"; import { cn } from "@/lib/utils"; +import { usePlayerSessionStore } from "@/stores/player-session-store"; const tabs = [ { @@ -34,7 +36,9 @@ const tabs = [ { href: "/wallet", labelKey: "nav.wallet", + creditLabelKey: "nav.credit", labelDefault: "钱包", + creditLabelDefault: "信用", icon: Wallet, match: (p: string) => p === "/wallet" || p.startsWith("/wallet/"), }, @@ -46,6 +50,7 @@ const tabs = [ export function PlayerBottomNav() { const pathname = usePathname() ?? ""; const { t } = useTranslation("player"); + const creditMode = isCreditFundingPlayer(usePlayerSessionStore((state) => state.profile)); return (