Fetch chain id from local node for add/switch network calls #252
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR allows users to add a localhost network no matter which major local node they use, i.e., Ganache, Hardhat, Anvil.The previous implementation assumed the user had a local node with a custom port and chain ID, which is often not the case. Most of the time, devs use local nodes on the default port (8545
), and with this in mind, we can fetch chain ID from the node to supply into thewallet_addEthereumChain
call. This change results in support for Ganache, Hardhat, Anvil, and also forked local nodes 🚀After giving it some thought and looking through the MetaMask tests (
test/e2e/tests/dapp-interactions.spec.js
), I've understood why the port8546
was used instead of the default8545
. However, I still believe that fetching chain ID from the local node instead of hardcoding this value in the dapp is a QoL improvement.