2 个稳定版本

2.1.0 2024年6月20日
1.1.0 2023年7月20日

#8 in #astro

Download history 152/week @ 2024-04-18 121/week @ 2024-04-25 56/week @ 2024-05-02 114/week @ 2024-05-09 40/week @ 2024-05-16 58/week @ 2024-05-23 236/week @ 2024-05-30 229/week @ 2024-06-06 115/week @ 2024-06-13 369/week @ 2024-06-20 158/week @ 2024-06-27 60/week @ 2024-07-04 116/week @ 2024-07-11 82/week @ 2024-07-18 83/week @ 2024-07-25 70/week @ 2024-08-01

360 每月下载量
用于 6 个 crate(直接使用 3 个)

GPL-3.0-only

225KB
5K SLoC

Astroport xASTRO Staking

此质押合约允许 ASTRO 持有者将其代币质押以换取 xASTRO。他们可以索赔的 ASTRO 量会随着 Maker 合约中累积的费用兑换为 ASTRO 并发送给质押者而增加。


InstantiateMsg

使用 ASTRO 所用的代币代码 ID 和 ASTRO 代币地址初始化合约。

{
  "token_code_id": 123,
  "deposit_token_addr": "terra..."
}

ExecuteMsg

receive

CW20 接收消息。

{
  "receive": {
    "sender": "terra...",
    "amount": "123",
    "msg": "<base64_encoded_json_string>"
  }
}

Enter

在 xASTRO 质押合约中存入 ASTRO。

通过调用 ASTRO 代币合约并使用以下消息执行此消息

{
  "send": {
    "contract": <StakingContractAddress>,
    "amount": "999",
    "msg": "base64-encodedStringOfWithdrawMsg"
  }
}

send.msg 中,您可以将此 JSON 字符串编码为 base64 编码

{
  "enter": {}
}

leave

销毁 xASTRO 并解押底层 ASTRO(初始质押量 + 自质押以来累积的 ASTRO)。

通过调用 xASTRO 代币合约并使用以下消息执行此消息

{
  "send": {
    "contract": <StakingContractAddress>,
    "amount": "999",
    "msg": "base64-encodedStringOfWithdrawMsg"
  }
}

send.msg 中,您可以将此 JSON 字符串编码为 base64 编码

{
  "leave": {}
}

QueryMsg

以下描述了所有查询消息。为每个查询响应定义了一个自定义结构。

config

返回 ASTRO 和 xASTRO 地址。

{
  "config": {}
}

get_total_shares

返回 xASTRO 代币的总数量。

{
  "get_total_shares": {}
}

get_total_deposit

返回质押合约中 ASTRO 存款的总数量。

{
  "get_total_deposit": {}
}

依赖关系

~10MB
~211K SLoC