Contract a89ca4283f5a713b476842a3ef8ba16c19e9ac42826b87907cad3bdc01356b56

← Back to Index 📥 Download WASM

Meta

rssdkver 20.5.0#9e2c3022b4355b224a7a814e13ba51761eeb14bb
rsver 1.77.2

Instances

  • CAATLY2OS5QGXKJFODIFC52EKTBQ5GDFBZMYNAE4D4TK22PER3JP4CFS
  • CACZ46DKJVAUJHJBNEDQIHMXF22J6HGOEDITGKPCJ44ODKXEH7PBW4YV
  • CASYAX5OVSE75OQUYPE6ZF2MLLSOHCVKS7KIBL5AJS2HAABIOXRRRUZD
  • CAW6M3BQP5VWLAXOOYK2AXVGEAAL4HP6LHJLGUFVVFXT5SF7J5TLVEWH
  • CB3HJZLOKPFMANCVQSEB63A5NHMKQOOAPWVX6RYT3BD7WUJAGLBOHGUC
  • CBBUMX75GDGWZDD5D4ADYESUXZVC4CJ6M65LTUNIEUE3NAY2AHQUDDUN
  • CBF5LTJ5YH64NY4MZWXXUPFMY5LDU77EDCERBC2MHJNEZGMWWPTGU6O7
  • CBMVJDHPSHBNH5TH6BAYPCJX5LOUWTQB7KKGDX6INQIODG4VIEDQVEJZ
  • CCJSH2QQQM3UUVNEQ2HRZ7C5NRQL46BL5RZD7QNVAY7K3Y6EUTT642UN
  • CCK5PTLH5F5QQZP4HEJF3RMMTIDROHHUSCK4CQMLBGOA4MKJXTWEUEAR
  • CCNDZQXZ3WFKPGDHRA56QZEIKXL5NB4YCVEOQYOJ6G7GUDUOGI32AHTX
  • CCOZ4VIXI4VN7SJZAFN4K2Z6KZRL5BZINXCW627QXEFGV4XCHQQGQK53
  • CCU6ZQI2Q76XMCHB26DW5RFUBG4BFOLHNBSHOPW5GHSZA2XGK46J5PPM

Interface

Initialize the contract

Arguments

  • admin - The admin of the lockup contract
  • owner - The owner of the lockup contract
  • token - The token to lock up
  • unlocks - A vector of unlocks. Percentages represent the portion of the lockups token balance can be claimed at the given unlock time. If multiple unlocks are claimed at once, the percentages are applied in order.

Errors

  • AlreadyInitializedError - The contract has already been initialized
  • InvalidUnlocks - The unlock times do not represent a valid unlock sequence
fn initialize(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    owner: soroban_sdk::Address,
    unlocks: soroban_sdk::Vec,
)

Get unlocks for the lockup

fn unlocks(env: soroban_sdk::Env) -> soroban_sdk::Vec

Get the admin address

fn admin(env: soroban_sdk::Env) -> soroban_sdk::Address

Get the owner address

fn owner(env: soroban_sdk::Env) -> soroban_sdk::Address

(Only admin) Set new unlocks for the lockup. The new unlocks must retain any existing unlocks that have already passed their unlock time.

Arguments

  • new_unlocks - The new unlocks to set

Errors

  • UnauthorizedError - The caller is not the admin
  • InvalidUnlocks - The unlock times do not represent a valid unlock sequence
fn set_unlocks(env: soroban_sdk::Env, new_unlocks: soroban_sdk::Vec)

(Only owner) Claim the unlocked tokens. The tokens are transferred to the owner.

Arguments

  • tokens - A vector of tokens to claim

Errors

  • UnauthorizedError - The caller is not the owner
  • NoUnlockedTokens - There are not tokens to claim for a given asset
fn claim(env: soroban_sdk::Env, tokens: soroban_sdk::Vec)

Imports

WebAssembly Text (WAT) ▶