@@ -12,6 +12,7 @@ import { getResults } from "@/requests/game";
1212import { getTrackResults } from "@/requests/track" ;
1313import { GameResultType } from "@/types/GameResultType" ;
1414import { TrackResultType } from "@/types/TrackResultType" ;
15+ import { useMusic } from "bioloom-miniplayer" ;
1516import { Award , Circle , CircleSmall } from "lucide-react" ;
1617import { useTranslations } from "next-intl" ;
1718import { useRouter , useSearchParams } from "next/navigation" ;
@@ -127,6 +128,7 @@ function formatJamWindow(
127128}
128129
129130export default function Results ( { preview = false } : { preview ?: boolean } ) {
131+ const { playItem } = useMusic ( ) ;
130132 const searchParams = useSearchParams ( ) ;
131133 const [ games , setGames ] = useState < GameResultType [ ] > ( [ ] ) ;
132134 const [ tracks , setTracks ] = useState < TrackResultType [ ] > ( [ ] ) ;
@@ -564,10 +566,33 @@ export default function Results({ preview = false }: { preview?: boolean }) {
564566 src = { track . game . thumbnail ?? "/images/D2J_Icon.png" }
565567 />
566568 < div className = "flex flex-col" >
567- < Link href = { `/m/${ track . slug } ` } > { track . name } </ Link >
568- < Text size = "sm" color = "textFaded" >
569- { track . composer . name } for { track . game . name }
570- </ Text >
569+ < Hstack className = "items-start gap-3" >
570+ < Vstack align = "start" gap = { 1 } >
571+ < Link href = { `/m/${ track . slug } ` } > { track . name } </ Link >
572+ < Text size = "sm" color = "textFaded" >
573+ { track . composer . name } for { track . game . name }
574+ </ Text >
575+ </ Vstack >
576+ < Button
577+ size = "xs"
578+ icon = "play"
579+ onClick = { ( ) =>
580+ playItem ( {
581+ id : track . id ,
582+ slug : track . slug ,
583+ name : track . name ,
584+ artist : track . composer ,
585+ thumbnail :
586+ track . game . thumbnail ??
587+ "/images/D2J_Icon.png" ,
588+ game : track . game ,
589+ song : track . url ,
590+ } )
591+ }
592+ >
593+ Play
594+ </ Button >
595+ </ Hstack >
571596 < div className = "grid grid-cols-[120px_100px_60px_30px] items-center gap-2" >
572597 < Text size = "sm" color = "textFaded" >
573598 Overall
0 commit comments