"use client"; import { useState, useEffect } from 'react'; import Image from 'next/image'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faPlay, faStepBackward, faStepForward, faArrowLeft, faArrowRight } from '@fortawesome/free-solid-svg-icons'; export default function Home() { const [timePeriod, setTimePeriod] = useState('2020s'); const [songs, setSongs] = useState([]); const [currentIndex, setCurrentIndex] = useState(0); useEffect(() => { fetch('/data/music.json') .then(response => response.json()) .then(data => { const selectedPeriod = data.find(period => period.timePeriod === timePeriod); const songsList = selectedPeriod ? selectedPeriod.songs : []; setSongs(songsList); setCurrentIndex(Math.floor(Math.random() * songsList.length)); }); }, [timePeriod]); useEffect(() => { const selectElement = document.getElementById('timePeriod'); if (selectElement) { setTimePeriod(selectElement.value); } }, []); const handleNext = () => { setCurrentIndex((currentIndex + 1) % songs.length); }; const handlePrevious = () => { setCurrentIndex((currentIndex - 1 + songs.length) % songs.length); }; return (
{songs[currentIndex].artist}
{songs[currentIndex].duration}