@publicmint/widget-sdk
v2.2.0
Published
SDK for the Public Mint Widget.
Downloads
2
Readme
@publicmint/widget-sdk
SDK for the Public Mint widget.
Table of contents:
Installation
Using npm:
npm install @publicmint/widget-sdk
Using yarn:
yarn add @publicmint/widget-sdk
Usage
See the documentation for information on how to use this SDK.
Usage
Initialization
Initialize the SDK by creating an instance of the PmintWidgetSdk
class:
import PmintWidgetSdk from '@publicmint/widget-sdk';
const pmint = new PmintWidgetSdk();
Widgets
Deposit widget
To show the deposit widget, call the renderAddFunds
method.
This method returns a promise that resolves with either completed
or canceled
.
const status = await pmint.renderAddFunds({
blockchain: 'publicmint',
destinationAddress: address,
locale: 'en'
});
Withdraw widget
To show the withdraw widget, call the renderWithdraw
method.
This method returns a promise that resolves with either completed
or canceled
.
import { withdraw } from '@publicmint/widget-sdk';
import PublicMintWeb3 from '@publicmint/publicmint-web3';
const status = await pmint.renderWithdraw({
blockchain: 'publicmint',
burn: options => {
// Perform the blockchain operation.
// When using the public mint blockchain use our `withdraw` utility:
const web3 = new PublicMintWeb3();
return withdraw(web3, { ...options, privateKey });
},
locale: 'en',
originAddress: address
})
Account widget
To show the account widget, call the renderAccount
method.
await pmint.renderAccount({ locale: 'en' });
Handling user sessions
There are three events that you can listen to to be notified of user sessions:
login
, logout
and userUpdate
:
// Listen to login events.
pmint.addListener('login', user => {
});
// Listen to logout events.
pmint.addListener('logout', () => {
});
// Listen to updates to the user profile.
pmint.removeListener('userUpdate', user => {
});
To check if there is a user logged in and get the user's profile, call the getUser
method:
const user = await pmint.getUser();
To terminate the user's session, call the logout
method:
await pmint.logout();