mirror of
https://github.com/logos-blockchain/lssa.git
synced 2026-01-04 06:13:10 +00:00
fix: suggestions fix 1
This commit is contained in:
parent
a903c221db
commit
c2b8459645
@ -1,7 +1,7 @@
|
||||
use anyhow::Result;
|
||||
use base58::ToBase58;
|
||||
use clap::Subcommand;
|
||||
use nssa::{Address, program::Program};
|
||||
use nssa::{Account, Address, program::Program};
|
||||
use serde::Serialize;
|
||||
|
||||
use crate::{
|
||||
@ -103,7 +103,7 @@ impl WalletSubcommand for NewSubcommand {
|
||||
NewSubcommand::Public {} => {
|
||||
let addr = wallet_core.create_new_account_public();
|
||||
|
||||
println!("Generated new account with addr {addr}");
|
||||
println!("Generated new account with addr Public/{addr}");
|
||||
|
||||
let path = wallet_core.store_persistent_data().await?;
|
||||
|
||||
@ -121,7 +121,7 @@ impl WalletSubcommand for NewSubcommand {
|
||||
.unwrap();
|
||||
|
||||
println!(
|
||||
"Generated new account with addr {}",
|
||||
"Generated new account with addr Private/{}",
|
||||
addr.to_bytes().to_base58()
|
||||
);
|
||||
println!("With npk {}", hex::encode(key.nullifer_public_key.0));
|
||||
@ -205,6 +205,12 @@ impl WalletSubcommand for AccountSubcommand {
|
||||
.ok_or(anyhow::anyhow!("Private account not found in storage"))?,
|
||||
};
|
||||
|
||||
if account == Account::default() {
|
||||
println!("Account is Uninitialized");
|
||||
|
||||
return Ok(SubcommandReturnValue::Empty);
|
||||
}
|
||||
|
||||
if raw {
|
||||
let account_hr: HumanReadableAccount = account.clone().into();
|
||||
println!("{}", serde_json::to_string(&account_hr).unwrap());
|
||||
@ -219,16 +225,22 @@ impl WalletSubcommand for AccountSubcommand {
|
||||
_ if account.program_owner == auth_tr_prog_id => {
|
||||
let acc_view: AuthenticatedTransferAccountView = account.into();
|
||||
|
||||
println!("Account owned by authenticated transfer program");
|
||||
|
||||
serde_json::to_string(&acc_view)?
|
||||
}
|
||||
_ if account.program_owner == token_prog_id => {
|
||||
if let Some(token_def) = TokenDefinition::parse(&account.data) {
|
||||
let acc_view: TokedDefinitionAccountView = token_def.into();
|
||||
|
||||
println!("Definition account owned by token program");
|
||||
|
||||
serde_json::to_string(&acc_view)?
|
||||
} else if let Some(token_hold) = TokenHolding::parse(&account.data) {
|
||||
let acc_view: TokedHoldingAccountView = token_hold.into();
|
||||
|
||||
println!("Holding account owned by token program");
|
||||
|
||||
serde_json::to_string(&acc_view)?
|
||||
} else {
|
||||
anyhow::bail!("Invalid data for account {addr:#?} with token program");
|
||||
|
||||
@ -12,7 +12,7 @@ use crate::{
|
||||
///Represents generic CLI subcommand for a wallet working with token program
|
||||
#[derive(Subcommand, Debug, Clone)]
|
||||
pub enum TokenProgramAgnosticSubcommand {
|
||||
///Produce new ERC-20 token
|
||||
///Produce a new token
|
||||
///
|
||||
///Currently the only supported privacy options is for public definition
|
||||
New {
|
||||
@ -94,7 +94,7 @@ impl WalletSubcommand for TokenProgramAgnosticSubcommand {
|
||||
anyhow::bail!("Unavailable privacy pairing")
|
||||
}
|
||||
(AddressPrivacyKind::Private, AddressPrivacyKind::Public) => {
|
||||
//Probably valid. If definition is not public, but supply is it is very suspicious.
|
||||
//ToDo: Probably valid. If definition is not public, but supply is it is very suspicious.
|
||||
anyhow::bail!("Unavailable privacy pairing")
|
||||
}
|
||||
};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user