import { graphql, useFragment } from "react-relay"; import type { TrackItem_play$key } from "./__generated__/TrackItem_play.graphql"; import AlbumArt from "./AlbumArt"; import MusicBrainzLink from "./MusicBrainzLink"; interface TrackItemProps { play: TrackItem_play$key; } export default function TrackItem({ play }: TrackItemProps) { const data = useFragment( graphql` fragment TrackItem_play on FmTealAlphaFeedPlay { trackName playedTime artists { artistName artistMbId } releaseName releaseMbId actorHandle musicServiceBaseDomain appBskyActorProfile { displayName } } `, play ); return (

{data.trackName} {data.musicServiceBaseDomain === "nts.live" && ( NTS )}

{Array.isArray(data.artists) ? data.artists.map((a) => a.artistName).join(", ") : data.artists}

{data.releaseName}

{data.playedTime && (

{new Date(data.playedTime).toLocaleTimeString("en-US", { hour: "numeric", minute: "2-digit", })}

)} @{data.actorHandle}
); }