use wasm_bindgen::prelude::*; use serde::{Deserialize, Serialize}; use serde_json::{json, Value}; /* #[wasm_bindgen] pub fn get_process() -> Vec { let mut data_process: Vec = Vec::new(); data_process.push(String::from("process1")); data_process.push(String::from("process2")); data_process.push(String::from("process3")); data_process }*/ // process member (gestionnaire for now) #[derive(Debug)] pub enum Role { manager, // user } #[derive(Debug, Serialize, Deserialize, Default, Clone, PartialEq, Eq, Hash, PartialOrd, Ord)] #[wasm_bindgen] pub struct itemMember { role: Role, //gestionnaire sp_address: String, //pre_id //shard //priv_key_mainnet_spend //priv_key_mainnet_scan //priv_key_signet_scan } #[wasm_bindgen] impl itemMember{ pub fn new ( role : Role, sp_address: string) ->Self { itemMember{ role, sp_address, } } } pub struct Process { id: String, version: String, gestionnaires: Vec, //item_name : String, } #[wasm_bindgen] pub fn get_processes() -> Vec { let member1 = itemMember { role: Role ::Manager, sp_address: String::from(""), }; let member2 = itemMember { role: Role ::Manager, sp_address: String::from(""), }; let member3 = itemMember { role: Role ::Manager, sp_address: String::from(""), }; /* let member4= itemMember{ role : Role :: User, sp_address: String::from(""), }; */ //instances of process let process1 = Process { id: String::from("1"), version: String::from("1.0"), gestionnaires: vec![member1, member2], }; let process2 = Process { id: String::from("2"), version: String::from("2.0"), gestionnaires: vec![member2, member3], }; let process3 = Process { id: String::from("3"), version: String::from("1.0"), gestionnaires: vec![member3, member1], }; // vec with the instances of processes let mut data_process: Vec = Vec::new(); data_process.push(JsValue::from_serde(&process1).unwrap()); data_process.push(JsValue::from_serde(&process2).unwrap()); data_process.push(JsValue::from_serde(&process3).unwrap()); data_process }