Canceling orders
[!WARNING]
These code snippets are just examples and the data should never be used as is
Cancel orders using order nonces
This method is used to invalidate the orderNonce. If multiple maker orders share the same nonce, they will all be cancelled and non-executable. An orderNonce is also invalidated once an order with that nonce is executed.
import {
HypercertExchangeClient,
ChainId,
} from "@hypercerts-org/marketplace-sdk";
const hypercertExchangeClient = new HypercertExchangeClient(
ChainId.OPTIMISM,
provider,
signer
);
// Cancel order nonce 0
const tx = await hypercertExchangeClient.cancelOrders([0]).call();
const receipt = await tx.wait();
// Cancel order nonce 0 and 12
const tx = await hypercertExchangeClient.cancelOrders([0, 12]).call();
const receipt = await tx.wait();
Cancel all your bids and/or all your asks
This function can be used to cancel all the sender's bids or all the sender's asks, or both in a single call. The following example showcases all the possible combinations.
import {
HypercertExchangeClient,
ChainId,
} from "@hypercerts-org/marketplace-sdk";
const hypercertExchangeClient = new HypercertExchangeClient(
ChainId.OPTIMISM,
provider,
signer
);
// Cancel all bids
const tx = await hypercertExchangeClient.cancelAllOrders(true, false).call();
const receipt = await tx.wait();
// Cancel all asks
const tx = await hypercertExchangeClient.cancelAllOrders(false, true).call();
const receipt = await tx.wait();
// Cancel all bids and asks
const tx = await hypercertExchangeClient.cancelAllOrders(true, true).call();
const receipt = await tx.wait();
For more details on the nonce system, see the related documentation: Nonce system