Vaulta

swap.adex

Contract

{
  "version": "eosio::abi/1.1",
  "types": [],
  "structs": [
    {
      "name": "account",
      "base": "",
      "fields": [
        {
          "name": "balance",
          "type": "asset"
        }
      ]
    },
    {
      "name": "add_lq_log",
      "base": "",
      "fields": [
        {
          "name": "pool_id",
          "type": "uint64"
        },
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        },
        {
          "name": "base_token",
          "type": "extended_asset"
        },
        {
          "name": "quote_token",
          "type": "extended_asset"
        }
      ]
    },
    {
      "name": "close",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "symbol",
          "type": "symbol"
        }
      ]
    },
    {
      "name": "close_deposit",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "pool_id",
          "type": "uint64"
        }
      ]
    },
    {
      "name": "create",
      "base": "",
      "fields": [
        {
          "name": "issuer",
          "type": "name"
        },
        {
          "name": "maximum_supply",
          "type": "asset"
        }
      ]
    },
    {
      "name": "create_pool",
      "base": "",
      "fields": [
        {
          "name": "base_token",
          "type": "extended_symbol"
        },
        {
          "name": "quote_token",
          "type": "extended_symbol"
        }
      ]
    },
    {
      "name": "currency_stats",
      "base": "",
      "fields": [
        {
          "name": "supply",
          "type": "asset"
        },
        {
          "name": "max_supply",
          "type": "asset"
        },
        {
          "name": "issuer",
          "type": "name"
        }
      ]
    },
    {
      "name": "deposit",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "pool_id",
          "type": "uint64"
        }
      ]
    },
    {
      "name": "deposit_row",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "base_token",
          "type": "extended_asset"
        },
        {
          "name": "quote_token",
          "type": "extended_asset"
        }
      ]
    },
    {
      "name": "extended_symbol",
      "base": "",
      "fields": [
        {
          "name": "sym",
          "type": "symbol"
        },
        {
          "name": "contract",
          "type": "name"
        }
      ]
    },
    {
      "name": "issue",
      "base": "",
      "fields": [
        {
          "name": "to",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        },
        {
          "name": "memo",
          "type": "string"
        }
      ]
    },
    {
      "name": "open",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "symbol",
          "type": "symbol"
        },
        {
          "name": "ram_payer",
          "type": "name"
        }
      ]
    },
    {
      "name": "open_deposit",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "pool_id",
          "type": "uint64"
        },
        {
          "name": "ram_payer",
          "type": "name"
        }
      ]
    },
    {
      "name": "pool",
      "base": "",
      "fields": [
        {
          "name": "id",
          "type": "uint64"
        },
        {
          "name": "code",
          "type": "symbol_code"
        },
        {
          "name": "base_token",
          "type": "extended_asset"
        },
        {
          "name": "quote_token",
          "type": "extended_asset"
        },
        {
          "name": "pool_fee",
          "type": "asset"
        },
        {
          "name": "platform_fee",
          "type": "asset"
        },
        {
          "name": "created_at",
          "type": "time_point"
        },
        {
          "name": "updated_at",
          "type": "time_point"
        }
      ]
    },
    {
      "name": "refund",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "pool_id",
          "type": "uint64"
        }
      ]
    },
    {
      "name": "remove_lq_log",
      "base": "",
      "fields": [
        {
          "name": "pool_id",
          "type": "uint64"
        },
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        },
        {
          "name": "base_token",
          "type": "extended_asset"
        },
        {
          "name": "quote_token",
          "type": "extended_asset"
        }
      ]
    },
    {
      "name": "remove_pool",
      "base": "",
      "fields": [
        {
          "name": "base_token",
          "type": "extended_symbol"
        },
        {
          "name": "quote_token",
          "type": "extended_symbol"
        }
      ]
    },
    {
      "name": "retire",
      "base": "",
      "fields": [
        {
          "name": "from",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        },
        {
          "name": "memo",
          "type": "string"
        }
      ]
    },
    {
      "name": "swap_log",
      "base": "",
      "fields": [
        {
          "name": "pool_id",
          "type": "uint64"
        },
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "quantity_in",
          "type": "extended_asset"
        },
        {
          "name": "quantity_out",
          "type": "extended_asset"
        },
        {
          "name": "pool_fee",
          "type": "extended_asset"
        },
        {
          "name": "platform_fee",
          "type": "extended_asset"
        }
      ]
    },
    {
      "name": "transfer",
      "base": "",
      "fields": [
        {
          "name": "from",
          "type": "name"
        },
        {
          "name": "to",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        },
        {
          "name": "memo",
          "type": "string"
        }
      ]
    },
    {
      "name": "withdraw",
      "base": "",
      "fields": [
        {
          "name": "owner",
          "type": "name"
        },
        {
          "name": "quantity",
          "type": "asset"
        }
      ]
    }
  ],
  "actions": [
    {
      "name": "addlqlog",
      "type": "add_lq_log",
      "ricardian_contract": ""
    },
    {
      "name": "close",
      "type": "close",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Close Token Balance\nsummary: 'Close {{nowrap owner}}’s zero quantity balance'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{owner}} agrees to close their zero quantity balance for the {{symbol_to_symbol_code symbol}} token.\n\nRAM will be refunded to the RAM payer of the {{symbol_to_symbol_code symbol}} token balance for {{owner}}."
    },
    {
      "name": "closedeposit",
      "type": "close_deposit",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Close Deposit\nsummary: 'Close {{nowrap owner}}’s zero quantity deposit'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{owner}} agrees to close their zero quantity deposit for the {{nowrap pool_id}} liquidity pool.\n\nRAM will be refunded to the RAM payer of the {{nowrap pool_id}} liquidity pool deposit for {{owner}}."
    },
    {
      "name": "create",
      "type": "create",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Create New Token\nsummary: 'Create a new token'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{$action.account}} agrees to create a new token with symbol {{asset_to_symbol_code maximum_supply}} to be managed by {{issuer}}.\n\nThis action will not result any any tokens being issued into circulation.\n\n{{issuer}} will be allowed to issue tokens into circulation, up to a maximum supply of {{maximum_supply}}.\n\nRAM will deducted from {{$action.account}}’s resources to create the necessary records."
    },
    {
      "name": "createpool",
      "type": "create_pool",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Create Liquidity Pool\nsummary: 'Create liquidity pool with {{nowrap base_token}} as base token and {{nowrap quote_token}} as quote token'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{$action.account}} agrees to create a new liquidity pool with {{nowrap base_token}} as base token and {{nowrap quote_token}} as quote token.\n\nThe transaction will revert if the pool or reverse pool already exists.\n\nRAM will deducted from {{$action.account}}’s resources to create the necessary records."
    },
    {
      "name": "deposit",
      "type": "deposit",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Deposit Liquidity Into Pool\nsummary: 'Deposit liquidity into pool with {{nowrap pool_id}} pool id'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{owner}} agrees to deposit liquidity into pool with {{nowrap pool_id}} pool id and receive related liquidity tokens.\n\nThe transaction will revert if {{owner}} does not have a positive deposit of both tokens.\n\nThe transaction will revert if {{owner}} does not have a balance for the related pool liquidity token."
    },
    {
      "name": "issue",
      "type": "issue",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Issue Tokens into Circulation\nsummary: 'Issue {{nowrap quantity}} into circulation and transfer into {{nowrap to}}’s account'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\nThe token manager agrees to issue {{quantity}} into circulation, and transfer it into {{to}}’s account.\n\n{{#if memo}}There is a memo attached to the transfer stating:\n{{memo}}\n{{/if}}\n\nIf {{to}} does not have a balance for {{asset_to_symbol_code quantity}}, or the token manager does not have a balance for {{asset_to_symbol_code quantity}}, the token manager will be designated as the RAM payer of the {{asset_to_symbol_code quantity}} token balance for {{to}}. As a result, RAM will be deducted from the token manager’s resources to create the necessary records.\n\nThis action does not allow the total quantity to exceed the max allowed supply of the token."
    },
    {
      "name": "open",
      "type": "open",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Open Token Balance\nsummary: 'Open a zero quantity balance for {{nowrap owner}}'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{ram_payer}} agrees to establish a zero quantity balance for {{owner}} for the {{symbol_to_symbol_code symbol}} token.\n\nIf {{owner}} does not have a balance for {{symbol_to_symbol_code symbol}}, {{ram_payer}} will be designated as the RAM payer of the {{symbol_to_symbol_code symbol}} token balance for {{owner}}. As a result, RAM will be deducted from {{ram_payer}}’s resources to create the necessary records."
    },
    {
      "name": "opendeposit",
      "type": "open_deposit",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Open Deposit\nsummary: 'Open a zero quantity deposit for {{nowrap owner}}'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{ram_payer}} agrees to establish a zero quantity deposit for {{owner}} for the {{nowrap pool_id}} liquidity pool.\n\nIf {{owner}} does not have a deposit for {{nowrap pool_id}} liquidity pool, {{ram_payer}} will be designated as the RAM payer of the {{nowrap pool_id}} liquidity pool deposit for {{owner}}. As a result, RAM will be deducted from {{ram_payer}}’s resources to create the necessary records."
    },
    {
      "name": "refund",
      "type": "refund",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Refund Deposit\nsummary: 'Refund deposit with {{nowrap pool_id}} pool id to {{nowrap owner}}'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{owner}} agrees to refund deposit with {{nowrap pool_id}} pool id to self.\n\nThe transaction will revert if {{owner}} does not have opened balances for related tokens."
    },
    {
      "name": "removepool",
      "type": "remove_pool",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Remove Liquidity Pool\nsummary: 'Remove zero liquidity pool with {{nowrap base_token}} and {{nowrap quote_token}}'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{$action.account}} agrees to remove zero liquidity {{nowrap base_token}}/{{nowrap quote_token}} pool.\n\nRAM will be refunded to the {{$action.account}}."
    },
    {
      "name": "retire",
      "type": "retire",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Remove Tokens from Circulation\nsummary: 'Remove {{nowrap quantity}} from circulation'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\nThe token manager agrees to remove {{quantity}} from circulation, taken from {{nowrap from}}.\n\n{{#if memo}} There is a memo attached to the action stating:\n{{memo}}\n{{/if}}"
    },
    {
      "name": "rmvlqlog",
      "type": "remove_lq_log",
      "ricardian_contract": ""
    },
    {
      "name": "swaplog",
      "type": "swap_log",
      "ricardian_contract": ""
    },
    {
      "name": "transfer",
      "type": "transfer",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Transfer Tokens\nsummary: 'Send {{nowrap quantity}} from {{nowrap from}} to {{nowrap to}}'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{from}} agrees to send {{quantity}} to {{to}}.\n\n{{#if memo}}There is a memo attached to the transfer stating:\n{{memo}}\n{{/if}}\n\nIf {{from}} is not already the RAM payer of their {{asset_to_symbol_code quantity}} token balance, {{from}} will be designated as such. As a result, RAM will be deducted from {{from}}’s resources to refund the original RAM payer.\n\nIf {{to}} does not have a balance for {{asset_to_symbol_code quantity}}, {{from}} will be designated as the RAM payer of the {{asset_to_symbol_code quantity}} token balance for {{to}}. As a result, RAM will be deducted from {{from}}’s resources to create the necessary records."
    },
    {
      "name": "withdraw",
      "type": "withdraw",
      "ricardian_contract": "---\nspec_version: \"0.2.0\"\ntitle: Withdraw Liquidity\nsummary: 'Withdraw {{nowrap quantity}} from {{nowrap owner}}’s balance and transfer related pool tokens into {{nowrap owner}}'s account'\nicon: https://raw.githubusercontent.com/A-DEX/ricardian-icons/main/icons/logo.png#00a636bea459c96c2a226f71cdf943057050a9c29f4ce23528939b39cbc979e6\n---\n\n{{owner}} agrees to remove {{quantity}} from circulation and receive related pool tokens.\n\nThe transaction will revert if {{quantity}} represents zero liquidity of the related pool.\n\nThe transaction will revert if {{owner}} does not have balances for related pool tokens."
    }
  ],
  "tables": [
    {
      "name": "accounts",
      "index_type": "i64",
      "key_names": [],
      "key_types": [],
      "type": "account"
    },
    {
      "name": "deposits",
      "index_type": "i64",
      "key_names": [],
      "key_types": [],
      "type": "deposit_row"
    },
    {
      "name": "pools",
      "index_type": "i64",
      "key_names": [],
      "key_types": [],
      "type": "pool"
    },
    {
      "name": "stat",
      "index_type": "i64",
      "key_names": [],
      "key_types": [],
      "type": "currency_stats"
    }
  ],
  "ricardian_clauses": [],
  "error_messages": [],
  "abi_extensions": [],
  "variants": [],
  "action_results": []
}