6 releases

0.1.5 Oct 24, 2023
0.1.4 Oct 24, 2023

#14 in #members

Apache-2.0

22KB
457 lines

CW-Goop

Cw-goop is a customized version of Stargaze's Flexible Whitelist.

InstantiateMsg

#[cw_serde]
pub struct InstantiateMsg {
    pub members: Vec<Member>,
    pub claim_limit: u32,
    pub admins: Vec<String>,
    pub admins_mutable: bool,
}

json example:

{
  "members": [
    {
      "address": "0x24EaSp0rts..",
      "headstash_amount": 123456789,
      "claim_count": 0
    },
    {
      "address": "0x23iMiNtHeGaMe...",
      "headstash_amount": 987654321,
      "claim_count": 1 
    }
  ],
  "claim_limit": 1,
  "admins": [
    "terp1...", 
    "terp1a...."
    ],
  "admins_mutable": true
}

ExecuteMsg

#[cw_serde]
pub enum ExecuteMsg {
    AddMembers(AddMembersMsg),
    UpdateAdmins { admins: Vec<String> },
    Freeze {},
}

AddMembers

{
  "AddMembers": {
    "to_add": [
      {
        "address": "0x24EaSp0rts",
        "claim_count": 0
      },
      {
        "address": "0x23iMiNtHeGaMe",
        "claim_count": 0
      }
    ]
  }
}

UpdateAdmins

{
  "UpdateAdmins": {
    "admins": ["admin_address_1", "admin_address_2"]
  }
}

Freeze

{
  "Freeze": {}
}

QueryMsg

Members

HasMember

Member

Config

AdminList

CanExecute

PerAddressLimit

Dependencies

~4.5–6.5MB
~137K SLoC