nado-sdk 0.3.5

Official Rust SDK for the Nado Protocol API
Documentation
use eyre::{eyre, Result};

use crate::prelude::NadoBase;
use crate::utils::client_error::ClientError;

pub fn subaccount_matches_wallet<V>(client: &V, subaccount: [u8; 32]) -> Result<()>
where
    V: NadoBase,
{
    let wallet_address = &client.address()?[..20];
    if wallet_address == &subaccount[..20] {
        Ok(())
    } else {
        Err(eyre!(ClientError::SubaccountWalletMismatch))
    }
}

pub fn validate_subaccount_name(name: &str) -> Result<()> {
    let byte_len = name.len();
    if byte_len > 12 {
        Err(eyre!(ClientError::SubaccountNameSize(byte_len)))
    } else {
        Ok(())
    }
}