Update Collection Actions list
This commit is contained in:
parent
81cac0ff5b
commit
f0a35565b8
@ -35,6 +35,7 @@ export const ACTION_TYPES = [
|
|||||||
'update_token_metadata',
|
'update_token_metadata',
|
||||||
'batch_update_token_metadata',
|
'batch_update_token_metadata',
|
||||||
'freeze_token_metadata',
|
'freeze_token_metadata',
|
||||||
|
'enable_updatable',
|
||||||
] as const
|
] as const
|
||||||
|
|
||||||
export interface ActionListItem {
|
export interface ActionListItem {
|
||||||
@ -205,6 +206,11 @@ export const SG721_UPDATABLE_ACTION_LIST: ActionListItem[] = [
|
|||||||
name: 'Freeze Token Metadata',
|
name: 'Freeze Token Metadata',
|
||||||
description: `Render the metadata for tokens no longer updatable`,
|
description: `Render the metadata for tokens no longer updatable`,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
id: 'enable_updatable',
|
||||||
|
name: 'Enable Updatable',
|
||||||
|
description: `Render a collection updatable following a migration`,
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
export interface DispatchExecuteProps {
|
export interface DispatchExecuteProps {
|
||||||
@ -212,43 +218,28 @@ export interface DispatchExecuteProps {
|
|||||||
[k: string]: unknown
|
[k: string]: unknown
|
||||||
}
|
}
|
||||||
|
|
||||||
type Select<T extends ActionType> = T
|
|
||||||
|
|
||||||
/** @see {@link VendingMinterInstance}{@link BaseMinterInstance} */
|
/** @see {@link VendingMinterInstance}{@link BaseMinterInstance} */
|
||||||
export type DispatchExecuteArgs = {
|
export interface DispatchExecuteArgs {
|
||||||
minterContract: string
|
minterContract: string
|
||||||
sg721Contract: string
|
sg721Contract: string
|
||||||
vendingMinterMessages?: VendingMinterInstance
|
vendingMinterMessages?: VendingMinterInstance
|
||||||
baseMinterMessages?: BaseMinterInstance
|
baseMinterMessages?: BaseMinterInstance
|
||||||
sg721Messages?: SG721Instance
|
sg721Messages?: SG721Instance
|
||||||
txSigner: string
|
txSigner: string
|
||||||
} & (
|
type: string | undefined
|
||||||
| { type: undefined }
|
tokenUri: string
|
||||||
| { type: Select<'mint_token_uri'>; tokenUri: string }
|
price: string
|
||||||
| { type: Select<'update_mint_price'>; price: string }
|
recipient: string
|
||||||
| { type: Select<'update_discount_price'>; price: string }
|
tokenId: number
|
||||||
| { type: Select<'remove_discount_price'> }
|
batchNumber: number
|
||||||
| { type: Select<'mint_to'>; recipient: string }
|
whitelist: string
|
||||||
| { type: Select<'mint_for'>; recipient: string; tokenId: number }
|
startTime: string | undefined
|
||||||
| { type: Select<'batch_mint'>; recipient: string; batchNumber: number }
|
limit: number
|
||||||
| { type: Select<'set_whitelist'>; whitelist: string }
|
tokenIds: string
|
||||||
| { type: Select<'update_start_time'>; startTime: string }
|
recipients: string[]
|
||||||
| { type: Select<'update_start_trading_time'>; startTime?: string }
|
collectionInfo: CollectionInfo | undefined
|
||||||
| { type: Select<'update_per_address_limit'>; limit: number }
|
baseUri: string
|
||||||
| { type: Select<'shuffle'> }
|
}
|
||||||
| { 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 }
|
|
||||||
| { type: Select<'batch_mint_for'>; recipient: string; tokenIds: string }
|
|
||||||
| { type: Select<'airdrop'>; recipients: string[] }
|
|
||||||
| { type: Select<'burn_remaining'> }
|
|
||||||
| { type: Select<'update_collection_info'>; collectionInfo: CollectionInfo | undefined }
|
|
||||||
| { type: Select<'freeze_collection_info'> }
|
|
||||||
| { type: Select<'update_token_metadata'>; tokenId: number; tokenUri: string }
|
|
||||||
| { type: Select<'batch_update_token_metadata'>; tokenIds: string; baseUri: string }
|
|
||||||
| { type: Select<'freeze_token_metadata'> }
|
|
||||||
)
|
|
||||||
|
|
||||||
export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
||||||
const { vendingMinterMessages, baseMinterMessages, sg721Messages, txSigner } = args
|
const { vendingMinterMessages, baseMinterMessages, sg721Messages, txSigner } = args
|
||||||
@ -281,7 +272,7 @@ export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
|||||||
return vendingMinterMessages.setWhitelist(txSigner, args.whitelist)
|
return vendingMinterMessages.setWhitelist(txSigner, args.whitelist)
|
||||||
}
|
}
|
||||||
case 'update_start_time': {
|
case 'update_start_time': {
|
||||||
return vendingMinterMessages.updateStartTime(txSigner, args.startTime)
|
return vendingMinterMessages.updateStartTime(txSigner, args.startTime as string)
|
||||||
}
|
}
|
||||||
case 'update_start_trading_time': {
|
case 'update_start_trading_time': {
|
||||||
return vendingMinterMessages.updateStartTradingTime(txSigner, args.startTime)
|
return vendingMinterMessages.updateStartTradingTime(txSigner, args.startTime)
|
||||||
@ -304,6 +295,9 @@ export const dispatchExecute = async (args: DispatchExecuteArgs) => {
|
|||||||
case 'freeze_token_metadata': {
|
case 'freeze_token_metadata': {
|
||||||
return sg721Messages.freezeTokenMetadata()
|
return sg721Messages.freezeTokenMetadata()
|
||||||
}
|
}
|
||||||
|
case 'enable_updatable': {
|
||||||
|
return sg721Messages.enableUpdatable()
|
||||||
|
}
|
||||||
case 'shuffle': {
|
case 'shuffle': {
|
||||||
return vendingMinterMessages.shuffle(txSigner)
|
return vendingMinterMessages.shuffle(txSigner)
|
||||||
}
|
}
|
||||||
@ -368,7 +362,7 @@ export const previewExecutePayload = (args: DispatchExecuteArgs) => {
|
|||||||
return vendingMinterMessages(minterContract)?.setWhitelist(args.whitelist)
|
return vendingMinterMessages(minterContract)?.setWhitelist(args.whitelist)
|
||||||
}
|
}
|
||||||
case 'update_start_time': {
|
case 'update_start_time': {
|
||||||
return vendingMinterMessages(minterContract)?.updateStartTime(args.startTime)
|
return vendingMinterMessages(minterContract)?.updateStartTime(args.startTime as string)
|
||||||
}
|
}
|
||||||
case 'update_start_trading_time': {
|
case 'update_start_trading_time': {
|
||||||
return vendingMinterMessages(minterContract)?.updateStartTradingTime(args.startTime as string)
|
return vendingMinterMessages(minterContract)?.updateStartTradingTime(args.startTime as string)
|
||||||
@ -391,6 +385,9 @@ export const previewExecutePayload = (args: DispatchExecuteArgs) => {
|
|||||||
case 'freeze_token_metadata': {
|
case 'freeze_token_metadata': {
|
||||||
return sg721Messages(sg721Contract)?.freezeTokenMetadata()
|
return sg721Messages(sg721Contract)?.freezeTokenMetadata()
|
||||||
}
|
}
|
||||||
|
case 'enable_updatable': {
|
||||||
|
return sg721Messages(sg721Contract)?.enableUpdatable()
|
||||||
|
}
|
||||||
case 'shuffle': {
|
case 'shuffle': {
|
||||||
return vendingMinterMessages(minterContract)?.shuffle()
|
return vendingMinterMessages(minterContract)?.shuffle()
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user