MintTransfer method

The mintTransfer() is a payable method that allows users to buy newly minted TPAs. To use this method, you need to send plaquePrice * _names.length amount of value in Wei to this transaction as TPAs price.
function mintTransfer(bytes32[] _names, uint32[] _amounts, string _outputData) external payable

Input & Output

  • _names: an array of bytes32 representing the TPA names to be minted.
  • _amounts: an array of uint32 representing the amount of TPAs to be minted. The length of this array should be the same as the length of the _names array, and all elements should be set to 1.
  • _outputData: a string representing the output data to be sent to us. It should be a JSON-encoded object with either a "username" or a "name" property. Recording the username or TPA name in the output data and pinging someone is optional. However, it's worth noting that to ping a TPA, the TPA owner must have registered their username on the platform. Additionally, you cannot use both the "username" and "name" properties simultaneously.
  • This function doesn't return anything, only a transaction hash to follow your transaction with.

Usage

To use this method, you can create a new instance of the StageMeta smart-contract and call the mintTransfer() method, like this:
const options = {
value: ethers.utils.parseEther("0.06498719370006499"), // TPAs price
gasLimit: 500000,
};
const mintTransferResult = await stageMetaContract.mintTransfer(
[
ethers.utils.formatBytes32String("aaa-888"),
ethers.utils.formatBytes32String("aaa-999")
],
[1, 1],
JSON.stringify({
name: 'aaa-000', //or username: 'stagemeta'
}),
options
);
console.log("mintTransferResult:", mintTransferResult);