diff --git a/crates/sp_client/src/api.rs b/crates/sp_client/src/api.rs index 4c44949..266d4f5 100644 --- a/crates/sp_client/src/api.rs +++ b/crates/sp_client/src/api.rs @@ -20,7 +20,7 @@ use sp_backend::spclient::{derive_keys_from_seed, OutputList, SpClient}; use crate::user::{User, UserKeys, CONNECTED_USERS}; -use crate::process::{ItemMember, Process, Role}; +use crate::process::Process; type ApiResult = Result; @@ -167,16 +167,23 @@ pub struct get_process_return(Vec); #[wasm_bindgen] pub fn get_processes() -> ApiResult { - let member1 = ItemMember::new(Role::Manager, String::from("")); - let member2 = ItemMember::new(Role::Manager, String::from("")); - let member3 = ItemMember::new(Role::Manager, String::from("")); + let number_managers: u8 = 5; + + let birthday_signet = 50000; + let mut members: Vec = Vec::with_capacity((number_managers) as usize); - //instances of process + for _ in 0..number_managers{ + //add sp_client + let sp_wallet = generate_sp_wallet(None, birthday_signet, true)?; + let sp_address = sp_wallet.sp_client.get_receiving_address(); + members.push(sp_address); + } + //instances of process let process1 = Process { id: 1, name: String::from("CREATE_ID"), version: String::from("1.0"), - members: vec![member1.clone(), member2.clone()], + members: members.clone(), html: crate::process::HTML_CREATE_ID.to_owned(), style: crate::process::CSS.to_owned(), script: "".to_owned(), @@ -185,7 +192,7 @@ pub fn get_processes() -> ApiResult { id: 2, name: String::from("UPDATE_ID"), version: String::from("1.0"), - members: vec![member1.clone(), member2.clone()], + members: members.clone(), html: crate::process::HTML_UPDATE_ID.to_owned(), style: crate::process::CSS.to_owned(), script: "".to_owned(), @@ -194,7 +201,7 @@ pub fn get_processes() -> ApiResult { id: 3, name: String::from("RECOVER"), version: String::from("1.0"), - members: vec![member1.clone(), member2.clone()], + members: members.clone(), html: crate::process::HTML_RECOVER.to_owned(), style: crate::process::CSS.to_owned(), script: "".to_owned(), @@ -203,7 +210,7 @@ pub fn get_processes() -> ApiResult { id: 4, name: String::from("REVOKE_IMAGE"), version: String::from("1.0"), - members: vec![member1.clone(), member2.clone()], + members: members.clone(), html: crate::process::HTML_REVOKE_IMAGE.to_owned(), style: crate::process::CSS.to_owned(), script: "".to_owned(), @@ -212,7 +219,7 @@ pub fn get_processes() -> ApiResult { id: 5, name: String::from("REVOKE"), version: String::from("1.0"), - members: vec![member1.clone(), member2.clone()], + members: members.clone(), html: crate::process::HTML_REVOKE.to_owned(), style: crate::process::CSS.to_owned(), script: "".to_owned(), @@ -226,8 +233,37 @@ pub fn get_processes() -> ApiResult { data_process.push(process4); data_process.push(process5); Ok(get_process_return(data_process)) + } +//for testing +/*#[wasm_bindgen] +pub fn get_process() -> ApiResult{ + + let number_managers: u8 = 5; + let number_users:u8 = 10; + let birthday_signet = 50000; + let mut members: Vec = Vec::with_capacity((number_managers + number_users) as usize); + + for _ in 0..number_managers{ + //add sp_client + let sp_wallet = generate_sp_wallet(None, birthday_signet, true)?; + let sp_address: SilentPaymentAddress = sp_wallet.sp_client.get_receiving_address().try_into()?; + members.push(ItemMember::new(Role::Manager,sp_address, String::from(""))); + } + for _ in 0..number_users{ + let sp_wallet = generate_sp_wallet(None, birthday_signet, true)?; + let sp_address: SilentPaymentAddress = sp_wallet.sp_client.get_receiving_address().try_into()?; + members.push(ItemMember::new(Role::User, sp_address, String::from(""))); + } + + let process = Process::new(members); + let mut data_process: Vec = Vec::new(); + data_process.push(process); + Ok(get_process_return(data_process)) + +}*/ + #[derive(Debug, Tsify, Serialize, Deserialize)] #[tsify(from_wasm_abi)] #[allow(non_camel_case_types)]