As a dApp or web app that wants to integrate the Public Mint Widget to enable your users to withdraw funds from a given address (yours or theirs), you can easily embed the widget onto your application with a simple javascript code.
Public Mint's Widget is made available through a SDK that needs to be included on your application.
Initialise the SDK by creating an instance of the PmintWidgetSdk
class:
import PmintWidgetSdk from 'pmint-widget-sdk';​const pmint = new PmintWidgetSdk();
To show the withdraw widget, call the renderWithdraw
method. This method returns a promise that resolves with either completed
or canceled
.
import { withdraw } from 'pmint-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})
The renderWithdraw
method requires that you pass the information necessary for the widget to know what to show the user:
blockchain - the target blockchain for the funds. At this stage only we only support publicmint
as the target blockchain.
originAddress - the address from where the funds will be taken. This address can be yours (ex: a liquidity pool) or your customer's address.
locale - The localization to be used by the widget.
burn - a callback function to be used sign and submit the operation to the blockchain. It is at this stage that the address private key is need.