Add batch transfer to sg721 collection actions (#40)

This commit is contained in:
Serkan Reis
2022-08-16 13:04:23 +03:00
committed by GitHub
parent 3b5f287715
commit 00960f429e
3 changed files with 95 additions and 4 deletions
+13
View File
@@ -14,6 +14,7 @@ export const ACTION_TYPES = [
'update_per_address_limit',
'withdraw',
'transfer',
'batch_transfer',
'burn',
'batch_burn',
'shuffle',
@@ -66,6 +67,11 @@ export const ACTION_LIST: ActionListItem[] = [
name: 'Transfer Tokens',
description: `Transfer tokens from one address to another`,
},
{
id: 'batch_transfer',
name: 'Batch Transfer Tokens',
description: `Transfer a list of tokens to a recipient`,
},
{
id: 'burn',
name: 'Burn Token',
@@ -108,6 +114,7 @@ export type DispatchExecuteArgs = {
| { type: Select<'shuffle'> }
| { type: Select<'withdraw'> }
| { type: Select<'transfer'>; recipient: string; tokenId: number }
| { type: Select<'batch_transfer'>; recipient: string; tokenIds: string }
| { type: Select<'burn'>; tokenId: number }
| { type: Select<'batch_burn'>; tokenIds: string }
)
@@ -145,6 +152,9 @@ export const dispatchExecute = async (args: DispatchExecuteArgs) => {
case 'transfer': {
return sg721Messages.transferNft(args.recipient, args.tokenId.toString())
}
case 'batch_transfer': {
return sg721Messages.batchTransfer(args.recipient, args.tokenIds)
}
case 'burn': {
return sg721Messages.burn(args.tokenId.toString())
}
@@ -191,6 +201,9 @@ export const previewExecutePayload = (args: DispatchExecuteArgs) => {
case 'transfer': {
return sg721Messages(sg721Contract)?.transferNft(args.recipient, args.tokenId.toString())
}
case 'batch_transfer': {
return sg721Messages(sg721Contract)?.batchTransfer(args.recipient, args.tokenIds)
}
case 'burn': {
return sg721Messages(sg721Contract)?.burn(args.tokenId.toString())
}