curio-wrapper-truffle/scripts/transfer-wrapped.js

33 lines
1015 B
JavaScript
Raw Normal View History

2023-01-30 19:33:15 +00:00
const Wrapper = artifacts.require("CurioERC1155Wrapper");
module.exports = async (callback) => {
const nftId1 = parseInt(process.argv[6]);
const quantity1 = BigInt(process.argv[7]);
const to = process.argv[8];
if (/0x[0-9a-fA-F]{40}/.test(to)) {
const wrapper = await Wrapper.deployed();
const [account,] = await web3.eth.getAccounts();
const currentBalance = BigInt(await wrapper.balanceOf(account, nftId1));
console.log(`Current balance: ${currentBalance}`);
if (currentBalance >= quantity1) {
console.log("Executing transfer transaction...");
try {
const result = await wrapper.safeTransferFrom(account, to, nftId1, quantity1.toString(), []);
console.log(`Transaction: ${result.tx}`);
}
catch (e) {
console.error(`FAILED: ${e}`);
}
}
else {
console.error("Insufficient balance");
}
}
callback();
}