"use client" import { Button } from "@/components/ui/button" import { useRequireAuth } from "@/lib/use-require-auth" import { useAuthStore } from "@/store/auth" import { useFavoriteStore } from "@/store/favorites" import { Heart } from "lucide-react" interface FavoriteButtonProps { initialFavorited: boolean targetType: "player" | "shop" targetId: string } export function FavoriteButton({ initialFavorited, targetType, targetId }: FavoriteButtonProps) { const { requireAuth } = useRequireAuth() const userId = useAuthStore((s) => s.user?.id) const favoritedInStore = useFavoriteStore((state) => userId ? state.isFavorited(userId, targetType, targetId) : false, ) const toggleFavorite = useFavoriteStore((state) => state.toggleFavorite) const favorited = userId ? favoritedInStore : initialFavorited return ( ) }