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

Enable users to receive and respond to connection request from blockchain application #4415

Closed
Tracked by #4040
reyraa opened this issue Aug 1, 2022 · 0 comments
Closed
Tracked by #4040
Assignees
Milestone

Comments

@reyraa
Copy link
Contributor

reyraa commented Aug 1, 2022

Description

To enable blockchain application to establish a connection with Lisk Desktop, Lisk Desktop should be able to receive such events, and act accordingly. Lisk Desktop uses the WalletConnect public bridge served here.

Acceptance Criteria

Lisk Desktop should:
Be able to receive connection requests from blockchain application implemented according to the WalletConnect protocol.
Provide users with sufficient information to assess the correctness/genuinity of the connection.
Provide users with options to approve and reject the connection.
Send a connection approval event to the blockchain application, should the user approve the connection.
Send a rejection event to the blockchain application, should the user reject the connection.
The implementation should match the WalletConnect protocol, and the event schemas defined in the TECH proposal document.
Reasonable unit test coverage is required.
E2e test coverage is required.

Additional information

Request
WalletConnect client API provides a method to request a connection.

Approval
Lisk Desktop in turn can use another method to approve the connection request.

Rejection
If the user chooses to decline the request, Lisk Desktop can inform the blockchain application using the reject method.

Update
In the event that the user switches to another account, Lisk Desktop can update the session using the update method.

Termination
And finally, if the user decides to actively terminate the session, Lisk Desktop can handle this using the kill method.

@reyraa reyraa moved this to Backlog in Lisk Desktop Version 3.0.0 Aug 1, 2022
@reyraa reyraa self-assigned this Aug 1, 2022
@reyraa reyraa added this to the Sprint 79 milestone Aug 1, 2022
@sridharmeganathan sridharmeganathan modified the milestones: Sprint 79, Sprint 80 Aug 2, 2022
@sridharmeganathan sridharmeganathan moved this from Backlog to Todo in Lisk Desktop Version 3.0.0 Aug 2, 2022
@ManuGowda ManuGowda changed the title Enable users to receive and respond to connection request from dApps Enable users to receive and respond to connection request from blockchain application Aug 10, 2022
@sridharmeganathan sridharmeganathan moved this from Todo to Pending Review in Lisk Desktop Version 3.0.0 Sep 1, 2022
ManuGowda pushed a commit that referenced this issue Sep 5, 2022
…ation - Closes #4415 (#4440)

* Add sample chain config

* Add connectionCreator utils

* Create custom hooks for managing the state

* Create connection manager

* Add the wcm lib to Lisk Desktop

* Update dependencies

* Use context to transfer information

* Add features to reuse existing components

* Abstract BlockchainAppDetailsWrapper out of BlockchainApplicationDetails

* Update connection summary and success views according to the design guides

* Apply designs to the Connection Proposal view

* Implement the design of the pairings list view

* Cleanup code and remove logs

* Move navigations outside wcm

* Break constants into lifeCycle and permissions

* Store session data in context object as "session"

* Make use of the useSession hook

* Fix breaking session request page

* Fix default icons

* Fix select all accounts

* Add unit test coverage to wcm

* Add unit test coverage to blockchain application components

* Fix failing unit tests

* Add missing unit test coverage

* Improve tests

* Apply peer-review requested changes
Repository owner moved this from Pending Review to Done in Lisk Desktop Version 3.0.0 Sep 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

No branches or pull requests

3 participants