From 5683a832880e06ff626743fcb2abf653bb86bd4c Mon Sep 17 00:00:00 2001 From: Alekos Filini Date: Tue, 21 Jul 2020 18:37:15 +0200 Subject: [PATCH] [repl] Expose list_transactions() in the REPL --- src/cli.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/cli.rs b/src/cli.rs index 8ea39ed8..788aa69d 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -57,6 +57,9 @@ pub fn make_cli_subcommands<'a, 'b>() -> App<'a, 'b> { .subcommand( SubCommand::with_name("list_unspent").about("Lists the available spendable UTXOs"), ) + .subcommand( + SubCommand::with_name("list_transactions").about("Lists all the incoming and outgoing transactions of the wallet"), + ) .subcommand( SubCommand::with_name("get_balance").about("Returns the current wallet balance"), ) @@ -296,6 +299,23 @@ where res += &format!("{} value {} SAT\n", utxo.outpoint, utxo.txout.value); } + Ok(Some(res)) + } else if let Some(_sub_matches) = matches.subcommand_matches("list_transactions") { + let mut res = String::new(); + for crate::types::TransactionDetails { + txid, + sent, + received, + height, + .. + } in wallet.list_transactions(false)? + { + res += &format!( + "{} - sent {}, received {} - height: {:?}\n", + txid, sent, received, height + ); + } + Ok(Some(res)) } else if let Some(_sub_matches) = matches.subcommand_matches("get_balance") { Ok(Some(format!("{} SAT", wallet.get_balance()?)))