Skip to content

Commit 7c6696d

Browse files
committed
fix: rebase errors
1 parent c05ad3f commit 7c6696d

File tree

3 files changed

+40
-22
lines changed

3 files changed

+40
-22
lines changed

packages/shared/lib/src/sdk/args.rs

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ use namada_sdk::args::{
77
};
88
use namada_sdk::borsh::{BorshDeserialize, BorshSerialize, BorshSerializeExt};
99
use namada_sdk::collections::HashMap;
10+
use namada_sdk::dec::Dec;
1011
use namada_sdk::ibc::core::host::types::identifiers::{ChannelId, PortId};
1112
use namada_sdk::ibc::IbcShieldingData;
1213
use namada_sdk::masp::partial_deauthorize;
@@ -342,9 +343,6 @@ pub enum Slippage {
342343
/// actual trade price. This must be a decimal number in the range
343344
/// `[0, 100]`.
344345
slippage_percentage: String,
345-
/// The time period (in seconds) over which the average price is
346-
/// calculated
347-
window_seconds: u64,
348346
},
349347
}
350348

@@ -358,11 +356,14 @@ impl From<Slippage> for args::Slippage {
358356
}
359357
Slippage::Twap {
360358
slippage_percentage,
361-
window_seconds,
362-
} => args::Slippage::Twap {
363-
slippage_percentage,
364-
window_seconds,
365-
},
359+
} => {
360+
let slippage_percentage = Dec::from_str(&slippage_percentage)
361+
.expect("Slippage percentage to be valid decimal.");
362+
363+
args::Slippage::Twap {
364+
slippage_percentage,
365+
}
366+
}
366367
}
367368
}
368369
}
@@ -386,12 +387,13 @@ pub struct OsmosisSwapMsg {
386387
pub route: Option<Vec<OsmosisPoolHop>>,
387388
/// The route to take through Osmosis pools
388389
/// A REST rpc endpoint to Osmosis
389-
pub osmosis_rest_rpc: String,
390+
pub osmosis_lcd_rpc: String,
390391
}
391392

392393
pub fn osmosis_swap_tx_args(
393394
osmosis_swap_msg: &[u8],
394395
tx_msg: &[u8],
396+
native_token: Address,
395397
) -> Result<(args::TxOsmosisSwap, Option<StoredBuildParams>), JsError> {
396398
let osmosis_swap_msg = OsmosisSwapMsg::try_from_slice(osmosis_swap_msg)?;
397399

@@ -403,10 +405,11 @@ pub fn osmosis_swap_tx_args(
403405
slippage,
404406
local_recovery_addr,
405407
route,
406-
osmosis_rest_rpc,
408+
osmosis_lcd_rpc,
407409
} = osmosis_swap_msg;
408410

409-
let (ibc_transfer_args, bparams) = ibc_transfer_tx_args(&transfer.serialize_to_vec(), tx_msg)?;
411+
let (ibc_transfer_args, bparams) =
412+
ibc_transfer_tx_args(&transfer.serialize_to_vec(), tx_msg, native_token)?;
410413

411414
let recipient = match Address::from_str(&recipient) {
412415
Ok(address) => Ok(Either::Left(address)),
@@ -428,10 +431,12 @@ pub fn osmosis_swap_tx_args(
428431
output_denom,
429432
recipient,
430433
overflow: Some(overflow),
431-
slippage: slippage.into(),
434+
slippage: Some(slippage.into()),
432435
local_recovery_addr,
433436
route,
434-
osmosis_rest_rpc,
437+
osmosis_lcd_rpc: Some(osmosis_lcd_rpc),
438+
// TODO: not sure if needed
439+
osmosis_sqs_rpc: None,
435440
};
436441

437442
Ok((tx_osmosis_swap_args, bparams))

packages/shared/lib/src/sdk/mod.rs

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -902,26 +902,39 @@ impl Sdk {
902902
osmosis_swap_msg: &[u8],
903903
wrapper_tx_msg: &[u8],
904904
) -> Result<JsValue, JsError> {
905-
let (args, bparams) = args::osmosis_swap_tx_args(osmosis_swap_msg, wrapper_tx_msg)?;
905+
let (args, bparams) = args::osmosis_swap_tx_args(
906+
osmosis_swap_msg,
907+
wrapper_tx_msg,
908+
self.namada.native_token(),
909+
)?;
906910

907-
let _ = &self.namada.shielded_mut().await.load().await?;
908-
let tx = args.into_ibc_transfer(&self.namada).await?;
911+
let _ = &self
912+
.namada
913+
.shielded_mut()
914+
.await
915+
.try_load(async |_| {})
916+
.await;
917+
918+
// TODO: check if returning true is correct here
919+
let tx = args
920+
.into_ibc_transfer(&self.namada, |_route, _min_amount, _quote_amount| true)
921+
.await?;
909922

910923
let bparams = if let Some(bparams) = bparams {
911924
BuildParams::StoredBuildParams(bparams)
912925
} else {
913926
generate_rng_build_params()
914927
};
915928

916-
917929
let xfvks = match tx.source {
918930
TransferSource::Address(_) => vec![],
919931
TransferSource::ExtendedKey(pek) => vec![pek.to_viewing_key()],
920932
};
921933

922934
let ((tx, signing_data, _), masp_signing_data) = match bparams {
923935
BuildParams::RngBuildParams(mut bparams) => {
924-
let tx = build_ibc_transfer(&self.namada, &tx, &mut bparams).await?;
936+
// TODO: replace flase
937+
let tx = build_ibc_transfer(&self.namada, &tx, &mut bparams, false).await?;
925938
let masp_signing_data = MaspSigningData::new(
926939
bparams
927940
.to_stored()
@@ -932,7 +945,8 @@ impl Sdk {
932945
(tx, masp_signing_data)
933946
}
934947
BuildParams::StoredBuildParams(mut bparams) => {
935-
let tx = build_ibc_transfer(&self.namada, &tx, &mut bparams).await?;
948+
// TODO: replace flase
949+
let tx = build_ibc_transfer(&self.namada, &tx, &mut bparams, false).await?;
936950
let masp_signing_data = MaspSigningData::new(bparams, xfvks);
937951

938952
(tx, masp_signing_data)

packages/shared/lib/src/sdk/tx.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ use std::str::FromStr;
44
use gloo_utils::format::JsValueSerdeExt;
55
use namada_sdk::borsh::{self, BorshDeserialize, BorshSerialize};
66
use namada_sdk::collections::HashSet;
7-
use namada_sdk::collections::hash_set::IndexSet;
87
use namada_sdk::masp_primitives::transaction::components::sapling::builder::StoredBuildParams;
98
use namada_sdk::masp_primitives::transaction::components::sapling::fees::{InputView, OutputView};
109
use namada_sdk::masp_primitives::zip32::ExtendedFullViewingKey;
@@ -105,10 +104,10 @@ impl SigningData {
105104
None => None,
106105
};
107106

108-
let mut public_keys = vec![];
107+
let mut public_keys = HashSet::new();
109108
for pk in self.public_keys.clone() {
110109
let pk = PublicKey::from_str(&pk)?;
111-
public_keys.push(pk);
110+
public_keys.insert(pk);
112111
}
113112

114113
let fee_payer = PublicKey::from_str(&self.fee_payer)?;

0 commit comments

Comments
 (0)