@@ -16,7 +16,7 @@ import { GasLimitEstimator } from "../gasEstimator";
1616import { GovernanceController , GovernanceTransactionsFactory } from "../governance" ;
1717import { MultisigTransactionsFactory } from "../multisig" ;
1818import { MultisigController } from "../multisig/multisigController" ;
19- import { ApiNetworkProvider , ProxyNetworkProvider } from "../networkProviders" ;
19+ import { ApiNetworkProvider , NetworkProviderConfig , ProxyNetworkProvider } from "../networkProviders" ;
2020import { INetworkProvider } from "../networkProviders/interface" ;
2121import { SmartContractTransactionsFactory } from "../smartContracts" ;
2222import { SmartContractController } from "../smartContracts/smartContractController" ;
@@ -34,19 +34,21 @@ export class NetworkEntrypoint {
3434 constructor ( options : {
3535 networkProviderUrl : string ;
3636 networkProviderKind : string ;
37+ networkProviderConfig ?: NetworkProviderConfig ;
3738 chainId : string ;
3839 clientName ?: string ;
3940 withGasLimitEstimator ?: boolean ;
4041 gasLimitMultiplier ?: number ;
4142 } ) {
43+ const networkProviderConfig : NetworkProviderConfig = {
44+ ...( options . networkProviderConfig ?? { } ) ,
45+ ...( options . clientName && { clientName : options . clientName } ) ,
46+ } ;
47+
4248 if ( options . networkProviderKind === "proxy" ) {
43- this . networkProvider = new ProxyNetworkProvider ( options . networkProviderUrl , {
44- clientName : options . clientName ,
45- } ) ;
49+ this . networkProvider = new ProxyNetworkProvider ( options . networkProviderUrl , networkProviderConfig ) ;
4650 } else if ( options . networkProviderKind === "api" ) {
47- this . networkProvider = new ApiNetworkProvider ( options . networkProviderUrl , {
48- clientName : options . clientName ,
49- } ) ;
51+ this . networkProvider = new ApiNetworkProvider ( options . networkProviderUrl , networkProviderConfig ) ;
5052 } else {
5153 throw new ErrInvalidNetworkProviderKind ( ) ;
5254 }
@@ -267,12 +269,14 @@ export class TestnetEntrypoint extends NetworkEntrypoint {
267269 clientName ?: string ;
268270 withGasLimitEstimator ?: boolean ;
269271 gasLimitMultiplier ?: number ;
272+ networkProviderConfig ?: NetworkProviderConfig ;
270273 } ) {
271274 const entrypointConfig = new TestnetEntrypointConfig ( ) ;
272275 options = options || { } ;
273276 super ( {
274277 networkProviderUrl : options . url || entrypointConfig . networkProviderUrl ,
275278 networkProviderKind : options . kind || entrypointConfig . networkProviderKind ,
279+ networkProviderConfig : options . networkProviderConfig ,
276280 chainId : entrypointConfig . chainId ,
277281 clientName : options . clientName ,
278282 withGasLimitEstimator : options . withGasLimitEstimator ,
@@ -288,12 +292,14 @@ export class DevnetEntrypoint extends NetworkEntrypoint {
288292 clientName ?: string ;
289293 withGasLimitEstimator ?: boolean ;
290294 gasLimitMultiplier ?: number ;
295+ networkProviderConfig ?: NetworkProviderConfig ;
291296 } ) {
292297 const entrypointConfig = new DevnetEntrypointConfig ( ) ;
293298 options = options || { } ;
294299 super ( {
295300 networkProviderUrl : options . url || entrypointConfig . networkProviderUrl ,
296301 networkProviderKind : options . kind || entrypointConfig . networkProviderKind ,
302+ networkProviderConfig : options . networkProviderConfig ,
297303 chainId : entrypointConfig . chainId ,
298304 clientName : options . clientName ,
299305 withGasLimitEstimator : options . withGasLimitEstimator ,
@@ -309,12 +315,14 @@ export class MainnetEntrypoint extends NetworkEntrypoint {
309315 clientName ?: string ;
310316 withGasLimitEstimator ?: boolean ;
311317 gasLimitMultiplier ?: number ;
318+ networkProviderConfig ?: NetworkProviderConfig ;
312319 } ) {
313320 const entrypointConfig = new MainnetEntrypointConfig ( ) ;
314321 options = options || { } ;
315322 super ( {
316323 networkProviderUrl : options . url || entrypointConfig . networkProviderUrl ,
317324 networkProviderKind : options . kind || entrypointConfig . networkProviderKind ,
325+ networkProviderConfig : options . networkProviderConfig ,
318326 chainId : entrypointConfig . chainId ,
319327 clientName : options . clientName ,
320328 withGasLimitEstimator : options . withGasLimitEstimator ,
0 commit comments