import { useEffect, useState } from 'react' import { Menu } from '@headlessui/react' import styled from '@emotion/styled' import { ChevronUpIcon, ChevronDownIcon, DuplicateIcon, LogoutIcon, MenuIcon, XIcon, } from '@heroicons/react/outline' import UiLock from './UiLock' import { useRouter } from 'next/router' import MenuItem from './MenuItem' import ThemeSwitch from './ThemeSwitch' import { WalletIcon } from './icons' import useMangoStore from '../stores/useMangoStore' import ConnectWalletButton from './ConnectWalletButton' const Code = styled.code` border: 1px solid hsla(0, 0%, 39.2%, 0.2); border-radius: 3px; background: hsla(0, 0%, 58.8%, 0.1); font-size: 13px; ` const WALLET_OPTIONS = [ { name: 'Copy address', icon: }, { name: 'Disconnect', icon: }, ] const TopBar = () => { const { asPath } = useRouter() const connected = useMangoStore((s) => s.wallet.connected) const wallet = useMangoStore((s) => s.wallet.current) const [showMenu, setShowMenu] = useState(false) const [isCopied, setIsCopied] = useState(false) useEffect(() => { if (isCopied) { const timer = setTimeout(() => { setIsCopied(false) }, 2000) return () => clearTimeout(timer) } }, [isCopied]) const handleWalletMenu = (option) => { if (option === 'Copy address') { const el = document.createElement('textarea') el.value = wallet.publicKey.toString() document.body.appendChild(el) el.select() document.execCommand('copy') document.body.removeChild(el) setIsCopied(true) } else { wallet.disconnect() } } return ( ) } export default TopBar