import React, { useContext, useEffect, useState } from 'react'; import { SocketContext } from '../../../App'; import lock from '../../../images/login-page/lock.png'; import refresh from '../../../images/login-page/refresh.png'; import ReactLoading from 'react-loading'; import './ServerList.css'; import NameInput from '../NameInput/NameInput'; import Overlay from '../../Overlay/Overlay'; const ServerList = () => { const socket = useContext(SocketContext); const [rooms, setRooms] = useState([]); const [joining, setJoining] = useState(false); const [clickedRoom, setClickedRoom] = useState(null); useEffect(() => { socket.emit('room:rooms'); socket.on('room:rooms', data => { data = JSON.parse(data); setRooms(data); }); }, [socket]); const getRooms = () => { setRooms(null); socket.emit('room:rooms'); }; const handleJoinClick = room => { setClickedRoom(room); setJoining(true); }; return (

Server List

refresh
{rooms ? ( {rooms.map((room, index) => ( ))}
Server #/# Status
{room.private ? private : null} {room.name} {`${room.players.length}/4`} {room.isStarted ? 'started' : 'waiting'}
) : (
)}
{joining ? ( setJoining(false)}> ) : null}
); }; export default ServerList;