Skip to content

Commit

Permalink
[Gateway Client]: Add some additional types.
Browse files Browse the repository at this point in the history
  • Loading branch information
0xOmarA committed Jan 29, 2024
1 parent 174ab4f commit 25b9791
Show file tree
Hide file tree
Showing 7 changed files with 40 additions and 16 deletions.
2 changes: 1 addition & 1 deletion libraries/gateway-client/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ edition.workspace = true

[dependencies]
serde = { version = "1.0.195", features = ["derive"] }
serde_with = { version = "3.5.1" }
serde_with = { version = "3.5.1", features = ["hex"] }
serde_json = { version = "1.0.111" }
url = { version = "2.5.0" }
uuid = { version = "1.7.0", features = ["serde", "v4"] }
Expand Down
4 changes: 2 additions & 2 deletions libraries/gateway-client/src/models/events_item.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ pub struct EventsItem {
#[serde(rename = "emitter")]
pub emitter: serde_json::Value,
#[serde(rename = "data")]
pub data: Box<crate::models::ProgrammaticScryptoSborValue>,
pub data: Box<serde_json::Value>,
}

impl EventsItem {
pub fn new(
name: String,
emitter: serde_json::Value,
data: crate::models::ProgrammaticScryptoSborValue,
data: serde_json::Value,
) -> EventsItem {
EventsItem {
name,
Expand Down
2 changes: 1 addition & 1 deletion libraries/gateway-client/src/models/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ pub use self::transaction_preview_response::TransactionPreviewResponse;
pub mod transaction_preview_response_logs_inner;
pub use self::transaction_preview_response_logs_inner::TransactionPreviewResponseLogsInner;
pub mod transaction_receipt;
pub use self::transaction_receipt::TransactionReceipt;
pub use self::transaction_receipt::{Entity, StateUpdates, TransactionReceipt};
pub mod transaction_status;
pub use self::transaction_status::TransactionStatus;
pub mod transaction_status_request;
Expand Down
16 changes: 14 additions & 2 deletions libraries/gateway-client/src/models/public_key.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
#[serde_with::serde_as]
#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
#[serde(tag = "")]
pub enum PublicKey {}
#[serde(tag = "key_type")]
pub enum PublicKey {
EcdsaSecp256k1 {
#[serde_as(as = "serde_with::hex::Hex")]
#[serde(rename = "key_hex")]
key: [u8; 33],
},
EddsaEd25519 {
#[serde_as(as = "serde_with::hex::Hex")]
#[serde(rename = "key_hex")]
key: [u8; 32],
},
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
#[serde_with::serde_as]
#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
pub struct TransactionPreviewResponse {
#[serde(rename = "encoded_receipt")]
pub encoded_receipt: String,

#[serde_as(as = "serde_with::hex::Hex")]
pub encoded_receipt: Vec<u8>,
#[serde(rename = "receipt")]
pub receipt: serde_json::Value,
#[serde(rename = "resource_changes")]
Expand All @@ -13,7 +14,7 @@ pub struct TransactionPreviewResponse {

impl TransactionPreviewResponse {
pub fn new(
encoded_receipt: String,
encoded_receipt: Vec<u8>,
receipt: serde_json::Value,
resource_changes: Vec<serde_json::Value>,
logs: Vec<crate::models::TransactionPreviewResponseLogsInner>,
Expand Down
17 changes: 13 additions & 4 deletions libraries/gateway-client/src/models/transaction_receipt.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,10 @@ pub struct TransactionReceipt {

#[serde(rename = "fee_source", skip_serializing_if = "Option::is_none")]
pub fee_source: Option<serde_json::Value>,

#[serde(rename = "state_updates", skip_serializing_if = "Option::is_none")]
pub state_updates: Option<serde_json::Value>,

pub state_updates: Option<StateUpdates>,
#[serde(rename = "next_epoch", skip_serializing_if = "Option::is_none")]
pub next_epoch: Option<serde_json::Value>,

#[serde(rename = "output", skip_serializing_if = "Option::is_none")]
pub output: Option<serde_json::Value>,

Expand Down Expand Up @@ -63,3 +60,15 @@ impl TransactionReceipt {
}
}
}

#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
pub struct StateUpdates {
pub new_global_entities: Vec<Entity>,
}

#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
pub struct Entity {
pub is_global: bool,
pub entity_type: String,
pub entity_address: String,
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
#[serde_with::serde_as]
#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
pub struct TransactionSubmitRequest {
#[serde(rename = "notarized_transaction_hex")]
pub notarized_transaction_hex: String,
#[serde_as(as = "serde_with::hex::Hex")]
pub notarized_transaction: Vec<u8>,
}

impl TransactionSubmitRequest {
pub fn new(notarized_transaction_hex: String) -> TransactionSubmitRequest {
pub fn new(notarized_transaction: Vec<u8>) -> TransactionSubmitRequest {
TransactionSubmitRequest {
notarized_transaction_hex,
notarized_transaction,
}
}
}

0 comments on commit 25b9791

Please sign in to comment.