import { HiMusicNote } from 'react-icons/hi' import { truncate } from '@/utils/truncate' import { useEffect, useState } from 'react' import io from 'socket.io-client' import Image from 'next/image' import Link from 'next/link' interface SpotifyData { is_playing?: boolean title: string artists: { name: string[] } album: { image: string } url: string progress: number duration: number } export const NowPlayingCard = () => { const [spotify, setSpotify] = useState() useEffect(() => { const socket = io('wss://ws.albert.lol') socket.on('nowPlayingData', (data) => { setSpotify(data as SpotifyData) }) return () => { socket.disconnect() } }, []) return (
{spotify?.is_playing ? ( <> Song cover art

{truncate(`${spotify.title}`, 30)}

{truncate( spotify.artists?.name.map((artist) => artist).join(', '), 30 )}

) : ( <>
Not listening to anything
)}
) }