From 1468fa374d5a6bf99d8b899b70b074b7f0988e89 Mon Sep 17 00:00:00 2001 From: guanbinrui Date: Wed, 9 Mar 2022 12:11:43 +0800 Subject: [PATCH 1/2] refactor: remove unused code from trader plugin --- .../Trader/SNSAdaptor/balancer/TradeRoute.tsx | 99 ------- .../SNSAdaptor/balancer/TradeRouteHop.tsx | 59 ---- .../SNSAdaptor/dodo/TradePairViewer.tsx | 61 ----- .../SNSAdaptor/trader/hooks/useGasConfig.ts | 6 +- .../SNSAdaptor/uniswap/TradePairViewer.tsx | 73 ----- .../Trader/SNSAdaptor/uniswap/TradeRoute.tsx | 78 ------ packages/mask/src/plugins/Trader/messages.ts | 5 - packages/mask/src/plugins/Trader/pipes.ts | 251 +----------------- packages/mask/src/plugins/Trader/settings.ts | 83 +----- .../src/plugins/Trader/trader/0x/useTrade.ts | 4 - .../plugins/Trader/trader/useTradeSettings.ts | 13 - .../Trader/trending/useApprovedTokens.ts | 8 +- 12 files changed, 10 insertions(+), 730 deletions(-) delete mode 100644 packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRoute.tsx delete mode 100644 packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRouteHop.tsx delete mode 100644 packages/mask/src/plugins/Trader/SNSAdaptor/dodo/TradePairViewer.tsx delete mode 100644 packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradePairViewer.tsx delete mode 100644 packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradeRoute.tsx delete mode 100644 packages/mask/src/plugins/Trader/trader/useTradeSettings.ts diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRoute.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRoute.tsx deleted file mode 100644 index 95f8e4378143..000000000000 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRoute.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import classNames from 'classnames' -import { Breadcrumbs, Paper, Table, TableBody, TableCell, TableContainer, TableHead, TableRow } from '@mui/material' -import { makeStyles, useStylesExtends } from '@masknet/theme' -import NavigateNextIcon from '@mui/icons-material/NavigateNext' -import { formatPercentage } from '@masknet/web3-shared-evm' -import { useI18N } from '../../../../utils' -import type { SwapResponse, TradeComputed } from '../../types' -import { TradeRouteHop } from './TradeRouteHop' - -const useStyles = makeStyles()((theme) => ({ - root: { - '&::-webkit-scrollbar': { - display: 'none', - }, - width: '100%', - boxSizing: 'border-box', - padding: theme.spacing(1.5, 2), - margin: theme.spacing(0, 'auto', 2), - }, - table: {}, - head: { - fontWeight: 300, - color: theme.palette.text.secondary, - }, - cell: { - border: 'none', - padding: 0, - }, - list: { - alignItems: 'center', - justifyContent: 'flex-start', - }, - item: { - display: 'flex', - padding: theme.spacing(0.25, 0), - }, - button: { - display: 'flex', - borderRadius: 500, - padding: theme.spacing(0.25), - '&:hover': { - backgroundColor: theme.palette.background.default, - }, - }, - link: { - display: 'flex', - alignItems: 'center', - }, - name: { - fontSize: 12, - marginLeft: theme.spacing(1), - }, -})) - -export interface TradeRouteProps extends withClasses<'root'> { - trade: TradeComputed -} - -export function TradeRoute(props: TradeRouteProps) { - const { t } = useI18N() - const classes = useStylesExtends(useStyles(), props) - - if (!props.trade.trade_) return null - - return ( - - - - - - {t('plugin_trader_route')} - - - {t('plugin_trader_portion')} - - - - - {props.trade.trade_.routes.map((route, i) => ( - - - }> - {route.hops.map((hop) => ( - - ))} - - - - {formatPercentage(route.share)} - - - ))} - -
-
- ) -} diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRouteHop.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRouteHop.tsx deleted file mode 100644 index 1e0ebfd0babd..000000000000 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/balancer/TradeRouteHop.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { Box, AvatarGroup, Link } from '@mui/material' -import { makeStyles } from '@masknet/theme' -import { TokenIcon } from '@masknet/shared' -import { useNetworkType } from '@masknet/web3-shared-evm' -import { TradeProvider } from '@masknet/public-api' -import type { Hop } from '../../types' -import { resolveTradePairLink } from '../../pipes' - -const useStyles = makeStyles()((theme) => ({ - root: { - display: 'flex', - borderRadius: 500, - padding: theme.spacing(0.25), - '&:hover': { - backgroundColor: theme.palette.background.default, - }, - }, - link: { - display: 'flex', - alignItems: 'center', - }, - icon: { - width: 16, - height: 16, - }, -})) - -export interface TradeRouteHopProps { - hop: Hop -} - -export function TradeRouteHop(props: TradeRouteHopProps) { - const { hop } = props - const { classes } = useStyles() - const networkType = useNetworkType() - - return ( -
- - - {hop.pool.tokens.map((token) => ( - - - - ))} - - -
- ) -} diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/dodo/TradePairViewer.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/dodo/TradePairViewer.tsx deleted file mode 100644 index 36a13a532dae..000000000000 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/dodo/TradePairViewer.tsx +++ /dev/null @@ -1,61 +0,0 @@ -import { ExternalLink } from 'react-feather' -import { Link, Typography } from '@mui/material' -import { makeStyles } from '@masknet/theme' -import { resolveTradePairLink } from '../../pipes' -import type { TradeComputed } from '../../types' -import { useNetworkType } from '@masknet/web3-shared-evm' -import type { TradeProvider } from '@masknet/public-api' -import { useI18N } from '../../../../utils' - -const useStyles = makeStyles()((theme) => { - return { - root: { - border: `1px solid ${theme.palette.divider}`, - borderRadius: 15, - padding: theme.spacing(1, 2), - margin: theme.spacing(0, 0, 2), - }, - link: { - display: 'block', - }, - text: {}, - icon: { - verticalAlign: 'middle', - marginLeft: theme.spacing(0.5), - }, - } -}) - -type Tokens = { fromTokenSymbol?: string; toTokenSymbol?: string } - -export function TradePairViewer(props: { trade: TradeComputed; provider: TradeProvider }) { - const { trade, provider } = props - const { classes } = useStyles() - const networkType = useNetworkType() - const { t } = useI18N() - - if (!trade.trade_?.fromTokenSymbol || !trade.trade_?.toTokenSymbol) return null - const address = `${trade.trade_?.fromTokenSymbol}-${trade.trade_?.toTokenSymbol}` - const tradePairLink = resolveTradePairLink(provider, address, networkType) - - if (!tradePairLink) return null - - return ( -
- - - {t('plugin_trader_view_pair_analytics')} - - - - - -
- ) -} diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/trader/hooks/useGasConfig.ts b/packages/mask/src/plugins/Trader/SNSAdaptor/trader/hooks/useGasConfig.ts index 3a7f71af61ae..6cb0142beb56 100644 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/trader/hooks/useGasConfig.ts +++ b/packages/mask/src/plugins/Trader/SNSAdaptor/trader/hooks/useGasConfig.ts @@ -1,9 +1,9 @@ -import type { ChainId, GasOptionConfig } from '@masknet/web3-shared-evm' +import { useState } from 'react' import { useAsync } from 'react-use' -import { formatGweiToWei, isEIP1559Supported } from '@masknet/web3-shared-evm' import BigNumber from 'bignumber.js' +import type { ChainId, GasOptionConfig } from '@masknet/web3-shared-evm' +import { formatGweiToWei, isEIP1559Supported } from '@masknet/web3-shared-evm' import { WalletRPC } from '../../../../Wallet/messages' -import { useState } from 'react' export function useGasConfig(chainId: ChainId) { const [gasConfig, setGasConfig] = useState() diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradePairViewer.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradePairViewer.tsx deleted file mode 100644 index 37119a1f640f..000000000000 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradePairViewer.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import { useContext } from 'react' -import { ExternalLink } from 'react-feather' -import type { Trade } from '@uniswap/v2-sdk' -import type { Currency, TradeType } from '@uniswap/sdk-core' -import { Link, Typography } from '@mui/material' -import { makeStyles } from '@masknet/theme' -import { resolveTradePairLink } from '../../pipes' -import type { TradeComputed } from '../../types' -import { TradeContext } from '../../trader/useTradeContext' -import { getPairAddress } from '../../helpers' -import { useNetworkType } from '@masknet/web3-shared-evm' -import type { TradeProvider } from '@masknet/public-api' -import { useI18N } from '../../../../utils' - -const useStyles = makeStyles()((theme) => { - return { - root: { - border: `1px solid ${theme.palette.divider}`, - borderRadius: 15, - padding: theme.spacing(1, 2), - margin: theme.spacing(0, 0, 2), - }, - link: { - display: 'block', - }, - text: {}, - icon: { - verticalAlign: 'middle', - marginLeft: theme.spacing(0.5), - }, - } -}) - -export interface TradePairViewerProps { - trade: TradeComputed> - provider: TradeProvider -} - -export function TradePairViewer(props: TradePairViewerProps) { - const { trade, provider } = props - const { classes } = useStyles() - const networkType = useNetworkType() - const { t } = useI18N() - - const context = useContext(TradeContext) - const address = getPairAddress( - context?.FACTORY_CONTRACT_ADDRESS ?? '', - context?.INIT_CODE_HASH ?? '', - trade.trade_?.route.pairs[0].token0, - trade.trade_?.route.pairs[0].token1, - ) - if (!address) return null - if (trade.trade_?.route.pairs.length !== 1) return null - - return ( -
- - - {t('plugin_trader_view_pair_analytics')} - - - - - -
- ) -} diff --git a/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradeRoute.tsx b/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradeRoute.tsx deleted file mode 100644 index 77ece21903a7..000000000000 --- a/packages/mask/src/plugins/Trader/SNSAdaptor/uniswap/TradeRoute.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import { AvatarGroup, Box, Breadcrumbs, Paper, Typography } from '@mui/material' -import { makeStyles, useStylesExtends } from '@masknet/theme' -import NavigateNextIcon from '@mui/icons-material/NavigateNext' -import type { TradeComputed } from '../../types' -import { formatEthereumAddress } from '@masknet/web3-shared-evm' -import { TokenIcon } from '@masknet/shared' - -const useStyles = makeStyles()((theme) => ({ - root: { - width: '100%', - boxSizing: 'border-box', - padding: theme.spacing(1.5, 2), - margin: theme.spacing(0, 'auto', 2), - }, - list: { - alignItems: 'center', - justifyContent: 'center', - }, - item: { - display: 'flex', - padding: theme.spacing(0.5, 0), - }, - name: { - fontSize: 12, - marginLeft: theme.spacing(1), - }, - icon: { - width: 16, - height: 16, - }, -})) - -export interface TradeRouteProps extends withClasses<'root'> { - trade: TradeComputed -} - -export function TradeRoute(props: TradeRouteProps) { - const classes = useStylesExtends(useStyles(), props) - - const { path } = props.trade - if (!path || path.length <= 2) return null - - return ( - - }> - {path.map((tokens, i) => ( - - {tokens.map((token) => { - return ( - - - {tokens.length === 1 ? ( - - {token.symbol ?? token.name ?? formatEthereumAddress(token.address, 2)} - - ) : null} - - ) - })} - - ))} - - - ) -} diff --git a/packages/mask/src/plugins/Trader/messages.ts b/packages/mask/src/plugins/Trader/messages.ts index 0ca21e9eb205..50fd5df11730 100644 --- a/packages/mask/src/plugins/Trader/messages.ts +++ b/packages/mask/src/plugins/Trader/messages.ts @@ -37,11 +37,6 @@ export interface TraderMessage { */ swapSettingsUpdated: SwapSettingsEvent - /** - * Confirm swap dialog - */ - swapConfirmationUpdated: SwapConfirmationEvent - /** * Swap dialog */ diff --git a/packages/mask/src/plugins/Trader/pipes.ts b/packages/mask/src/plugins/Trader/pipes.ts index ea9434a4858a..c5fa9424b3c1 100644 --- a/packages/mask/src/plugins/Trader/pipes.ts +++ b/packages/mask/src/plugins/Trader/pipes.ts @@ -1,26 +1,5 @@ -import type BigNumber from 'bignumber.js' -import { Currency, WarningLevel, ZrxTradePool } from './types' import { DataProvider, TradeProvider } from '@masknet/public-api' -import { safeUnreachable, unreachable } from '@dimensiondev/kit' -import { - BIPS_BASE, - networkNames, - PRICE_IMPACT_HIGH, - PRICE_IMPACT_LOW, - PRICE_IMPACT_MEDIUM, - PRICE_IMPACT_NON_EXPERT_BLOCKED, - PRICE_IMPACT_WITHOUT_FEE_CONFIRM_MIN, -} from './constants' -import { createLookupTableResolver, NetworkType } from '@masknet/web3-shared-evm' -import urlcat from 'urlcat' - -export function resolveCurrencyName(currency: Currency) { - return [ - currency.name, - currency.symbol ? `"${currency.symbol}"` : '', - currency.description ? `(${currency.description})` : '', - ].join(' ') -} +import { createLookupTableResolver } from '@masknet/web3-shared-evm' export const resolveDataProviderName = createLookupTableResolver( { @@ -67,150 +46,6 @@ export const resolveTradeProviderName = createLookupTableResolver= 365) return `${Math.floor(days / 365)}y` @@ -218,87 +53,3 @@ export function resolveDaysName(days: number) { if (days >= 7) return `${Math.floor(days / 7)}w` return `${days}d` } - -export function resolveUniswapWarningLevel(priceImpact: BigNumber) { - const priceImpact_ = priceImpact.multipliedBy(BIPS_BASE) - if (priceImpact_.isGreaterThan(PRICE_IMPACT_NON_EXPERT_BLOCKED)) return WarningLevel.BLOCKED - if (priceImpact_.isGreaterThan(PRICE_IMPACT_WITHOUT_FEE_CONFIRM_MIN)) return WarningLevel.CONFIRMATION_REQUIRED - if (priceImpact_.isGreaterThan(PRICE_IMPACT_HIGH)) return WarningLevel.HIGH - if (priceImpact_.isGreaterThan(PRICE_IMPACT_MEDIUM)) return WarningLevel.MEDIUM - if (priceImpact_.isGreaterThan(PRICE_IMPACT_LOW)) return WarningLevel.LOW - return WarningLevel.LOW -} - -export const resolveUniswapWarningLevelColor = createLookupTableResolver( - { - [WarningLevel.LOW]: 'inherit', - [WarningLevel.MEDIUM]: '#f3841e', - [WarningLevel.HIGH]: '#f3841e', - [WarningLevel.CONFIRMATION_REQUIRED]: '#ff6871', - [WarningLevel.BLOCKED]: '#ff6871', - }, - '#27ae60', -) - -export const resolveZrxTradePoolName = createLookupTableResolver( - { - [ZrxTradePool.ZRX]: '0x', - [ZrxTradePool.ACryptoS]: 'ACryptoS', - [ZrxTradePool.ApeSwap]: 'ApeSwap', - [ZrxTradePool.BakerySwap]: 'BakerySwap', - [ZrxTradePool.Balancer]: 'Balancer', - [ZrxTradePool.BalancerV2]: 'Balancer V2', - [ZrxTradePool.Bancor]: 'Bancor', - [ZrxTradePool.Belt]: 'Belt', - [ZrxTradePool.CafeSwap]: 'CafeSwap', - [ZrxTradePool.CheeseSwap]: 'CheeseSwap', - [ZrxTradePool.ComethSwap]: 'ComethSwap', - [ZrxTradePool.Component]: 'Component', - [ZrxTradePool.Cream]: 'CREAM', - [ZrxTradePool.CryptoCom]: 'CryptoCom', - [ZrxTradePool.Curve]: 'Curve', - [ZrxTradePool.CurveV2]: 'Curve V2', - [ZrxTradePool.Dfyn]: 'Dfyn', - [ZrxTradePool.Dodo]: 'DODO', - [ZrxTradePool.DodoV2]: 'DODO V2', - [ZrxTradePool.Ellipsis]: 'Ellipsis', - [ZrxTradePool.Eth2Dai]: 'Eth2Dai', - [ZrxTradePool.FirebirdOneSwap]: 'FirebirdOneSwap', - [ZrxTradePool.IronSwap]: 'IronSwap', - [ZrxTradePool.JetSwap]: 'JetSwap', - [ZrxTradePool.JulSwap]: 'JulSwap', - [ZrxTradePool.Kyber]: 'Kyber', - [ZrxTradePool.KyberDMM]: 'KyberDMM', - [ZrxTradePool.Lido]: 'Lido', - [ZrxTradePool.Linkswap]: 'Linkswap', - [ZrxTradePool.LiquidityProvider]: 'LiquidityProvider', - [ZrxTradePool.MStable]: 'mStable', - [ZrxTradePool.MakerPsm]: 'MakerPsm', - [ZrxTradePool.Mesh]: 'Mesh', - [ZrxTradePool.Mooniswap]: 'Mooniswap', - [ZrxTradePool.MultiBridge]: 'MultiBridge', - [ZrxTradePool.MultiHop]: 'MultiHop', - [ZrxTradePool.Native]: 'Native', - [ZrxTradePool.Nerve]: 'Nerve', - [ZrxTradePool.Oasis]: 'Oasis', - [ZrxTradePool.PancakeSwap]: 'PancakeSwap', - [ZrxTradePool.PancakeSwapV2]: 'PancakeSwap V2', - [ZrxTradePool.QuickSwap]: 'QuickSwap', - [ZrxTradePool.Saddle]: 'Saddle', - [ZrxTradePool.Shell]: 'Shell', - [ZrxTradePool.Smoothy]: 'Smoothy', - [ZrxTradePool.SnowSwap]: 'SnowSwap', - [ZrxTradePool.SushiSwap]: 'SushiSwap', - [ZrxTradePool.Swerve]: 'Swerve', - [ZrxTradePool.Uniswap]: 'Uniswap', - [ZrxTradePool.UniswapV2]: 'Uniswap V2', - [ZrxTradePool.UniswapV3]: 'Uniswap V3', - [ZrxTradePool.WaultSwap]: 'WaultSwap', - [ZrxTradePool.xSigma]: 'xSigma', - [ZrxTradePool.TraderJoe]: 'TraderJoe', - [ZrxTradePool.PangolinDex]: 'PangolinDex', - [ZrxTradePool.Trisolaris]: 'Trisolaris', - [ZrxTradePool.WannaSwap]: 'WannaSwap', - }, - 'Unknown', -) diff --git a/packages/mask/src/plugins/Trader/settings.ts b/packages/mask/src/plugins/Trader/settings.ts index 17401d8952d3..f27830ef56fe 100644 --- a/packages/mask/src/plugins/Trader/settings.ts +++ b/packages/mask/src/plugins/Trader/settings.ts @@ -3,7 +3,7 @@ import { createGlobalSettings, createInternalSettings } from '../../settings/cre import { i18n } from '../../../shared-ui/locales_legacy' import { PLUGIN_ID, SLIPPAGE_DEFAULT } from './constants' import type { ZrxTradePool } from './types' -import { DataProvider, TradeProvider } from '@masknet/public-api' +import { DataProvider } from '@masknet/public-api' /** * The slippage tolerance of trader @@ -40,85 +40,6 @@ export interface TradeProviderSettings { pools: ZrxTradePool[] } -const uniswapV2Settings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+uniswap+v2`, '') -const uniswapV3Settings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+uniswap+v3`, '') -const zrxSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+zrx`, '') -const sushiswapSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+sushiswap`, '') -const sashimiswapSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+sashimiswap`, '') -const quickswapSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+quickswap`, '') -const pancakeswapSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+pancakeswap`, '') -const balancerSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+balancer`, '') -const dodoSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+dodo`, '') -const bancorSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+bancor`, '') -const traderjoeSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+traderjoe`, '') -const pangolinSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+pangolin`, '') -const openoceanSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+openocean`, '') -const trisolarisSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+trisolaris`, '') -const wannaswapSettings = createInternalSettings(`${PLUGIN_ID}+tradeProvider+wannaswap`, '') - -/** - * The general settings of specific tarde provider - */ -export function getCurrentTradeProviderGeneralSettings(tradeProvider: TradeProvider) { - switch (tradeProvider) { - case TradeProvider.UNISWAP_V2: - return uniswapV2Settings - case TradeProvider.UNISWAP_V3: - return uniswapV3Settings - case TradeProvider.ZRX: - return zrxSettings - case TradeProvider.SUSHISWAP: - return sushiswapSettings - case TradeProvider.SASHIMISWAP: - return sashimiswapSettings - case TradeProvider.QUICKSWAP: - return quickswapSettings - case TradeProvider.PANCAKESWAP: - return pancakeswapSettings - case TradeProvider.BALANCER: - return balancerSettings - case TradeProvider.DODO: - return dodoSettings - case TradeProvider.BANCOR: - return bancorSettings - case TradeProvider.TRADERJOE: - return traderjoeSettings - case TradeProvider.OPENOCEAN: - return openoceanSettings - case TradeProvider.PANGOLIN: - return pangolinSettings - case TradeProvider.TRISOLARIS: - return trisolarisSettings - case TradeProvider.WANNASWAP: - return wannaswapSettings - default: - unreachable(tradeProvider) - } -} -// #endregion - -// #region data provider general settings -const coinGeckoSettings = createInternalSettings(`${PLUGIN_ID}+currentCoinGeckoSettings`, '') -const coinMarketCapSettings = createInternalSettings(`${PLUGIN_ID}+currentCoinMarketCapSettings`, '') -const coinUniswapSettings = createInternalSettings(`${PLUGIN_ID}+currentCoinUniswapSettings`, '') - -/** - * The general settings of specific data provider - */ -export function getCurrentDataProviderGeneralSettings(dataProvider: DataProvider) { - switch (dataProvider) { - case DataProvider.COIN_GECKO: - return coinGeckoSettings - case DataProvider.COIN_MARKET_CAP: - return coinMarketCapSettings - case DataProvider.UNISWAP_INFO: - return coinUniswapSettings - default: - unreachable(dataProvider) - } -} -// #endregion - // #region the user preferred coin id const coinGeckoPreferredCoinId = createInternalSettings(`${PLUGIN_ID}+currentCoinGeckoPreferredCoinId`, '{}') const coinMarketCapPreferredCoinId = createInternalSettings( @@ -147,4 +68,4 @@ export function getCurrentPreferredCoinIdSettings(dataProvider: DataProvider) { /** * The approved tokens from uniswap */ -export const approvedTokensFromUniSwap = createInternalSettings(`${PLUGIN_ID}+approvedTokens`, '[]') +export const approvedTokensFromUniswap = createInternalSettings(`${PLUGIN_ID}+approvedTokens`, '[]') diff --git a/packages/mask/src/plugins/Trader/trader/0x/useTrade.ts b/packages/mask/src/plugins/Trader/trader/0x/useTrade.ts index 8476309e06ed..b6c224570cd2 100644 --- a/packages/mask/src/plugins/Trader/trader/0x/useTrade.ts +++ b/packages/mask/src/plugins/Trader/trader/0x/useTrade.ts @@ -11,10 +11,8 @@ import { ZRX_AFFILIATE_ADDRESS } from '../../constants' import { PluginTraderRPC } from '../../messages' import { SwapQuoteResponse, TradeStrategy } from '../../types' import { useSlippageTolerance } from '../0x/useSlippageTolerance' -import { useTradeProviderSettings } from '../useTradeSettings' import { currentNetworkSettings } from '../../../Wallet/settings' import { TargetChainIdContext } from '../useTargetChainIdContext' -import { TradeProvider } from '@masknet/public-api' import { useDoubleBlockBeatRetry } from '@masknet/plugin-infra' import type { AsyncStateRetry } from 'react-use/lib/useAsyncRetry' @@ -57,7 +55,6 @@ export function useTrade( const slippageSetting = useSlippageTolerance() const slippage = temporarySlippage || slippageSetting - const { pools } = useTradeProviderSettings(TradeProvider.ZRX) return useDoubleBlockBeatRetry(async () => { if (!inputToken || !outputToken) return null const isExactIn = strategy === TradeStrategy.ExactIn @@ -92,6 +89,5 @@ export function useTrade( inputToken?.address, outputToken?.address, slippage, - pools.length, ]) } diff --git a/packages/mask/src/plugins/Trader/trader/useTradeSettings.ts b/packages/mask/src/plugins/Trader/trader/useTradeSettings.ts deleted file mode 100644 index 6c890cd3031a..000000000000 --- a/packages/mask/src/plugins/Trader/trader/useTradeSettings.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { TradeProvider } from '@masknet/public-api' -import { useValueRef } from '@masknet/shared' -import { getCurrentTradeProviderGeneralSettings, TradeProviderSettings } from '../settings' - -export function useTradeProviderSettings(tradeProvider: TradeProvider): TradeProviderSettings { - const raw = useValueRef(getCurrentTradeProviderGeneralSettings(tradeProvider)) - - try { - return JSON.parse(raw) - } catch { - return { pools: [] } - } -} diff --git a/packages/mask/src/plugins/Trader/trending/useApprovedTokens.ts b/packages/mask/src/plugins/Trader/trending/useApprovedTokens.ts index a5f34c833d6d..075906dca163 100644 --- a/packages/mask/src/plugins/Trader/trending/useApprovedTokens.ts +++ b/packages/mask/src/plugins/Trader/trending/useApprovedTokens.ts @@ -1,12 +1,12 @@ import { useCallback, useEffect, useState } from 'react' import { useValueRef } from '@masknet/shared' import stringify from 'json-stable-stringify' -import { approvedTokensFromUniSwap } from '../settings' +import { approvedTokensFromUniswap } from '../settings' import { APPROVED_TOKENS_MAX } from '../constants' export function useApprovedTokens(token_address: string | undefined) { const [approvedTokens, setApprovedTokens] = useState([]) - const tokens = useValueRef(approvedTokensFromUniSwap) + const tokens = useValueRef(approvedTokensFromUniswap) const onApprove = useCallback(() => { if (!token_address || !token_address.length) return @@ -16,12 +16,12 @@ export function useApprovedTokens(token_address: string | undefined) { if (parsed.length === APPROVED_TOKENS_MAX) parsed.shift() parsed.push(token_address) - approvedTokensFromUniSwap.value = stringify(parsed) + approvedTokensFromUniswap.value = stringify(parsed) }, [tokens, token_address]) useEffect(() => { try { - if (!tokens) approvedTokensFromUniSwap.value = stringify([]) + if (!tokens) approvedTokensFromUniswap.value = stringify([]) else setApprovedTokens(JSON.parse(tokens)) } catch { setApprovedTokens([]) From 17211cca5aa0ec0630e1adb585cd5e73c7cfe00f Mon Sep 17 00:00:00 2001 From: guanbinrui Date: Wed, 9 Mar 2022 21:35:40 +0800 Subject: [PATCH 2/2] refactor: remove unused keys --- packages/mask/shared-ui/locales/en-US.json | 3 --- packages/mask/shared-ui/locales/ja-JP.json | 2 -- packages/mask/shared-ui/locales/ko-KR.json | 3 --- packages/mask/shared-ui/locales/qya-AA.json | 3 --- packages/mask/shared-ui/locales/zh-CN.json | 3 --- packages/mask/shared-ui/locales/zh-TW.json | 2 -- 6 files changed, 16 deletions(-) diff --git a/packages/mask/shared-ui/locales/en-US.json b/packages/mask/shared-ui/locales/en-US.json index 3064c07e26be..02003ee8e3a5 100644 --- a/packages/mask/shared-ui/locales/en-US.json +++ b/packages/mask/shared-ui/locales/en-US.json @@ -429,7 +429,6 @@ "plugin_trader_market_cap": "Market Cap", "plugin_trader_data_source": "Data Source", "plugin_trader_price_updated": "Price Updated", - "plugin_trader_view_pair_analytics": "View pair analytics", "plugin_savings": "Savings", "plugin_savings_type": "Type", "plugin_no_protocol_available": "No savings protocols available on this network", @@ -455,8 +454,6 @@ "plugin_trader_table_price": "Price", "plugin_trader_table_volume": "Volume (24h)", "plugin_trader_table_updated": "Updated", - "plugin_trader_route": "Route", - "plugin_trader_portion": "Portion", "plugin_trader_error_amount_absence": "Enter an amount", "plugin_trader_error_insufficient_balance": "Insufficient {{symbol}} balance", "plugin_trader_error_insufficient_lp": "Insufficient liquidity for this trade", diff --git a/packages/mask/shared-ui/locales/ja-JP.json b/packages/mask/shared-ui/locales/ja-JP.json index 761cfb08fae0..5689aa1db78b 100644 --- a/packages/mask/shared-ui/locales/ja-JP.json +++ b/packages/mask/shared-ui/locales/ja-JP.json @@ -181,8 +181,6 @@ "plugin_trader_table_price": "価格", "plugin_trader_table_volume": "取引高(24時間)", "plugin_trader_table_updated": "更新", - "plugin_trader_route": "ルート", - "plugin_trader_portion": "分割", "plugin_trader_error_amount_absence": "量を入力してください。", "plugin_trader_error_insufficient_balance": "{{symbol}} の残高が足りません", "plugin_trader_error_insufficient_lp": "流動性が足りません", diff --git a/packages/mask/shared-ui/locales/ko-KR.json b/packages/mask/shared-ui/locales/ko-KR.json index 4e05eb84a169..b0b441d614f6 100644 --- a/packages/mask/shared-ui/locales/ko-KR.json +++ b/packages/mask/shared-ui/locales/ko-KR.json @@ -333,7 +333,6 @@ "plugin_trader_market_cap": "시가 총액", "plugin_trader_data_source": "데이터 소스", "plugin_trader_price_updated": "가격은 업데이트뒤었습니다", - "plugin_trader_view_pair_analytics": "페어 분석 보기", "plugin_trader_swap": "스왑", "plugin_trader_wrap": "랩", "plugin_trader_unwrap": "언랩", @@ -348,8 +347,6 @@ "plugin_trader_table_price": "가격", "plugin_trader_table_volume": "거래량(24h)", "plugin_trader_table_updated": "업데이트", - "plugin_trader_route": "경로", - "plugin_trader_portion": "부분", "plugin_trader_error_amount_absence": "수액 입력", "plugin_trader_error_insufficient_balance": "{{symbol}}잔액 부족", "plugin_trader_error_insufficient_lp": "유동성 부족", diff --git a/packages/mask/shared-ui/locales/qya-AA.json b/packages/mask/shared-ui/locales/qya-AA.json index b8f163bb8e1a..44e67dd77911 100644 --- a/packages/mask/shared-ui/locales/qya-AA.json +++ b/packages/mask/shared-ui/locales/qya-AA.json @@ -429,7 +429,6 @@ "plugin_trader_market_cap": "crwdns10233:0crwdne10233:0", "plugin_trader_data_source": "crwdns10235:0crwdne10235:0", "plugin_trader_price_updated": "crwdns10237:0crwdne10237:0", - "plugin_trader_view_pair_analytics": "crwdns10239:0crwdne10239:0", "plugin_savings": "crwdns13250:0crwdne13250:0", "plugin_savings_type": "crwdns13252:0crwdne13252:0", "plugin_no_protocol_available": "crwdns13254:0crwdne13254:0", @@ -455,8 +454,6 @@ "plugin_trader_table_price": "crwdns4903:0crwdne4903:0", "plugin_trader_table_volume": "crwdns4905:0crwdne4905:0", "plugin_trader_table_updated": "crwdns4907:0crwdne4907:0", - "plugin_trader_route": "crwdns4911:0crwdne4911:0", - "plugin_trader_portion": "crwdns4913:0crwdne4913:0", "plugin_trader_error_amount_absence": "crwdns4915:0crwdne4915:0", "plugin_trader_error_insufficient_balance": "crwdns4917:0{{symbol}}crwdne4917:0", "plugin_trader_error_insufficient_lp": "crwdns4919:0crwdne4919:0", diff --git a/packages/mask/shared-ui/locales/zh-CN.json b/packages/mask/shared-ui/locales/zh-CN.json index 4439951dba51..a797bfa22925 100644 --- a/packages/mask/shared-ui/locales/zh-CN.json +++ b/packages/mask/shared-ui/locales/zh-CN.json @@ -415,7 +415,6 @@ "plugin_trader_market_cap": "市值", "plugin_trader_data_source": "数据源", "plugin_trader_price_updated": "价格已更新", - "plugin_trader_view_pair_analytics": "查看交易对分析", "plugin_savings": "储蓄", "plugin_savings_type": "类型", "plugin_no_protocol_available": "储蓄功能尚未在此网络支持。", @@ -440,8 +439,6 @@ "plugin_trader_table_price": "价格", "plugin_trader_table_volume": "交易量 (24h)", "plugin_trader_table_updated": "更新时间", - "plugin_trader_route": "路径", - "plugin_trader_portion": "比例", "plugin_trader_error_amount_absence": "输入数额", "plugin_trader_error_insufficient_balance": "{{symbol}} 余额不足", "plugin_trader_error_insufficient_lp": "该交易的流动性不足", diff --git a/packages/mask/shared-ui/locales/zh-TW.json b/packages/mask/shared-ui/locales/zh-TW.json index 18a4776aea59..cfe39e9e498d 100644 --- a/packages/mask/shared-ui/locales/zh-TW.json +++ b/packages/mask/shared-ui/locales/zh-TW.json @@ -311,8 +311,6 @@ "plugin_trader_table_price": "價格", "plugin_trader_table_volume": "交易量 (24h)", "plugin_trader_table_updated": "已更新", - "plugin_trader_route": "路由", - "plugin_trader_portion": "比例", "plugin_trader_error_amount_absence": "輸入一個金額", "plugin_trader_error_insufficient_balance": "{{symbol}} 餘額不足", "plugin_trader_error_insufficient_lp": "本次交易流動性不足",