Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
rouzwelt committed Nov 13, 2024
1 parent bfa091c commit 025956f
Show file tree
Hide file tree
Showing 10 changed files with 46 additions and 176 deletions.
17 changes: 3 additions & 14 deletions crates/js_api/src/gui/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,39 +2,28 @@ use alloy::primitives::Address;
use rain_orderbook_app_settings::gui::{
Gui, GuiDeployment, GuiFieldDefinition, ParseGuiConfigSourceError,
};
use rain_orderbook_bindings::impl_wasm_traits;
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
use rain_orderbook_common::dotrain_order::{DotrainOrder, DotrainOrderError};
use serde::{Deserialize, Serialize};
use serde_wasm_bindgen::{from_value, to_value};
use std::collections::HashMap;
use thiserror::Error;
use tsify::Tsify;
use wasm_bindgen::{
convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
},
describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR},
prelude::*,
};

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Tsify)]
#[tsify(into_wasm_abi, from_wasm_abi)]
pub struct TokenDeposit {
token: String,
amount: String,
#[tsify(type = "string")]
address: Address,
}
impl_wasm_traits!(TokenDeposit);
impl_all_wasm_traits!(TokenDeposit);

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Tsify)]
#[tsify(into_wasm_abi, from_wasm_abi)]
pub struct FieldValuePair {
binding: String,
value: String,
}
impl_wasm_traits!(FieldValuePair);
impl_all_wasm_traits!(FieldValuePair);

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
#[wasm_bindgen]
Expand Down
21 changes: 3 additions & 18 deletions crates/settings/src/deployer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,13 @@ use thiserror::Error;
use typeshare::typeshare;

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct Deployer {
#[typeshare(typescript(type = "string"))]
#[cfg_attr(target_family = "wasm", tsify(type = "string"))]
Expand All @@ -46,7 +31,7 @@ impl Deployer {
}
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(Deployer);
impl_all_wasm_traits!(Deployer);

#[derive(Error, Debug, PartialEq)]
pub enum ParseDeployerConfigSourceError {
Expand Down
21 changes: 3 additions & 18 deletions crates/settings/src/deployment.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,37 +5,22 @@ use thiserror::Error;
use typeshare::typeshare;

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

#[typeshare]
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
#[serde(rename_all = "kebab-case")]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct Deployment {
#[typeshare(typescript(type = "Scenario"))]
pub scenario: Arc<Scenario>,
#[typeshare(typescript(type = "Order"))]
pub order: Arc<Order>,
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(Deployment);
impl_all_wasm_traits!(Deployment);

#[derive(Error, Debug, PartialEq)]
pub enum ParseDeploymentConfigSourceError {
Expand Down
62 changes: 18 additions & 44 deletions crates/settings/src/gui.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,36 +6,22 @@ use thiserror::Error;
use typeshare::typeshare;

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

// Config source for Gui

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
#[serde(rename_all = "kebab-case")]
pub struct GuiPresetSource {
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
pub value: String,
}
#[cfg(target_family = "wasm")]
impl_all_wasm_traits!(GuiPresetSource);

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
Expand Down Expand Up @@ -167,23 +153,17 @@ pub enum ParseGuiConfigSourceError {

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct GuiPreset {
name: Option<String>,
value: String,
}
#[cfg(target_family = "wasm")]
impl_all_wasm_traits!(GuiPreset);

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct GuiDeposit {
#[typeshare(typescript(type = "Token"))]
#[cfg_attr(target_family = "wasm", tsify(type = "Erc20"))]
Expand All @@ -192,14 +172,12 @@ pub struct GuiDeposit {
#[cfg_attr(target_family = "wasm", tsify(type = "string[]"))]
pub presets: Vec<String>,
}
#[cfg(target_family = "wasm")]
impl_all_wasm_traits!(GuiDeposit);

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct GuiDeployment {
#[typeshare(typescript(type = "Deployment"))]
pub deployment: Arc<Deployment>,
Expand All @@ -209,35 +187,31 @@ pub struct GuiDeployment {
pub deposits: Vec<GuiDeposit>,
pub fields: Vec<GuiFieldDefinition>,
}
#[cfg(target_family = "wasm")]
impl_all_wasm_traits!(GuiDeployment);

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct GuiFieldDefinition {
pub binding: String,
pub name: String,
pub description: String,
pub presets: Vec<GuiPreset>,
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(GuiFieldDefinition);
impl_all_wasm_traits!(GuiFieldDefinition);

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
pub struct Gui {
pub name: String,
pub description: String,
pub deployments: Vec<GuiDeployment>,
}
#[cfg(target_family = "wasm")]
impl_all_wasm_traits!(Gui);

#[cfg(test)]
mod tests {
Expand Down
21 changes: 3 additions & 18 deletions crates/settings/src/network.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,13 @@ use typeshare::typeshare;
use url::{ParseError, Url};

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

#[typeshare]
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
#[serde(rename_all = "kebab-case")]
pub struct Network {
pub name: String,
Expand All @@ -54,7 +39,7 @@ impl Network {
}
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(Network);
impl_all_wasm_traits!(Network);

#[derive(Error, Debug, PartialEq)]
pub enum ParseNetworkConfigSourceError {
Expand Down
29 changes: 5 additions & 24 deletions crates/settings/src/order.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,13 @@ use thiserror::Error;
use typeshare::typeshare;

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

#[typeshare]
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
#[serde(rename_all = "kebab-case")]
pub struct OrderIO {
#[typeshare(typescript(type = "Token"))]
Expand All @@ -37,15 +22,11 @@ pub struct OrderIO {
pub vault_id: Option<U256>,
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(OrderIO);
impl_all_wasm_traits!(OrderIO);

#[typeshare]
#[derive(Debug, Serialize, Deserialize, PartialEq)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
#[serde(rename_all = "kebab-case")]
pub struct Order {
#[typeshare(typescript(type = "OrderIO[]"))]
Expand All @@ -62,7 +43,7 @@ pub struct Order {
pub orderbook: Option<Arc<Orderbook>>,
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(Order);
impl_all_wasm_traits!(Order);

#[derive(Error, Debug, PartialEq)]
pub enum ParseOrderConfigSourceError {
Expand Down
21 changes: 3 additions & 18 deletions crates/settings/src/scenario.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,13 @@ use thiserror::Error;
use typeshare::typeshare;

#[cfg(target_family = "wasm")]
use rain_orderbook_bindings::impl_wasm_traits;
#[cfg(target_family = "wasm")]
use serde_wasm_bindgen::{from_value, to_value};
use rain_orderbook_bindings::{impl_all_wasm_traits, wasm_traits::prelude::*};
#[cfg(target_family = "wasm")]
use tsify::Tsify;
#[cfg(target_family = "wasm")]
use wasm_bindgen::convert::{
js_value_vector_from_abi, js_value_vector_into_abi, FromWasmAbi, IntoWasmAbi,
LongRefFromWasmAbi, RefFromWasmAbi, TryFromJsValue, VectorFromWasmAbi, VectorIntoWasmAbi,
};
#[cfg(target_family = "wasm")]
use wasm_bindgen::describe::{inform, WasmDescribe, WasmDescribeVector, VECTOR};
#[cfg(target_family = "wasm")]
use wasm_bindgen::{JsValue, UnwrapThrowExt};

#[typeshare]
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
#[cfg_attr(
target_family = "wasm",
derive(Tsify),
tsify(into_wasm_abi, from_wasm_abi)
)]
#[cfg_attr(target_family = "wasm", derive(Tsify))]
#[serde(rename_all = "kebab-case")]
pub struct Scenario {
pub name: String,
Expand All @@ -41,7 +26,7 @@ pub struct Scenario {
pub deployer: Arc<Deployer>,
}
#[cfg(target_family = "wasm")]
impl_wasm_traits!(Scenario);
impl_all_wasm_traits!(Scenario);

#[derive(Error, Debug, PartialEq)]
pub enum ParseScenarioConfigSourceError {
Expand Down
Loading

0 comments on commit 025956f

Please sign in to comment.