contract-uri.ts 864 B

12345678910111213141516171819202122232425
  1. import { task } from "hardhat/config"
  2. /**
  3. Example:
  4. npx hardhat erc1155-contract-uri \
  5. --contract 0x320bd6de80d3D5361e1c9bB4CF1D7D9Ef24F3Ac7 \
  6. --uri https://ipfs.io/ipfs/new-contract-uri-ipfs-hash \
  7. --network sepolia
  8. */
  9. task("erc1155-contract-uri", "Set new Contract URI for BasicERC1155 Smart Contract")
  10. .addParam<string>("contract", "BasicERC1155 Smart Contract Address")
  11. .addParam<string>("uri", "New Contract URI")
  12. .setAction(async (taskArgs, { ethers }) => {
  13. const contract = await ethers.getContractAt("BasicERC1155", taskArgs.contract)
  14. console.log(`Current Contract URI: ${await contract.contractURI()}`)
  15. const trx = await contract.setContractURI(taskArgs.uri)
  16. console.log(`Transaction Hash: ${trx.hash}`)
  17. await trx.wait(2)
  18. console.log("Transaction confirmed")
  19. console.log(`New Contract URI: ${await contract.contractURI()}`)
  20. })