diff --git a/src/modules/networks/networks-store.ts b/src/modules/networks/networks-store.ts index 17512de42..b99603bae 100644 --- a/src/modules/networks/networks-store.ts +++ b/src/modules/networks/networks-store.ts @@ -32,6 +32,7 @@ type OtherNetworkData = { }; export class NetworksStore extends Store { + private isReady = false; private networkConfigs: NetworkConfig[] = []; private customNetworkConfigs: NetworkConfig[] = []; private loaderPromises: Record> = {}; @@ -152,6 +153,9 @@ export class NetworksStore extends Store { } private async fetchNetworkById(chainId: ChainId) { + if (!this.isReady) { + await this.load(); + } const shouldUpdateNetworksInfo = this.getState() .networks?.getNetworks() .every((network) => Networks.getChainId(network) !== chainId); @@ -186,6 +190,7 @@ export class NetworksStore extends Store { testnetMode: this.testnetMode, }).finally(() => { delete this.loaderPromises[key]; + this.isReady = true; }); } return this.loaderPromises[key];