Commit 1c2842e5 authored by Jordan Frankfurt's avatar Jordan Frankfurt

chore: analytics account dropdown click

parent 841ea7f8
import { Trans } from '@lingui/macro' import { Trans } from '@lingui/macro'
import { TraceEvent } from '@uniswap/analytics' import { sendAnalyticsEvent, TraceEvent } from '@uniswap/analytics'
import { BrowserEvent, ElementName, EventName } from '@uniswap/analytics-events' import { BrowserEvent, ElementName, EventName } from '@uniswap/analytics-events'
import { useWeb3React } from '@web3-react/core' import { useWeb3React } from '@web3-react/core'
import { FiatOnrampAnnouncement } from 'components/FiatOnrampAnnouncement' import { FiatOnrampAnnouncement } from 'components/FiatOnrampAnnouncement'
...@@ -10,7 +10,7 @@ import { Portal } from 'nft/components/common/Portal' ...@@ -10,7 +10,7 @@ import { Portal } from 'nft/components/common/Portal'
import { useIsNftClaimAvailable } from 'nft/hooks/useIsNftClaimAvailable' import { useIsNftClaimAvailable } from 'nft/hooks/useIsNftClaimAvailable'
import { getIsValidSwapQuote } from 'pages/Swap' import { getIsValidSwapQuote } from 'pages/Swap'
import { darken } from 'polished' import { darken } from 'polished'
import { useMemo, useRef } from 'react' import { useCallback, useMemo, useRef } from 'react'
import { AlertTriangle, ChevronDown, ChevronUp } from 'react-feather' import { AlertTriangle, ChevronDown, ChevronUp } from 'react-feather'
import { useAppSelector } from 'state/hooks' import { useAppSelector } from 'state/hooks'
import { useDerivedSwapInfo } from 'state/swap/hooks' import { useDerivedSwapInfo } from 'state/swap/hooks'
...@@ -206,6 +206,10 @@ function Web3StatusInner() { ...@@ -206,6 +206,10 @@ function Web3StatusInner() {
const validSwapQuote = getIsValidSwapQuote(trade, tradeState, swapInputError) const validSwapQuote = getIsValidSwapQuote(trade, tradeState, swapInputError)
const theme = useTheme() const theme = useTheme()
const toggleWalletDropdown = useToggleWalletDropdown() const toggleWalletDropdown = useToggleWalletDropdown()
const handleWalletDropdownClick = useCallback(() => {
sendAnalyticsEvent('FOR Account Dropdown Button Clicks')
toggleWalletDropdown()
}, [toggleWalletDropdown])
const toggleWalletModal = useToggleWalletModal() const toggleWalletModal = useToggleWalletModal()
const walletIsOpen = useModalIsOpen(ApplicationModal.WALLET_DROPDOWN) const walletIsOpen = useModalIsOpen(ApplicationModal.WALLET_DROPDOWN)
const isClaimAvailable = useIsNftClaimAvailable((state) => state.isClaimAvailable) const isClaimAvailable = useIsNftClaimAvailable((state) => state.isClaimAvailable)
...@@ -222,13 +226,12 @@ function Web3StatusInner() { ...@@ -222,13 +226,12 @@ function Web3StatusInner() {
const pending = sortedRecentTransactions.filter((tx) => !tx.receipt).map((tx) => tx.hash) const pending = sortedRecentTransactions.filter((tx) => !tx.receipt).map((tx) => tx.hash)
const hasPendingTransactions = !!pending.length const hasPendingTransactions = !!pending.length
const toggleWallet = toggleWalletDropdown
if (!chainId) { if (!chainId) {
return null return null
} else if (error) { } else if (error) {
return ( return (
<Web3StatusError onClick={toggleWallet}> <Web3StatusError onClick={handleWalletDropdownClick}>
<NetworkIcon /> <NetworkIcon />
<Text> <Text>
<Trans>Error</Trans> <Trans>Error</Trans>
...@@ -244,7 +247,7 @@ function Web3StatusInner() { ...@@ -244,7 +247,7 @@ function Web3StatusInner() {
return ( return (
<Web3StatusConnected <Web3StatusConnected
data-testid="web3-status-connected" data-testid="web3-status-connected"
onClick={toggleWallet} onClick={handleWalletDropdownClick}
pending={hasPendingTransactions} pending={hasPendingTransactions}
isClaimAvailable={isClaimAvailable} isClaimAvailable={isClaimAvailable}
> >
...@@ -282,7 +285,7 @@ function Web3StatusInner() { ...@@ -282,7 +285,7 @@ function Web3StatusInner() {
<Trans>Connect</Trans> <Trans>Connect</Trans>
</StyledConnectButton> </StyledConnectButton>
<VerticalDivider /> <VerticalDivider />
<ChevronWrapper onClick={toggleWalletDropdown} data-testid="navbar-toggle-dropdown"> <ChevronWrapper onClick={handleWalletDropdownClick} data-testid="navbar-toggle-dropdown">
{walletIsOpen ? <ChevronUp {...chevronProps} /> : <ChevronDown {...chevronProps} />} {walletIsOpen ? <ChevronUp {...chevronProps} /> : <ChevronDown {...chevronProps} />}
</ChevronWrapper> </ChevronWrapper>
</Web3StatusConnectWrapper> </Web3StatusConnectWrapper>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment