6581ebf235
* added reduced pricing handling logic * admin methods for setting the whitelist of reduced price accounts * updated client traits * query to get all whitelisted accounts * query for getting detailed deposit statistics * fixes * set initial whitelisted accounts in the migration * stop transferring tokens to the holding account after redemption * stop gateways from creating redemption multisig proposals * make sure credential-proxy uses reduced deposits when available * cargo fmt * update deposit handler to allow EITHER default price or reduced price this will allow non-breaking upgrades of NS and credential proxy * removed use of unstable rust features * rebuilt contract schema * correct license timestamp
239 lines
6.0 KiB
JSON
239 lines
6.0 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "ExecuteMsg",
|
|
"oneOf": [
|
|
{
|
|
"description": "Used by clients to request ticket books from the signers",
|
|
"type": "object",
|
|
"required": [
|
|
"deposit_ticket_book_funds"
|
|
],
|
|
"properties": {
|
|
"deposit_ticket_book_funds": {
|
|
"type": "object",
|
|
"required": [
|
|
"identity_key"
|
|
],
|
|
"properties": {
|
|
"identity_key": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"description": "Used by gateways to batch redeem tokens from the spent tickets",
|
|
"type": "object",
|
|
"required": [
|
|
"request_redemption"
|
|
],
|
|
"properties": {
|
|
"request_redemption": {
|
|
"type": "object",
|
|
"required": [
|
|
"commitment_bs58",
|
|
"number_of_tickets"
|
|
],
|
|
"properties": {
|
|
"commitment_bs58": {
|
|
"type": "string"
|
|
},
|
|
"number_of_tickets": {
|
|
"type": "integer",
|
|
"format": "uint16",
|
|
"minimum": 0.0
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"description": "The actual message that gets executed, after multisig votes, that transfers the ticket tokens into gateway's (and the holding) account",
|
|
"type": "object",
|
|
"required": [
|
|
"redeem_tickets"
|
|
],
|
|
"properties": {
|
|
"redeem_tickets": {
|
|
"type": "object",
|
|
"required": [
|
|
"gw",
|
|
"n"
|
|
],
|
|
"properties": {
|
|
"gw": {
|
|
"type": "string"
|
|
},
|
|
"n": {
|
|
"type": "integer",
|
|
"format": "uint16",
|
|
"minimum": 0.0
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"update_admin"
|
|
],
|
|
"properties": {
|
|
"update_admin": {
|
|
"type": "object",
|
|
"required": [
|
|
"admin"
|
|
],
|
|
"properties": {
|
|
"admin": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"update_default_deposit_value"
|
|
],
|
|
"properties": {
|
|
"update_default_deposit_value": {
|
|
"type": "object",
|
|
"required": [
|
|
"new_deposit"
|
|
],
|
|
"properties": {
|
|
"new_deposit": {
|
|
"$ref": "#/definitions/Coin"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"description": "Set (or overwrite) a reduced deposit price for a specific address. Only callable by the contract admin.",
|
|
"type": "object",
|
|
"required": [
|
|
"set_reduced_deposit_price"
|
|
],
|
|
"properties": {
|
|
"set_reduced_deposit_price": {
|
|
"type": "object",
|
|
"required": [
|
|
"address",
|
|
"deposit"
|
|
],
|
|
"properties": {
|
|
"address": {
|
|
"type": "string"
|
|
},
|
|
"deposit": {
|
|
"$ref": "#/definitions/Coin"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"description": "Remove the reduced deposit price for a specific address, reverting them to the default price. Returns an error if the address has no custom price set. Only callable by the contract admin.",
|
|
"type": "object",
|
|
"required": [
|
|
"remove_reduced_deposit_price"
|
|
],
|
|
"properties": {
|
|
"remove_reduced_deposit_price": {
|
|
"type": "object",
|
|
"required": [
|
|
"address"
|
|
],
|
|
"properties": {
|
|
"address": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"propose_to_blacklist"
|
|
],
|
|
"properties": {
|
|
"propose_to_blacklist": {
|
|
"type": "object",
|
|
"required": [
|
|
"public_key"
|
|
],
|
|
"properties": {
|
|
"public_key": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"add_to_blacklist"
|
|
],
|
|
"properties": {
|
|
"add_to_blacklist": {
|
|
"type": "object",
|
|
"required": [
|
|
"public_key"
|
|
],
|
|
"properties": {
|
|
"public_key": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
],
|
|
"definitions": {
|
|
"Coin": {
|
|
"type": "object",
|
|
"required": [
|
|
"amount",
|
|
"denom"
|
|
],
|
|
"properties": {
|
|
"amount": {
|
|
"$ref": "#/definitions/Uint128"
|
|
},
|
|
"denom": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"Uint128": {
|
|
"description": "A thin wrapper around u128 that is using strings for JSON encoding/decoding, such that the full u128 range can be used for clients that convert JSON numbers to floats, like JavaScript and jq.\n\n# Examples\n\nUse `from` to create instances of this and `u128` to get the value out:\n\n``` # use cosmwasm_std::Uint128; let a = Uint128::from(123u128); assert_eq!(a.u128(), 123);\n\nlet b = Uint128::from(42u64); assert_eq!(b.u128(), 42);\n\nlet c = Uint128::from(70u32); assert_eq!(c.u128(), 70); ```",
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|