Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UX] Improve transaction submission/cancellation flow #181

Open
4 tasks done
ori-near opened this issue Dec 19, 2024 · 4 comments
Open
4 tasks done

[UX] Improve transaction submission/cancellation flow #181

ori-near opened this issue Dec 19, 2024 · 4 comments
Assignees
Labels
UX Enabler A UX task that will result in a development task

Comments

@ori-near
Copy link

ori-near commented Dec 19, 2024

Background

When users perform actions in NEAR Treasury, such as adding a new member, they click "Submit" to initiate sending the transaction on-chain via BOS. Currently, once the transaction is submitted, our UI doesn't provide clear feedback about the transaction status or allows them to cancel the transaction if needed. This is because we don't have visibility into the transaction's status after it's submitted. As a result, users might be stuck on a loading screen if the transaction fails or is canceled by the user in the subsequent BOS dialogue.

User Story

As a NEAR Treasury user, I want to have a clear understanding of the transaction's status after I submit it. I also want to be able to cancel the transaction if necessary.

Acceptance Criteria

  • Create UX mockups for the scenario below. And get feedback from the team.
    • When the user clicks the "Submit" button, disable the "Submit", "Cancel", and "X" close buttons and display a loading indicator.
    • If the transaction is successful within 10 seconds, the user will automatically get redirected to the pending transaction page and see the existing success toast
    • If 10 seconds pass, assume the transaction failed. Change the loading indicator to an error message, allowing the user to try again. Re-enable the "Submit", "Cancel", and "X" close buttons and restore the form fields to their previous state/values before the user clicked submit.

Resources & Additional Notes

Successful Toast
Image

Copy

  • Error Message: "Something went wrong. Please try resubmitting the request"
  • Loading Indicator: "Processing your request ..." (or something like that)

Priority

🔴 P0 : Critical

@ori-near ori-near added the UX Enabler A UX task that will result in a development task label Dec 19, 2024
@ori-near ori-near moved this from 🆕 Triage to 📋 Backlog in 🚀 DevHub Products Dec 19, 2024
@FREZZZBE FREZZZBE self-assigned this Dec 23, 2024
@FREZZZBE FREZZZBE moved this from 📋 Backlog to 🏗 In progress in 🚀 DevHub Products Dec 23, 2024
@FREZZZBE
Copy link
Collaborator

Hey @ori-near @Megha-Dev-19
Here is the solution, which does exactly what was described in this task.

Check this video -> https://github.com/user-attachments/assets/d6a07f42-b03c-4185-8b67-c1d23e26c265

Figma | Prototype

@FREZZZBE FREZZZBE moved this from 🏗 In progress to ✅ Done in 🚀 DevHub Products Dec 24, 2024
@FREZZZBE FREZZZBE moved this from ✅ Done to 👀 In review in 🚀 DevHub Products Dec 24, 2024
@ori-near
Copy link
Author

@FREZZZBE thanks for putting this together! I don't think we will be able to know once user clicks any button on the transaction pop up ... @Megha-Dev-19 can you confirm if this solution works and if not provide any alternative suggestions?

@Megha-Dev-19
Copy link
Collaborator

@FREZZZBE as @ori-near said, we don't have access to the user action (if they click on 'confirm' or 'cancel'), I can help you understand in our call today.

@FREZZZBE
Copy link
Collaborator

After discussion with @Megha-Dev-19, we decided to trigger this loader by clicking submit (not confirm).

@FREZZZBE FREZZZBE moved this from 👀 In review to ✅ Done in 🚀 DevHub Products Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
UX Enabler A UX task that will result in a development task
Projects
Status: Done
Development

No branches or pull requests

3 participants