Commit ee92df15 authored by Moody Salem's avatar Moody Salem

Handle insufficient reserves/input errors without crashing

parent f1ccd7a1
...@@ -21,7 +21,12 @@ export function useTradeExactIn(amountIn?: TokenAmount, tokenOut?: Token): Trade ...@@ -21,7 +21,12 @@ export function useTradeExactIn(amountIn?: TokenAmount, tokenOut?: Token): Trade
const allPairs = [pairBetween, aToETH, bToETH].filter(p => !!p) const allPairs = [pairBetween, aToETH, bToETH].filter(p => !!p)
if (amountIn && allPairs.length > 0 && tokenOut) { if (amountIn && allPairs.length > 0 && tokenOut) {
return Trade.bestTradeExactIn(allPairs, amountIn, tokenOut)[0] ?? null try {
// TODO(moodysalem): remove when the insufficient reserves/input errors do not throw exceptions
return Trade.bestTradeExactIn(allPairs, amountIn, tokenOut)[0] ?? null
} catch (error) {
return null
}
} }
return null return null
}, [aToETH, bToETH, pairBetween, amountIn, tokenOut]) }, [aToETH, bToETH, pairBetween, amountIn, tokenOut])
...@@ -44,7 +49,12 @@ export function useTradeExactOut(tokenIn?: Token, amountOut?: TokenAmount): Trad ...@@ -44,7 +49,12 @@ export function useTradeExactOut(tokenIn?: Token, amountOut?: TokenAmount): Trad
const allPairs = [pairBetween, aToETH, bToETH].filter(p => !!p) const allPairs = [pairBetween, aToETH, bToETH].filter(p => !!p)
if (amountOut && allPairs.length > 0 && tokenIn) { if (amountOut && allPairs.length > 0 && tokenIn) {
return Trade.bestTradeExactOut(allPairs, tokenIn, amountOut)[0] ?? null try {
// TODO(moodysalem): remove when the insufficient reserves/input errors do not throw exceptions
return Trade.bestTradeExactOut(allPairs, tokenIn, amountOut)[0] ?? null
} catch (error) {
return null
}
} }
return null return null
}, [pairBetween, aToETH, bToETH, amountOut, tokenIn]) }, [pairBetween, aToETH, bToETH, amountOut, tokenIn])
......
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