2023-01-07 19:06:04 +01:00
|
|
|
import SidebarHeader from "./SidebarHeader";
|
|
|
|
import useSidebarVisibility from "./useSidebarVisibility";
|
|
|
|
import "./Sidebar.css";
|
2023-02-07 20:31:07 +01:00
|
|
|
import { UsersData } from "../../background/types/roomData";
|
2023-01-07 19:06:04 +01:00
|
|
|
|
2023-02-07 20:31:07 +01:00
|
|
|
interface Props {
|
|
|
|
usersData: UsersData;
|
|
|
|
}
|
|
|
|
|
|
|
|
function Sidebar(props: Props) {
|
2023-01-07 19:06:04 +01:00
|
|
|
const { sidebarVisibility, toggleSidebarVisibility, sidebarToggleText } =
|
|
|
|
useSidebarVisibility();
|
|
|
|
|
|
|
|
return (
|
2023-01-10 19:04:53 +01:00
|
|
|
<div className={`sidebar sidebar-${sidebarVisibility}`}>
|
2023-01-07 19:06:04 +01:00
|
|
|
<SidebarHeader sidebarVisibility={sidebarVisibility} />
|
2023-02-07 20:31:07 +01:00
|
|
|
<div>
|
|
|
|
<h3> No room</h3>
|
|
|
|
{props.usersData.usersWithOutRoom.map((username) => (
|
|
|
|
<div>{username}</div>
|
|
|
|
))}
|
|
|
|
</div>
|
|
|
|
<div>
|
|
|
|
{props.usersData.roomsData.map((roomData) => {
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<h3> {roomData.roomName} </h3>
|
|
|
|
{roomData.participants.map((participant) => (
|
|
|
|
<div> {participant.displayName} </div>
|
|
|
|
))}
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
})}
|
|
|
|
</div>
|
2023-01-07 19:06:04 +01:00
|
|
|
<div className="sidebar-footer">
|
|
|
|
<button onClick={toggleSidebarVisibility}>{sidebarToggleText}</button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export default Sidebar;
|