import React, { useState, useEffect } from 'react';const movies = [ "AVATAR", "TITANIC", "FROZEN", "JAWS", "ALIEN", "MATRIX", "INCEPTION", "GLADIATOR", "CASABLANCA", "PSYCHO"];const Moviedle = () => { const [secretMovie, setSecretMovie] = useState(''); const [guesses, setGuesses] = useState([]); const [currentGuess, setCurrentGuess] = useState(''); const [gameOver, setGameOver] = useState(false); const [message, setMessage] = useState(''); useEffect(() => { setSecretMovie(movies[Math.floor(Math.random() * movies.length)]); }, []); const handleGuess = () => { if (currentGuess.length !== secretMovie.length) { setMessage(`Your guess must be ${secretMovie.length} characters long.`); return; } const newGuess = currentGuess.toUpperCase(); setGuesses([...guesses, newGuess]); setCurrentGuess(''); if (newGuess === secretMovie) { setGameOver(true); setMessage('Congratulations! You guessed the movie!'); } else if (guesses.length === 5) { setGameOver(true); setMessage(`Game over! The movie was ${secretMovie}.`); } }; const renderGuess = (guess) => { return guess.split('').map((letter, index) => { let className = 'bg-gray-300'; if (letter === secretMovie[index]) { className = 'bg-green-500'; } else if (secretMovie.includes(letter)) { className = 'bg-yellow-500'; } return ( {letter} ); }); }; return (

Moviedle

Guess the {secretMovie.length}-letter movie title. You have 6 attempts.

{guesses.map((guess, index) => (
{renderGuess(guess)}
))}
{!gameOver && (
setCurrentGuess(e.target.value.toUpperCase())} maxLength={secretMovie.length} className="w-full p-2 border rounded" placeholder={`Enter a ${secretMovie.length}-letter movie title`} />
)} {message &&

{message}

} {gameOver && ( )}
);};export default Moviedle;