2 个稳定版本

1.1.1 2022 年 10 月 1 日
1.1.0 2022 年 9 月 30 日

#3#bid

BUSL-1.1

270KB
6.5K SLoC

市场

Stargaze NFT 拍卖以持续拍卖的形式进行。出价和询价的时间限制由治理设定。

任何人都可以调用 SetBid 方法,对任何列出的 NFT 进行出价。资金将发送到市场合约,作为托管。

出价者可以使用 RemoveBid 方法撤回他们的出价并收回资金。当出价被撤回时,其押金将被退还。新的出价会自动撤回并退还之前的出价。

NFT 所有者可以在任何时候选择一个他们喜欢的出价,并调用 AcceptBid 方法,这将转移资金和 NFT。

可选地,NFT 所有者可以使用 SetAsk 方法设置询价价格。如果设置了询价,任何符合询价要求的出价将被自动接受并转给出价者。所有者可以使用 RemoveAsk 撤销询价。

当出价被接受时,资金和 NFT 将自动转移。支付将根据在铸造 NFT 时指定的版税进行分割和分配。

授权市场

为了接受出价或设置询价价格,所有者需要授权市场合约转移 NFT。这可以通过每个 NFT 的 Approve 方法完成,或者通过使用 ApproveAll 为收藏中的所有 NFT 进行授权。

运行此合约

您需要安装 Rust 1.44.1+ 和 wasm32-unknown-unknown 目标。

您可以通过以下方式运行单元测试:

cargotest

一旦您对内容满意,您可以通过以下方式将其编译为 wasm:

RUSTFLAGS='-C link-arg=-s' cargo wasm
cp ../../target/wasm32-unknown-unknown/release/sg_marketplace.wasm .
ls -l sg_marketplace.wasm
sha256sum sg_marketplace.wasm

或者,对于生产就绪(优化)构建,在仓库根目录中运行构建命令: https://github.com/CosmWasm/cosmwasm-plus#compiling.

依赖项

~5–7.5MB
~178K SLoC