On Weth related to stable coins, it is normal to use Weth as the base. The getWrapEthStepIfNeeded does not handle these cases when WETH is used as base. My workaround was:
Create an isQuote flag and then on the step:
let wethAmountNeeded = isQuote ? amount.multipliedBy(price) : amount;
Before calling the step we need to check if Weth is the quote or base, could be used the following function:
const isWethQuote = isWeth(quoteToken.symbol.toLowerCase()) ? true : false;
At the moment I recommend warning users about this issue saying Weth is not supported as a base token on the config.
On Weth related to stable coins, it is normal to use Weth as the base. The getWrapEthStepIfNeeded does not handle these cases when WETH is used as base. My workaround was:
Create an isQuote flag and then on the step:
let wethAmountNeeded = isQuote ? amount.multipliedBy(price) : amount;
Before calling the step we need to check if Weth is the quote or base, could be used the following function:
const isWethQuote = isWeth(quoteToken.symbol.toLowerCase()) ? true : false;
At the moment I recommend warning users about this issue saying Weth is not supported as a base token on the config.