diff --git a/Cargo.lock b/Cargo.lock index 560759f..9f632e1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -829,7 +829,7 @@ dependencies = [ [[package]] name = "foundation-api" -version = "1.6.0" +version = "1.7.0" dependencies = [ "anyhow", "bc-components", diff --git a/api-demo/src/demo/util.rs b/api-demo/src/demo/util.rs index 19224ab..9079c6a 100644 --- a/api-demo/src/demo/util.rs +++ b/api-demo/src/demo/util.rs @@ -49,6 +49,6 @@ pub fn handle_ctrl_c() { pub fn chapter_title(title: &str) { println!(); - println!("===== {} =====", title); + println!("===== {title} ====="); println!(); } diff --git a/api/Cargo.toml b/api/Cargo.toml index fd8ba41..a67c8b7 100644 --- a/api/Cargo.toml +++ b/api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "foundation-api" -version = "1.6.0" +version = "1.7.0" edition = "2021" description = "Foundation API using Gordian Sealed Transaction Protocol (GSTP)." authors = ["Wolf McNally, Blockchain Commons, Foundation Devices"] diff --git a/api/src/api/message.rs b/api/src/api/message.rs index 20ae198..52eab73 100644 --- a/api/src/api/message.rs +++ b/api/src/api/message.rs @@ -1,4 +1,5 @@ use super::onboarding::OnboardingState; +use crate::api::raw::RawData; use crate::backup::Shard; use crate::bitcoin::*; use crate::firmware::{FirmwarePayload, FirmwareUpdate}; @@ -85,4 +86,6 @@ pub enum QuantumLinkMessage { SecurityProofMessage(#[n(0)] SecurityProofMessage), #[n(13)] Shard(#[n(0)] Shard), + #[n(14)] + RawData(#[n(0)] RawData), } diff --git a/api/src/api/mod.rs b/api/src/api/mod.rs index d249d5d..3b76c54 100644 --- a/api/src/api/mod.rs +++ b/api/src/api/mod.rs @@ -8,6 +8,7 @@ pub mod onboarding; pub mod pairing; pub mod passport; pub mod quantum_link; +pub mod raw; pub mod scv; pub mod settings; pub mod status; diff --git a/api/src/api/raw.rs b/api/src/api/raw.rs new file mode 100644 index 0000000..e0b462b --- /dev/null +++ b/api/src/api/raw.rs @@ -0,0 +1,12 @@ +use crate::api::quantum_link::QuantumLink; +use flutter_rust_bridge::frb; +use { + minicbor_derive::{Decode, Encode}, + quantum_link_macros::quantum_link, +}; + +#[quantum_link] +pub struct RawData { + #[n(0)] + pub payload: Vec, +}