Contract 3e8f372ac26c0ab674c6da7b01bd237d4c6c89f34a3d353b0edbc72644f12364

← Back to Index 📥 Download WASM

Meta

desc Splitter V2: Tokenized distribution with lazy claiming, time-gating, auto-scheduling, and DEX-tradeable participation tokens.
rssdkver 23.5.2#347f71141ddf69ef1873527c94ac98e79215f125
rsver 1.91.1

Instances

  • CA3MJKOLLSJC3LRV3JT2MUAG6SO7IKA7PILRFJAOWG35ELVVSPMD5PEP
  • CACYD6JJ4AQHX5KYTEGMZWRS6CS77DZ7O6MIMY5AIWBXBWFJ23EZUWE6
  • CCFDWRMTIZIG3EQLHHV73QQYLUHVKXLT4JT4RZKLFEYFNBUJR72NWOHO
  • CCT5TLSUKZD42MI3ZBH6TEO3B2D633NSNXHLUQR2VKQO2H4LG27FVH2H
  • CDH276LAFKUXRD6VRZ5OTEXA2ITFJZOAVG4RHQYTDJPQIJTAVMHWMYOW

Interface

fn init(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    shares: soroban_sdk::Vec,
    mutable: bool,
    participation_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn claim(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
    round_id: u64,
) -> Result
fn upgrade(
    env: soroban_sdk::Env,
    new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
fn claim_all(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
) -> Result
fn get_round(
    env: soroban_sdk::Env,
    round_id: u64,
) -> Result
fn get_share(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
) -> Result
fn set_admin(
    env: soroban_sdk::Env,
    new_admin: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn buy_shares(
    env: soroban_sdk::Env,
    buyer: soroban_sdk::Address,
    seller: soroban_sdk::Address,
    shares_amount: i128,
) -> Result<(), soroban_sdk::Error>
fn get_config(env: soroban_sdk::Env) -> Result
fn get_listing(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
) -> Option
fn get_schedule(env: soroban_sdk::Env) -> Option
fn set_schedule(
    env: soroban_sdk::Env,
    first_distribution_time: u64,
    interval_seconds: u64,
    total_distributions: u32,
) -> Result<(), soroban_sdk::Error>
fn get_claimable(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
    round_id: u64,
) -> Result
fn lock_contract(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn update_shares(
    env: soroban_sdk::Env,
    shares: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>
fn cancel_listing(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn get_allocation(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
    token: soroban_sdk::Address,
) -> Result
fn init_with_type(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    shares: soroban_sdk::Vec,
    mutable: bool,
    participation_token: soroban_sdk::Address,
    pool_type: PoolType,
) -> Result<(), soroban_sdk::Error>
fn transfer_shares(
    env: soroban_sdk::Env,
    from: soroban_sdk::Address,
    to: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn transfer_tokens(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    recipient: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn claim_with_proof(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
    round_id: u64,
    balance: i128,
    proof: soroban_sdk::Vec>,
) -> Result
fn disable_schedule(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn is_round_expired(
    env: soroban_sdk::Env,
    round_id: u64,
) -> Result
fn get_active_rounds(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn is_round_claimable(
    env: soroban_sdk::Env,
    round_id: u64,
) -> Result
fn create_distribution(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
) -> Result
fn get_total_claimable(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
) -> Result
fn withdraw_allocation(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    shareholder: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn get_require_snapshot(env: soroban_sdk::Env) -> bool
fn get_unclaimed_amount(
    env: soroban_sdk::Env,
    round_id: u64,
) -> Result
fn list_shares_for_sale(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
    shares_amount: i128,
    price_per_share: i128,
    payment_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn set_require_snapshot(
    env: soroban_sdk::Env,
    value: bool,
) -> Result<(), soroban_sdk::Error>
fn get_commission_config(
    env: soroban_sdk::Env,
) -> Result
fn reclaim_expired_round(
    env: soroban_sdk::Env,
    round_id: u64,
) -> Result
fn get_distribution_config(env: soroban_sdk::Env) -> DistributionConfig
fn get_next_scheduled_time(env: soroban_sdk::Env) -> Option
fn set_buy_commission_rate(
    env: soroban_sdk::Env,
    new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>
fn set_distribution_config(
    env: soroban_sdk::Env,
    config: DistributionConfig,
) -> Result<(), soroban_sdk::Error>
fn set_commission_recipient(
    env: soroban_sdk::Env,
    new_recipient: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn create_distribution_snapshot(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    merkle_root: soroban_sdk::BytesN<32>,
) -> Result
fn trigger_scheduled_distribution(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
) -> Result
fn set_distribution_commission_rate(
    env: soroban_sdk::Env,
    new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>

Imports

WebAssembly Text (WAT) ▶