Skip to content
OpenChatButton.tsx 814 B
Newer Older
Grant's avatar
Grant committed
import { Badge, Button } from "@nextui-org/react";
Grant's avatar
Grant committed
import { useChatContext } from "../../contexts/ChatContext";
import { useAppContext } from "../../contexts/AppContext";
Ategon Dev's avatar
Ategon Dev committed
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { faComments } from "@fortawesome/free-solid-svg-icons";
Grant's avatar
Grant committed

const OpenChatButton = () => {
  const { config } = useAppContext();
  const { notificationCount, doLogin } = useChatContext();
Grant's avatar
Grant committed

  return (
    <Badge
      content={notificationCount}
      isInvisible={notificationCount === 0}
      color="danger"
      size="sm"
    >
Grant's avatar
Grant committed
      {config?.chat?.element_host && (
        <Button onPress={doLogin} variant="faded">
Ategon Dev's avatar
Ategon Dev committed
          <FontAwesomeIcon icon={faComments} />
          <p>Chat</p>
Grant's avatar
Grant committed
        </Button>
      )}
Grant's avatar
Grant committed
    </Badge>
  );
};

export default OpenChatButton;