Skip to main content

cnft.setBlocked(SetBlocked)

Set a Contract NFT contract to blocked or unblocked. This sends a transaction from the Contract NFT owner.

SetBlocked Type Parameters

ParameterTypeRequiredDescription
contractNftSignerSignerRequiredContract NFT owner signer authorized to set blocked state. Must be connected to a provider.
contractNftstringRequiredContract NFT contract address.
blockedbooleanRequiredtrue to block, false to unblock.

Returns

FieldTypeDescription
statussetStatus of the operation.
contractNftstringContract NFT contract address.
blockedbooleanThe resulting block state.
setBystringAddress that submitted the transaction.
receiptTransactionReceiptTransaction receipt of the update operation.

Usage

TypeScript

import 'dotenv/config';
import { RWA, Chain, type SDKInit } from '@peaq-network/rwa';
import { JsonRpcProvider, Wallet } from 'ethers';

async function main() {
  // 0. Create RWA instance and get provider
  const provider = new JsonRpcProvider(process.env.HTTPS_BASE_URL);
  const init: SDKInit = { chainId: Chain.AGUNG, provider: provider };
  const rwa_sdk = new RWA(init);

  // 1. Contract NFT owner signer
  const admin = new Wallet(process.env.ADMIN_PRIVATE_KEY!, provider);

  // 2. Contract NFT address
  const contractNft = "0x35D67095A5a6f00CBE288cF744b3efC48de3699a";

  // 3. Block the contract
  const result = await rwa_sdk.cnft.setBlocked({
    contractNftSigner: admin,
    contractNft: contractNft,
    blocked: true
  });
  console.log("Result", result);
}

main().catch((err) => {
  console.error(err);
  process.exit(1);
});

JavaScript

import 'dotenv/config';
import { RWA, Chain } from '@peaq-network/rwa';
import { JsonRpcProvider, Wallet } from 'ethers';

async function main() {
  // 0. Create RWA instance and get provider
  const provider = new JsonRpcProvider(process.env.HTTPS_BASE_URL);
  const rwa_sdk = new RWA({ chainId: Chain.AGUNG, provider });

  // 1. Contract NFT owner signer
  const admin = new Wallet(process.env.ADMIN_PRIVATE_KEY, provider);

  // 2. Contract NFT address
  const contractNft = "0x35D67095A5a6f00CBE288cF744b3efC48de3699a";

  // 3. Block the contract
  const result = await rwa_sdk.cnft.setBlocked({
    contractNftSigner: admin,
    contractNft: contractNft,
    blocked: true
  });
  console.log("Result", result);
}

main().catch((err) => {
  console.error(err);
  process.exit(1);
});

Example outputs

Result {
  status: 'set',
  contractNft: '0x35D67095A5a6f00CBE288cF744b3efC48de3699a',
  blocked: true,
  setBy: '0x8BCfa2e9FC4aCa66fCF36Bcf47646E5Fb8d74BA0',
  receipt: ContractTransactionReceipt {
    ...
  }
}