Commit ac8d294e authored by Jordan Frankfurt's avatar Jordan Frankfurt Committed by GitHub

fix: don't show a price impact warning if the user is (un)wrapping (#6059)

parent 2df0ca17
...@@ -57,16 +57,18 @@ export function useClientSideV3Trade<TTradeType extends TradeType>( ...@@ -57,16 +57,18 @@ export function useClientSideV3Trade<TTradeType extends TradeType>(
gasRequired: chainId ? QUOTE_GAS_OVERRIDES[chainId] ?? DEFAULT_GAS_QUOTE : undefined, gasRequired: chainId ? QUOTE_GAS_OVERRIDES[chainId] ?? DEFAULT_GAS_QUOTE : undefined,
}) })
const currenciesAreTheSame = useMemo(
() => currencyIn && currencyOut && (currencyIn.equals(currencyOut) || currencyIn.wrapped.equals(currencyOut)),
[currencyIn, currencyOut]
)
return useMemo(() => { return useMemo(() => {
if ( if (
!amountSpecified || !amountSpecified ||
!currencyIn || !currencyIn ||
!currencyOut || !currencyOut ||
quotesResults.some(({ valid }) => !valid) || quotesResults.some(({ valid }) => !valid) ||
// skip when tokens are the same currenciesAreTheSame
(tradeType === TradeType.EXACT_INPUT
? amountSpecified.currency.equals(currencyOut)
: amountSpecified.currency.equals(currencyIn))
) { ) {
return { return {
state: TradeState.INVALID, state: TradeState.INVALID,
...@@ -144,5 +146,5 @@ export function useClientSideV3Trade<TTradeType extends TradeType>( ...@@ -144,5 +146,5 @@ export function useClientSideV3Trade<TTradeType extends TradeType>(
tradeType, tradeType,
}), }),
} }
}, [amountSpecified, currencyIn, currencyOut, quotesResults, routes, routesLoading, tradeType]) }, [amountSpecified, currenciesAreTheSame, currencyIn, currencyOut, quotesResults, routes, routesLoading, tradeType])
} }
...@@ -22,7 +22,7 @@ export function useRoutingAPIArguments({ ...@@ -22,7 +22,7 @@ export function useRoutingAPIArguments({
}) { }) {
return useMemo( return useMemo(
() => () =>
!tokenIn || !tokenOut || !amount || tokenIn.equals(tokenOut) !tokenIn || !tokenOut || !amount || tokenIn.equals(tokenOut) || tokenIn.wrapped.equals(tokenOut.wrapped)
? undefined ? undefined
: { : {
amount: amount.quotient.toString(), amount: amount.quotient.toString(),
......
...@@ -21,9 +21,9 @@ export function computeRoutes( ...@@ -21,9 +21,9 @@ export function computeRoutes(
const parsedTokenIn = parseToken(quoteResult.route[0][0].tokenIn) const parsedTokenIn = parseToken(quoteResult.route[0][0].tokenIn)
const parsedTokenOut = parseToken(quoteResult.route[0][quoteResult.route[0].length - 1].tokenOut) const parsedTokenOut = parseToken(quoteResult.route[0][quoteResult.route[0].length - 1].tokenOut)
if (parsedTokenIn.address !== currencyIn.wrapped.address) return undefined if (parsedTokenIn.address !== currencyIn.wrapped.address) return undefined
if (parsedTokenOut.address !== currencyOut.wrapped.address) return undefined if (parsedTokenOut.address !== currencyOut.wrapped.address) return undefined
if (parsedTokenIn.wrapped.equals(parsedTokenOut.wrapped)) return undefined
try { try {
return quoteResult.route.map((route) => { return quoteResult.route.map((route) => {
......
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