@@ -60,10 +60,12 @@ export class EcoFiller extends BaseFiller<EcoMetadata, ParsedArgs, IntentData> {
6060 protected async prepareIntent (
6161 parsedArgs : ParsedArgs ,
6262 ) : Promise < Result < IntentData > > {
63- const adapter =
64- this . metadata . adapters [ parsedArgs . _destinationChain . toString ( ) ] ;
63+ const chainName = this . multiProvider . getChainName (
64+ parsedArgs . _destinationChain . toString ( ) ,
65+ ) ;
66+ const adapterAddress = this . metadata . adapters [ chainName ] ;
6567
66- if ( ! adapter ) {
68+ if ( ! adapterAddress ) {
6769 return {
6870 error : "No adapter found for destination chain" ,
6971 success : false ,
@@ -73,7 +75,7 @@ export class EcoFiller extends BaseFiller<EcoMetadata, ParsedArgs, IntentData> {
7375 try {
7476 await super . prepareIntent ( parsedArgs ) ;
7577
76- return { data : { adapter } , success : true } ;
78+ return { data : { adapterAddress } , success : true } ;
7779 } catch ( error : any ) {
7880 return {
7981 error : error . message ?? "Failed to prepare Eco Intent." ,
@@ -96,7 +98,7 @@ export class EcoFiller extends BaseFiller<EcoMetadata, ParsedArgs, IntentData> {
9698 msg : "Approving tokens" ,
9799 protocolName : this . metadata . protocolName ,
98100 intentHash : parsedArgs . _hash ,
99- adapterAddress : data . adapter . address ,
101+ adapterAddress : data . adapterAddress ,
100102 } ) ;
101103
102104 const erc20Interface = Erc20__factory . createInterface ( ) ;
@@ -115,25 +117,21 @@ export class EcoFiller extends BaseFiller<EcoMetadata, ParsedArgs, IntentData> {
115117 return acc ;
116118 } , { } ) ;
117119
118- const signer = this . multiProvider . getSigner ( data . adapter . chainName ) ;
120+ const destinationChainId = parsedArgs . _destinationChain . toString ( ) ;
121+ const signer = this . multiProvider . getSigner ( destinationChainId ) ;
122+
119123 await Promise . all (
120124 Object . entries ( requiredAmountsByTarget ) . map (
121125 async ( [ target , requiredAmount ] ) => {
122126 const erc20 = Erc20__factory . connect ( target , signer ) ;
123127
124- const tx = await erc20 . approve ( data . adapter . address , requiredAmount ) ;
128+ const tx = await erc20 . approve ( data . adapterAddress , requiredAmount ) ;
125129 await tx . wait ( ) ;
126130 } ,
127131 ) ,
128132 ) ;
129133
130- const _chainId = parsedArgs . _destinationChain . toString ( ) ;
131-
132- const filler = this . multiProvider . getSigner ( _chainId ) ;
133- const ecoAdapter = EcoAdapter__factory . connect (
134- data . adapter . address ,
135- filler ,
136- ) ;
134+ const ecoAdapter = EcoAdapter__factory . connect ( data . adapterAddress , signer ) ;
137135
138136 const claimantAddress =
139137 await this . multiProvider . getSignerAddress ( originChainName ) ;
@@ -169,10 +167,14 @@ export class EcoFiller extends BaseFiller<EcoMetadata, ParsedArgs, IntentData> {
169167 } ) ;
170168 }
171169
172- settleOrder ( parsedArgs : ParsedArgs , data : IntentData ) {
170+ settleOrder (
171+ parsedArgs : ParsedArgs ,
172+ data : IntentData ,
173+ originChainName : string ,
174+ ) {
173175 return withdrawRewards (
174176 parsedArgs ,
175- data . adapter . chainName ,
177+ originChainName ,
176178 this . multiProvider ,
177179 this . metadata . protocolName ,
178180 ) ;
0 commit comments