2 个版本
0.1.1 | 2022 年 9 月 8 日 |
---|---|
0.1.0 | 2022 年 9 月 8 日 |
#11 in #house
335KB
7.5K SLoC
列出奖励
这是一个程序,用于促进作为在 Metaplex 拍卖行上列出 NFT 奖励而支付 spl 令牌。
定义
奖励中心 - Metaplex 拍卖行的装饰器,它拥有支付令牌的库以及管理奖励规则。它也是拍卖行程序注册的拍卖师代表。
奖励 - 是从奖励中心库向完成激励性动作的用户支付一定数量的令牌。
可奖励收藏 - 确定哪些收藏符合列出奖励资格。拍卖行的权限或收藏预言机可以调整批准的收藏。
方法
拍卖行的权限可以创建一个奖励中心来伴随它,以便在交互拍卖行时分发令牌。
奖励中心是拍卖行程序上的拍卖行拍卖师的代表。
列出、出价和购买指令通过列出奖励程序代理到拍卖行,以便用奖励丰富。为列出和出价初始化账户,以跟踪执行销售所需的拍卖行信息以及记录潜在的奖励。
奖励中心的权限可以控制哪些 NFT 根据其与 Metaplex 收藏的关联获得奖励。可奖励收藏是控制 NFT 获奖资格的链上记录。
奖励中心的权限可以将可奖励收藏的管理委托给预言机。然后,预言机负责维护可列出奖励的收藏。
通过拍卖行的拍卖师代表功能,奖励中心 PDA 将获得列出和出价的权限,确保任何取消请求都通过列出奖励程序来记录状态变化。
指令
创建奖励中心
拍卖行的权限创建一个奖励中心。
更新奖励中心
拥有奖励中心的拍卖行权限调整其配置(例如,收藏预言机、奖励规则)。
创建列出
用户通过奖励中心程序将 NFT 列出售。这导致对拍卖行的 sale 指令的 CPI 调用。生成列出记录以跟踪列出和奖励。
取消列出
用户取消其列表,导致对拍卖行的取消 CPI 调用,并在列表上保存取消时间。
购买列表
用户购买了一个列表中的 NFT,导致对拍卖行的购买和执行销售 CPI 调用。列表的销售时间被保存在列表上。
领取列表奖励
如果列表已经过了预热期或奖励中心在列表账户上将其标记为“已售出”,则用户可以领取其代币。
创建报价
用户对 NFT 提出报价,导致对拍卖行的公开出价 CPI 调用,并为奖励中心创建报价账户。
接受报价
NFT 的所有者接受报价,导致对拍卖行的出售和执行销售 CPI 调用。接受报价的时间被保存在报价上。
取消报价
用户取消其报价,导致对拍卖行的取消 CPI 调用,并在报价上保存取消时间。
创建可奖励集合
通过在链上保存账户使收藏品有资格获得奖励。
删除可奖励集合
删除可奖励集合。
依赖关系
~24–36MB
~642K SLoC