diff --git a/lib/Config.ts b/lib/Config.ts index cd0bc2b9..66aca2de 100644 --- a/lib/Config.ts +++ b/lib/Config.ts @@ -99,8 +99,10 @@ type TokenConfig = { }; type EthProviderServiceConfig = { - network: string; - apiKey: string; + network?: string; + apiKey?: string; + + endpoint?: string; }; type ContractsConfig = { @@ -112,6 +114,8 @@ type RskConfig = { networkName?: string; providerEndpoint: string; + alchemy: EthProviderServiceConfig; + contracts: ContractsConfig[]; tokens: TokenConfig[]; @@ -119,7 +123,6 @@ type RskConfig = { type EthereumConfig = RskConfig & { infura: EthProviderServiceConfig; - alchemy: EthProviderServiceConfig; }; type ApiConfig = { diff --git a/lib/chain/ElementsWrapper.ts b/lib/chain/ElementsWrapper.ts index a6e5f463..8291ba5f 100644 --- a/lib/chain/ElementsWrapper.ts +++ b/lib/chain/ElementsWrapper.ts @@ -47,7 +47,7 @@ class ElementsWrapper ); } - this.logger.info(`Using 0-conf check ${this.zeroConfCheck.name}`); + this.logger.info(`Using 0-conf check: ${this.zeroConfCheck.name}`); } public serviceName = () => 'ElementsWrapper'; diff --git a/lib/wallet/ethereum/InjectedProvider.ts b/lib/wallet/ethereum/InjectedProvider.ts index 522d2775..aa3d16be 100644 --- a/lib/wallet/ethereum/InjectedProvider.ts +++ b/lib/wallet/ethereum/InjectedProvider.ts @@ -130,13 +130,13 @@ class InjectedProvider implements Provider { name: EthProviderService, providerConfig: EthProviderServiceConfig, ) => { - if (providerConfig === undefined || providerConfig.apiKey === undefined) { - this.logDisabledProvider(name, 'no api key was set'); - return; - } - - if (providerConfig.network === undefined) { - this.logDisabledProvider(name, 'no network was specified'); + if ( + providerConfig === undefined || + (providerConfig.endpoint === undefined && + (providerConfig.network === undefined || + providerConfig.apiKey === undefined)) + ) { + this.logDisabledProvider(name, 'not configured'); return; } @@ -151,7 +151,12 @@ class InjectedProvider implements Provider { case EthProviderService.Alchemy: this.providers.set( name, - new AlchemyProvider(providerConfig.network, providerConfig.apiKey), + providerConfig.endpoint + ? new JsonRpcProvider(providerConfig.endpoint) + : new AlchemyProvider( + providerConfig.network, + providerConfig.apiKey, + ), ); break;