#nft #contract #collection #marketplaces #admin #cw721 #list

cw721-marketplace-permissioned

一个受权限管理的市场,允许在主机网络上交换任何添加到受权限NFT合约列表中的cw721 NFT。

1 个不稳定版本

0.1.6 2024年6月13日
0.1.5 2024年5月17日

#10#cw721

Download history 134/week @ 2024-05-16 7/week @ 2024-05-23 4/week @ 2024-06-06 124/week @ 2024-06-13

85 每月下载量

Apache-2.0

145KB
3.5K SLoC

CW721 受权限市场

允许列出和提供NFT。此合约以受权限的方式支持多个NFT收藏,允许管理员决定哪些收藏可以上市。

索引

展开

实例化

名称 类型 描述
管理员 String(Address) 允许执行特权消息的地址
代币 String 原生代币上市代币的代币名称
cw721 String(Address) Array 市场允许的NFT收藏
费用百分比 u64 费用百分比,例如:1 = 1%

消息

创建

为特定NFT创建报价或销售。每种上市类型都有特定的注意事项,必须遵循以符合原始设计的用户体验。

  • 报价
    • 只能使用CW20代币
    • 用户必须给此合约一个等于或大于报价金额的许可
  • 销售
    • 用户必须给此合约转账权限
名称 类型 描述
id String 创建的上市ID,不能是当前存在的ID
cw721 String(Address) NFT合约,必须由市场支持
payment_token String(Address) 可选的cs20地址,默认为aarch如果为空
token_id String NFT代币ID
expires 过期 上市将过期的时间
price String(Uint128) 如果是销售,则是请求的金额;如果是报价,则是报价的金额
swap_type 交易类型 上市类型

完成

完成列表。执行此操作的权限取决于列表类型。

  • 销售
    • 买家必须触发此操作
    • 必须为这份合同提供与出价金额相等或更大的允许额度
  • 报价
    • 卖家必须触发此操作
    • 必须为这份合同提供转让权限
名称 类型 描述
id String 列表ID

取消

取消列表,只能由列表创建者触发。

名称 类型 描述
id String 列表ID

更新

更新列表,只能由列表创建者触发。

名称 类型 描述
id String 列表ID
expires 过期 上市将过期的时间
price String(Uint128) 如果是销售,则是请求的金额;如果是报价,则是报价的金额

更新配置 - 受权限

更新实例化时设置的合同配置。

名称 类型 描述
管理员 String(Address) 允许执行特权消息的地址
代币 String 原生代币上市代币的代币名称
cw721 String(Address) Array 市场允许的NFT收藏
费用百分比 u64 费用百分比,例如:1 = 1%

添加Nft - 受权限

添加可在市场上提供的允许NFT合同

名称 类型 描述
cw721 String(Address) 要添加的NFT收藏

移除Nft - 受权限

从市场上移除允许的NFT合同

名称 类型 描述
cw721 String(Address) 要取回的NFT收藏

提取 - 受权限

通过销售费用提取合同赚取的代币

名称 类型 描述
金额 String(Number) 要提取的金额
代币 String 本地币种符号
payment_token 可选 String(Address) 可选 cw20地址以提取

查询

列表

获取所有待定交换

名称 类型 描述
start_after 可选 String 限制从哪个ID开始
limit 可选数字 限制返回的交换数量

返回 ListResponse


总数

统计总列表数,支持统计特定类型的列表,返回一个数字

名称 类型 描述
swap_type 可选 SwapType 交换类型过滤器

返回表示总交换数量的数字


报价

名称 类型 描述
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


上市

名称 类型 描述
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


代币上市

名称 类型 描述
token_id String NFT ID
swap_type 可选 SwapType 交换类型过滤器
cw721 可选 String(Address) NFT收藏过滤器
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


交易

名称 类型 描述
address String(Address) 由特定地址创建的交换
swap_type 可选 SwapType 交换类型过滤器
cw721 可选 String(Address) NFT收藏过滤器
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


按价格交易

名称 类型 描述
min 可选 String(number) 返回的最小价格
max 可选 String(number) 返回的最大价格
swap_type 可选 SwapType 交换类型过滤器
cw721 可选 String(Address) NFT收藏过滤器
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


按代币交易

名称 类型 描述
payment_token 可选 String(Address) 按CW20代币过滤
swap_type 可选 SwapType 交换类型过滤器
cw721 可选 String(Address) NFT收藏过滤器
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


按支付类型交易

名称 类型 描述
cw20 bool 按支付类型过滤
swap_type 可选 SwapType 交换类型过滤器
cw721 可选 String(Address) NFT收藏过滤器
page 可选数字 分页
limit 可选数字 限制结果数量

返回一个PageResult列表


详情

返回指定列表的详细信息

名称 类型 描述
id String 列表ID
结果
名称 类型 描述
creator String(Address) 列表创建者
contract String(Address) NFT收藏
payment_token 可选 String(Address) 如果适用,Cw20代币
token_id String NFT ID
expires 过期 列表到期日期
price String(Number) 提供的或请求的金额
swap_types 交易类型 列表类型

配置

查询合约的配置,返回

名称 类型 描述
管理员 String(Address) 允许执行特权消息的地址
代币 String 原生代币上市代币的代币名称
cw721 String(Address) Array 市场允许的NFT收藏
费用百分比 u64 费用百分比,例如:1 = 1%

页面结果

名称 类型 描述
swaps 一个CW721Swap数组 查询结果
page number 当前页
total number 合约中的总项目数

列表响应

名称 类型 描述
swaps String数组 交换ID列表

CW721Swap

名称 类型 描述
id String 列表ID
creator String(Address) 创建者地址
nft_contract String(Address) NFT收藏
payment_token 可选 String(Address) CW20合同
token_id String NFT ID
expires 过期 列表到期日期
price String(Number) 请求或提供的金额
swap_type 交易类型 列表类型

过期

当某些内容可以过期时,内容可以是以下三种之一。 来源

在高度

当给定的高度大于或等于当前区块高度时将过期

{
    "at_height": 10
}

在时间

当给定的时间大于或等于当前区块高度时将过期

{
  "at_time": "epoch number"
}

永不

永远不会过期

"never"

交易类型

表示正在进行的交易类型,可以是 Offer(向某人提供NFT的出价)或 Sale(出售拥有的NFT的列表)

依赖关系

~4–6MB
~130K SLoC