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:
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.