import { QueryRoutes, Routes } from "@nirvana/common/helpers/routes";
import { Menu, Dropdown, Avatar } from "antd";
import { useRouter } from "next/router";
import { useRef, useState } from "react";
import { KeyMap, GlobalHotKeys } from "react-hotkeys";
import {
FaUser,
FaLayerGroup,
FaSearch,
FaHeadphones,
FaMicrophoneAlt,
} from "react-icons/fa";
import { useRecoilState } from "recoil";
import { UserStatus } from "../../models/user";
import MainLogo from "../Logo/MainLogo";
import UserStatusBubble from "../UserDetails/UserStatusBubble";
import { useAuth } from "../../contexts/authContext";
export default function Header() {
const { currUser } = useAuth();
const router = useRouter();
const UserMenu = (
);
const inputRef = useRef();
const [searchInput, setSearchInput] = useState("");
const selectSearch = () => {
inputRef.current?.focus();
router.push({
pathname: Routes.home,
query: { page: QueryRoutes.search },
});
};
const updateInput = (e) => {
const newSearchInput = e.target.value;
setSearchInput(newSearchInput);
if (!newSearchInput) {
router.query.q = undefined;
} else {
// update url => initiates the search
router.query.q = encodeURI(newSearchInput);
}
router.push({
query: { q: encodeURI(newSearchInput), page: QueryRoutes.search },
});
};
const keyMap: KeyMap = {
SELECT_SEARCH: {
name: "select search to start searching",
sequence: "/",
action: "keyup",
},
};
const handlers = {
SELECT_SEARCH: selectSearch,
};
return (
{/* search bar */}
{/* controls */}
{/* profile section */}
);
}