diff --git a/src/api.rs b/src/api.rs index de21e6c..d405551 100644 --- a/src/api.rs +++ b/src/api.rs @@ -1648,76 +1648,6 @@ pub fn is_child_role(parent_roles: String, child_roles: String) -> ApiResult<()> Ok(()) } -#[wasm_bindgen] -pub fn roles_contains_us(role: String) -> ApiResult<()> { - let roles: HashMap = serde_json::from_str(&role)?; - - let device = lock_local_device()?; - - let us = device.to_member(); - - let mut contains_us = false; - for (_, role) in roles { - if role.members.contains(&us) { - contains_us = true; - break; - } - } - - if !contains_us { - Err(ApiError::new("We're not part of that role".to_owned())) - } else { - Ok(()) - } -} - -// TODO this is wrong, and we want to move that in ts anyway -#[wasm_bindgen] -pub fn roles_contains_member(roles: String, member_str: Vec) -> ApiResult<()> { - let roles: BTreeMap = serde_json::from_str(&roles)?; - - let addresses: anyhow::Result> = member_str.iter() - .map(|s| SilentPaymentAddress::try_from(s.as_str()).map_err(|_| anyhow::Error::msg("Invalid string"))) - .collect(); - let member = Member::new(addresses?)?; - - for (_, role) in roles { - if !role.members.contains(&member) { - return Err(ApiError::new("member is not part of that role".to_owned())); - } - } - - Ok(()) -} - -#[wasm_bindgen] -pub fn members_in_same_roles_me(roles: String) -> ApiResult> { - let roles: BTreeMap = serde_json::from_str(&roles)?; - - let device = lock_local_device()?; - - let us = device.to_member(); - - let mut res: Vec = vec![]; - - for (_, role) in roles { - if role.members.contains(&us) { - let to_add: Vec = role.members - .iter() - .filter_map(|m| { - if *m != us { - Some(serde_json::to_string(m).unwrap()) - } else { - None - } - }).collect(); - res.extend(to_add); - } - } - - Ok(res) -} - #[wasm_bindgen] pub fn decrypt_data(key: &[u8], data: &[u8]) -> ApiResult { let mut key_buf = [0u8; 32];