import { resizeImage } from '@/web/utils/common' import player from '@/web/states/player' import { State as PlayerState } from '@/web/utils/player' import useTracks from '@/web/api/hooks/useTracks' import { css, cx } from '@emotion/css' import Image from '@/web/components/New/Image' import useArtist from '@/web/api/hooks/useArtist' import { useParams } from 'react-router-dom' const Track = ({ track, isPlaying, onPlay, }: { track?: Track isPlaying?: boolean onPlay: (id: number) => void }) => { return (
{ if (e.detail === 2 && track?.id) onPlay(track.id) }} > {/* Cover */} {/* Track info */}
{track?.name}
{track?.ar.map(a => a.name).join(', ')}
) } const Popular = () => { const params = useParams() const { data: artist, isLoading: isLoadingArtist } = useArtist({ id: Number(params.id) || 0, }) const tracks = artist?.hotSongs || [] const onPlay = (id: number) => { if (!tracks) return player.playAList( tracks.map(t => t.id), id ) } return (
Popular
{tracks?.slice(0, 9)?.map(t => ( ))}
) } export default Popular