Connect helper functions to update metadata related actions
This commit is contained in:
parent
4e646b9cf4
commit
16c859bbd8
@ -32,7 +32,7 @@ export const ACTION_TYPES = [
|
|||||||
'burn_remaining',
|
'burn_remaining',
|
||||||
'update_token_metadata',
|
'update_token_metadata',
|
||||||
'batch_update_token_metadata',
|
'batch_update_token_metadata',
|
||||||
'freeze_metadata',
|
'freeze_token_metadata',
|
||||||
] as const
|
] as const
|
||||||
|
|
||||||
export interface ActionListItem {
|
export interface ActionListItem {
|
||||||
@ -199,9 +199,9 @@ export const SG721_UPDATABLE_ACTION_LIST: ActionListItem[] = [
|
|||||||
description: `Update the metadata URI for a range of tokens`,
|
description: `Update the metadata URI for a range of tokens`,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'freeze_metadata',
|
id: 'freeze_token_metadata',
|
||||||
name: 'Freeze Metadata',
|
name: 'Freeze Token Metadata',
|
||||||
description: `Render the metadata for the collection no longer updatable`,
|
description: `Render the metadata for tokens no longer updatable`,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -243,9 +243,9 @@ export type DispatchExecuteArgs = {
|
|||||||
| { type: Select<'burn_remaining'> }
|
| { type: Select<'burn_remaining'> }
|
||||||
| { type: Select<'update_collection_info'>; collectionInfo: CollectionInfo | undefined }
|
| { type: Select<'update_collection_info'>; collectionInfo: CollectionInfo | undefined }
|
||||||
| { type: Select<'freeze_collection_info'> }
|
| { type: Select<'freeze_collection_info'> }
|
||||||
| { type: Select<'update_token_metadata'> }
|
| { type: Select<'update_token_metadata'>; tokenId: number; tokenUri: string }
|
||||||
| { type: Select<'batch_update_token_metadata'> }
|
| { type: Select<'batch_update_token_metadata'>; tokenIds: string; baseUri: string }
|
||||||
| { type: Select<'freeze_metadata'> }
|
| { type: Select<'freeze_token_metadata'> }
|
||||||
)
|
)
|
||||||
|
|
||||||
export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
||||||
@ -293,6 +293,15 @@ export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
|||||||
case 'freeze_collection_info': {
|
case 'freeze_collection_info': {
|
||||||
return sg721Messages.freezeCollectionInfo()
|
return sg721Messages.freezeCollectionInfo()
|
||||||
}
|
}
|
||||||
|
case 'update_token_metadata': {
|
||||||
|
return sg721Messages.updateTokenMetadata(args.tokenId.toString(), args.tokenUri)
|
||||||
|
}
|
||||||
|
case 'batch_update_token_metadata': {
|
||||||
|
return sg721Messages.batchUpdateTokenMetadata(args.tokenIds, args.baseUri)
|
||||||
|
}
|
||||||
|
case 'freeze_token_metadata': {
|
||||||
|
return sg721Messages.freezeTokenMetadata()
|
||||||
|
}
|
||||||
case 'shuffle': {
|
case 'shuffle': {
|
||||||
return vendingMinterMessages.shuffle(txSigner)
|
return vendingMinterMessages.shuffle(txSigner)
|
||||||
}
|
}
|
||||||
@ -371,6 +380,15 @@ export const previewExecutePayload = (args: DispatchExecuteArgs) => {
|
|||||||
case 'freeze_collection_info': {
|
case 'freeze_collection_info': {
|
||||||
return sg721Messages(sg721Contract)?.freezeCollectionInfo()
|
return sg721Messages(sg721Contract)?.freezeCollectionInfo()
|
||||||
}
|
}
|
||||||
|
case 'update_token_metadata': {
|
||||||
|
return sg721Messages(sg721Contract)?.updateTokenMetadata(args.tokenId.toString(), args.tokenUri)
|
||||||
|
}
|
||||||
|
case 'batch_update_token_metadata': {
|
||||||
|
return sg721Messages(sg721Contract)?.batchUpdateTokenMetadata(args.tokenIds, args.baseUri)
|
||||||
|
}
|
||||||
|
case 'freeze_token_metadata': {
|
||||||
|
return sg721Messages(sg721Contract)?.freezeTokenMetadata()
|
||||||
|
}
|
||||||
case 'shuffle': {
|
case 'shuffle': {
|
||||||
return vendingMinterMessages(minterContract)?.shuffle()
|
return vendingMinterMessages(minterContract)?.shuffle()
|
||||||
}
|
}
|
||||||
|
@ -88,7 +88,7 @@ export interface SG721Instance {
|
|||||||
batchTransfer: (recipient: string, tokenIds: string) => Promise<string>
|
batchTransfer: (recipient: string, tokenIds: string) => Promise<string>
|
||||||
updateTokenMetadata: (tokenId: string, tokenURI: string) => Promise<string>
|
updateTokenMetadata: (tokenId: string, tokenURI: string) => Promise<string>
|
||||||
batchUpdateTokenMetadata: (tokenIds: string, tokenURI: string) => Promise<string>
|
batchUpdateTokenMetadata: (tokenIds: string, tokenURI: string) => Promise<string>
|
||||||
freezeMetadata: () => Promise<string>
|
freezeTokenMetadata: () => Promise<string>
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface Sg721Messages {
|
export interface Sg721Messages {
|
||||||
@ -106,7 +106,7 @@ export interface Sg721Messages {
|
|||||||
freezeCollectionInfo: () => FreezeCollectionInfoMessage
|
freezeCollectionInfo: () => FreezeCollectionInfoMessage
|
||||||
updateTokenMetadata: (tokenId: string, tokenURI: string) => UpdateTokenMetadataMessage
|
updateTokenMetadata: (tokenId: string, tokenURI: string) => UpdateTokenMetadataMessage
|
||||||
batchUpdateTokenMetadata: (tokenIds: string, tokenURI: string) => BatchUpdateTokenMetadataMessage
|
batchUpdateTokenMetadata: (tokenIds: string, tokenURI: string) => BatchUpdateTokenMetadataMessage
|
||||||
freezeMetadata: () => FreezeMetadataMessage
|
freezeTokenMetadata: () => FreezeTokenMetadataMessage
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface TransferNFTMessage {
|
export interface TransferNFTMessage {
|
||||||
@ -240,10 +240,10 @@ export interface BatchUpdateTokenMetadataMessage {
|
|||||||
funds: Coin[]
|
funds: Coin[]
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface FreezeMetadataMessage {
|
export interface FreezeTokenMetadataMessage {
|
||||||
sender: string
|
sender: string
|
||||||
contract: string
|
contract: string
|
||||||
msg: { freeze_metadata: Record<string, never> }
|
msg: { freeze_token_metadata: Record<string, never> }
|
||||||
funds: Coin[]
|
funds: Coin[]
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -674,12 +674,12 @@ export const SG721 = (client: SigningCosmWasmClient, txSigner: string): SG721Con
|
|||||||
return res.transactionHash
|
return res.transactionHash
|
||||||
}
|
}
|
||||||
|
|
||||||
const freezeMetadata = async (): Promise<string> => {
|
const freezeTokenMetadata = async (): Promise<string> => {
|
||||||
const res = await client.execute(
|
const res = await client.execute(
|
||||||
txSigner,
|
txSigner,
|
||||||
contractAddress,
|
contractAddress,
|
||||||
{
|
{
|
||||||
freeze_metadata: {},
|
freeze_token_metadata: {},
|
||||||
},
|
},
|
||||||
'auto',
|
'auto',
|
||||||
'',
|
'',
|
||||||
@ -715,7 +715,7 @@ export const SG721 = (client: SigningCosmWasmClient, txSigner: string): SG721Con
|
|||||||
freezeCollectionInfo,
|
freezeCollectionInfo,
|
||||||
updateTokenMetadata,
|
updateTokenMetadata,
|
||||||
batchUpdateTokenMetadata,
|
batchUpdateTokenMetadata,
|
||||||
freezeMetadata,
|
freezeTokenMetadata,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -952,12 +952,12 @@ export const SG721 = (client: SigningCosmWasmClient, txSigner: string): SG721Con
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const freezeMetadata = () => {
|
const freezeTokenMetadata = () => {
|
||||||
return {
|
return {
|
||||||
sender: txSigner,
|
sender: txSigner,
|
||||||
contract: contractAddress,
|
contract: contractAddress,
|
||||||
msg: {
|
msg: {
|
||||||
freeze_metadata: {},
|
freeze_token_metadata: {},
|
||||||
},
|
},
|
||||||
funds: [],
|
funds: [],
|
||||||
}
|
}
|
||||||
@ -1000,7 +1000,7 @@ export const SG721 = (client: SigningCosmWasmClient, txSigner: string): SG721Con
|
|||||||
freezeCollectionInfo,
|
freezeCollectionInfo,
|
||||||
updateTokenMetadata,
|
updateTokenMetadata,
|
||||||
batchUpdateTokenMetadata,
|
batchUpdateTokenMetadata,
|
||||||
freezeMetadata,
|
freezeTokenMetadata,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user