js-algorand-sdk
js-algorand-sdk copied to clipboard
Add WalletConnect `TransactionSigner`
Summary
WalletConnect on Algorand allows developers to sign transactions using the Algorand Wallet (or any other wallet that supports WalletConnect on Algorand).
Using WalletConnect to sign transactions like this is currently possible, but it could be made easier. This issue is to create a TransactionSigner
backed by WalletConnect. This signer may be used in the AtomicTransactionComposer
class in the same way as other signers.
Scope
- Add the ability to create a
TransactionSigner
backed by WalletConnect. - Consider how package dependencies should work. There are two solutions as far as I can see:
- Make the
algosdk
package have an optional peer dependency of@walletconnect/client
(this is only viable if npm does not automatically install peer dependencies, need to look into this more). This has the disadvantage that a version ofalgosdk
will only work with a specific version of@walletconnect/client
. - Create a new "plugin" package that has peer dependencies of
algosdk
and@walletconnect/client
. This has the advantage that different versions of the plugin can be used to implement compatibility between all versions ofalgosdk
and@walletconnect/client
.
- Make the