diff --git a/taptrade-cli-demo/trader/src/cli/mod.rs b/taptrade-cli-demo/trader/src/cli/mod.rs index 84d65d6..b5948d4 100755 --- a/taptrade-cli-demo/trader/src/cli/mod.rs +++ b/taptrade-cli-demo/trader/src/cli/mod.rs @@ -46,6 +46,15 @@ fn bytes_to_base91(input: &[u8; 32]) -> String { encoded_robohash } +impl OfferType { + pub fn value(&self) -> u64 { + match self { + OfferType::Buy(value) => *value, + OfferType::Sell(value) => *value, + } + } +} + impl CliSettings { fn get_user_input(prompt: &str) -> String { let mut buffer = String::new(); diff --git a/taptrade-cli-demo/trader/src/wallet/bond.rs b/taptrade-cli-demo/trader/src/wallet/bond.rs index 719274f..3931134 100644 --- a/taptrade-cli-demo/trader/src/wallet/bond.rs +++ b/taptrade-cli-demo/trader/src/wallet/bond.rs @@ -1,5 +1,6 @@ use anyhow::Result; use bdk::{database::MemoryDatabase, wallet::coin_selection::BranchAndBoundCoinSelection, Wallet}; +use serde::de::value; use crate::communication::api::OfferCreationResponse; use crate::wallet::TraderSettings; @@ -23,8 +24,8 @@ impl Bond { let (psbt, details) = { let mut builder = wallet.build_tx(); builder - .coin_selection(BranchAndBoundCoinSelection::new(10000)) - .add_recipient(send_to.script_pubkey(), 50_000) + .coin_selection(BranchAndBoundCoinSelection::new(trader_input.trade_type.value())) + .add_recipient(bond_target.locking_address, bond_target.locking_amount) .enable_rbf() .do_not_spend_change() .fee_rate(FeeRate::from_sat_per_vb(5.0));