fix(ui): unify layout wrappers and simplify player/shop detail pages

This commit is contained in:
zetaloop
2026-02-23 11:05:29 +08:00
parent c986539954
commit 4fce328ef1
11 changed files with 79 additions and 79 deletions
+4 -15
View File
@@ -15,12 +15,7 @@ import {
} from "@/components/ui/card"
import { Separator } from "@/components/ui/separator"
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"
import {
isFavorited as checkFavorited,
listPlayers,
listReviewsByTargetUser,
listServicesByPlayer,
} from "@/lib/api"
import { listPlayers, listReviewsByTargetUser, listServicesByPlayer } from "@/lib/api"
export default async function PlayerDetailPage({ params }: { params: Promise<{ id: string }> }) {
const { id } = await params
@@ -35,8 +30,6 @@ export default async function PlayerDetailPage({ params }: { params: Promise<{ i
player.services && player.services.length > 0
? player.services
: listServicesByPlayer(player.id)
const isFavorited = checkFavorited("u1", "player", player.id)
return (
<div className="container mx-auto py-8 px-4 max-w-5xl">
<div className="flex flex-col md:flex-row gap-8 mb-8">
@@ -79,11 +72,7 @@ export default async function PlayerDetailPage({ params }: { params: Promise<{ i
</Button>
</Link>
)}
<FavoriteButton
initialFavorited={isFavorited}
targetType="player"
targetId={player.id}
/>
<FavoriteButton initialFavorited={false} targetType="player" targetId={player.id} />
</div>
<div className="bg-muted/50 p-4 rounded-lg">
@@ -106,13 +95,13 @@ export default async function PlayerDetailPage({ params }: { params: Promise<{ i
<TabsList className="w-full justify-start border-b rounded-none h-auto p-0 bg-transparent">
<TabsTrigger
value="services"
className="rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-transparent px-6 py-3 text-base"
className="rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-transparent px-6 py-3 text-base -mb-px"
>
({playerServices.length})
</TabsTrigger>
<TabsTrigger
value="reviews"
className="rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-transparent px-6 py-3 text-base"
className="rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-transparent px-6 py-3 text-base -mb-px"
>
({playerReviews.length})
</TabsTrigger>