import { resizeImage } from '@/web/utils/common' import React, { useMemo } from 'react' import { player } from '@/web/store' import { useSnapshot } from 'valtio' import useTracks from '@/web/api/hooks/useTracks' import { css, cx } from '@emotion/css' import { AnimatePresence, motion } from 'framer-motion' import Image from './Image' const PlayingNext = ({ className }: { className?: string }) => { const playerSnapshot = useSnapshot(player) const list = useMemo( () => playerSnapshot.trackList.slice(playerSnapshot.trackIndex + 1, 100), [playerSnapshot.trackList, playerSnapshot.trackIndex] ) const { data: tracks } = useTracks({ ids: list }) return ( <>
PLAYING NEXT
{tracks?.songs?.map((track, index) => ( Cover
{track.name}
{track.ar.map(a => a.name).join(', ')}
{String(index + 1).padStart(2, '0')}
))}
) } export default PlayingNext