From caba7163b2d8ef1f63ebccf932fec77ca996c4a1 Mon Sep 17 00:00:00 2001 From: Restioson Date: Tue, 12 Mar 2024 09:18:46 +0200 Subject: [PATCH] Support wasm (still blocking) --- p2pd-oracle-client/Cargo.toml | 14 +++++++++++--- p2pd-oracle-client/src/lib.rs | 14 ++++++++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/p2pd-oracle-client/Cargo.toml b/p2pd-oracle-client/Cargo.toml index 00327488..102ad56f 100644 --- a/p2pd-oracle-client/Cargo.toml +++ b/p2pd-oracle-client/Cargo.toml @@ -6,14 +6,22 @@ license-file = "../LICENSE" name = "p2pd-oracle-client" repository = "https://github.com/p2pderivatives/rust-dlc/tree/master/p2pd-oracle-client" version = "0.1.0" +edition = "2021" [dependencies] chrono = {version = "0.4.19", features = ["serde"]} -dlc-manager = {path = "../dlc-manager"} -dlc-messages = {path = "../dlc-messages", features = ["use-serde"]} -reqwest = {version = "0.11", features = ["blocking", "json"]} +dlc-manager = { version = "0.4.0" } +dlc-messages = { version = "0.4.0", features = ["use-serde"]} +reqwest = {version = "0.11", features = ["json"]} secp256k1-zkp = {version = "0.7.0" } serde = {version = "*", features = ["derive"]} [dev-dependencies] mockito = "0.31.0" + +[target.'cfg(target_arch = "wasm32")'.dependencies] +pollster = "0.3.0" + +[target.'cfg(not(target_arch = "wasm32"))'.dependencies] +reqwest = {version = "0.11", features = ["blocking", "json"]} + diff --git a/p2pd-oracle-client/src/lib.rs b/p2pd-oracle-client/src/lib.rs index 4339ca66..74a8c6bc 100644 --- a/p2pd-oracle-client/src/lib.rs +++ b/p2pd-oracle-client/src/lib.rs @@ -71,6 +71,20 @@ struct AttestationResponse { values: Vec, } +#[cfg(target_arch = "wasm32")] +fn get(path: &str) -> Result + where + T: serde::de::DeserializeOwned, +{ + pollster::block_on(pollster::block_on(reqwest::get(path)) + .map_err(|x| { + dlc_manager::error::Error::IOError(std::io::Error::new(std::io::ErrorKind::Other, x)) + })? + .json::()) + .map_err(|e| dlc_manager::error::Error::OracleError(e.to_string())) +} + +#[cfg(not(target_arch = "wasm32"))] fn get(path: &str) -> Result where T: serde::de::DeserializeOwned,