import { memo, useRef } from 'react'; import { createPortal } from 'react-dom'; import { Link } from 'react-router-dom'; import { Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerHeader, DrawerOverlay, useDisclosure, } from '@chakra-ui/react'; import { useFullscreen } from '@mantine/hooks'; import { IoArrowUp } from '@react-icons/all-files/io5/IoArrowUp'; import { IoContract } from '@react-icons/all-files/io5/IoContract'; import { IoExpand } from '@react-icons/all-files/io5/IoExpand'; import { IoLockClosedOutline } from '@react-icons/all-files/io5/IoLockClosedOutline'; import { IoSwapVertical } from '@react-icons/all-files/io5/IoSwapVertical'; import { navigatorConstants } from '../../../viewerConfig'; import useClickOutside from '../../hooks/useClickOutside'; import { useViewOptionsStore } from '../../stores/viewOptions'; import { isKeyEnter } from '../../utils/keyEvent'; import RenameClientModal from './rename-client-modal/RenameClientModal'; import style from './NavigationMenu.module.scss'; interface NavigationMenuProps { isOpen: boolean; onClose: () => void; } function NavigationMenu(props: NavigationMenuProps) { const { isOpen, onClose } = props; const { isOpen: isRenameOpen, onOpen: onRenameOpen, onClose: onRenameClose } = useDisclosure(); const { fullscreen, toggle } = useFullscreen(); const { toggleMirror } = useViewOptionsStore(); const menuRef = useRef(null); useClickOutside(menuRef, () => onClose); return createPortal( , document.body, ); } export default memo(NavigationMenu);