Feature: Add support for injected wallet download URL for unavailable injected wallets #1754
+244
−152
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.
Description
This PR adds the ability for a download or homepage link to be defined per injected wallet and displayed if that wallet is unavailable and selected by the user.
There is also a refinement to the init option
displayUnavailable
allowing an array to also be passed (along with still supporting a boolean to display all unavailable) to more easily define which wallets to display if unavailable. This all based on passing inProviderLabel.${walletName}
to the array.This solves the problem of easily allowing dapps (often driven by partnerships with wallets) to easily choose which unavailable wallets to display.
Also, solving the issue of injected wallets creating separate modules just to get this functionality - with even less complexity for dapp devs to support the request.
There is also an update to the displayed message if a wallet is unavailable and selected and a URL is available hyperlinking the
install
text within the message displayed to the user.Example init usage (also seen in docs and README):
Resulting in:
Checklist
package.json
of the package you have made changes in following semantic versioning and using alpha release taggingyarn check-all
to confirm there are not any associated errors