diff --git a/src/encoding/config/executor_addresses.json b/src/encoding/config/executor_addresses.json index 6e27a2d..32c9e3e 100644 --- a/src/encoding/config/executor_addresses.json +++ b/src/encoding/config/executor_addresses.json @@ -1,6 +1,7 @@ { "ethereum": { "uniswap_v2": "0x5C2F5a71f67c01775180ADc06909288B4C329308", + "uniswap_v3": "0x5C2F5a71f67c01775180ADc06909288B4C329308", "vm:balancer_v2": "0x543778987b293C7E8Cf0722BB2e935ba6f4068D4" } } \ No newline at end of file diff --git a/src/encoding/evm/swap_encoder/builder.rs b/src/encoding/evm/swap_encoder/builder.rs index 4d99206..430dcb2 100644 --- a/src/encoding/evm/swap_encoder/builder.rs +++ b/src/encoding/evm/swap_encoder/builder.rs @@ -1,6 +1,8 @@ use crate::encoding::{ errors::EncodingError, - evm::swap_encoder::swap_encoders::{BalancerV2SwapEncoder, UniswapV2SwapEncoder}, + evm::swap_encoder::swap_encoders::{ + BalancerV2SwapEncoder, UniswapV2SwapEncoder, UniswapV3SwapEncoder, + }, swap_encoder::SwapEncoder, }; @@ -22,6 +24,7 @@ impl SwapEncoderBuilder { match self.protocol_system.as_str() { "uniswap_v2" => Ok(Box::new(UniswapV2SwapEncoder::new(self.executor_address))), "vm:balancer_v2" => Ok(Box::new(BalancerV2SwapEncoder::new(self.executor_address))), + "uniswap_v3" => Ok(Box::new(UniswapV3SwapEncoder::new(self.executor_address))), _ => Err(EncodingError::FatalError(format!( "Unknown protocol system: {}", self.protocol_system