MetaMask / MetaMask/metamask-extension
Spinning wheel when signature/approval is required
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
**What is this about?**
This came up recently in testing asynchronous approval with an account snap, where the user must take action in the snap/dapp to sign a transaction. The UI presents the yellow spinner until the pending action is approved, or until the window is closed and re-opened.
We also have this same behavior with Ledger, Trezor, and Lattice in expanded view. This only surfaces for Lattice in pop-up view.
This ticket is to request a more informative message for the user, beyond just the UI spinner. Ideally, some copy or other UI enhancement to inform the user to complete the transaction they need to approve on their hardware or in their snap.
Currently the spinner is blocking the snaps redirect notification for async approval flows. User has to close the window and re-open to see the redirect notice.
**Scenario**
Given when a user has a pending transaction that requires further action
When the tx/signature approval is pending
Then an instructive UI message should be presented specific to the snap or hardware wallet
When the user approves or rejects the pending tx/signature
Then the instructive message is no longer presented
**Technical Details**
- Today this yellow spinner prevents further action within extension until either the pending tx/signature is approved, or until the window is closed and re-opened.
**References**
Video of snap account in pop-up and expanded view: https://recordit.co/l8tAabq3ES
- Send in pop-up confirmed at 3s
- Send in expanded confirmed at 42s
Video of send on ledger in expanded view: https://recordit.co/23C4m5W1HG
- tx was rejected from Ledger at 17s
Contributor guide
Research direction
No files or tests are named. Start by tracing the yellow spinner and pending async approval flow described in the issue, then reproduce the snap and hardware-wallet scenarios; done means an instructive message appears while approval is pending, disappears after approval or rejection, and does not block the redirect notification.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100