import React, { useRef, useState, useEffect } from "react"; import classNames from "classnames"; import styles from "./RoomButton.module.css"; import { ReactComponent as MicIcon } from "./icons/Mic.svg"; import { ReactComponent as MuteMicIcon } from "./icons/MuteMic.svg"; import { ReactComponent as VideoIcon } from "./icons/Video.svg"; import { ReactComponent as DisableVideoIcon } from "./icons/DisableVideo.svg"; import { ReactComponent as HangupIcon } from "./icons/Hangup.svg"; import { ReactComponent as SettingsIcon } from "./icons/Settings.svg"; import { ReactComponent as GridIcon } from "./icons/Grid.svg"; import { ReactComponent as SpeakerIcon } from "./icons/Speaker.svg"; import { ReactComponent as ScreenshareIcon } from "./icons/Screenshare.svg"; import { ReactComponent as ChevronIcon } from "./icons/Chevron.svg"; export function RoomButton({ on, className, children, ...rest }) { return ( ); } export function DropdownButton({ onChange, options, value, children }) { const buttonRef = useRef(); const [open, setOpen] = useState(false); useEffect(() => { function onClick() { if (open) { setOpen(false); } } window.addEventListener("click", onClick); return () => { window.removeEventListener("click", onClick); }; }, [open]); return (
{children} {open && (
)}
); } export function MicButton({ muted, ...rest }) { return ( {muted ? : } ); } export function VideoButton({ enabled, ...rest }) { return ( {enabled ? : } ); } export function ScreenshareButton({ enabled, className, ...rest }) { return ( ); } export function HangupButton({ className, ...rest }) { return ( ); } export function HeaderButton({ on, className, children, ...rest }) { return ( ); } export function SettingsButton(props) { return ( ); } export function LayoutToggleButton({ layout, ...rest }) { return ( {layout === "spotlight" ? ( ) : ( )} ); }