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

feat: Signer hooks #7

Merged
merged 71 commits into from
Aug 20, 2024
Merged

feat: Signer hooks #7

merged 71 commits into from
Aug 20, 2024

Conversation

tmjssz
Copy link
Contributor

@tmjssz tmjssz commented Aug 9, 2024

This pull request adds new hooks for handling a signer:

  • useAuthenticate: Provides functions to connect or disconnect a signer.
  • useSignerAddress: Provides the address of the connected signer.

Refactored the client logic

Separation of public and signer client

There are two clients now: a publicClient and a signerClient. This is necessary to be able to update the signer separately from the global config, which would initialize a new publicClient for each config update.

Moved the clients to the context

The client instances are stored in the SafeContext now. This makes sure that a common SafeClient instance is used for all hooks, instead of initializing new instances for each hook.

Error handling

Improved the error handling and added some custom error classes: AuthenticationError, InitializeSafeProviderError, and MissingSafeProviderError.

Add Github workflow for unit tests

Added a workflow to run the unit tests. Since the sdk-starter-kit is not published yet, the workflow contains temporary steps to use the safe-core-sdk repo as a local dependency. The workflow checks out the repo using the sdk-starter-kit branch and the dependency in the package.json uses the local package.

Demo

The new signer feature is used on this PR for the demo app.

tmjssz added 30 commits July 31, 2024 11:51
…old, owners and whether it is deployed

Update `useSafeClient` hook to return a function resolving with the curent SafeClient instance
@dasanra dasanra linked an issue Aug 13, 2024 that may be closed by this pull request
@tmjssz tmjssz merged commit 6f818ff into main Aug 20, 2024
1 check passed
@tmjssz tmjssz deleted the feat/signer branch August 20, 2024 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[React Hooks] Authenticate signer and get current signer
3 participants