2 个稳定版本
2.3.2 | 2024年3月26日 |
---|---|
2.3.0 | 2023年7月20日 |
#7 in #lp
249 每月下载次数
用于 4 个软件包(通过 cw-it)
370KB
6.5K SLoC
Astroport 生成器
生成器合约为各种LP代币分配ASTRO代币奖励,并按比例分配给LP抵押者。生成器支持通过第三方合约进行代理抵押,这些合约除了ASTRO代币排放外,还提供第二项奖励。
InstantiateMsg
使用用于奖励分配的地址和合约初始化合约。
{
"owner": "terra...",
"astro_token": "terra...",
"tokens_per_block": "123",
"start_block": "123",
"vesting_contract": "terra..."
}
ExecuteMsg
update_config
更新奖励合约地址、生成器控制器合约地址或生成器监护人地址。只有合约所有者可以执行此操作。
{
"update_config": {
"vesting_contract": "terra...",
"generator_controller": "terra...",
"guardian": "terra...",
"voting_escrow": "terra...",
"generator_limit": 20
}
}
setup_pools
设置带有分配点的新的池列表。
{
"setup_pools": {
"pools" : [
[
"terra...",
"60"
],
[
"terra...",
"40"
]
]
}
}
update_pool
更新给定池的has_asset_rewards参数。
{
"update_pool": {
"lp_token": "terra...",
"has_asset_rewards": true
}
}
claim_rewards
更新奖励并将其返回给用户。
{
"claim_rewards": {
"lp_tokens": ["terra...", "terra...", "terra..."]
}
}
receive
CW20接收消息。
{
"receive": {
"sender": "terra...",
"amount": "123",
"msg": "<base64_encoded_json_string>"
}
}
deposit
在特定的生成器(在生成器合约内部)中抵押LP代币。要在生成器合约中进行抵押,应在您想抵押的LP代币的合约中执行此消息。
{
"send": {
"contract": <GeneratorContractAddress>,
"amount": "999",
"msg": "base64-encodedStringOfWithdrawMsg"
}
}
在 send.msg
中,您可以对此JSON字符串进行base64编码
{
"deposit": {}
}
depositFor
代表另一个地址在生成器中抵押LP代币。要在生成器合约中进行抵押,应在您想抵押的LP代币的合约中执行此消息。
{
"send": {
"contract": <GeneratorContractAddress>,
"amount": "999",
"msg": "base64-encodedStringOfWithdrawMsg"
}
}
在 send.msg
中,您可以对此JSON字符串进行base64编码
{
"deposit_for": "terra..."
}
withdraw
从生成器合约中取消抵押LP代币并申领未付的代币排放。
{
"withdraw": {
"lp_token": "terra...",
"amount": "123"
}
}
emergency_withdraw
不关心奖励地取消抵押LP代币。仅在紧急情况下使用,例如在生成器合约中发现严重错误。
{
"emergency_withdraw": {
"lp_token": "terra..."
}
}
send_orphan_reward
将孤儿奖励(紧急提取后留下的)发送到另一个地址。只有合约所有者可以转移孤儿奖励。
{
"send_orphan_reward": {
"recipient": "terra...",
"lp_token": "terra..."
}
}
set_tokens_per_block
设置所有活动生成器在每个区块中分配的ASTRO总量。只有所有者可以执行此操作。
{
"set_tokens_per_block": {
"amount": "123"
}
}
propose_new_owner
创建一个更改合同所有权的请求。报价的有效期由expires_in
变量设定。只有当前所有者可以执行此操作。
{
"propose_new_owner": {
"owner": "terra...",
"expires_in": 1234567
}
}
drop_ownership_proposal
删除现有的更改合同所有权的报价。只有合同所有者可以执行此操作。
{
"drop_ownership_proposal": {}
}
claim_ownership
由新提议的合同所有者使用以主张合同所有权。
{
"claim_ownership": {}
}
move_to_proxy
更改特定LP代币的当前双倍奖励代理。只有合同所有者可以执行此操作。
{
"move_to_proxy": {
"lp_token": "terra...",
"proxy": "terra..."
}
}
update_tokens_blockedlist
向/从代币封锁列表中添加/删除代币。只有所有者合同或生成器监护人可以执行此操作。
{
"update_tokens_blockedlist": {
"add": ["terra...", "terra..."],
"remove": ["terra...", "terra...", "terra..."]
}
}
deactivate_pool
为指定的池设置分配点为零。只有工厂合同可以执行此操作。
{
"deactivate_pool": {
"lp_token": "terra..."
}
}
deactivate_pools
根据对对类型,为每个池设置分配点为零。
{
"deactivate_pool": {
"pair_types": [{"xyk": {}}, {"stable": {}}]
}
}
checkpoint_user_boost
更新指定生成器的排放增强。
{
"checkpoint_user_boost": {
"generators": ["terra...", "terra..."],
"user": "terra..."
}
}
QueryMsg
以下描述了所有查询消息。为每个查询响应定义了一个自定义结构。
pool_length
返回迄今为止创建的生成器的总数。
{
"pool_length": {}
}
deposit
返回用户在生成器中目前质押的特定LP代币的数量。
{
"deposit": {
"lp_token": "terra...",
"user": "terra..."
}
}
pending_token
返回用户可以主张的待定ASTRO和第三方代币奖励的数量,该用户质押了特定LP代币。
{
"pending_token": {
"lp_token": "terra...",
"user": "terra..."
}
}
config
返回主生成器合同配置。
{
"config": {}
}
orphan_proxy_rewards
返回紧急提取后留下的孤儿代理奖励的数量。
{
"orphan_proxy_rewards": {
"lp_token": "terra..."
}
}
reward_info
返回关于指定LP代币的代币排放信息。
{
"reward_info": {
"lp_token": "terra..."
}
}
pool_info
返回指定LP代币的池信息。
{
"pool_info": {
"lp_token": "terra..."
}
}
simulate_future_reward
返回将分配到未来区块和特定LP代币的ASTRO数量。
{
"simulate_future_reward": {
"lp_token": "terra...",
"future_block": 999
}
}
list_of_stakers
返回目前在一个特定生成器中有资金的质押者列表。
{
"list_of_stakers": {
"lp_token": "terra...",
"start_after": "terra...",
"limit": 5
}
}
blocked_tokens_list
返回封锁代币列表。
{
"blocked_tokens_list": {}
}
active_pool_length
返回活跃生成器的总数。
{
"active_pool_length": {}
}
user_virtual_amount
返回特定生成器中的当前虚拟金额。
{
"user_virtual_amount": {
"lp_token": "terra...",
"user": "terra..."
}
}
total_virtual_amount
返回生成器的总虚拟供应量。
{
"total_virtual_amount": {
"lp_token": "terra..."
}
}
reward_proxies_list
返回曾经使用过的奖励代理合同列表。
{
"reward_proxies_list": {}
}
依赖项
~6–8.5MB
~172K SLoC