@leapwallet/cosmos-social-login-capsule-provider v0.0.44
CapsuleProvider
Overview
The CapsuleProvider is a JavaScript class that provides a convenient interface for integrating the Capsule authentication and signing functionality into your application. Capsule is a secure and user-friendly platform that facilitates social login and transaction signing for Cosmos blockchain-based applications.
Installation
To use the CapsuleProvider in your project, you need to install the required dependencies. Run the following command:
npm install @leapwallet/cosmos-social-login-capsule-providerUsage
Importing the CapsuleProvider
import { CapsuleProvider } from '@leapwallet/cosmos-social-login-capsule-provider'; Initializing the CapsuleProvider
const capsuleProvider = new CapsuleProvider({ apiKey: 'YOUR_API_KEY', env: Environment.BETA });apiKey: (Optional) Your Capsule API key.env: (Optional) The environment for Capsule (default isEnvironment.BETA).
Getting the Capsule Client
const capsuleClient = capsuleProvider.getClient();Enabling Capsule
await capsuleProvider.enable();This method triggers the connection process to Capsule.
Disconnecting from Capsule
await capsuleProvider.disconnect();This method disconnects the user from Capsule.
Getting a Simple Account
const simpleAccount = await capsuleProvider.getSimpleAccount('cosmos');This method retrieves a simple account object with namespace, chainId, address, and username properties.
Handling Connection
await capsuleProvider.handleConnect();This method handles the Capsule connection process.
Connecting to Capsule
await capsuleProvider.connect();This method initiates the connection to Capsule.
Getting an Account
const account = await capsuleProvider.getAccount('cosmos');This method retrieves detailed account information, including username, address, algo, and pubkey.
Getting an Offline Signer
const offlineSigner = capsuleProvider.getOfflineSigner('cosmos', 'amino');This method returns an offline signer based on the preferred signing type (amino or direct).
Signing Amino Transactions
const signature = await capsuleProvider.signAmino('cosmos', 'signerAddress', signDoc, signOptions);This method requests an Amino signature for a given transaction.
Signing Direct Transactions
const signature = await capsuleProvider.signDirect('cosmos', 'signerAddress', signDoc);This method requests a direct signature for a given transaction.
Example
import { CapsuleProvider } from '@leapwallet/cosmos-social-login-capsule-provider';
const capsuleProvider = new CapsuleProvider({ apiKey: 'YOUR_API_KEY', env: Environment.BETA });
async function main() {
await capsuleProvider.enable();
const account = await capsuleProvider.getAccount('cosmos');
console.log('Account:', account);
}
main();1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago