"use client" import { useEffect, useState } from "react" import { Card, CardContent, CardHeader, CardTitle, CardDescription } from "@/components/ui/card" import { Star, Music, PlayCircle } from "lucide-react" import Link from "next/link" import { getApiUrl } from "@/lib/api-config" import { Skeleton } from "@/components/ui/skeleton" import { AddToPlaylistDialog } from "@/components/playlists/add-to-playlist-dialog" interface RecommendedTrack { id: number song_title: string vertical_name: string show_date: string avg_rating: number } export function RecommendedTracks() { const [tracks, setTracks] = useState([]) const [loading, setLoading] = useState(true) useEffect(() => { const token = localStorage.getItem("token") if (!token) return fetch(`${getApiUrl()}/recommendations/performances/top?limit=5`, { headers: { Authorization: `Bearer ${token}` } }) .then(res => res.json()) .then(data => setTracks(data)) .catch(err => console.error(err)) .finally(() => setLoading(false)) }, []) if (loading) return if (tracks.length === 0) return null return ( Top Rated Jams Fan favorites from your bands
{tracks.map((track) => (

{track.song_title}

{track.vertical_name} {track.show_date}
{track.avg_rating}
))}
) }