Commit aa426514 authored by Jack Short's avatar Jack Short Committed by GitHub

chore: updating navbar padding for token pages (#4474)

* chore: updating navbar padding for token pages

* removing margin on pools page
parent ba9c2889
......@@ -8,10 +8,18 @@ import { Z_INDEX } from 'theme'
import { AutoColumn } from '../Column'
export const PageWrapper = styled.div<{ redesignFlag: boolean }>`
padding: 0 8px;
export const PageWrapper = styled.div<{ redesignFlag: boolean; navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px 8px')};
max-width: ${({ redesignFlag }) => (redesignFlag ? '420px' : '480px')};
width: 100%;
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '48px' : '0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
// Mostly copied from `AppBody` but it was getting too hard to maintain backwards compatibility.
......
......@@ -8,6 +8,7 @@ import { ElementName, Event, EventName } from 'components/AmplitudeAnalytics/con
import { TraceEvent } from 'components/AmplitudeAnalytics/TraceEvent'
import { sendEvent } from 'components/analytics'
import UnsupportedCurrencyFooter from 'components/swap/UnsupportedCurrencyFooter'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import useParsedQueryString from 'hooks/useParsedQueryString'
import { useCallback, useEffect, useState } from 'react'
import { AlertTriangle } from 'react-feather'
......@@ -78,6 +79,8 @@ import {
const DEFAULT_ADD_IN_RANGE_SLIPPAGE_TOLERANCE = new Percent(50, 10_000)
export default function AddLiquidity() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const navigate = useNavigate()
const {
currencyIdA,
......@@ -505,7 +508,7 @@ export default function AddLiquidity() {
return (
<>
<ScrollablePage>
<ScrollablePage navBarFlag={navBarFlagEnabled}>
<TransactionConfirmationModal
isOpen={showConfirm}
onDismiss={handleDismissConfirmation}
......
......@@ -29,15 +29,24 @@ export const Wrapper = styled.div`
`};
`
export const ScrollablePage = styled.div`
export const ScrollablePage = styled.div<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
position: relative;
display: flex;
flex-direction: column;
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToMedium`
max-width: 480px;
margin: 0 auto;
padding: 0px 8px;
`};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
export const DynamicSection = styled(AutoColumn)<{ disabled?: boolean }>`
......
......@@ -8,6 +8,7 @@ import { Trace } from 'components/AmplitudeAnalytics/Trace'
import { ButtonError } from 'components/Button'
import { BlueCard } from 'components/Card'
import { AutoColumn } from 'components/Column'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import JSBI from 'jsbi'
import tryParseCurrencyAmount from 'lib/utils/tryParseCurrencyAmount'
import { Wrapper } from 'pages/Pool/styleds'
......@@ -33,10 +34,16 @@ import { ProposalAction, ProposalActionSelector, ProposalActionSelectorModal } f
import { ProposalEditor } from './ProposalEditor'
import { ProposalSubmissionModal } from './ProposalSubmissionModal'
const PageWrapper = styled(AutoColumn)`
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToMedium`
padding: 0px 8px;
`};
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const CreateProposalButton = ({
......@@ -94,6 +101,8 @@ const AutonomousProposalCTA = styled.div`
`
export default function CreateProposal() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const { account, chainId } = useWeb3React()
const latestProposalId = useLatestProposalId(account ?? undefined) ?? '0'
......@@ -234,7 +243,7 @@ ${bodyValue}
return (
<Trace page={PageName.VOTE_PAGE} shouldLogImpression>
<PageWrapper>
<PageWrapper navBarFlag={navBarFlagEnabled}>
<AppBody {...{ maxWidth: '800px' }}>
<CreateProposalTabs />
<CreateProposalWrapper>
......
import { Trans } from '@lingui/macro'
import { CurrencyAmount, Token } from '@uniswap/sdk-core'
import { useWeb3React } from '@web3-react/core'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import JSBI from 'jsbi'
import { useCallback, useState } from 'react'
import { Link, useParams } from 'react-router-dom'
......@@ -28,12 +29,18 @@ import { useStakingInfo } from '../../state/stake/hooks'
import { ThemedText } from '../../theme'
import { currencyId } from '../../utils/currencyId'
const PageWrapper = styled(AutoColumn)`
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
max-width: 640px;
width: 100%;
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToSmall`
padding: 0px 8px;
`};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const PositionInfo = styled(AutoColumn)<{ dim: any }>`
......@@ -91,6 +98,8 @@ const DataRow = styled(RowBetween)`
`
export default function Manage() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const { currencyIdA, currencyIdB } = useParams<{ currencyIdA: string; currencyIdB: string }>()
const { account } = useWeb3React()
......@@ -154,7 +163,7 @@ export default function Manage() {
}, [account, toggleWalletModal])
return (
<PageWrapper gap="lg" justify="center">
<PageWrapper gap="lg" justify="center" navBarFlag={navBarFlagEnabled}>
<RowBetween style={{ gap: '24px' }}>
<ThemedText.DeprecatedMediumHeader style={{ margin: 0 }}>
<Trans>
......
import { Trans } from '@lingui/macro'
import { useWeb3React } from '@web3-react/core'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import JSBI from 'jsbi'
import styled, { useTheme } from 'styled-components/macro'
......@@ -14,12 +15,18 @@ import { STAKING_REWARDS_INFO, useStakingInfo } from '../../state/stake/hooks'
import { ExternalLink, ThemedText } from '../../theme'
import { Countdown } from './Countdown'
const PageWrapper = styled(AutoColumn)`
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
max-width: 640px;
width: 100%;
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToSmall`
padding: 0px 8px;
`};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const TopSection = styled(AutoColumn)`
......@@ -43,6 +50,8 @@ flex-direction: column;
`
export default function Earn() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const theme = useTheme()
const { chainId } = useWeb3React()
......@@ -59,7 +68,7 @@ export default function Earn() {
const stakingRewardsExist = Boolean(typeof chainId === 'number' && (STAKING_REWARDS_INFO[chainId]?.length ?? 0) > 0)
return (
<PageWrapper gap="lg" justify="center">
<PageWrapper gap="lg" justify="center" navBarFlag={navBarFlagEnabled}>
<TopSection gap="md">
<DataCard>
<CardBGImage />
......
......@@ -18,6 +18,7 @@ import { RowBetween, RowFixed } from 'components/Row'
import { Dots } from 'components/swap/styleds'
import Toggle from 'components/Toggle'
import TransactionConfirmationModal, { ConfirmationModalContent } from 'components/TransactionConfirmationModal'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import { useToken } from 'hooks/Tokens'
import { useV3NFTPositionManagerContract } from 'hooks/useContract'
import useIsTickAtLimit from 'hooks/useIsTickAtLimit'
......@@ -48,10 +49,20 @@ import { calculateGasMargin } from '../../utils/calculateGasMargin'
import { ExplorerDataType, getExplorerLink } from '../../utils/getExplorerLink'
import { LoadingRows } from './styleds'
const PageWrapper = styled.div`
const PageWrapper = styled.div<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
min-width: 800px;
max-width: 960px;
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToMedium`
min-width: 680px;
max-width: 680px;
......@@ -315,6 +326,8 @@ const useInverter = ({
}
export function PositionPage() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const { tokenId: tokenIdFromUrl } = useParams<{ tokenId?: string }>()
const { chainId, account, provider } = useWeb3React()
const theme = useTheme()
......@@ -573,7 +586,7 @@ export function PositionPage() {
) : (
<Trace page={PageName.POOL_PAGE} shouldLogImpression>
<>
<PageWrapper>
<PageWrapper navBarFlag={navBarFlagEnabled}>
<TransactionConfirmationModal
isOpen={showConfirm}
onDismiss={() => setShowConfirm(false)}
......
......@@ -11,6 +11,7 @@ import PositionList from 'components/PositionList'
import { RowBetween, RowFixed } from 'components/Row'
import { SwitchLocaleLink } from 'components/SwitchLocaleLink'
import { isSupportedChain } from 'constants/chains'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import { useV3Positions } from 'hooks/useV3Positions'
import { AlertTriangle, BookOpen, ChevronDown, ChevronsRight, Inbox, Layers, PlusCircle } from 'react-feather'
import { Link } from 'react-router-dom'
......@@ -24,18 +25,26 @@ import { V2_FACTORY_ADDRESSES } from '../../constants/addresses'
import CTACards from './CTACards'
import { LoadingRows } from './styleds'
const PageWrapper = styled(AutoColumn)`
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding: ${({ navBarFlag }) => (navBarFlag ? '68px 8px 0px' : '0px')};
max-width: 870px;
width: 100%;
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToMedium`
max-width: 800px;
padding: 0px 8px;
`};
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToSmall`
max-width: 500px;
`};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '48px' : '0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const TitleRow = styled(RowBetween)`
color: ${({ theme }) => theme.deprecated_text2};
......@@ -152,13 +161,15 @@ function PositionsLoadingPlaceholder() {
}
function WrongNetworkCard() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const theme = useTheme()
return (
<>
<PageWrapper>
<PageWrapper navBarFlag={navBarFlagEnabled}>
<AutoColumn gap="lg" justify="center">
<AutoColumn gap="lg" style={{ width: '100%' }}>
<TitleRow style={{ marginTop: '1rem' }} padding={'0'}>
<TitleRow padding={'0'}>
<ThemedText.LargeHeader>
<Trans>Pools</Trans>
</ThemedText.LargeHeader>
......@@ -183,6 +194,8 @@ function WrongNetworkCard() {
}
export default function Pool() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const { account, chainId } = useWeb3React()
const toggleWalletModal = useToggleWalletModal()
......@@ -253,10 +266,10 @@ export default function Pool() {
return (
<Trace page={PageName.POOL_PAGE} shouldLogImpression>
<>
<PageWrapper>
<PageWrapper navBarFlag={navBarFlagEnabled}>
<AutoColumn gap="lg" justify="center">
<AutoColumn gap="lg" style={{ width: '100%' }}>
<TitleRow style={{ marginTop: '1rem' }} padding={'0'}>
<TitleRow padding={'0'}>
<ThemedText.LargeHeader>
<Trans>Pools</Trans>
</ThemedText.LargeHeader>
......
......@@ -58,6 +58,7 @@ export const Dots = styled.span`
`
export const LoadingRows = styled(BaseLoadingRows)`
padding-top: 48px;
min-width: 75%;
max-width: 960px;
grid-column-gap: 0.5em;
......
......@@ -20,6 +20,7 @@ import UnsupportedCurrencyFooter from 'components/swap/UnsupportedCurrencyFooter
import TokenSafetyModal from 'components/TokenSafety/TokenSafetyModal'
import { MouseoverTooltip } from 'components/Tooltip'
import { isSupportedChain } from 'constants/chains'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import { RedesignVariant, useRedesignFlag } from 'featureFlags/flags/redesign'
import { useSwapCallback } from 'hooks/useSwapCallback'
import useTransactionDeadline from 'hooks/useTransactionDeadline'
......@@ -149,6 +150,8 @@ const TRADE_STRING = 'SwapRouter'
export default function Swap() {
const navigate = useNavigate()
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const redesignFlag = useRedesignFlag()
const redesignFlagEnabled = redesignFlag === RedesignVariant.Enabled
const { account, chainId } = useWeb3React()
......@@ -518,7 +521,7 @@ export default function Swap() {
onDismiss={handleDismissTokenWarning}
/>
)}
<PageWrapper redesignFlag={redesignFlagEnabled}>
<PageWrapper redesignFlag={redesignFlagEnabled} navBarFlag={navBarFlagEnabled}>
<SwapWrapper id="swap-page" redesignFlag={redesignFlagEnabled}>
<SwapHeader allowedSlippage={allowedSlippage} />
<ConfirmSwapModal
......
......@@ -35,18 +35,30 @@ const Footer = styled.div`
const TokenDetailsLayout = styled.div`
display: flex;
gap: 80px;
padding: 0px 20px;
padding: 68px 20px;
width: 100%;
justify-content: center;
@media only screen and (max-width: ${MAX_WIDTH_MEDIA_BREAKPOINT}) {
gap: 40px;
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding-top: 48px;
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: 20px;
}
@media only screen and (max-width: ${SMALL_MEDIA_BREAKPOINT}) {
padding: 0px 16px;
padding-left: 16px;
padding-right: 16px;
}
@media only screen and (max-width: ${MOBILE_MEDIA_BREAKPOINT}) {
padding: 0px 8px;
padding-left: 8px;
padding-right: 8px;
}
`
const RightPanel = styled.div`
......
......@@ -19,7 +19,15 @@ import { ThemedText } from 'theme'
const ExploreContainer = styled.div`
width: 100%;
min-width: 320px;
padding: 0px 12px;
padding: 68px 12px 0px;
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding-top: 48px;
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: 20px;
}
`
const TokenTableContainer = styled.div`
padding: 16px 0px;
......
......@@ -13,6 +13,7 @@ import { SwitchLocaleLink } from 'components/SwitchLocaleLink'
import Toggle from 'components/Toggle'
import DelegateModal from 'components/vote/DelegateModal'
import ProposalEmptyState from 'components/vote/ProposalEmptyState'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import JSBI from 'jsbi'
import { darken } from 'polished'
import { useState } from 'react'
......@@ -32,10 +33,16 @@ import { ZERO_ADDRESS } from '../../constants/misc'
import { UNI } from '../../constants/tokens'
import { ProposalStatus } from './styled'
const PageWrapper = styled(AutoColumn)`
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToSmall`
padding: 0px 8px;
`};
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding-top: ${({ navBarFlag }) => (navBarFlag ? '68px' : '0px')};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const TopSection = styled(AutoColumn)`
......@@ -113,6 +120,8 @@ const StyledExternalLink = styled(ExternalLink)`
`
export default function Landing() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
const theme = useTheme()
const { account, chainId } = useWeb3React()
......@@ -140,7 +149,7 @@ export default function Landing() {
return (
<>
<Trace page={PageName.VOTE_PAGE} shouldLogImpression>
<PageWrapper gap="lg" justify="center">
<PageWrapper gap="lg" justify="center" navBarFlag={navBarFlagEnabled}>
<DelegateModal
isOpen={showDelegateModal}
onDismiss={toggleDelegateModal}
......
......@@ -6,6 +6,7 @@ import { PageName } from 'components/AmplitudeAnalytics/constants'
import { Trace } from 'components/AmplitudeAnalytics/Trace'
import ExecuteModal from 'components/vote/ExecuteModal'
import QueueModal from 'components/vote/QueueModal'
import { NavBarVariant, useNavBarFlag } from 'featureFlags/flags/navBar'
import { useActiveLocale } from 'hooks/useActiveLocale'
import useCurrentBlockTimestamp from 'hooks/useCurrentBlockTimestamp'
import JSBI from 'jsbi'
......@@ -55,11 +56,17 @@ import { isAddress } from '../../utils'
import { ExplorerDataType, getExplorerLink } from '../../utils/getExplorerLink'
import { ProposalStatus } from './styled'
const PageWrapper = styled(AutoColumn)`
const PageWrapper = styled(AutoColumn)<{ navBarFlag: boolean }>`
padding-top: ${({ navBarFlag }) => (navBarFlag ? '68px' : '0px')};
width: 100%;
${({ theme }) => theme.deprecated_mediaWidth.deprecated_upToSmall`
padding: 0px 8px;
`};
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.md}px`}) {
padding: ${({ navBarFlag }) => (navBarFlag ? '48px 8px 0px' : '0px 8px 0px')};
}
@media only screen and (max-width: ${({ theme }) => `${theme.breakpoint.sm}px`}) {
padding-top: ${({ navBarFlag }) => (navBarFlag ? '20px' : '0px')};
}
`
const ProposalInfo = styled(AutoColumn)`
......@@ -156,6 +163,8 @@ function getDateFromBlock(
}
export default function VotePage() {
const navBarFlag = useNavBarFlag()
const navBarFlagEnabled = navBarFlag === NavBarVariant.Enabled
// see https://github.com/remix-run/react-router/issues/8200#issuecomment-962520661
const { governorIndex, id } = useParams() as { governorIndex: string; id: string }
const parsedGovernorIndex = Number.parseInt(governorIndex)
......@@ -267,7 +276,7 @@ export default function VotePage() {
return (
<Trace page={PageName.VOTE_PAGE} shouldLogImpression>
<>
<PageWrapper gap="lg" justify="center">
<PageWrapper gap="lg" justify="center" navBarFlag={navBarFlagEnabled}>
<VoteModal
isOpen={showVoteModal}
onDismiss={toggleVoteModal}
......
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