store active extension + wallet in localstorage and initialize lazy #74
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 closes #15 by storing the selected extension + walletAddress in localstorage when the extension is enabled / the account is selected. The selections are then restored when the dApp is initialized. For backwards compatibility the
setActiveAccount
function is overridden to atomatically save to local storage.The other addition is the
userWantsConnection
const also discussed in #15 which enables a better UX by not popping up extension windows on page visit. For backwards compatibility whenconnectOnInit
is set totrue
in the provider, the popups remain. When it is set tofalse
and the user already connected an extension + account, it will also connect the wallet on page reload - until the user disconnects.See also this video with a demo of a first visitor to the dapp
inkathon.mp4
and check it out live on a boilerplate including the changes here (with
connectOnInit={false}
behavior): https://inkathon-frontend-git-localstorage-niklasps-projects.vercel.app/