Allow heading to close drawer

remotes/1693176582716663532/tmp_refs/heads/watchparty
Outrun Colors 2022-09-24 22:21:36 -05:00
parent 3fdea4bc34
commit 8393454f8a
No known key found for this signature in database
GPG Key ID: 0426976DCEFE6073
2 changed files with 24 additions and 13 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "chat", "name": "chat",
"version": "0.0.20", "version": "0.0.21",
"main": "./src/index.tsx", "main": "./src/index.tsx",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {

View File

@ -4,27 +4,38 @@ import { UserList } from "./UserList";
import "./ChatHeading.css"; import "./ChatHeading.css";
export function ChatHeading() { export function ChatHeading() {
const { reveal } = useDrawer(); const { open, hide, reveal } = useDrawer();
const { online } = useChat(); const { online } = useChat();
const handleOpenUserListDrawer = useCallback( const handleToggleUserListDrawer = useCallback(() => {
() => if (open) {
hide();
} else {
reveal({ reveal({
title: "Users in chat", title: "Users in chat",
content: <UserList fluid={true} />, content: <UserList fluid={true} />,
}), });
[] }
); }, [open]);
return ( return (
<div className="ChatHeading"> <div className="ChatHeading">
<div /> <div />
<div> <div>
{open ? (
<button
className="btn btn-secondary"
onClick={handleToggleUserListDrawer}
>Close</button>
) : (
<>
<i <i
role="button" role="button"
className="far fa-user" className="far fa-user"
onClick={handleOpenUserListDrawer} onClick={handleToggleUserListDrawer}
/> />
<em>{online.length} users online</em> <em>{online.length} users online</em>
</>
)}
</div> </div>
</div> </div>
); );