uniswap-interface-uncensored/src/pages/App.tsx

187 lines
6.6 KiB
TypeScript
Raw Normal View History

import { initializeAnalytics } from 'components/AmplitudeAnalytics'
import { sendAnalyticsEvent, user } from 'components/AmplitudeAnalytics'
import { CUSTOM_USER_PROPERTIES, EventName, PageName } from 'components/AmplitudeAnalytics/constants'
import { Trace } from 'components/AmplitudeAnalytics/Trace'
import Loader from 'components/Loader'
import TopLevelModals from 'components/TopLevelModals'
import { useFeatureFlagsIsLoaded } from 'featureFlags'
import ApeModeQueryParamReader from 'hooks/useApeModeQueryParamReader'
import { lazy, Suspense } from 'react'
import { useEffect } from 'react'
import { Navigate, Route, Routes, useLocation } from 'react-router-dom'
import { useIsDarkMode } from 'state/user/hooks'
import styled from 'styled-components/macro'
import { getBrowser } from 'utils/browser'
import { useAnalyticsReporter } from '../components/analytics'
import ErrorBoundary from '../components/ErrorBoundary'
import Header from '../components/Header'
2020-09-24 19:18:57 +03:00
import Polling from '../components/Header/Polling'
import Popups from '../components/Popups'
import { useIsExpertMode } from '../state/user/hooks'
import DarkModeQueryParamReader from '../theme/DarkModeQueryParamReader'
import AddLiquidity from './AddLiquidity'
Add page MVP UI + v3 pool hooks and state (#35) * WIP start usePool and useDerivedMint hooks * naming updates * Use real tick and pool math * rate updates * WIP start usePool and useDerivedMint hooks * naming updates * Use real tick and pool math * rate updates * fix warnings * fix incorrect import * clean up state, fix preview * same token check * amoutn parse update * update hard coded chain id * fix price creation in util * update 1 amount in price calculation * update comments * update tick spacing input * fix label on counter * update rate label on range select * update labels * fixing pool hook * clean pool hook * preserve working rate switching * reset values on rate switch * clean up derived hook - setup for testnet * format slippage amounts and support ETH * fix import error * fix package.json dependencies * silence warnings * silence more warnings * bump multicodec and multihashes * update migrator constants * update txn to use sdk calldata * fix txn formatting, update summary * Squashed commit of the following: commit b81ff7ca9e57bb8c3823be4c54827e5955fb3d15 Author: ianlapham <ianlapham@gmail.com> Date: Mon Apr 12 23:46:09 2021 -0400 fix txn formatting, update summary commit b9f91b0746c546602d336c8fd6f614ec9b4f3f19 Author: ianlapham <ianlapham@gmail.com> Date: Mon Apr 12 19:29:12 2021 -0400 update txn to use sdk calldata commit 20acf704c67cfd4f597494c8cb9c672c6270ae02 Merge: 4431914 2462901 Author: ianlapham <ianlapham@gmail.com> Date: Sun Apr 11 20:33:39 2021 -0400 Merge branch 'minting' of https://github.com/Uniswap/v3-interface into minting commit 44319146372e1c373b025741ae896fa2476e5765 Author: ianlapham <ianlapham@gmail.com> Date: Sun Apr 11 20:32:35 2021 -0400 update migrator constants commit 35e0618de06ba316d3a3f327075625760414ab83 Merge: 8927882 c3f65e3 Author: ianlapham <ianlapham@gmail.com> Date: Sun Apr 11 20:13:36 2021 -0400 Merge branch 'main' of https://github.com/Uniswap/v3-interface into minting commit 24629019e80c368c337a2679a51d4acb1097171c Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 15:56:25 2021 -0400 bump multicodec and multihashes commit 9b5dd1876a64acbf6694d208b608bb0b429e317f Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 14:59:09 2021 -0400 silence more warnings commit 140ddc1b54c7fbdd7ead2fa64bcc302f201d69f5 Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 14:57:58 2021 -0400 silence warnings commit 5a2726ebdd4ffaacfb3d8ec7903a944042c1bd9d Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 14:35:01 2021 -0400 fix package.json dependencies commit 7c4d0a40931338de9a6197652b82fdab773483e3 Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 14:21:46 2021 -0400 fix import error commit e49ef19cbef7fbdf1737787a439e7cb78ba295b4 Merge: 8927882 c3f65e3 Author: Noah Zinsmeister <noahwz@gmail.com> Date: Fri Apr 9 14:08:34 2021 -0400 Merge branch 'main' into minting commit 89278825bd798a87d6010a74f8fc1d2b34a8ece1 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 8 15:18:40 2021 -0400 format slippage amounts and support ETH commit 9a90b19e9a759cbc0c3e903a983660730c8833ad Author: ianlapham <ianlapham@gmail.com> Date: Wed Apr 7 19:43:43 2021 -0400 clean up derived hook - setup for testnet commit dc034bc78a147f95f47b077d28a7d6e3165cedd7 Author: ianlapham <ianlapham@gmail.com> Date: Wed Apr 7 00:48:24 2021 -0400 reset values on rate switch commit bb5ccb2c853f7b2c27ec8d2f34f42a1b06f845b9 Author: ianlapham <ianlapham@gmail.com> Date: Wed Apr 7 00:38:39 2021 -0400 preserve working rate switching commit 5312d0ae7015150da48ba304de8c7a02b7d8925c Author: ianlapham <ianlapham@gmail.com> Date: Mon Apr 5 13:52:46 2021 -0400 clean pool hook commit 5222de14834e76c37755225be17214a6e798d872 Merge: b2ba466 24521f0 Author: ianlapham <ianlapham@gmail.com> Date: Mon Apr 5 12:20:34 2021 -0400 Merge branch 'main' of https://github.com/Uniswap/v3-interface into minting commit b2ba46684a7b0bd8a8362f5990f4a208bfeff2dd Author: ianlapham <ianlapham@gmail.com> Date: Mon Apr 5 12:19:20 2021 -0400 fixing pool hook commit b10742af99a725e04c1b756aa20f99e995f8cfeb Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 16:53:52 2021 -0400 update labels commit 05abd395949245596c95090a9d5d77c7c272dbd3 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 15:34:17 2021 -0400 update rate label on range select commit f098d01b6f4dc1dcb99e0fa314dde93647a19bb6 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 15:26:30 2021 -0400 fix label on counter commit 16ffe61e8ee2b677adf5d468efa9d7aa8d7e092e Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 15:06:50 2021 -0400 update tick spacing input commit 0fa2c8a15821dd32ec978750991a962ecb8f7344 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 14:53:18 2021 -0400 update comments commit 1fccf57a1ef081ef6ba9790dc20e0ed604ac2b09 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 14:52:37 2021 -0400 update 1 amount in price calculation commit b0e5d22bf8c57b3eacd75f077f68aaca4a9f975a Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 14:46:41 2021 -0400 fix price creation in util commit 1ce246e85372e4f120f983ca18a1eb3d16e8647e Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 13:55:14 2021 -0400 update hard coded chain id commit 2360b2d0a3233b604956e89de4bd7b09c0506875 Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 13:09:21 2021 -0400 amoutn parse update commit 6a99a7b71fe446fe77cb2741adce4c067862ca4a Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 13:05:41 2021 -0400 same token check commit 83a1fd5a9ff02c6a49532cb54a57770b52fc052e Author: ianlapham <ianlapham@gmail.com> Date: Thu Apr 1 12:31:21 2021 -0400 clean up state, fix preview commit 8592383b8386d7adbbaeaa2c6f9c36bb121d1c65 Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 22:47:56 2021 -0400 fix incorrect import commit ce526fd545e52142f847dbf3caec1ca37bb0650b Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 22:36:10 2021 -0400 fix warnings commit 572770fd3e000ce31cd3a6c5c5c91eac92cc8c5c Merge: a9e5b6c 2677491 Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 22:16:30 2021 -0400 Merge branch 'minting' of https://github.com/Uniswap/v3-interface into minting commit a9e5b6c5e5983e279a640886783f97c33b713125 Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 22:12:43 2021 -0400 rate updates commit b88cab6c06176eefe5cf71f7cc3e3664d9f514ab Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 16:15:08 2021 -0400 Use real tick and pool math commit ed933cfd17141174c03b0bcac5f41cf75ff9b258 Author: ianlapham <ianlapham@gmail.com> Date: Sun Mar 28 22:42:05 2021 -0400 naming updates commit 50c0a0ece5c6c66a603508529c5e7a28f45db632 Author: ianlapham <ianlapham@gmail.com> Date: Sun Mar 28 22:36:08 2021 -0400 WIP start usePool and useDerivedMint hooks commit 2677491e2128e1318a0dd4307e63069e0f8e1dfe Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 22:12:43 2021 -0400 rate updates commit c2f59d6c61068a2bf4d34d102d5d28c9863ce982 Author: ianlapham <ianlapham@gmail.com> Date: Wed Mar 31 16:15:08 2021 -0400 Use real tick and pool math commit 7d53e5c7e979be19fc5c63eb52307f302328c4eb Author: ianlapham <ianlapham@gmail.com> Date: Sun Mar 28 22:42:05 2021 -0400 naming updates commit 9022650d391682f97e71d336021c2db2e5ea5455 Author: ianlapham <ianlapham@gmail.com> Date: Sun Mar 28 22:36:08 2021 -0400 WIP start usePool and useDerivedMint hooks * remove 1337 references * clean up multicall * clean up redirects/router * cleanup * improve useAllV3Ticks * fix multicall * typo * Fix code style issues with ESLint * preserve sticky * reset to non fixed scroll * fix inputs at 1 * update tests * fix routes * sticky sidebar Co-authored-by: Noah Zinsmeister <noahwz@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2021-04-14 17:12:35 +03:00
import { RedirectDuplicateTokenIds } from './AddLiquidity/redirects'
import { RedirectDuplicateTokenIdsV2 } from './AddLiquidityV2/redirects'
import Earn from './Earn'
import Manage from './Earn/Manage'
import MigrateV2 from './MigrateV2'
import MigrateV2Pair from './MigrateV2/MigrateV2Pair'
import Pool from './Pool'
import { PositionPage } from './Pool/PositionPage'
import PoolV2 from './Pool/v2'
import PoolFinder from './PoolFinder'
import RemoveLiquidity from './RemoveLiquidity'
import RemoveLiquidityV3 from './RemoveLiquidity/V3'
import Swap from './Swap'
2020-09-24 19:18:57 +03:00
import { OpenClaimAddressModalAndRedirectToSwap, RedirectPathToSwapOnly, RedirectToSwap } from './Swap/redirects'
// lazy load vote related pages
const Vote = lazy(() => import('./Vote'))
2019-08-07 21:58:29 +03:00
const AppWrapper = styled.div`
display: flex;
flex-flow: column;
align-items: flex-start;
`
const BodyWrapper = styled.div`
2019-08-07 21:58:29 +03:00
display: flex;
flex-direction: column;
width: 100%;
padding: 120px 16px 0px 16px;
2019-08-07 21:58:29 +03:00
align-items: center;
flex: 1;
2021-04-23 20:03:06 +03:00
z-index: 1;
2020-09-24 19:18:57 +03:00
${({ theme }) => theme.mediaWidth.upToSmall`
padding: 4rem 8px 16px 8px;
`};
`
const HeaderWrapper = styled.div`
${({ theme }) => theme.flexRowNoWrap}
width: 100%;
justify-content: space-between;
position: fixed;
top: 0;
z-index: 2;
`
const Marginer = styled.div`
margin-top: 5rem;
`
function getCurrentPageFromLocation(locationPathname: string): PageName | undefined {
switch (locationPathname) {
case '/swap':
return PageName.SWAP_PAGE
case '/vote':
return PageName.VOTE_PAGE
case '/pool':
return PageName.POOL_PAGE
default:
return undefined
}
}
export default function App() {
const isLoaded = useFeatureFlagsIsLoaded()
const { pathname } = useLocation()
const currentPage = getCurrentPageFromLocation(pathname)
const isDarkMode = useIsDarkMode()
const isExpertMode = useIsExpertMode()
useAnalyticsReporter()
initializeAnalytics()
useEffect(() => {
window.scrollTo(0, 0)
}, [pathname])
useEffect(() => {
// TODO(zzmp): add web vitals event properties to app loaded event.
sendAnalyticsEvent(EventName.APP_LOADED)
user.set(CUSTOM_USER_PROPERTIES.BROWSER, getBrowser())
user.set(CUSTOM_USER_PROPERTIES.SCREEN_RESOLUTION_HEIGHT, window.screen.height)
user.set(CUSTOM_USER_PROPERTIES.SCREEN_RESOLUTION_WIDTH, window.screen.width)
}, [])
useEffect(() => {
user.set(CUSTOM_USER_PROPERTIES.DARK_MODE, isDarkMode)
}, [isDarkMode])
useEffect(() => {
user.set(CUSTOM_USER_PROPERTIES.EXPERT_MODE, isExpertMode)
}, [isExpertMode])
return (
<ErrorBoundary>
2022-07-20 16:47:42 +03:00
<DarkModeQueryParamReader />
<ApeModeQueryParamReader />
feat: upgrade to web3-react v8 (#3759) * initial * comment more stuff out for now * more changes * more temp * remove walletconnect bug logic * switch to provider not connector * remove fortmatic * remove some usage of network connector * fix initialize connector * more changes * remove switch to network * connect eagerly * active -> isActive * add initial option cards * upgrade web3-react * delete tryActivation * delete pending view, reset option code * fix hooks * library -> provider * rm getLibrary * eagerly connect * comment all this code for now * add back app * dont connect eagerly here * deactivate * switchToNetwork * switch to useWeb3React * rm Web3ReactManager * add back og wallet modal code * switch back to old option logic * add account logic back * add back more network switch logic * Revert "switch to useWeb3React" This reverts commit 08ac6319d40207c31c72bf3b16b9f22223fc1ddc. * add back skip disconnect logic * check for network connector * use promise.then again * remove unnecessary pending error logic * reset useAddTokenToMetamask * upgrade packages * use watchAsset * add gnosis * rm fortmatic * close on disconnection * add Wallet enum * remove fortmatic imports * add wallet state * set/clear override wallet * resolve empty * remove some wallet modal view logic * useWeb3ReactListener * move to use effect * add setwalletoverride in deactivate for now * start to fix the wallet modal bug * back button should open options * connect eagerly to all * Revert "add setwalletoverride in deactivate for now" This reverts commit fbc990a9245c68460b1f29e368174b5327aa586c. * useSelectedIsActive * switch the enum to not be a bug * actually dispatch the wallet override * remove connection useEffect for now * Revert "remove connection useEffect for now" This reverts commit 0b92eee6894586e08079c1e4092e098b579cb768. * add back the activation useeffect * handle resetting eagerly connecting * dont disconnect from coinbase wallet * disconnect except for coinbase wallet, bc their reload breaks things * handle eager activation edge case * backfill wallet override * rename wrapper components * update test * network if override undefined * npx deduplicate * comment for why coinbase wallet special cased * connectorPrevious -> previousConnector * Array.find instead of forEach * useState instead of useReducer * add comments and simplify * Web3Wrapper component * add type guard * check for watchAsset * revert Option.tsx changes * set -> updateWalletOverride * generalize connector type usage * rm comment * eagerlyConnect comment * null -> undefined * add comment for wallet override * add back pendingError logic * merge conflicts * remove provider dep * add back connect a wallet * move active prop out of base props * add back account details test * add type of isActiveMap * add back eslint * add TODO * Web3Provider * return null from Updater * update comment * integration tests initial * try updating test * check for gnosis safe * fix gnosis safe check * pr comments * pr comments * don't eagerly connect to any wallets other than gnosis or walletOverride * remove unused branch * pendingError from hook * eslint-disable-line * try connecting to wallets if not backfilled * move eager connection logic * remove connect eagerly set logic * disconnect on change * simplify ConnectorState * better solution for changing wallet priority * merge fixes * fix tests * try fixing test again * add comment * add fortmatic back * set walletOverride for fortmatic * hide other chains * handle eager connection * connect everything eagerly if not backfilled * fix chain switching * async * rm error console * fortmatic update * log errors * don't eagerly connect to fortmatic * onSelectChain + switchChain * typo * don't disconnect from coinbase wallet for now * upgrade web3-react * close on disconnection/connection again * simplify account change check * comment fix * comment * fortmatic icon * comment for fortmatic in network selector * consolidate useEffect hooks in walletmodal for connection/disconnection * switchToChain * comment * isEagerlyConnecting instead of eagerlyConnectingWallets * update web3-react * close modal fortmatic * remove error log * chainIdNotAllowed * handle useToken * update SupportedChainId * move if statements around * move to wallet reducer * close as error * export fix * add back history change * add back popular * fortmatic key * persist wallet * remove eagerly connect * call connect eagerly * handle modal errors * handle fortmatic close properly * connector error changes * go back to options * change redux wallets * simplify reducer * fix eagerly connect / disconnect * remove account change hook * simplify connect eagerly * remove unused var * revert chain * walletOverride reducer * update web3-react * fix compile errors for now * show disconnect button * clear pending connector * clear error state * add back skip toggle check * MAINNET provider for ENS * add coinbase wallet sdk * fix test * add back style but fix syntax highlighting * dont create separate json rpc provider * don't use selected hooks * dont export * dispatch first * useConnectors * comment * simplify activeMap * useIsActiveMap * prettier * prop change * move comment * useCallback * coinbase wallet link fix * rm ModalWallet type * reportError * isChainAllowed * NETWORK_SELECTOR_CHAINS * mainnet provider * remove unused wallet views * add back default case * selected wallet * comment change * !chainAllowed * rm ensResolver * rm forEach * re-define reportError * move effects arounds * change error message for switching chain * simplify Web3Provider * delete use isActive map * fix test? * rm disconnect test for now * error message updates * const -> function * move fn * undo changes for showing connect wallet state * clear error before activating * remove special case for fortmatic error * backfillable/selectable wallets * log wallet * Revert "rm disconnect test for now" This reverts commit 225bc7dc5622ae918d8a8b70e4425c648d1a1fac. * check if account exists * unused dep * remove reload piece of test * update connect a wallet default state * headerRow
2022-06-16 21:39:23 +03:00
<AppWrapper>
<Trace page={currentPage}>
<HeaderWrapper>
<Header />
</HeaderWrapper>
<BodyWrapper>
<Popups />
<Polling />
<TopLevelModals />
<Suspense fallback={<Loader />}>
{isLoaded ? (
<Routes>
<Route path="vote/*" element={<Vote />} />
<Route path="create-proposal" element={<Navigate to="/vote/create-proposal" replace />} />
<Route path="claim" element={<OpenClaimAddressModalAndRedirectToSwap />} />
<Route path="uni" element={<Earn />} />
<Route path="uni/:currencyIdA/:currencyIdB" element={<Manage />} />
<Route path="send" element={<RedirectPathToSwapOnly />} />
<Route path="swap/:outputCurrency" element={<RedirectToSwap />} />
<Route path="swap" element={<Swap />} />
<Route path="pool/v2/find" element={<PoolFinder />} />
<Route path="pool/v2" element={<PoolV2 />} />
<Route path="pool" element={<Pool />} />
<Route path="pool/:tokenId" element={<PositionPage />} />
<Route path="add/v2" element={<RedirectDuplicateTokenIdsV2 />}>
<Route path=":currencyIdA" />
<Route path=":currencyIdA/:currencyIdB" />
</Route>
<Route path="add" element={<RedirectDuplicateTokenIds />}>
{/* this is workaround since react-router-dom v6 doesn't support optional parameters any more */}
<Route path=":currencyIdA" />
<Route path=":currencyIdA/:currencyIdB" />
<Route path=":currencyIdA/:currencyIdB/:feeAmount" />
</Route>
<Route path="increase" element={<AddLiquidity />}>
<Route path=":currencyIdA" />
<Route path=":currencyIdA/:currencyIdB" />
<Route path=":currencyIdA/:currencyIdB/:feeAmount" />
<Route path=":currencyIdA/:currencyIdB/:feeAmount/:tokenId" />
</Route>
<Route path="remove/v2/:currencyIdA/:currencyIdB" element={<RemoveLiquidity />} />
<Route path="remove/:tokenId" element={<RemoveLiquidityV3 />} />
<Route path="migrate/v2" element={<MigrateV2 />} />
<Route path="migrate/v2/:address" element={<MigrateV2Pair />} />
<Route path="*" element={<RedirectPathToSwapOnly />} />
</Routes>
) : (
<Loader />
)}
</Suspense>
<Marginer />
</BodyWrapper>
</Trace>
feat: upgrade to web3-react v8 (#3759) * initial * comment more stuff out for now * more changes * more temp * remove walletconnect bug logic * switch to provider not connector * remove fortmatic * remove some usage of network connector * fix initialize connector * more changes * remove switch to network * connect eagerly * active -> isActive * add initial option cards * upgrade web3-react * delete tryActivation * delete pending view, reset option code * fix hooks * library -> provider * rm getLibrary * eagerly connect * comment all this code for now * add back app * dont connect eagerly here * deactivate * switchToNetwork * switch to useWeb3React * rm Web3ReactManager * add back og wallet modal code * switch back to old option logic * add account logic back * add back more network switch logic * Revert "switch to useWeb3React" This reverts commit 08ac6319d40207c31c72bf3b16b9f22223fc1ddc. * add back skip disconnect logic * check for network connector * use promise.then again * remove unnecessary pending error logic * reset useAddTokenToMetamask * upgrade packages * use watchAsset * add gnosis * rm fortmatic * close on disconnection * add Wallet enum * remove fortmatic imports * add wallet state * set/clear override wallet * resolve empty * remove some wallet modal view logic * useWeb3ReactListener * move to use effect * add setwalletoverride in deactivate for now * start to fix the wallet modal bug * back button should open options * connect eagerly to all * Revert "add setwalletoverride in deactivate for now" This reverts commit fbc990a9245c68460b1f29e368174b5327aa586c. * useSelectedIsActive * switch the enum to not be a bug * actually dispatch the wallet override * remove connection useEffect for now * Revert "remove connection useEffect for now" This reverts commit 0b92eee6894586e08079c1e4092e098b579cb768. * add back the activation useeffect * handle resetting eagerly connecting * dont disconnect from coinbase wallet * disconnect except for coinbase wallet, bc their reload breaks things * handle eager activation edge case * backfill wallet override * rename wrapper components * update test * network if override undefined * npx deduplicate * comment for why coinbase wallet special cased * connectorPrevious -> previousConnector * Array.find instead of forEach * useState instead of useReducer * add comments and simplify * Web3Wrapper component * add type guard * check for watchAsset * revert Option.tsx changes * set -> updateWalletOverride * generalize connector type usage * rm comment * eagerlyConnect comment * null -> undefined * add comment for wallet override * add back pendingError logic * merge conflicts * remove provider dep * add back connect a wallet * move active prop out of base props * add back account details test * add type of isActiveMap * add back eslint * add TODO * Web3Provider * return null from Updater * update comment * integration tests initial * try updating test * check for gnosis safe * fix gnosis safe check * pr comments * pr comments * don't eagerly connect to any wallets other than gnosis or walletOverride * remove unused branch * pendingError from hook * eslint-disable-line * try connecting to wallets if not backfilled * move eager connection logic * remove connect eagerly set logic * disconnect on change * simplify ConnectorState * better solution for changing wallet priority * merge fixes * fix tests * try fixing test again * add comment * add fortmatic back * set walletOverride for fortmatic * hide other chains * handle eager connection * connect everything eagerly if not backfilled * fix chain switching * async * rm error console * fortmatic update * log errors * don't eagerly connect to fortmatic * onSelectChain + switchChain * typo * don't disconnect from coinbase wallet for now * upgrade web3-react * close on disconnection/connection again * simplify account change check * comment fix * comment * fortmatic icon * comment for fortmatic in network selector * consolidate useEffect hooks in walletmodal for connection/disconnection * switchToChain * comment * isEagerlyConnecting instead of eagerlyConnectingWallets * update web3-react * close modal fortmatic * remove error log * chainIdNotAllowed * handle useToken * update SupportedChainId * move if statements around * move to wallet reducer * close as error * export fix * add back history change * add back popular * fortmatic key * persist wallet * remove eagerly connect * call connect eagerly * handle modal errors * handle fortmatic close properly * connector error changes * go back to options * change redux wallets * simplify reducer * fix eagerly connect / disconnect * remove account change hook * simplify connect eagerly * remove unused var * revert chain * walletOverride reducer * update web3-react * fix compile errors for now * show disconnect button * clear pending connector * clear error state * add back skip toggle check * MAINNET provider for ENS * add coinbase wallet sdk * fix test * add back style but fix syntax highlighting * dont create separate json rpc provider * don't use selected hooks * dont export * dispatch first * useConnectors * comment * simplify activeMap * useIsActiveMap * prettier * prop change * move comment * useCallback * coinbase wallet link fix * rm ModalWallet type * reportError * isChainAllowed * NETWORK_SELECTOR_CHAINS * mainnet provider * remove unused wallet views * add back default case * selected wallet * comment change * !chainAllowed * rm ensResolver * rm forEach * re-define reportError * move effects arounds * change error message for switching chain * simplify Web3Provider * delete use isActive map * fix test? * rm disconnect test for now * error message updates * const -> function * move fn * undo changes for showing connect wallet state * clear error before activating * remove special case for fortmatic error * backfillable/selectable wallets * log wallet * Revert "rm disconnect test for now" This reverts commit 225bc7dc5622ae918d8a8b70e4425c648d1a1fac. * check if account exists * unused dep * remove reload piece of test * update connect a wallet default state * headerRow
2022-06-16 21:39:23 +03:00
</AppWrapper>
</ErrorBoundary>
)
2018-10-07 00:24:17 +03:00
}