mirror of
https://github.com/aljazceru/breez-sdk-liquid.git
synced 2025-12-18 22:44:22 +01:00
Implement external input parsing
This commit is contained in:
21
cli/Cargo.lock
generated
21
cli/Cargo.lock
generated
@@ -2672,9 +2672,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex"
|
name = "regex"
|
||||||
version = "1.10.6"
|
version = "1.11.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619"
|
checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
@@ -2684,9 +2684,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex-automata"
|
name = "regex-automata"
|
||||||
version = "0.4.7"
|
version = "0.4.9"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
|
checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
@@ -2701,9 +2701,9 @@ checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex-syntax"
|
name = "regex-syntax"
|
||||||
version = "0.8.4"
|
version = "0.8.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
|
checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "reqwest"
|
name = "reqwest"
|
||||||
@@ -3046,7 +3046,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "sdk-common"
|
name = "sdk-common"
|
||||||
version = "0.6.2"
|
version = "0.6.2"
|
||||||
source = "git+https://github.com/breez/breez-sdk?rev=5955216ec4ed003972b4473a77207dfb744da882#5955216ec4ed003972b4473a77207dfb744da882"
|
source = "git+https://github.com/breez/breez-sdk?rev=238245bd34be15727493d7d0c625c6ae55f2a845#238245bd34be15727493d7d0c625c6ae55f2a845"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aes 0.8.4",
|
"aes 0.8.4",
|
||||||
"anyhow",
|
"anyhow",
|
||||||
@@ -3059,6 +3059,7 @@ dependencies = [
|
|||||||
"lightning 0.0.118",
|
"lightning 0.0.118",
|
||||||
"lightning-invoice 0.26.0",
|
"lightning-invoice 0.26.0",
|
||||||
"log",
|
"log",
|
||||||
|
"percent-encoding",
|
||||||
"prost",
|
"prost",
|
||||||
"querystring",
|
"querystring",
|
||||||
"regex",
|
"regex",
|
||||||
@@ -3112,7 +3113,7 @@ version = "0.29.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113"
|
checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitcoin_hashes 0.13.0",
|
"bitcoin_hashes 0.14.0",
|
||||||
"secp256k1-sys 0.10.1",
|
"secp256k1-sys 0.10.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -3577,9 +3578,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tokio"
|
name = "tokio"
|
||||||
version = "1.39.3"
|
version = "1.42.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5"
|
checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"backtrace",
|
"backtrace",
|
||||||
"bytes",
|
"bytes",
|
||||||
|
|||||||
@@ -298,7 +298,7 @@ pub(crate) async fn handle_command(
|
|||||||
let mut result = command_result!(&response);
|
let mut result = command_result!(&response);
|
||||||
result.push('\n');
|
result.push('\n');
|
||||||
|
|
||||||
match parse(&response.destination).await? {
|
match parse(&response.destination, None).await? {
|
||||||
InputType::Bolt11 { invoice } => result.push_str(&build_qr_text(&invoice.bolt11)),
|
InputType::Bolt11 { invoice } => result.push_str(&build_qr_text(&invoice.bolt11)),
|
||||||
InputType::LiquidAddress { address } => {
|
InputType::LiquidAddress { address } => {
|
||||||
result.push_str(&build_qr_text(&address.to_uri().map_err(|e| {
|
result.push_str(&build_qr_text(&address.to_uri().map_err(|e| {
|
||||||
@@ -574,14 +574,14 @@ pub(crate) async fn handle_command(
|
|||||||
command_result!("Liquid SDK instance disconnected")
|
command_result!("Liquid SDK instance disconnected")
|
||||||
}
|
}
|
||||||
Command::Parse { input } => {
|
Command::Parse { input } => {
|
||||||
let res = LiquidSdk::parse(&input).await?;
|
let res = sdk.parse(&input).await?;
|
||||||
command_result!(res)
|
command_result!(res)
|
||||||
}
|
}
|
||||||
Command::LnurlPay {
|
Command::LnurlPay {
|
||||||
lnurl,
|
lnurl,
|
||||||
validate_success_url,
|
validate_success_url,
|
||||||
} => {
|
} => {
|
||||||
let input = LiquidSdk::parse(&lnurl).await?;
|
let input = sdk.parse(&lnurl).await?;
|
||||||
let res = match input {
|
let res = match input {
|
||||||
InputType::LnUrlPay { data: pd } => {
|
InputType::LnUrlPay { data: pd } => {
|
||||||
let prompt = format!(
|
let prompt = format!(
|
||||||
@@ -618,7 +618,7 @@ pub(crate) async fn handle_command(
|
|||||||
command_result!(res)
|
command_result!(res)
|
||||||
}
|
}
|
||||||
Command::LnurlWithdraw { lnurl } => {
|
Command::LnurlWithdraw { lnurl } => {
|
||||||
let input = LiquidSdk::parse(&lnurl).await?;
|
let input = sdk.parse(&lnurl).await?;
|
||||||
let res = match input {
|
let res = match input {
|
||||||
InputType::LnUrlWithdraw { data: pd } => {
|
InputType::LnUrlWithdraw { data: pd } => {
|
||||||
let prompt = format!(
|
let prompt = format!(
|
||||||
@@ -644,7 +644,7 @@ pub(crate) async fn handle_command(
|
|||||||
Command::LnurlAuth { lnurl } => {
|
Command::LnurlAuth { lnurl } => {
|
||||||
let lnurl_endpoint = lnurl.trim();
|
let lnurl_endpoint = lnurl.trim();
|
||||||
|
|
||||||
let res = match parse(lnurl_endpoint).await? {
|
let res = match parse(lnurl_endpoint, None).await? {
|
||||||
InputType::LnUrlAuth { data: ad } => {
|
InputType::LnUrlAuth { data: ad } => {
|
||||||
let auth_res = sdk.lnurl_auth(ad).await?;
|
let auth_res = sdk.lnurl_auth(ad).await?;
|
||||||
serde_json::to_string_pretty(&auth_res).map_err(|e| e.into())
|
serde_json::to_string_pretty(&auth_res).map_err(|e| e.into())
|
||||||
|
|||||||
25
lib/Cargo.lock
generated
25
lib/Cargo.lock
generated
@@ -2429,9 +2429,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "once_cell"
|
name = "once_cell"
|
||||||
version = "1.19.0"
|
version = "1.20.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
|
checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "oneshot-uniffi"
|
name = "oneshot-uniffi"
|
||||||
@@ -2925,9 +2925,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex"
|
name = "regex"
|
||||||
version = "1.10.6"
|
version = "1.11.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619"
|
checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
@@ -2937,9 +2937,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex-automata"
|
name = "regex-automata"
|
||||||
version = "0.4.7"
|
version = "0.4.9"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
|
checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
@@ -2954,9 +2954,9 @@ checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex-syntax"
|
name = "regex-syntax"
|
||||||
version = "0.8.4"
|
version = "0.8.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
|
checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "remove_dir_all"
|
name = "remove_dir_all"
|
||||||
@@ -3294,7 +3294,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "sdk-common"
|
name = "sdk-common"
|
||||||
version = "0.6.2"
|
version = "0.6.2"
|
||||||
source = "git+https://github.com/breez/breez-sdk?rev=5955216ec4ed003972b4473a77207dfb744da882#5955216ec4ed003972b4473a77207dfb744da882"
|
source = "git+https://github.com/breez/breez-sdk?rev=238245bd34be15727493d7d0c625c6ae55f2a845#238245bd34be15727493d7d0c625c6ae55f2a845"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aes 0.8.4",
|
"aes 0.8.4",
|
||||||
"anyhow",
|
"anyhow",
|
||||||
@@ -3307,6 +3307,7 @@ dependencies = [
|
|||||||
"lightning 0.0.118",
|
"lightning 0.0.118",
|
||||||
"lightning-invoice 0.26.0",
|
"lightning-invoice 0.26.0",
|
||||||
"log",
|
"log",
|
||||||
|
"percent-encoding",
|
||||||
"prost",
|
"prost",
|
||||||
"querystring",
|
"querystring",
|
||||||
"regex",
|
"regex",
|
||||||
@@ -3360,7 +3361,7 @@ version = "0.29.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113"
|
checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitcoin_hashes 0.13.0",
|
"bitcoin_hashes 0.14.0",
|
||||||
"secp256k1-sys 0.10.1",
|
"secp256k1-sys 0.10.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -3862,9 +3863,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tokio"
|
name = "tokio"
|
||||||
version = "1.40.0"
|
version = "1.42.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
|
checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"backtrace",
|
"backtrace",
|
||||||
"bytes",
|
"bytes",
|
||||||
|
|||||||
@@ -489,6 +489,11 @@ typedef struct wire_cst_sdk_event {
|
|||||||
union SdkEventKind kind;
|
union SdkEventKind kind;
|
||||||
} wire_cst_sdk_event;
|
} wire_cst_sdk_event;
|
||||||
|
|
||||||
|
typedef struct wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser {
|
||||||
|
uintptr_t *ptr;
|
||||||
|
int32_t len;
|
||||||
|
} wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser;
|
||||||
|
|
||||||
typedef struct wire_cst_config {
|
typedef struct wire_cst_config {
|
||||||
struct wire_cst_list_prim_u_8_strict *liquid_electrum_url;
|
struct wire_cst_list_prim_u_8_strict *liquid_electrum_url;
|
||||||
struct wire_cst_list_prim_u_8_strict *bitcoin_electrum_url;
|
struct wire_cst_list_prim_u_8_strict *bitcoin_electrum_url;
|
||||||
@@ -500,6 +505,7 @@ typedef struct wire_cst_config {
|
|||||||
uint32_t zero_conf_min_fee_rate_msat;
|
uint32_t zero_conf_min_fee_rate_msat;
|
||||||
uint64_t *zero_conf_max_amount_sat;
|
uint64_t *zero_conf_max_amount_sat;
|
||||||
struct wire_cst_list_prim_u_8_strict *breez_api_key;
|
struct wire_cst_list_prim_u_8_strict *breez_api_key;
|
||||||
|
struct wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser *external_input_parsers;
|
||||||
} wire_cst_config;
|
} wire_cst_config;
|
||||||
|
|
||||||
typedef struct wire_cst_connect_request {
|
typedef struct wire_cst_connect_request {
|
||||||
@@ -1091,6 +1097,10 @@ void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw(
|
|||||||
uintptr_t that,
|
uintptr_t that,
|
||||||
struct wire_cst_ln_url_withdraw_request *req);
|
struct wire_cst_ln_url_withdraw_request *req);
|
||||||
|
|
||||||
|
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse(int64_t port_,
|
||||||
|
uintptr_t that,
|
||||||
|
struct wire_cst_list_prim_u_8_strict *input);
|
||||||
|
|
||||||
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(int64_t port_,
|
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(int64_t port_,
|
||||||
uintptr_t that,
|
uintptr_t that,
|
||||||
struct wire_cst_pay_onchain_request *req);
|
struct wire_cst_pay_onchain_request *req);
|
||||||
@@ -1166,15 +1176,16 @@ void frbgen_breez_liquid_wire__crate__bindings__connect(int64_t port_,
|
|||||||
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__default_config(int32_t network,
|
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__default_config(int32_t network,
|
||||||
struct wire_cst_list_prim_u_8_strict *breez_api_key);
|
struct wire_cst_list_prim_u_8_strict *breez_api_key);
|
||||||
|
|
||||||
void frbgen_breez_liquid_wire__crate__bindings__parse(int64_t port_,
|
|
||||||
struct wire_cst_list_prim_u_8_strict *input);
|
|
||||||
|
|
||||||
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__parse_invoice(struct wire_cst_list_prim_u_8_strict *input);
|
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__parse_invoice(struct wire_cst_list_prim_u_8_strict *input);
|
||||||
|
|
||||||
void frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(const void *ptr);
|
void frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(const void *ptr);
|
||||||
|
|
||||||
void frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(const void *ptr);
|
void frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(const void *ptr);
|
||||||
|
|
||||||
|
void frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(const void *ptr);
|
||||||
|
|
||||||
|
void frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(const void *ptr);
|
||||||
|
|
||||||
struct wire_cst_aes_success_action_data *frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data(void);
|
struct wire_cst_aes_success_action_data *frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data(void);
|
||||||
|
|
||||||
struct wire_cst_aes_success_action_data_decrypted *frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data_decrypted(void);
|
struct wire_cst_aes_success_action_data_decrypted *frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data_decrypted(void);
|
||||||
@@ -1275,6 +1286,8 @@ uint64_t *frbgen_breez_liquid_cst_new_box_autoadd_u_64(uint64_t value);
|
|||||||
|
|
||||||
struct wire_cst_url_success_action_data *frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_data(void);
|
struct wire_cst_url_success_action_data *frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_data(void);
|
||||||
|
|
||||||
|
struct wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser *frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(int32_t len);
|
||||||
|
|
||||||
struct wire_cst_list_String *frbgen_breez_liquid_cst_new_list_String(int32_t len);
|
struct wire_cst_list_String *frbgen_breez_liquid_cst_new_list_String(int32_t len);
|
||||||
|
|
||||||
struct wire_cst_list_fiat_currency *frbgen_breez_liquid_cst_new_list_fiat_currency(int32_t len);
|
struct wire_cst_list_fiat_currency *frbgen_breez_liquid_cst_new_list_fiat_currency(int32_t len);
|
||||||
@@ -1350,6 +1363,7 @@ static int64_t dummy_method_to_enforce_bundling(void) {
|
|||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_32);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_32);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_64);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_64);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_data);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_data);
|
||||||
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_String);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_String);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_fiat_currency);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_fiat_currency);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_ln_offer_blinded_path);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_ln_offer_blinded_path);
|
||||||
@@ -1363,7 +1377,9 @@ static int64_t dummy_method_to_enforce_bundling(void) {
|
|||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_route_hint);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_route_hint);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_route_hint_hop);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_route_hint_hop);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk);
|
||||||
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk);
|
||||||
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_add_event_listener);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_add_event_listener);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_backup);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_backup);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_buy_bitcoin);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_buy_bitcoin);
|
||||||
@@ -1381,6 +1397,7 @@ static int64_t dummy_method_to_enforce_bundling(void) {
|
|||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_auth);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_auth);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_pay);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_pay);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw);
|
||||||
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_prepare_buy_bitcoin);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_prepare_buy_bitcoin);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_prepare_lnurl_pay);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_prepare_lnurl_pay);
|
||||||
@@ -1402,7 +1419,6 @@ static int64_t dummy_method_to_enforce_bundling(void) {
|
|||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__breez_log_stream);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__breez_log_stream);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__connect);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__connect);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__default_config);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__default_config);
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__parse);
|
|
||||||
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__parse_invoice);
|
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire__crate__bindings__parse_invoice);
|
||||||
dummy_var ^= ((int64_t) (void*) store_dart_post_cobject);
|
dummy_var ^= ((int64_t) (void*) store_dart_post_cobject);
|
||||||
return dummy_var;
|
return dummy_var;
|
||||||
|
|||||||
@@ -335,6 +335,7 @@ dictionary Config {
|
|||||||
string? breez_api_key;
|
string? breez_api_key;
|
||||||
string? cache_dir;
|
string? cache_dir;
|
||||||
u64? zero_conf_max_amount_sat;
|
u64? zero_conf_max_amount_sat;
|
||||||
|
sequence<ExternalInputParser>? external_input_parsers;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum LiquidNetwork {
|
enum LiquidNetwork {
|
||||||
@@ -629,6 +630,12 @@ dictionary LogEntry {
|
|||||||
string level;
|
string level;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
dictionary ExternalInputParser {
|
||||||
|
string provider_id;
|
||||||
|
string input_regex;
|
||||||
|
string parser_url;
|
||||||
|
};
|
||||||
|
|
||||||
namespace breez_sdk_liquid {
|
namespace breez_sdk_liquid {
|
||||||
[Throws=SdkError]
|
[Throws=SdkError]
|
||||||
BindingLiquidSdk connect(ConnectRequest req);
|
BindingLiquidSdk connect(ConnectRequest req);
|
||||||
@@ -642,9 +649,6 @@ namespace breez_sdk_liquid {
|
|||||||
[Throws=SdkError]
|
[Throws=SdkError]
|
||||||
Config default_config(LiquidNetwork network, string? breez_api_key);
|
Config default_config(LiquidNetwork network, string? breez_api_key);
|
||||||
|
|
||||||
[Throws=PaymentError]
|
|
||||||
InputType parse(string input);
|
|
||||||
|
|
||||||
[Throws=PaymentError]
|
[Throws=PaymentError]
|
||||||
LNInvoice parse_invoice(string input);
|
LNInvoice parse_invoice(string input);
|
||||||
};
|
};
|
||||||
@@ -690,6 +694,9 @@ interface BindingLiquidSdk {
|
|||||||
[Throws=SdkError]
|
[Throws=SdkError]
|
||||||
CheckMessageResponse check_message(CheckMessageRequest req);
|
CheckMessageResponse check_message(CheckMessageRequest req);
|
||||||
|
|
||||||
|
[Throws=PaymentError]
|
||||||
|
InputType parse(string input);
|
||||||
|
|
||||||
[Throws=PaymentError]
|
[Throws=PaymentError]
|
||||||
PrepareSendResponse prepare_send_payment(PrepareSendRequest req);
|
PrepareSendResponse prepare_send_payment(PrepareSendRequest req);
|
||||||
|
|
||||||
|
|||||||
@@ -71,9 +71,6 @@ pub fn default_config(
|
|||||||
LiquidSdk::default_config(network, breez_api_key)
|
LiquidSdk::default_config(network, breez_api_key)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn parse(input: String) -> Result<InputType, PaymentError> {
|
|
||||||
rt().block_on(async { LiquidSdk::parse(&input).await })
|
|
||||||
}
|
|
||||||
pub fn parse_invoice(input: String) -> Result<LNInvoice, PaymentError> {
|
pub fn parse_invoice(input: String) -> Result<LNInvoice, PaymentError> {
|
||||||
LiquidSdk::parse_invoice(&input)
|
LiquidSdk::parse_invoice(&input)
|
||||||
}
|
}
|
||||||
@@ -103,6 +100,10 @@ impl BindingLiquidSdk {
|
|||||||
self.sdk.check_message(&req)
|
self.sdk.check_message(&req)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn parse(&self, input: String) -> Result<InputType, PaymentError> {
|
||||||
|
rt().block_on(async { self.sdk.parse(&input).await })
|
||||||
|
}
|
||||||
|
|
||||||
pub fn prepare_send_payment(
|
pub fn prepare_send_payment(
|
||||||
&self,
|
&self,
|
||||||
req: PrepareSendRequest,
|
req: PrepareSendRequest,
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ boltz-client = { git = "https://github.com/SatoshiPortal/boltz-rust", branch = "
|
|||||||
chrono = "0.4"
|
chrono = "0.4"
|
||||||
env_logger = "0.11"
|
env_logger = "0.11"
|
||||||
flutter_rust_bridge = { version = "=2.4.0", features = [
|
flutter_rust_bridge = { version = "=2.4.0", features = [
|
||||||
"chrono",
|
"chrono",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
# We need at least lightning v0.0.125 for the Bolt12 structs. The lightning version from sdk-common is too old (v0.0.118, matching vls-core).
|
# We need at least lightning v0.0.125 for the Bolt12 structs. The lightning version from sdk-common is too old (v0.0.118, matching vls-core).
|
||||||
lightning = "0.0.125"
|
lightning = "0.0.125"
|
||||||
@@ -32,7 +32,7 @@ lwk_wollet = { git = "https://github.com/dangeross/lwk", branch = "savage-full-s
|
|||||||
#lwk_wollet = "0.7.0"
|
#lwk_wollet = "0.7.0"
|
||||||
rusqlite = { version = "0.31", features = ["backup", "bundled"] }
|
rusqlite = { version = "0.31", features = ["backup", "bundled"] }
|
||||||
rusqlite_migration = "1.0"
|
rusqlite_migration = "1.0"
|
||||||
sdk-common = { git = "https://github.com/breez/breez-sdk", rev = "5955216ec4ed003972b4473a77207dfb744da882", features = ["liquid"]}
|
sdk-common = { git = "https://github.com/breez/breez-sdk", rev = "238245bd34be15727493d7d0c625c6ae55f2a845", features = ["liquid"] }
|
||||||
serde = { version = "1.0.197", features = ["derive"] }
|
serde = { version = "1.0.197", features = ["derive"] }
|
||||||
serde_json = "1.0.116"
|
serde_json = "1.0.116"
|
||||||
strum = "0.25"
|
strum = "0.25"
|
||||||
@@ -44,8 +44,8 @@ tokio = { version = "1", features = ["rt", "macros"] }
|
|||||||
tokio-stream = { version = "0.1.14", features = ["sync"] }
|
tokio-stream = { version = "0.1.14", features = ["sync"] }
|
||||||
url = "2.5.0"
|
url = "2.5.0"
|
||||||
futures-util = { version = "0.3.28", default-features = false, features = [
|
futures-util = { version = "0.3.28", default-features = false, features = [
|
||||||
"sink",
|
"sink",
|
||||||
"std",
|
"std",
|
||||||
] }
|
] }
|
||||||
async-trait = "0.1.80"
|
async-trait = "0.1.80"
|
||||||
hex = "0.4"
|
hex = "0.4"
|
||||||
|
|||||||
@@ -66,10 +66,6 @@ pub fn default_config(
|
|||||||
LiquidSdk::default_config(network, breez_api_key)
|
LiquidSdk::default_config(network, breez_api_key)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn parse(input: String) -> Result<InputType, PaymentError> {
|
|
||||||
LiquidSdk::parse(&input).await
|
|
||||||
}
|
|
||||||
|
|
||||||
#[frb(sync)]
|
#[frb(sync)]
|
||||||
pub fn parse_invoice(input: String) -> Result<LNInvoice, PaymentError> {
|
pub fn parse_invoice(input: String) -> Result<LNInvoice, PaymentError> {
|
||||||
LiquidSdk::parse_invoice(&input)
|
LiquidSdk::parse_invoice(&input)
|
||||||
@@ -97,6 +93,10 @@ impl BindingLiquidSdk {
|
|||||||
self.sdk.check_message(&req)
|
self.sdk.check_message(&req)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub async fn parse(&self, input: String) -> Result<InputType, PaymentError> {
|
||||||
|
self.sdk.parse(&input).await
|
||||||
|
}
|
||||||
|
|
||||||
pub async fn add_event_listener(
|
pub async fn add_event_listener(
|
||||||
&self,
|
&self,
|
||||||
listener: StreamSink<SdkEvent>,
|
listener: StreamSink<SdkEvent>,
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
|
|
||||||
use crate::bindings::*;
|
use crate::bindings::*;
|
||||||
use crate::model::EventListener;
|
use crate::model::EventListener;
|
||||||
|
use crate::*;
|
||||||
use flutter_rust_bridge::for_generated::byteorder::{NativeEndian, ReadBytesExt, WriteBytesExt};
|
use flutter_rust_bridge::for_generated::byteorder::{NativeEndian, ReadBytesExt, WriteBytesExt};
|
||||||
use flutter_rust_bridge::for_generated::{transform_result_dco, Lifetimeable, Lockable};
|
use flutter_rust_bridge::for_generated::{transform_result_dco, Lifetimeable, Lockable};
|
||||||
use flutter_rust_bridge::{Handler, IntoIntoDart};
|
use flutter_rust_bridge::{Handler, IntoIntoDart};
|
||||||
@@ -39,7 +40,7 @@ flutter_rust_bridge::frb_generated_boilerplate!(
|
|||||||
default_rust_auto_opaque = RustAutoOpaqueNom,
|
default_rust_auto_opaque = RustAutoOpaqueNom,
|
||||||
);
|
);
|
||||||
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.4.0";
|
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.4.0";
|
||||||
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = 425220482;
|
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = -2032324171;
|
||||||
|
|
||||||
// Section: executor
|
// Section: executor
|
||||||
|
|
||||||
@@ -815,6 +816,53 @@ fn wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw_impl(
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
fn wire__crate__bindings__BindingLiquidSdk_parse_impl(
|
||||||
|
port_: flutter_rust_bridge::for_generated::MessagePort,
|
||||||
|
that: impl CstDecode<
|
||||||
|
RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<BindingLiquidSdk>>,
|
||||||
|
>,
|
||||||
|
input: impl CstDecode<String>,
|
||||||
|
) {
|
||||||
|
FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::DcoCodec, _, _, _>(
|
||||||
|
flutter_rust_bridge::for_generated::TaskInfo {
|
||||||
|
debug_name: "BindingLiquidSdk_parse",
|
||||||
|
port: Some(port_),
|
||||||
|
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
|
||||||
|
},
|
||||||
|
move || {
|
||||||
|
let api_that = that.cst_decode();
|
||||||
|
let api_input = input.cst_decode();
|
||||||
|
move |context| async move {
|
||||||
|
transform_result_dco::<_, _, crate::error::PaymentError>(
|
||||||
|
(move || async move {
|
||||||
|
let mut api_that_guard = None;
|
||||||
|
let decode_indices_ =
|
||||||
|
flutter_rust_bridge::for_generated::lockable_compute_decode_order(
|
||||||
|
vec![flutter_rust_bridge::for_generated::LockableOrderInfo::new(
|
||||||
|
&api_that, 0, false,
|
||||||
|
)],
|
||||||
|
);
|
||||||
|
for i in decode_indices_ {
|
||||||
|
match i {
|
||||||
|
0 => {
|
||||||
|
api_that_guard =
|
||||||
|
Some(api_that.lockable_decode_async_ref().await)
|
||||||
|
}
|
||||||
|
_ => unreachable!(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let api_that_guard = api_that_guard.unwrap();
|
||||||
|
let output_ok =
|
||||||
|
crate::bindings::BindingLiquidSdk::parse(&*api_that_guard, api_input)
|
||||||
|
.await?;
|
||||||
|
Ok(output_ok)
|
||||||
|
})()
|
||||||
|
.await,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
)
|
||||||
|
}
|
||||||
fn wire__crate__bindings__BindingLiquidSdk_pay_onchain_impl(
|
fn wire__crate__bindings__BindingLiquidSdk_pay_onchain_impl(
|
||||||
port_: flutter_rust_bridge::for_generated::MessagePort,
|
port_: flutter_rust_bridge::for_generated::MessagePort,
|
||||||
that: impl CstDecode<
|
that: impl CstDecode<
|
||||||
@@ -1698,30 +1746,6 @@ fn wire__crate__bindings__default_config_impl(
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
fn wire__crate__bindings__parse_impl(
|
|
||||||
port_: flutter_rust_bridge::for_generated::MessagePort,
|
|
||||||
input: impl CstDecode<String>,
|
|
||||||
) {
|
|
||||||
FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::DcoCodec, _, _, _>(
|
|
||||||
flutter_rust_bridge::for_generated::TaskInfo {
|
|
||||||
debug_name: "parse",
|
|
||||||
port: Some(port_),
|
|
||||||
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
|
|
||||||
},
|
|
||||||
move || {
|
|
||||||
let api_input = input.cst_decode();
|
|
||||||
move |context| async move {
|
|
||||||
transform_result_dco::<_, _, crate::error::PaymentError>(
|
|
||||||
(move || async move {
|
|
||||||
let output_ok = crate::bindings::parse(api_input).await?;
|
|
||||||
Ok(output_ok)
|
|
||||||
})()
|
|
||||||
.await,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
)
|
|
||||||
}
|
|
||||||
fn wire__crate__bindings__parse_invoice_impl(
|
fn wire__crate__bindings__parse_invoice_impl(
|
||||||
input: impl CstDecode<String>,
|
input: impl CstDecode<String>,
|
||||||
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartDco {
|
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartDco {
|
||||||
@@ -2125,6 +2149,16 @@ impl SseDecode for BindingLiquidSdk {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for ExternalInputParser {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut inner = <RustOpaqueNom<
|
||||||
|
flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>,
|
||||||
|
>>::sse_decode(deserializer);
|
||||||
|
return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode
|
impl SseDecode
|
||||||
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<BindingLiquidSdk>>
|
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<BindingLiquidSdk>>
|
||||||
{
|
{
|
||||||
@@ -2135,6 +2169,16 @@ impl SseDecode
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode
|
||||||
|
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>
|
||||||
|
{
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut inner = <usize>::sse_decode(deserializer);
|
||||||
|
return unsafe { decode_rust_opaque_nom(inner) };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode
|
impl SseDecode
|
||||||
for StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>
|
for StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>
|
||||||
{
|
{
|
||||||
@@ -2345,6 +2389,8 @@ impl SseDecode for crate::model::Config {
|
|||||||
let mut var_zeroConfMinFeeRateMsat = <u32>::sse_decode(deserializer);
|
let mut var_zeroConfMinFeeRateMsat = <u32>::sse_decode(deserializer);
|
||||||
let mut var_zeroConfMaxAmountSat = <Option<u64>>::sse_decode(deserializer);
|
let mut var_zeroConfMaxAmountSat = <Option<u64>>::sse_decode(deserializer);
|
||||||
let mut var_breezApiKey = <Option<String>>::sse_decode(deserializer);
|
let mut var_breezApiKey = <Option<String>>::sse_decode(deserializer);
|
||||||
|
let mut var_externalInputParsers =
|
||||||
|
<Option<Vec<ExternalInputParser>>>::sse_decode(deserializer);
|
||||||
return crate::model::Config {
|
return crate::model::Config {
|
||||||
liquid_electrum_url: var_liquidElectrumUrl,
|
liquid_electrum_url: var_liquidElectrumUrl,
|
||||||
bitcoin_electrum_url: var_bitcoinElectrumUrl,
|
bitcoin_electrum_url: var_bitcoinElectrumUrl,
|
||||||
@@ -2356,6 +2402,7 @@ impl SseDecode for crate::model::Config {
|
|||||||
zero_conf_min_fee_rate_msat: var_zeroConfMinFeeRateMsat,
|
zero_conf_min_fee_rate_msat: var_zeroConfMinFeeRateMsat,
|
||||||
zero_conf_max_amount_sat: var_zeroConfMaxAmountSat,
|
zero_conf_max_amount_sat: var_zeroConfMaxAmountSat,
|
||||||
breez_api_key: var_breezApiKey,
|
breez_api_key: var_breezApiKey,
|
||||||
|
external_input_parsers: var_externalInputParsers,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2586,6 +2633,18 @@ impl SseDecode for crate::model::LiquidNetwork {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for Vec<ExternalInputParser> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut len_ = <i32>::sse_decode(deserializer);
|
||||||
|
let mut ans_ = vec![];
|
||||||
|
for idx_ in 0..len_ {
|
||||||
|
ans_.push(<ExternalInputParser>::sse_decode(deserializer));
|
||||||
|
}
|
||||||
|
return ans_;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode for Vec<String> {
|
impl SseDecode for Vec<String> {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
@@ -3403,6 +3462,17 @@ impl SseDecode for Option<u64> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for Option<Vec<ExternalInputParser>> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
if (<bool>::sse_decode(deserializer)) {
|
||||||
|
return Some(<Vec<ExternalInputParser>>::sse_decode(deserializer));
|
||||||
|
} else {
|
||||||
|
return None;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode for Option<Vec<crate::model::PaymentType>> {
|
impl SseDecode for Option<Vec<crate::model::PaymentType>> {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
@@ -4273,6 +4343,24 @@ impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<BindingLiquidSdk>> for Binding
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
impl flutter_rust_bridge::IntoDart for FrbWrapper<ExternalInputParser> {
|
||||||
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
|
flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, StdArc<_>>(self.0)
|
||||||
|
.into_dart()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
|
||||||
|
for FrbWrapper<ExternalInputParser>
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<ExternalInputParser>> for ExternalInputParser {
|
||||||
|
fn into_into_dart(self) -> FrbWrapper<ExternalInputParser> {
|
||||||
|
self.into()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
impl flutter_rust_bridge::IntoDart for FrbWrapper<crate::bindings::AesSuccessActionData> {
|
impl flutter_rust_bridge::IntoDart for FrbWrapper<crate::bindings::AesSuccessActionData> {
|
||||||
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
@@ -4527,6 +4615,7 @@ impl flutter_rust_bridge::IntoDart for crate::model::Config {
|
|||||||
.into_dart(),
|
.into_dart(),
|
||||||
self.zero_conf_max_amount_sat.into_into_dart().into_dart(),
|
self.zero_conf_max_amount_sat.into_into_dart().into_dart(),
|
||||||
self.breez_api_key.into_into_dart().into_dart(),
|
self.breez_api_key.into_into_dart().into_dart(),
|
||||||
|
self.external_input_parsers.into_into_dart().into_dart(),
|
||||||
]
|
]
|
||||||
.into_dart()
|
.into_dart()
|
||||||
}
|
}
|
||||||
@@ -6401,6 +6490,13 @@ impl SseEncode for BindingLiquidSdk {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for ExternalInputParser {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, StdArc<_>>(self), serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode
|
impl SseEncode
|
||||||
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<BindingLiquidSdk>>
|
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<BindingLiquidSdk>>
|
||||||
{
|
{
|
||||||
@@ -6412,6 +6508,17 @@ impl SseEncode
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode
|
||||||
|
for RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>
|
||||||
|
{
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
let (ptr, size) = self.sse_encode_raw();
|
||||||
|
<usize>::sse_encode(ptr, serializer);
|
||||||
|
<i32>::sse_encode(size, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode
|
impl SseEncode
|
||||||
for StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>
|
for StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>
|
||||||
{
|
{
|
||||||
@@ -6580,6 +6687,7 @@ impl SseEncode for crate::model::Config {
|
|||||||
<u32>::sse_encode(self.zero_conf_min_fee_rate_msat, serializer);
|
<u32>::sse_encode(self.zero_conf_min_fee_rate_msat, serializer);
|
||||||
<Option<u64>>::sse_encode(self.zero_conf_max_amount_sat, serializer);
|
<Option<u64>>::sse_encode(self.zero_conf_max_amount_sat, serializer);
|
||||||
<Option<String>>::sse_encode(self.breez_api_key, serializer);
|
<Option<String>>::sse_encode(self.breez_api_key, serializer);
|
||||||
|
<Option<Vec<ExternalInputParser>>>::sse_encode(self.external_input_parsers, serializer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6755,6 +6863,16 @@ impl SseEncode for crate::model::LiquidNetwork {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for Vec<ExternalInputParser> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<i32>::sse_encode(self.len() as _, serializer);
|
||||||
|
for item in self {
|
||||||
|
<ExternalInputParser>::sse_encode(item, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode for Vec<String> {
|
impl SseEncode for Vec<String> {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
@@ -7402,6 +7520,16 @@ impl SseEncode for Option<u64> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for Option<Vec<ExternalInputParser>> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<bool>::sse_encode(self.is_some(), serializer);
|
||||||
|
if let Some(value) = self {
|
||||||
|
<Vec<ExternalInputParser>>::sse_encode(value, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode for Option<Vec<crate::model::PaymentType>> {
|
impl SseEncode for Option<Vec<crate::model::PaymentType>> {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
@@ -8073,6 +8201,7 @@ mod io {
|
|||||||
use super::*;
|
use super::*;
|
||||||
use crate::bindings::*;
|
use crate::bindings::*;
|
||||||
use crate::model::EventListener;
|
use crate::model::EventListener;
|
||||||
|
use crate::*;
|
||||||
use flutter_rust_bridge::for_generated::byteorder::{
|
use flutter_rust_bridge::for_generated::byteorder::{
|
||||||
NativeEndian, ReadBytesExt, WriteBytesExt,
|
NativeEndian, ReadBytesExt, WriteBytesExt,
|
||||||
};
|
};
|
||||||
@@ -8105,6 +8234,18 @@ mod io {
|
|||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
impl CstDecode<ExternalInputParser> for usize {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
fn cst_decode(self) -> ExternalInputParser {
|
||||||
|
flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(CstDecode::<
|
||||||
|
RustOpaqueNom<
|
||||||
|
flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>,
|
||||||
|
>,
|
||||||
|
>::cst_decode(
|
||||||
|
self
|
||||||
|
))
|
||||||
|
}
|
||||||
|
}
|
||||||
impl
|
impl
|
||||||
CstDecode<
|
CstDecode<
|
||||||
RustOpaqueNom<
|
RustOpaqueNom<
|
||||||
@@ -8120,6 +8261,22 @@ mod io {
|
|||||||
unsafe { decode_rust_opaque_nom(self as _) }
|
unsafe { decode_rust_opaque_nom(self as _) }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
impl
|
||||||
|
CstDecode<
|
||||||
|
RustOpaqueNom<
|
||||||
|
flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>,
|
||||||
|
>,
|
||||||
|
> for usize
|
||||||
|
{
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
fn cst_decode(
|
||||||
|
self,
|
||||||
|
) -> RustOpaqueNom<
|
||||||
|
flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>,
|
||||||
|
> {
|
||||||
|
unsafe { decode_rust_opaque_nom(self as _) }
|
||||||
|
}
|
||||||
|
}
|
||||||
impl CstDecode<StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>>
|
impl CstDecode<StreamSink<crate::model::LogEntry, flutter_rust_bridge::for_generated::DcoCodec>>
|
||||||
for *mut wire_cst_list_prim_u_8_strict
|
for *mut wire_cst_list_prim_u_8_strict
|
||||||
{
|
{
|
||||||
@@ -8644,6 +8801,7 @@ mod io {
|
|||||||
zero_conf_min_fee_rate_msat: self.zero_conf_min_fee_rate_msat.cst_decode(),
|
zero_conf_min_fee_rate_msat: self.zero_conf_min_fee_rate_msat.cst_decode(),
|
||||||
zero_conf_max_amount_sat: self.zero_conf_max_amount_sat.cst_decode(),
|
zero_conf_max_amount_sat: self.zero_conf_max_amount_sat.cst_decode(),
|
||||||
breez_api_key: self.breez_api_key.cst_decode(),
|
breez_api_key: self.breez_api_key.cst_decode(),
|
||||||
|
external_input_parsers: self.external_input_parsers.cst_decode(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -8807,6 +8965,16 @@ mod io {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
impl CstDecode<Vec<ExternalInputParser>> for *mut wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
fn cst_decode(self) -> Vec<ExternalInputParser> {
|
||||||
|
let vec = unsafe {
|
||||||
|
let wrap = flutter_rust_bridge::for_generated::box_from_leak_ptr(self);
|
||||||
|
flutter_rust_bridge::for_generated::vec_from_leak_ptr(wrap.ptr, wrap.len)
|
||||||
|
};
|
||||||
|
vec.into_iter().map(CstDecode::cst_decode).collect()
|
||||||
|
}
|
||||||
|
}
|
||||||
impl CstDecode<Vec<String>> for *mut wire_cst_list_String {
|
impl CstDecode<Vec<String>> for *mut wire_cst_list_String {
|
||||||
// Codec=Cst (C-struct based), see doc to use other codecs
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
fn cst_decode(self) -> Vec<String> {
|
fn cst_decode(self) -> Vec<String> {
|
||||||
@@ -10078,6 +10246,7 @@ mod io {
|
|||||||
zero_conf_min_fee_rate_msat: Default::default(),
|
zero_conf_min_fee_rate_msat: Default::default(),
|
||||||
zero_conf_max_amount_sat: core::ptr::null_mut(),
|
zero_conf_max_amount_sat: core::ptr::null_mut(),
|
||||||
breez_api_key: core::ptr::null_mut(),
|
breez_api_key: core::ptr::null_mut(),
|
||||||
|
external_input_parsers: core::ptr::null_mut(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11231,6 +11400,15 @@ mod io {
|
|||||||
wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw_impl(port_, that, req)
|
wire__crate__bindings__BindingLiquidSdk_lnurl_withdraw_impl(port_, that, req)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[no_mangle]
|
||||||
|
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse(
|
||||||
|
port_: i64,
|
||||||
|
that: usize,
|
||||||
|
input: *mut wire_cst_list_prim_u_8_strict,
|
||||||
|
) {
|
||||||
|
wire__crate__bindings__BindingLiquidSdk_parse_impl(port_, that, input)
|
||||||
|
}
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
||||||
port_: i64,
|
port_: i64,
|
||||||
@@ -11411,14 +11589,6 @@ mod io {
|
|||||||
wire__crate__bindings__default_config_impl(network, breez_api_key)
|
wire__crate__bindings__default_config_impl(network, breez_api_key)
|
||||||
}
|
}
|
||||||
|
|
||||||
#[no_mangle]
|
|
||||||
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__parse(
|
|
||||||
port_: i64,
|
|
||||||
input: *mut wire_cst_list_prim_u_8_strict,
|
|
||||||
) {
|
|
||||||
wire__crate__bindings__parse_impl(port_, input)
|
|
||||||
}
|
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__parse_invoice(
|
pub extern "C" fn frbgen_breez_liquid_wire__crate__bindings__parse_invoice(
|
||||||
input: *mut wire_cst_list_prim_u_8_strict,
|
input: *mut wire_cst_list_prim_u_8_strict,
|
||||||
@@ -11444,6 +11614,24 @@ mod io {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[no_mangle]
|
||||||
|
pub extern "C" fn frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr: *const std::ffi::c_void,
|
||||||
|
) {
|
||||||
|
unsafe {
|
||||||
|
StdArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>::increment_strong_count(ptr as _);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[no_mangle]
|
||||||
|
pub extern "C" fn frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr: *const std::ffi::c_void,
|
||||||
|
) {
|
||||||
|
unsafe {
|
||||||
|
StdArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>::decrement_strong_count(ptr as _);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data(
|
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data(
|
||||||
) -> *mut wire_cst_aes_success_action_data {
|
) -> *mut wire_cst_aes_success_action_data {
|
||||||
@@ -11815,6 +12003,12 @@ mod io {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[no_mangle]
|
||||||
|
pub extern "C" fn frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(len: i32) -> *mut wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser{
|
||||||
|
let wrap = wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser { ptr: flutter_rust_bridge::for_generated::new_leak_vec_ptr(Default::default(), len), len };
|
||||||
|
flutter_rust_bridge::for_generated::new_leak_box_ptr(wrap)
|
||||||
|
}
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub extern "C" fn frbgen_breez_liquid_cst_new_list_String(
|
pub extern "C" fn frbgen_breez_liquid_cst_new_list_String(
|
||||||
len: i32,
|
len: i32,
|
||||||
@@ -12074,18 +12268,17 @@ mod io {
|
|||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct wire_cst_config {
|
pub struct wire_cst_config { liquid_electrum_url: *mut wire_cst_list_prim_u_8_strict,
|
||||||
liquid_electrum_url: *mut wire_cst_list_prim_u_8_strict,
|
bitcoin_electrum_url: *mut wire_cst_list_prim_u_8_strict,
|
||||||
bitcoin_electrum_url: *mut wire_cst_list_prim_u_8_strict,
|
mempoolspace_url: *mut wire_cst_list_prim_u_8_strict,
|
||||||
mempoolspace_url: *mut wire_cst_list_prim_u_8_strict,
|
working_dir: *mut wire_cst_list_prim_u_8_strict,
|
||||||
working_dir: *mut wire_cst_list_prim_u_8_strict,
|
cache_dir: *mut wire_cst_list_prim_u_8_strict,
|
||||||
cache_dir: *mut wire_cst_list_prim_u_8_strict,
|
network: i32,
|
||||||
network: i32,
|
payment_timeout_sec: u64,
|
||||||
payment_timeout_sec: u64,
|
zero_conf_min_fee_rate_msat: u32,
|
||||||
zero_conf_min_fee_rate_msat: u32,
|
zero_conf_max_amount_sat: *mut u64,
|
||||||
zero_conf_max_amount_sat: *mut u64,
|
breez_api_key: *mut wire_cst_list_prim_u_8_strict,
|
||||||
breez_api_key: *mut wire_cst_list_prim_u_8_strict,
|
external_input_parsers: *mut wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser }
|
||||||
}
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct wire_cst_connect_request {
|
pub struct wire_cst_connect_request {
|
||||||
@@ -12231,6 +12424,13 @@ mod io {
|
|||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
pub struct wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser
|
||||||
|
{
|
||||||
|
ptr: *mut usize,
|
||||||
|
len: i32,
|
||||||
|
}
|
||||||
|
#[repr(C)]
|
||||||
|
#[derive(Clone, Copy)]
|
||||||
pub struct wire_cst_list_String {
|
pub struct wire_cst_list_String {
|
||||||
ptr: *mut *mut wire_cst_list_prim_u_8_strict,
|
ptr: *mut *mut wire_cst_list_prim_u_8_strict,
|
||||||
len: i32,
|
len: i32,
|
||||||
|
|||||||
@@ -53,6 +53,10 @@ pub struct Config {
|
|||||||
pub zero_conf_max_amount_sat: Option<u64>,
|
pub zero_conf_max_amount_sat: Option<u64>,
|
||||||
/// The Breez API key used for making requests to their mempool service
|
/// The Breez API key used for making requests to their mempool service
|
||||||
pub breez_api_key: Option<String>,
|
pub breez_api_key: Option<String>,
|
||||||
|
/// A set of external input parsers that are used by [LiquidSdk::parse] when the input
|
||||||
|
/// is not recognized. See [ExternalInputParser] for more details on how to configure
|
||||||
|
/// external parsing.
|
||||||
|
pub external_input_parsers: Option<Vec<ExternalInputParser>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Config {
|
impl Config {
|
||||||
@@ -68,6 +72,7 @@ impl Config {
|
|||||||
zero_conf_min_fee_rate_msat: DEFAULT_ZERO_CONF_MIN_FEE_RATE_MAINNET,
|
zero_conf_min_fee_rate_msat: DEFAULT_ZERO_CONF_MIN_FEE_RATE_MAINNET,
|
||||||
zero_conf_max_amount_sat: None,
|
zero_conf_max_amount_sat: None,
|
||||||
breez_api_key: Some(breez_api_key),
|
breez_api_key: Some(breez_api_key),
|
||||||
|
external_input_parsers: None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,6 +88,7 @@ impl Config {
|
|||||||
zero_conf_min_fee_rate_msat: DEFAULT_ZERO_CONF_MIN_FEE_RATE_TESTNET,
|
zero_conf_min_fee_rate_msat: DEFAULT_ZERO_CONF_MIN_FEE_RATE_TESTNET,
|
||||||
zero_conf_max_amount_sat: None,
|
zero_conf_max_amount_sat: None,
|
||||||
breez_api_key,
|
breez_api_key,
|
||||||
|
external_input_parsers: None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,3 @@
|
|||||||
use std::collections::HashMap;
|
|
||||||
use std::time::Instant;
|
|
||||||
use std::{fs, path::PathBuf, str::FromStr, sync::Arc, time::Duration};
|
|
||||||
|
|
||||||
use anyhow::{anyhow, Result};
|
use anyhow::{anyhow, Result};
|
||||||
use boltz_client::{swaps::boltz::*, util::secrets::Preimage};
|
use boltz_client::{swaps::boltz::*, util::secrets::Preimage};
|
||||||
use buy::{BuyBitcoinApi, BuyBitcoinService};
|
use buy::{BuyBitcoinApi, BuyBitcoinService};
|
||||||
@@ -23,6 +19,9 @@ use sdk_common::input_parser::InputType;
|
|||||||
use sdk_common::liquid::LiquidAddressData;
|
use sdk_common::liquid::LiquidAddressData;
|
||||||
use sdk_common::prelude::{FiatAPI, FiatCurrency, LnUrlPayError, LnUrlWithdrawError, Rate};
|
use sdk_common::prelude::{FiatAPI, FiatCurrency, LnUrlPayError, LnUrlWithdrawError, Rate};
|
||||||
use signer::SdkSigner;
|
use signer::SdkSigner;
|
||||||
|
use std::collections::HashMap;
|
||||||
|
use std::time::Instant;
|
||||||
|
use std::{fs, path::PathBuf, str::FromStr, sync::Arc, time::Duration};
|
||||||
use tokio::sync::{watch, Mutex, RwLock};
|
use tokio::sync::{watch, Mutex, RwLock};
|
||||||
use tokio::time::MissedTickBehavior;
|
use tokio::time::MissedTickBehavior;
|
||||||
use tokio_stream::wrappers::BroadcastStream;
|
use tokio_stream::wrappers::BroadcastStream;
|
||||||
@@ -574,7 +573,7 @@ impl LiquidSdk {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async fn validate_bitcoin_address(&self, input: &str) -> Result<String, PaymentError> {
|
async fn validate_bitcoin_address(&self, input: &str) -> Result<String, PaymentError> {
|
||||||
match sdk::LiquidSdk::parse(input).await? {
|
match self.parse(input).await? {
|
||||||
InputType::BitcoinAddress {
|
InputType::BitcoinAddress {
|
||||||
address: bitcoin_address_data,
|
address: bitcoin_address_data,
|
||||||
..
|
..
|
||||||
@@ -823,7 +822,7 @@ impl LiquidSdk {
|
|||||||
let receiver_amount_sat;
|
let receiver_amount_sat;
|
||||||
let payment_destination;
|
let payment_destination;
|
||||||
|
|
||||||
match Self::parse(&req.destination).await {
|
match self.parse(&req.destination).await {
|
||||||
Ok(InputType::LiquidAddress {
|
Ok(InputType::LiquidAddress {
|
||||||
address: mut liquid_address_data,
|
address: mut liquid_address_data,
|
||||||
}) => {
|
}) => {
|
||||||
@@ -2693,7 +2692,9 @@ impl LiquidSdk {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Parses a string into an [InputType]. See [input_parser::parse].
|
/// Parses a string into an [InputType]. See [input_parser::parse].
|
||||||
pub async fn parse(input: &str) -> Result<InputType, PaymentError> {
|
///
|
||||||
|
/// Can optionally be configured to use external input parsers by providing `external_input_parsers` in [Config].
|
||||||
|
pub async fn parse(&self, input: &str) -> Result<InputType, PaymentError> {
|
||||||
if let Ok(offer) = input.parse::<Offer>() {
|
if let Ok(offer) = input.parse::<Offer>() {
|
||||||
// TODO This conversion (between lightning-v0.0.125 to -v0.0.118 Amount types)
|
// TODO This conversion (between lightning-v0.0.125 to -v0.0.118 Amount types)
|
||||||
// won't be needed when Liquid SDK uses the same lightning crate version as sdk-common
|
// won't be needed when Liquid SDK uses the same lightning crate version as sdk-common
|
||||||
@@ -2748,7 +2749,8 @@ impl LiquidSdk {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
parse(input)
|
let external_parsers = &self.config.external_input_parsers;
|
||||||
|
parse(input, external_parsers.as_deref())
|
||||||
.await
|
.await
|
||||||
.map_err(|e| PaymentError::generic(&e.to_string()))
|
.map_err(|e| PaymentError::generic(&e.to_string()))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -314,7 +314,7 @@ impl Swapper for MockSwapper {
|
|||||||
unimplemented!()
|
unimplemented!()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_zero_amount_chain_swap_quote(&self, swap_id: &str) -> Result<Amount, PaymentError> {
|
fn get_zero_amount_chain_swap_quote(&self, _swap_id: &str) -> Result<Amount, PaymentError> {
|
||||||
unimplemented!()
|
unimplemented!()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
import 'bindings/duplicates.dart';
|
import 'bindings/duplicates.dart';
|
||||||
import 'error.dart';
|
import 'error.dart';
|
||||||
import 'frb_generated.dart';
|
import 'frb_generated.dart';
|
||||||
|
import 'lib.dart';
|
||||||
import 'model.dart';
|
import 'model.dart';
|
||||||
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
||||||
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
|
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
|
||||||
@@ -24,8 +25,6 @@ Stream<LogEntry> breezLogStream() => RustLib.instance.api.crateBindingsBreezLogS
|
|||||||
Config defaultConfig({required LiquidNetwork network, String? breezApiKey}) =>
|
Config defaultConfig({required LiquidNetwork network, String? breezApiKey}) =>
|
||||||
RustLib.instance.api.crateBindingsDefaultConfig(network: network, breezApiKey: breezApiKey);
|
RustLib.instance.api.crateBindingsDefaultConfig(network: network, breezApiKey: breezApiKey);
|
||||||
|
|
||||||
Future<InputType> parse({required String input}) => RustLib.instance.api.crateBindingsParse(input: input);
|
|
||||||
|
|
||||||
LNInvoice parseInvoice({required String input}) =>
|
LNInvoice parseInvoice({required String input}) =>
|
||||||
RustLib.instance.api.crateBindingsParseInvoice(input: input);
|
RustLib.instance.api.crateBindingsParseInvoice(input: input);
|
||||||
|
|
||||||
@@ -65,6 +64,8 @@ abstract class BindingLiquidSdk implements RustOpaqueInterface {
|
|||||||
|
|
||||||
Future<LnUrlWithdrawResult> lnurlWithdraw({required LnUrlWithdrawRequest req});
|
Future<LnUrlWithdrawResult> lnurlWithdraw({required LnUrlWithdrawRequest req});
|
||||||
|
|
||||||
|
Future<InputType> parse({required String input});
|
||||||
|
|
||||||
Future<SendPaymentResponse> payOnchain({required PayOnchainRequest req});
|
Future<SendPaymentResponse> payOnchain({required PayOnchainRequest req});
|
||||||
|
|
||||||
Future<PrepareBuyBitcoinResponse> prepareBuyBitcoin({required PrepareBuyBitcoinRequest req});
|
Future<PrepareBuyBitcoinResponse> prepareBuyBitcoin({required PrepareBuyBitcoinRequest req});
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import 'dart:convert';
|
|||||||
import 'error.dart';
|
import 'error.dart';
|
||||||
import 'frb_generated.dart';
|
import 'frb_generated.dart';
|
||||||
import 'frb_generated.io.dart' if (dart.library.js_interop) 'frb_generated.web.dart';
|
import 'frb_generated.io.dart' if (dart.library.js_interop) 'frb_generated.web.dart';
|
||||||
|
import 'lib.dart';
|
||||||
import 'model.dart';
|
import 'model.dart';
|
||||||
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
||||||
|
|
||||||
@@ -65,7 +66,7 @@ class RustLib extends BaseEntrypoint<RustLibApi, RustLibApiImpl, RustLibWire> {
|
|||||||
String get codegenVersion => '2.4.0';
|
String get codegenVersion => '2.4.0';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get rustContentHash => 425220482;
|
int get rustContentHash => -2032324171;
|
||||||
|
|
||||||
static const kDefaultExternalLibraryLoaderConfig = ExternalLibraryLoaderConfig(
|
static const kDefaultExternalLibraryLoaderConfig = ExternalLibraryLoaderConfig(
|
||||||
stem: 'breez_sdk_liquid',
|
stem: 'breez_sdk_liquid',
|
||||||
@@ -119,6 +120,9 @@ abstract class RustLibApi extends BaseApi {
|
|||||||
Future<LnUrlWithdrawResult> crateBindingsBindingLiquidSdkLnurlWithdraw(
|
Future<LnUrlWithdrawResult> crateBindingsBindingLiquidSdkLnurlWithdraw(
|
||||||
{required BindingLiquidSdk that, required LnUrlWithdrawRequest req});
|
{required BindingLiquidSdk that, required LnUrlWithdrawRequest req});
|
||||||
|
|
||||||
|
Future<InputType> crateBindingsBindingLiquidSdkParse(
|
||||||
|
{required BindingLiquidSdk that, required String input});
|
||||||
|
|
||||||
Future<SendPaymentResponse> crateBindingsBindingLiquidSdkPayOnchain(
|
Future<SendPaymentResponse> crateBindingsBindingLiquidSdkPayOnchain(
|
||||||
{required BindingLiquidSdk that, required PayOnchainRequest req});
|
{required BindingLiquidSdk that, required PayOnchainRequest req});
|
||||||
|
|
||||||
@@ -174,8 +178,6 @@ abstract class RustLibApi extends BaseApi {
|
|||||||
|
|
||||||
Config crateBindingsDefaultConfig({required LiquidNetwork network, String? breezApiKey});
|
Config crateBindingsDefaultConfig({required LiquidNetwork network, String? breezApiKey});
|
||||||
|
|
||||||
Future<InputType> crateBindingsParse({required String input});
|
|
||||||
|
|
||||||
LNInvoice crateBindingsParseInvoice({required String input});
|
LNInvoice crateBindingsParseInvoice({required String input});
|
||||||
|
|
||||||
RustArcIncrementStrongCountFnType get rust_arc_increment_strong_count_BindingLiquidSdk;
|
RustArcIncrementStrongCountFnType get rust_arc_increment_strong_count_BindingLiquidSdk;
|
||||||
@@ -183,6 +185,12 @@ abstract class RustLibApi extends BaseApi {
|
|||||||
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_BindingLiquidSdk;
|
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_BindingLiquidSdk;
|
||||||
|
|
||||||
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_BindingLiquidSdkPtr;
|
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_BindingLiquidSdkPtr;
|
||||||
|
|
||||||
|
RustArcIncrementStrongCountFnType get rust_arc_increment_strong_count_ExternalInputParser;
|
||||||
|
|
||||||
|
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_ExternalInputParser;
|
||||||
|
|
||||||
|
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_ExternalInputParserPtr;
|
||||||
}
|
}
|
||||||
|
|
||||||
class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
||||||
@@ -623,6 +631,32 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
argNames: ["that", "req"],
|
argNames: ["that", "req"],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<InputType> crateBindingsBindingLiquidSdkParse(
|
||||||
|
{required BindingLiquidSdk that, required String input}) {
|
||||||
|
return handler.executeNormal(NormalTask(
|
||||||
|
callFfi: (port_) {
|
||||||
|
var arg0 =
|
||||||
|
cst_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
|
that);
|
||||||
|
var arg1 = cst_encode_String(input);
|
||||||
|
return wire.wire__crate__bindings__BindingLiquidSdk_parse(port_, arg0, arg1);
|
||||||
|
},
|
||||||
|
codec: DcoCodec(
|
||||||
|
decodeSuccessData: dco_decode_input_type,
|
||||||
|
decodeErrorData: dco_decode_payment_error,
|
||||||
|
),
|
||||||
|
constMeta: kCrateBindingsBindingLiquidSdkParseConstMeta,
|
||||||
|
argValues: [that, input],
|
||||||
|
apiImpl: this,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
TaskConstMeta get kCrateBindingsBindingLiquidSdkParseConstMeta => const TaskConstMeta(
|
||||||
|
debugName: "BindingLiquidSdk_parse",
|
||||||
|
argNames: ["that", "input"],
|
||||||
|
);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<SendPaymentResponse> crateBindingsBindingLiquidSdkPayOnchain(
|
Future<SendPaymentResponse> crateBindingsBindingLiquidSdkPayOnchain(
|
||||||
{required BindingLiquidSdk that, required PayOnchainRequest req}) {
|
{required BindingLiquidSdk that, required PayOnchainRequest req}) {
|
||||||
@@ -1150,28 +1184,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
argNames: ["network", "breezApiKey"],
|
argNames: ["network", "breezApiKey"],
|
||||||
);
|
);
|
||||||
|
|
||||||
@override
|
|
||||||
Future<InputType> crateBindingsParse({required String input}) {
|
|
||||||
return handler.executeNormal(NormalTask(
|
|
||||||
callFfi: (port_) {
|
|
||||||
var arg0 = cst_encode_String(input);
|
|
||||||
return wire.wire__crate__bindings__parse(port_, arg0);
|
|
||||||
},
|
|
||||||
codec: DcoCodec(
|
|
||||||
decodeSuccessData: dco_decode_input_type,
|
|
||||||
decodeErrorData: dco_decode_payment_error,
|
|
||||||
),
|
|
||||||
constMeta: kCrateBindingsParseConstMeta,
|
|
||||||
argValues: [input],
|
|
||||||
apiImpl: this,
|
|
||||||
));
|
|
||||||
}
|
|
||||||
|
|
||||||
TaskConstMeta get kCrateBindingsParseConstMeta => const TaskConstMeta(
|
|
||||||
debugName: "parse",
|
|
||||||
argNames: ["input"],
|
|
||||||
);
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
LNInvoice crateBindingsParseInvoice({required String input}) {
|
LNInvoice crateBindingsParseInvoice({required String input}) {
|
||||||
return handler.executeSync(SyncTask(
|
return handler.executeSync(SyncTask(
|
||||||
@@ -1200,6 +1212,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_BindingLiquidSdk => wire
|
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_BindingLiquidSdk => wire
|
||||||
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk;
|
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk;
|
||||||
|
|
||||||
|
RustArcIncrementStrongCountFnType get rust_arc_increment_strong_count_ExternalInputParser => wire
|
||||||
|
.rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser;
|
||||||
|
|
||||||
|
RustArcDecrementStrongCountFnType get rust_arc_decrement_strong_count_ExternalInputParser => wire
|
||||||
|
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser;
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
AnyhowException dco_decode_AnyhowException(dynamic raw) {
|
AnyhowException dco_decode_AnyhowException(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -1214,6 +1232,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return BindingLiquidSdkImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
return BindingLiquidSdkImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return ExternalInputParserImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
BindingLiquidSdk
|
BindingLiquidSdk
|
||||||
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
@@ -1229,6 +1255,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return BindingLiquidSdkImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
return BindingLiquidSdkImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return ExternalInputParserImpl.frbInternalDcoDecode(raw as List<dynamic>);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RustStreamSink<LogEntry> dco_decode_StreamSink_log_entry_Dco(dynamic raw) {
|
RustStreamSink<LogEntry> dco_decode_StreamSink_log_entry_Dco(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -1688,7 +1722,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
Config dco_decode_config(dynamic raw) {
|
Config dco_decode_config(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
final arr = raw as List<dynamic>;
|
final arr = raw as List<dynamic>;
|
||||||
if (arr.length != 10) throw Exception('unexpected arr length: expect 10 but see ${arr.length}');
|
if (arr.length != 11) throw Exception('unexpected arr length: expect 11 but see ${arr.length}');
|
||||||
return Config(
|
return Config(
|
||||||
liquidElectrumUrl: dco_decode_String(arr[0]),
|
liquidElectrumUrl: dco_decode_String(arr[0]),
|
||||||
bitcoinElectrumUrl: dco_decode_String(arr[1]),
|
bitcoinElectrumUrl: dco_decode_String(arr[1]),
|
||||||
@@ -1700,6 +1734,9 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
zeroConfMinFeeRateMsat: dco_decode_u_32(arr[7]),
|
zeroConfMinFeeRateMsat: dco_decode_u_32(arr[7]),
|
||||||
zeroConfMaxAmountSat: dco_decode_opt_box_autoadd_u_64(arr[8]),
|
zeroConfMaxAmountSat: dco_decode_opt_box_autoadd_u_64(arr[8]),
|
||||||
breezApiKey: dco_decode_opt_String(arr[9]),
|
breezApiKey: dco_decode_opt_String(arr[9]),
|
||||||
|
externalInputParsers:
|
||||||
|
dco_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
arr[10]),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1879,6 +1916,17 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return LiquidNetwork.values[raw as int];
|
return LiquidNetwork.values[raw as int];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>
|
||||||
|
dco_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return (raw as List<dynamic>)
|
||||||
|
.map(
|
||||||
|
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser)
|
||||||
|
.toList();
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<String> dco_decode_list_String(dynamic raw) {
|
List<String> dco_decode_list_String(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -2445,6 +2493,17 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return raw == null ? null : dco_decode_box_autoadd_u_64(raw);
|
return raw == null ? null : dco_decode_box_autoadd_u_64(raw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>?
|
||||||
|
dco_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return raw == null
|
||||||
|
? null
|
||||||
|
: dco_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
raw);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<PaymentType>? dco_decode_opt_list_payment_type(dynamic raw) {
|
List<PaymentType>? dco_decode_opt_list_payment_type(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -3114,6 +3173,15 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
return ExternalInputParserImpl.frbInternalSseDecode(
|
||||||
|
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
BindingLiquidSdk
|
BindingLiquidSdk
|
||||||
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
@@ -3131,6 +3199,15 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
return ExternalInputParserImpl.frbInternalSseDecode(
|
||||||
|
sse_decode_usize(deserializer), sse_decode_i_32(deserializer));
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RustStreamSink<LogEntry> sse_decode_StreamSink_log_entry_Dco(SseDeserializer deserializer) {
|
RustStreamSink<LogEntry> sse_decode_StreamSink_log_entry_Dco(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -3584,6 +3661,9 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
var var_zeroConfMinFeeRateMsat = sse_decode_u_32(deserializer);
|
var var_zeroConfMinFeeRateMsat = sse_decode_u_32(deserializer);
|
||||||
var var_zeroConfMaxAmountSat = sse_decode_opt_box_autoadd_u_64(deserializer);
|
var var_zeroConfMaxAmountSat = sse_decode_opt_box_autoadd_u_64(deserializer);
|
||||||
var var_breezApiKey = sse_decode_opt_String(deserializer);
|
var var_breezApiKey = sse_decode_opt_String(deserializer);
|
||||||
|
var var_externalInputParsers =
|
||||||
|
sse_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
deserializer);
|
||||||
return Config(
|
return Config(
|
||||||
liquidElectrumUrl: var_liquidElectrumUrl,
|
liquidElectrumUrl: var_liquidElectrumUrl,
|
||||||
bitcoinElectrumUrl: var_bitcoinElectrumUrl,
|
bitcoinElectrumUrl: var_bitcoinElectrumUrl,
|
||||||
@@ -3594,7 +3674,8 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
paymentTimeoutSec: var_paymentTimeoutSec,
|
paymentTimeoutSec: var_paymentTimeoutSec,
|
||||||
zeroConfMinFeeRateMsat: var_zeroConfMinFeeRateMsat,
|
zeroConfMinFeeRateMsat: var_zeroConfMinFeeRateMsat,
|
||||||
zeroConfMaxAmountSat: var_zeroConfMaxAmountSat,
|
zeroConfMaxAmountSat: var_zeroConfMaxAmountSat,
|
||||||
breezApiKey: var_breezApiKey);
|
breezApiKey: var_breezApiKey,
|
||||||
|
externalInputParsers: var_externalInputParsers);
|
||||||
}
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
@@ -3764,6 +3845,22 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return LiquidNetwork.values[inner];
|
return LiquidNetwork.values[inner];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>
|
||||||
|
sse_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
|
||||||
|
var len_ = sse_decode_i_32(deserializer);
|
||||||
|
var ans_ = <ExternalInputParser>[];
|
||||||
|
for (var idx_ = 0; idx_ < len_; ++idx_) {
|
||||||
|
ans_.add(
|
||||||
|
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
deserializer));
|
||||||
|
}
|
||||||
|
return ans_;
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<String> sse_decode_list_String(SseDeserializer deserializer) {
|
List<String> sse_decode_list_String(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -4434,6 +4531,20 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>?
|
||||||
|
sse_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
|
||||||
|
if (sse_decode_bool(deserializer)) {
|
||||||
|
return (sse_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
deserializer));
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<PaymentType>? sse_decode_opt_list_payment_type(SseDeserializer deserializer) {
|
List<PaymentType>? sse_decode_opt_list_payment_type(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -5054,6 +5165,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return (raw as BindingLiquidSdkImpl).frbInternalCstEncode(move: true);
|
return (raw as BindingLiquidSdkImpl).frbInternalCstEncode(move: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
int cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser raw) {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
// ignore: invalid_use_of_internal_member
|
||||||
|
return (raw as ExternalInputParserImpl).frbInternalCstEncode(move: true);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
int cst_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
int cst_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk raw) {
|
BindingLiquidSdk raw) {
|
||||||
@@ -5070,6 +5189,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return (raw as BindingLiquidSdkImpl).frbInternalCstEncode();
|
return (raw as BindingLiquidSdkImpl).frbInternalCstEncode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
int cst_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser raw) {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
// ignore: invalid_use_of_internal_member
|
||||||
|
return (raw as ExternalInputParserImpl).frbInternalCstEncode();
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
bool cst_encode_bool(bool raw) {
|
bool cst_encode_bool(bool raw) {
|
||||||
// Codec=Cst (C-struct based), see doc to use other codecs
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
@@ -5161,6 +5288,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_usize((self as BindingLiquidSdkImpl).frbInternalSseEncode(move: true), serializer);
|
sse_encode_usize((self as BindingLiquidSdkImpl).frbInternalSseEncode(move: true), serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_usize((self as ExternalInputParserImpl).frbInternalSseEncode(move: true), serializer);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
void sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk self, SseSerializer serializer) {
|
BindingLiquidSdk self, SseSerializer serializer) {
|
||||||
@@ -5175,6 +5310,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_usize((self as BindingLiquidSdkImpl).frbInternalSseEncode(move: null), serializer);
|
sse_encode_usize((self as BindingLiquidSdkImpl).frbInternalSseEncode(move: null), serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_usize((self as ExternalInputParserImpl).frbInternalSseEncode(move: null), serializer);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_StreamSink_log_entry_Dco(RustStreamSink<LogEntry> self, SseSerializer serializer) {
|
void sse_encode_StreamSink_log_entry_Dco(RustStreamSink<LogEntry> self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -5629,6 +5771,8 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_u_32(self.zeroConfMinFeeRateMsat, serializer);
|
sse_encode_u_32(self.zeroConfMinFeeRateMsat, serializer);
|
||||||
sse_encode_opt_box_autoadd_u_64(self.zeroConfMaxAmountSat, serializer);
|
sse_encode_opt_box_autoadd_u_64(self.zeroConfMaxAmountSat, serializer);
|
||||||
sse_encode_opt_String(self.breezApiKey, serializer);
|
sse_encode_opt_String(self.breezApiKey, serializer);
|
||||||
|
sse_encode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
self.externalInputParsers, serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
@@ -5769,6 +5913,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_i_32(self.index, serializer);
|
sse_encode_i_32(self.index, serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser> self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_i_32(self.length, serializer);
|
||||||
|
for (final item in self) {
|
||||||
|
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
item, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_list_String(List<String> self, SseSerializer serializer) {
|
void sse_encode_list_String(List<String> self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -6322,6 +6478,19 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser>? self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
|
||||||
|
sse_encode_bool(self != null, serializer);
|
||||||
|
if (self != null) {
|
||||||
|
sse_encode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
self, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_opt_list_payment_type(List<PaymentType>? self, SseSerializer serializer) {
|
void sse_encode_opt_list_payment_type(List<PaymentType>? self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -6922,6 +7091,9 @@ class BindingLiquidSdkImpl extends RustOpaque implements BindingLiquidSdk {
|
|||||||
Future<LnUrlWithdrawResult> lnurlWithdraw({required LnUrlWithdrawRequest req}) =>
|
Future<LnUrlWithdrawResult> lnurlWithdraw({required LnUrlWithdrawRequest req}) =>
|
||||||
RustLib.instance.api.crateBindingsBindingLiquidSdkLnurlWithdraw(that: this, req: req);
|
RustLib.instance.api.crateBindingsBindingLiquidSdkLnurlWithdraw(that: this, req: req);
|
||||||
|
|
||||||
|
Future<InputType> parse({required String input}) =>
|
||||||
|
RustLib.instance.api.crateBindingsBindingLiquidSdkParse(that: this, input: input);
|
||||||
|
|
||||||
Future<SendPaymentResponse> payOnchain({required PayOnchainRequest req}) =>
|
Future<SendPaymentResponse> payOnchain({required PayOnchainRequest req}) =>
|
||||||
RustLib.instance.api.crateBindingsBindingLiquidSdkPayOnchain(that: this, req: req);
|
RustLib.instance.api.crateBindingsBindingLiquidSdkPayOnchain(that: this, req: req);
|
||||||
|
|
||||||
@@ -6978,3 +7150,21 @@ class BindingLiquidSdkImpl extends RustOpaque implements BindingLiquidSdk {
|
|||||||
that: this,
|
that: this,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@sealed
|
||||||
|
class ExternalInputParserImpl extends RustOpaque implements ExternalInputParser {
|
||||||
|
// Not to be used by end users
|
||||||
|
ExternalInputParserImpl.frbInternalDcoDecode(List<dynamic> wire)
|
||||||
|
: super.frbInternalDcoDecode(wire, _kStaticData);
|
||||||
|
|
||||||
|
// Not to be used by end users
|
||||||
|
ExternalInputParserImpl.frbInternalSseDecode(BigInt ptr, int externalSizeOnNative)
|
||||||
|
: super.frbInternalSseDecode(ptr, externalSizeOnNative, _kStaticData);
|
||||||
|
|
||||||
|
static final _kStaticData = RustArcStaticData(
|
||||||
|
rustArcIncrementStrongCount: RustLib.instance.api.rust_arc_increment_strong_count_ExternalInputParser,
|
||||||
|
rustArcDecrementStrongCount: RustLib.instance.api.rust_arc_decrement_strong_count_ExternalInputParser,
|
||||||
|
rustArcDecrementStrongCountPtr:
|
||||||
|
RustLib.instance.api.rust_arc_decrement_strong_count_ExternalInputParserPtr,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import 'dart:convert';
|
|||||||
import 'dart:ffi' as ffi;
|
import 'dart:ffi' as ffi;
|
||||||
import 'error.dart';
|
import 'error.dart';
|
||||||
import 'frb_generated.dart';
|
import 'frb_generated.dart';
|
||||||
|
import 'lib.dart';
|
||||||
import 'model.dart';
|
import 'model.dart';
|
||||||
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated_io.dart';
|
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated_io.dart';
|
||||||
|
|
||||||
@@ -24,6 +25,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_BindingLiquidSdkPtr => wire
|
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_BindingLiquidSdkPtr => wire
|
||||||
._rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr;
|
._rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr;
|
||||||
|
|
||||||
|
CrossPlatformFinalizerArg get rust_arc_decrement_strong_count_ExternalInputParserPtr => wire
|
||||||
|
._rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr;
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
AnyhowException dco_decode_AnyhowException(dynamic raw);
|
AnyhowException dco_decode_AnyhowException(dynamic raw);
|
||||||
|
|
||||||
@@ -32,6 +36,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
dynamic raw);
|
dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
BindingLiquidSdk
|
BindingLiquidSdk
|
||||||
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
@@ -41,6 +50,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
BindingLiquidSdk dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
BindingLiquidSdk dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
dynamic raw);
|
dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RustStreamSink<LogEntry> dco_decode_StreamSink_log_entry_Dco(dynamic raw);
|
RustStreamSink<LogEntry> dco_decode_StreamSink_log_entry_Dco(dynamic raw);
|
||||||
|
|
||||||
@@ -278,6 +292,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
LiquidNetwork dco_decode_liquid_network(dynamic raw);
|
LiquidNetwork dco_decode_liquid_network(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>
|
||||||
|
dco_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<String> dco_decode_list_String(dynamic raw);
|
List<String> dco_decode_list_String(dynamic raw);
|
||||||
|
|
||||||
@@ -431,6 +450,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
BigInt? dco_decode_opt_box_autoadd_u_64(dynamic raw);
|
BigInt? dco_decode_opt_box_autoadd_u_64(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>?
|
||||||
|
dco_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<PaymentType>? dco_decode_opt_list_payment_type(dynamic raw);
|
List<PaymentType>? dco_decode_opt_list_payment_type(dynamic raw);
|
||||||
|
|
||||||
@@ -583,6 +607,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
SseDeserializer deserializer);
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
BindingLiquidSdk
|
BindingLiquidSdk
|
||||||
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
@@ -592,6 +621,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
BindingLiquidSdk sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
BindingLiquidSdk sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
SseDeserializer deserializer);
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ExternalInputParser
|
||||||
|
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RustStreamSink<LogEntry> sse_decode_StreamSink_log_entry_Dco(SseDeserializer deserializer);
|
RustStreamSink<LogEntry> sse_decode_StreamSink_log_entry_Dco(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -831,6 +865,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
LiquidNetwork sse_decode_liquid_network(SseDeserializer deserializer);
|
LiquidNetwork sse_decode_liquid_network(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>
|
||||||
|
sse_decode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<String> sse_decode_list_String(SseDeserializer deserializer);
|
List<String> sse_decode_list_String(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -984,6 +1023,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
BigInt? sse_decode_opt_box_autoadd_u_64(SseDeserializer deserializer);
|
BigInt? sse_decode_opt_box_autoadd_u_64(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<ExternalInputParser>?
|
||||||
|
sse_decode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
List<PaymentType>? sse_decode_opt_list_payment_type(SseDeserializer deserializer);
|
List<PaymentType>? sse_decode_opt_list_payment_type(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -1589,6 +1633,23 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
return raw.toInt();
|
return raw.toInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
cst_encode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser> raw) {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
final ans = wire
|
||||||
|
.cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
raw.length);
|
||||||
|
for (var i = 0; i < raw.length; ++i) {
|
||||||
|
ans.ref.ptr[i] =
|
||||||
|
cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
raw[i]);
|
||||||
|
}
|
||||||
|
return ans;
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
ffi.Pointer<wire_cst_list_String> cst_encode_list_String(List<String> raw) {
|
ffi.Pointer<wire_cst_list_String> cst_encode_list_String(List<String> raw) {
|
||||||
// Codec=Cst (C-struct based), see doc to use other codecs
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
@@ -1788,6 +1849,18 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
return raw == null ? ffi.nullptr : cst_encode_box_autoadd_u_64(raw);
|
return raw == null ? ffi.nullptr : cst_encode_box_autoadd_u_64(raw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
cst_encode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser>? raw) {
|
||||||
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
|
return raw == null
|
||||||
|
? ffi.nullptr
|
||||||
|
: cst_encode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
raw);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
ffi.Pointer<wire_cst_list_payment_type> cst_encode_opt_list_payment_type(List<PaymentType>? raw) {
|
ffi.Pointer<wire_cst_list_payment_type> cst_encode_opt_list_payment_type(List<PaymentType>? raw) {
|
||||||
// Codec=Cst (C-struct based), see doc to use other codecs
|
// Codec=Cst (C-struct based), see doc to use other codecs
|
||||||
@@ -2175,6 +2248,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
wireObj.zero_conf_min_fee_rate_msat = cst_encode_u_32(apiObj.zeroConfMinFeeRateMsat);
|
wireObj.zero_conf_min_fee_rate_msat = cst_encode_u_32(apiObj.zeroConfMinFeeRateMsat);
|
||||||
wireObj.zero_conf_max_amount_sat = cst_encode_opt_box_autoadd_u_64(apiObj.zeroConfMaxAmountSat);
|
wireObj.zero_conf_max_amount_sat = cst_encode_opt_box_autoadd_u_64(apiObj.zeroConfMaxAmountSat);
|
||||||
wireObj.breez_api_key = cst_encode_opt_String(apiObj.breezApiKey);
|
wireObj.breez_api_key = cst_encode_opt_String(apiObj.breezApiKey);
|
||||||
|
wireObj.external_input_parsers =
|
||||||
|
cst_encode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
apiObj.externalInputParsers);
|
||||||
}
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
@@ -3204,6 +3280,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
int cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
int cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk raw);
|
BindingLiquidSdk raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
int cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
int cst_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
int cst_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk raw);
|
BindingLiquidSdk raw);
|
||||||
@@ -3212,6 +3292,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
int cst_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
int cst_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk raw);
|
BindingLiquidSdk raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
int cst_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
bool cst_encode_bool(bool raw);
|
bool cst_encode_bool(bool raw);
|
||||||
|
|
||||||
@@ -3258,6 +3342,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
void sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
void sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk self, SseSerializer serializer);
|
BindingLiquidSdk self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
void sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk self, SseSerializer serializer);
|
BindingLiquidSdk self, SseSerializer serializer);
|
||||||
@@ -3266,6 +3355,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
void sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
void sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdk(
|
||||||
BindingLiquidSdk self, SseSerializer serializer);
|
BindingLiquidSdk self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ExternalInputParser self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_StreamSink_log_entry_Dco(RustStreamSink<LogEntry> self, SseSerializer serializer);
|
void sse_encode_StreamSink_log_entry_Dco(RustStreamSink<LogEntry> self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -3513,6 +3606,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_liquid_network(LiquidNetwork self, SseSerializer serializer);
|
void sse_encode_liquid_network(LiquidNetwork self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser> self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_list_String(List<String> self, SseSerializer serializer);
|
void sse_encode_list_String(List<String> self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -3668,6 +3766,11 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_opt_box_autoadd_u_64(BigInt? self, SseSerializer serializer);
|
void sse_encode_opt_box_autoadd_u_64(BigInt? self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void
|
||||||
|
sse_encode_opt_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
List<ExternalInputParser>? self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_opt_list_payment_type(List<PaymentType>? self, SseSerializer serializer);
|
void sse_encode_opt_list_payment_type(List<PaymentType>? self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -4152,6 +4255,26 @@ class RustLibWire implements BaseWire {
|
|||||||
_wire__crate__bindings__BindingLiquidSdk_lnurl_withdrawPtr
|
_wire__crate__bindings__BindingLiquidSdk_lnurl_withdrawPtr
|
||||||
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_ln_url_withdraw_request>)>();
|
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_ln_url_withdraw_request>)>();
|
||||||
|
|
||||||
|
void wire__crate__bindings__BindingLiquidSdk_parse(
|
||||||
|
int port_,
|
||||||
|
int that,
|
||||||
|
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
||||||
|
) {
|
||||||
|
return _wire__crate__bindings__BindingLiquidSdk_parse(
|
||||||
|
port_,
|
||||||
|
that,
|
||||||
|
input,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _wire__crate__bindings__BindingLiquidSdk_parsePtr = _lookup<
|
||||||
|
ffi.NativeFunction<
|
||||||
|
ffi.Void Function(ffi.Int64, ffi.UintPtr, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
|
||||||
|
'frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse');
|
||||||
|
late final _wire__crate__bindings__BindingLiquidSdk_parse =
|
||||||
|
_wire__crate__bindings__BindingLiquidSdk_parsePtr
|
||||||
|
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
||||||
|
|
||||||
void wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
void wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
||||||
int port_,
|
int port_,
|
||||||
int that,
|
int that,
|
||||||
@@ -4543,22 +4666,6 @@ class RustLibWire implements BaseWire {
|
|||||||
late final _wire__crate__bindings__default_config = _wire__crate__bindings__default_configPtr
|
late final _wire__crate__bindings__default_config = _wire__crate__bindings__default_configPtr
|
||||||
.asFunction<WireSyncRust2DartDco Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
.asFunction<WireSyncRust2DartDco Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
||||||
|
|
||||||
void wire__crate__bindings__parse(
|
|
||||||
int port_,
|
|
||||||
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
|
||||||
) {
|
|
||||||
return _wire__crate__bindings__parse(
|
|
||||||
port_,
|
|
||||||
input,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
late final _wire__crate__bindings__parsePtr =
|
|
||||||
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
|
|
||||||
'frbgen_breez_liquid_wire__crate__bindings__parse');
|
|
||||||
late final _wire__crate__bindings__parse = _wire__crate__bindings__parsePtr
|
|
||||||
.asFunction<void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
|
||||||
|
|
||||||
WireSyncRust2DartDco wire__crate__bindings__parse_invoice(
|
WireSyncRust2DartDco wire__crate__bindings__parse_invoice(
|
||||||
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
||||||
) {
|
) {
|
||||||
@@ -4605,6 +4712,38 @@ class RustLibWire implements BaseWire {
|
|||||||
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr
|
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr
|
||||||
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
|
void
|
||||||
|
rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ffi.Pointer<ffi.Void> ptr,
|
||||||
|
) {
|
||||||
|
return _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
|
||||||
|
'frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
|
void
|
||||||
|
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ffi.Pointer<ffi.Void> ptr,
|
||||||
|
) {
|
||||||
|
return _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
|
||||||
|
'frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
ffi.Pointer<wire_cst_aes_success_action_data> cst_new_box_autoadd_aes_success_action_data() {
|
ffi.Pointer<wire_cst_aes_success_action_data> cst_new_box_autoadd_aes_success_action_data() {
|
||||||
return _cst_new_box_autoadd_aes_success_action_data();
|
return _cst_new_box_autoadd_aes_success_action_data();
|
||||||
}
|
}
|
||||||
@@ -5134,6 +5273,30 @@ class RustLibWire implements BaseWire {
|
|||||||
late final _cst_new_box_autoadd_url_success_action_data = _cst_new_box_autoadd_url_success_action_dataPtr
|
late final _cst_new_box_autoadd_url_success_action_data = _cst_new_box_autoadd_url_success_action_dataPtr
|
||||||
.asFunction<ffi.Pointer<wire_cst_url_success_action_data> Function()>();
|
.asFunction<ffi.Pointer<wire_cst_url_success_action_data> Function()>();
|
||||||
|
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
int len,
|
||||||
|
) {
|
||||||
|
return _cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
len,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<
|
||||||
|
ffi.NativeFunction<
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
Function(ffi.Int32)>>(
|
||||||
|
'frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
Function(int)>();
|
||||||
|
|
||||||
ffi.Pointer<wire_cst_list_String> cst_new_list_String(
|
ffi.Pointer<wire_cst_list_String> cst_new_list_String(
|
||||||
int len,
|
int len,
|
||||||
) {
|
) {
|
||||||
@@ -5958,6 +6121,14 @@ final class wire_cst_sdk_event extends ffi.Struct {
|
|||||||
external SdkEventKind kind;
|
external SdkEventKind kind;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final class wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser
|
||||||
|
extends ffi.Struct {
|
||||||
|
external ffi.Pointer<ffi.UintPtr> ptr;
|
||||||
|
|
||||||
|
@ffi.Int32()
|
||||||
|
external int len;
|
||||||
|
}
|
||||||
|
|
||||||
final class wire_cst_config extends ffi.Struct {
|
final class wire_cst_config extends ffi.Struct {
|
||||||
external ffi.Pointer<wire_cst_list_prim_u_8_strict> liquid_electrum_url;
|
external ffi.Pointer<wire_cst_list_prim_u_8_strict> liquid_electrum_url;
|
||||||
|
|
||||||
@@ -5981,6 +6152,10 @@ final class wire_cst_config extends ffi.Struct {
|
|||||||
external ffi.Pointer<ffi.Uint64> zero_conf_max_amount_sat;
|
external ffi.Pointer<ffi.Uint64> zero_conf_max_amount_sat;
|
||||||
|
|
||||||
external ffi.Pointer<wire_cst_list_prim_u_8_strict> breez_api_key;
|
external ffi.Pointer<wire_cst_list_prim_u_8_strict> breez_api_key;
|
||||||
|
|
||||||
|
external ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
external_input_parsers;
|
||||||
}
|
}
|
||||||
|
|
||||||
final class wire_cst_connect_request extends ffi.Struct {
|
final class wire_cst_connect_request extends ffi.Struct {
|
||||||
|
|||||||
@@ -6,5 +6,5 @@
|
|||||||
import 'frb_generated.dart';
|
import 'frb_generated.dart';
|
||||||
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
||||||
|
|
||||||
// Rust type: RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<LNOfferBlindedPath>>
|
// Rust type: RustOpaqueNom<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ExternalInputParser>>
|
||||||
abstract class LnOfferBlindedPath implements RustOpaqueInterface {}
|
abstract class ExternalInputParser implements RustOpaqueInterface {}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
import 'bindings.dart';
|
import 'bindings.dart';
|
||||||
import 'frb_generated.dart';
|
import 'frb_generated.dart';
|
||||||
|
import 'lib.dart';
|
||||||
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
||||||
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
|
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
|
||||||
part 'model.freezed.dart';
|
part 'model.freezed.dart';
|
||||||
@@ -141,6 +142,11 @@ class Config {
|
|||||||
/// The Breez API key used for making requests to their mempool service
|
/// The Breez API key used for making requests to their mempool service
|
||||||
final String? breezApiKey;
|
final String? breezApiKey;
|
||||||
|
|
||||||
|
/// A set of external input parsers that are used by [LiquidSdk::parse] when the input
|
||||||
|
/// is not recognized. See [ExternalInputParser] for more details on how to configure
|
||||||
|
/// external parsing.
|
||||||
|
final List<ExternalInputParser>? externalInputParsers;
|
||||||
|
|
||||||
const Config({
|
const Config({
|
||||||
required this.liquidElectrumUrl,
|
required this.liquidElectrumUrl,
|
||||||
required this.bitcoinElectrumUrl,
|
required this.bitcoinElectrumUrl,
|
||||||
@@ -152,6 +158,7 @@ class Config {
|
|||||||
required this.zeroConfMinFeeRateMsat,
|
required this.zeroConfMinFeeRateMsat,
|
||||||
this.zeroConfMaxAmountSat,
|
this.zeroConfMaxAmountSat,
|
||||||
this.breezApiKey,
|
this.breezApiKey,
|
||||||
|
this.externalInputParsers,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -165,7 +172,8 @@ class Config {
|
|||||||
paymentTimeoutSec.hashCode ^
|
paymentTimeoutSec.hashCode ^
|
||||||
zeroConfMinFeeRateMsat.hashCode ^
|
zeroConfMinFeeRateMsat.hashCode ^
|
||||||
zeroConfMaxAmountSat.hashCode ^
|
zeroConfMaxAmountSat.hashCode ^
|
||||||
breezApiKey.hashCode;
|
breezApiKey.hashCode ^
|
||||||
|
externalInputParsers.hashCode;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
@@ -181,7 +189,8 @@ class Config {
|
|||||||
paymentTimeoutSec == other.paymentTimeoutSec &&
|
paymentTimeoutSec == other.paymentTimeoutSec &&
|
||||||
zeroConfMinFeeRateMsat == other.zeroConfMinFeeRateMsat &&
|
zeroConfMinFeeRateMsat == other.zeroConfMinFeeRateMsat &&
|
||||||
zeroConfMaxAmountSat == other.zeroConfMaxAmountSat &&
|
zeroConfMaxAmountSat == other.zeroConfMaxAmountSat &&
|
||||||
breezApiKey == other.breezApiKey;
|
breezApiKey == other.breezApiKey &&
|
||||||
|
externalInputParsers == other.externalInputParsers;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// An argument when calling [crate::sdk::LiquidSdk::connect].
|
/// An argument when calling [crate::sdk::LiquidSdk::connect].
|
||||||
|
|||||||
@@ -347,6 +347,26 @@ class FlutterBreezLiquidBindings {
|
|||||||
_frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_withdrawPtr
|
_frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_lnurl_withdrawPtr
|
||||||
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_ln_url_withdraw_request>)>();
|
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_ln_url_withdraw_request>)>();
|
||||||
|
|
||||||
|
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse(
|
||||||
|
int port_,
|
||||||
|
int that,
|
||||||
|
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
||||||
|
) {
|
||||||
|
return _frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse(
|
||||||
|
port_,
|
||||||
|
that,
|
||||||
|
input,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parsePtr = _lookup<
|
||||||
|
ffi.NativeFunction<
|
||||||
|
ffi.Void Function(ffi.Int64, ffi.UintPtr, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
|
||||||
|
'frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse');
|
||||||
|
late final _frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parse =
|
||||||
|
_frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_parsePtr
|
||||||
|
.asFunction<void Function(int, int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
||||||
|
|
||||||
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
void frbgen_breez_liquid_wire__crate__bindings__BindingLiquidSdk_pay_onchain(
|
||||||
int port_,
|
int port_,
|
||||||
int that,
|
int that,
|
||||||
@@ -746,23 +766,6 @@ class FlutterBreezLiquidBindings {
|
|||||||
_frbgen_breez_liquid_wire__crate__bindings__default_configPtr
|
_frbgen_breez_liquid_wire__crate__bindings__default_configPtr
|
||||||
.asFunction<WireSyncRust2DartDco Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
.asFunction<WireSyncRust2DartDco Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
||||||
|
|
||||||
void frbgen_breez_liquid_wire__crate__bindings__parse(
|
|
||||||
int port_,
|
|
||||||
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
|
||||||
) {
|
|
||||||
return _frbgen_breez_liquid_wire__crate__bindings__parse(
|
|
||||||
port_,
|
|
||||||
input,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
late final _frbgen_breez_liquid_wire__crate__bindings__parsePtr =
|
|
||||||
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
|
|
||||||
'frbgen_breez_liquid_wire__crate__bindings__parse');
|
|
||||||
late final _frbgen_breez_liquid_wire__crate__bindings__parse =
|
|
||||||
_frbgen_breez_liquid_wire__crate__bindings__parsePtr
|
|
||||||
.asFunction<void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
|
|
||||||
|
|
||||||
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__parse_invoice(
|
WireSyncRust2DartDco frbgen_breez_liquid_wire__crate__bindings__parse_invoice(
|
||||||
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
ffi.Pointer<wire_cst_list_prim_u_8_strict> input,
|
||||||
) {
|
) {
|
||||||
@@ -810,6 +813,38 @@ class FlutterBreezLiquidBindings {
|
|||||||
_frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr
|
_frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerBindingLiquidSdkPtr
|
||||||
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
|
void
|
||||||
|
frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ffi.Pointer<ffi.Void> ptr,
|
||||||
|
) {
|
||||||
|
return _frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
|
||||||
|
'frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
|
void
|
||||||
|
frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ffi.Pointer<ffi.Void> ptr,
|
||||||
|
) {
|
||||||
|
return _frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
ptr,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
|
||||||
|
'frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
|
||||||
|
|
||||||
ffi.Pointer<wire_cst_aes_success_action_data>
|
ffi.Pointer<wire_cst_aes_success_action_data>
|
||||||
frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data() {
|
frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data() {
|
||||||
return _frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data();
|
return _frbgen_breez_liquid_cst_new_box_autoadd_aes_success_action_data();
|
||||||
@@ -1397,6 +1432,30 @@ class FlutterBreezLiquidBindings {
|
|||||||
_frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_dataPtr
|
_frbgen_breez_liquid_cst_new_box_autoadd_url_success_action_dataPtr
|
||||||
.asFunction<ffi.Pointer<wire_cst_url_success_action_data> Function()>();
|
.asFunction<ffi.Pointer<wire_cst_url_success_action_data> Function()>();
|
||||||
|
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
int len,
|
||||||
|
) {
|
||||||
|
return _frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser(
|
||||||
|
len,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
late final _frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr =
|
||||||
|
_lookup<
|
||||||
|
ffi.NativeFunction<
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
Function(ffi.Int32)>>(
|
||||||
|
'frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser');
|
||||||
|
late final _frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser =
|
||||||
|
_frbgen_breez_liquid_cst_new_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParserPtr
|
||||||
|
.asFunction<
|
||||||
|
ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
Function(int)>();
|
||||||
|
|
||||||
ffi.Pointer<wire_cst_list_String> frbgen_breez_liquid_cst_new_list_String(
|
ffi.Pointer<wire_cst_list_String> frbgen_breez_liquid_cst_new_list_String(
|
||||||
int len,
|
int len,
|
||||||
) {
|
) {
|
||||||
@@ -4508,6 +4567,14 @@ final class wire_cst_sdk_event extends ffi.Struct {
|
|||||||
external SdkEventKind kind;
|
external SdkEventKind kind;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final class wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser
|
||||||
|
extends ffi.Struct {
|
||||||
|
external ffi.Pointer<ffi.UintPtr> ptr;
|
||||||
|
|
||||||
|
@ffi.Int32()
|
||||||
|
external int len;
|
||||||
|
}
|
||||||
|
|
||||||
final class wire_cst_config extends ffi.Struct {
|
final class wire_cst_config extends ffi.Struct {
|
||||||
external ffi.Pointer<wire_cst_list_prim_u_8_strict> liquid_electrum_url;
|
external ffi.Pointer<wire_cst_list_prim_u_8_strict> liquid_electrum_url;
|
||||||
|
|
||||||
@@ -4531,6 +4598,10 @@ final class wire_cst_config extends ffi.Struct {
|
|||||||
external ffi.Pointer<ffi.Uint64> zero_conf_max_amount_sat;
|
external ffi.Pointer<ffi.Uint64> zero_conf_max_amount_sat;
|
||||||
|
|
||||||
external ffi.Pointer<wire_cst_list_prim_u_8_strict> breez_api_key;
|
external ffi.Pointer<wire_cst_list_prim_u_8_strict> breez_api_key;
|
||||||
|
|
||||||
|
external ffi.Pointer<
|
||||||
|
wire_cst_list_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerExternalInputParser>
|
||||||
|
external_input_parsers;
|
||||||
}
|
}
|
||||||
|
|
||||||
final class wire_cst_connect_request extends ffi.Struct {
|
final class wire_cst_connect_request extends ffi.Struct {
|
||||||
|
|||||||
@@ -272,6 +272,14 @@ fun asConfig(config: ReadableMap): Config? {
|
|||||||
} else {
|
} else {
|
||||||
null
|
null
|
||||||
}
|
}
|
||||||
|
val externalInputParsers =
|
||||||
|
if (hasNonNullKey(config, "externalInputParsers")) {
|
||||||
|
config.getArray("externalInputParsers")?.let {
|
||||||
|
asExternalInputParserList(it)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
null
|
||||||
|
}
|
||||||
return Config(
|
return Config(
|
||||||
liquidElectrumUrl,
|
liquidElectrumUrl,
|
||||||
bitcoinElectrumUrl,
|
bitcoinElectrumUrl,
|
||||||
@@ -283,6 +291,7 @@ fun asConfig(config: ReadableMap): Config? {
|
|||||||
breezApiKey,
|
breezApiKey,
|
||||||
cacheDir,
|
cacheDir,
|
||||||
zeroConfMaxAmountSat,
|
zeroConfMaxAmountSat,
|
||||||
|
externalInputParsers,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -298,6 +307,7 @@ fun readableMapOf(config: Config): ReadableMap =
|
|||||||
"breezApiKey" to config.breezApiKey,
|
"breezApiKey" to config.breezApiKey,
|
||||||
"cacheDir" to config.cacheDir,
|
"cacheDir" to config.cacheDir,
|
||||||
"zeroConfMaxAmountSat" to config.zeroConfMaxAmountSat,
|
"zeroConfMaxAmountSat" to config.zeroConfMaxAmountSat,
|
||||||
|
"externalInputParsers" to config.externalInputParsers?.let { readableArrayOf(it) },
|
||||||
)
|
)
|
||||||
|
|
||||||
fun asConfigList(arr: ReadableArray): List<Config> {
|
fun asConfigList(arr: ReadableArray): List<Config> {
|
||||||
@@ -419,6 +429,42 @@ fun asCurrencyInfoList(arr: ReadableArray): List<CurrencyInfo> {
|
|||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun asExternalInputParser(externalInputParser: ReadableMap): ExternalInputParser? {
|
||||||
|
if (!validateMandatoryFields(
|
||||||
|
externalInputParser,
|
||||||
|
arrayOf(
|
||||||
|
"providerId",
|
||||||
|
"inputRegex",
|
||||||
|
"parserUrl",
|
||||||
|
),
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
val providerId = externalInputParser.getString("providerId")!!
|
||||||
|
val inputRegex = externalInputParser.getString("inputRegex")!!
|
||||||
|
val parserUrl = externalInputParser.getString("parserUrl")!!
|
||||||
|
return ExternalInputParser(providerId, inputRegex, parserUrl)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun readableMapOf(externalInputParser: ExternalInputParser): ReadableMap =
|
||||||
|
readableMapOf(
|
||||||
|
"providerId" to externalInputParser.providerId,
|
||||||
|
"inputRegex" to externalInputParser.inputRegex,
|
||||||
|
"parserUrl" to externalInputParser.parserUrl,
|
||||||
|
)
|
||||||
|
|
||||||
|
fun asExternalInputParserList(arr: ReadableArray): List<ExternalInputParser> {
|
||||||
|
val list = ArrayList<ExternalInputParser>()
|
||||||
|
for (value in arr.toList()) {
|
||||||
|
when (value) {
|
||||||
|
is ReadableMap -> list.add(asExternalInputParser(value)!!)
|
||||||
|
else -> throw SdkException.Generic(errUnexpectedType(value))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
fun asFiatCurrency(fiatCurrency: ReadableMap): FiatCurrency? {
|
fun asFiatCurrency(fiatCurrency: ReadableMap): FiatCurrency? {
|
||||||
if (!validateMandatoryFields(
|
if (!validateMandatoryFields(
|
||||||
fiatCurrency,
|
fiatCurrency,
|
||||||
@@ -3291,6 +3337,7 @@ fun pushToArray(
|
|||||||
) {
|
) {
|
||||||
when (value) {
|
when (value) {
|
||||||
null -> array.pushNull()
|
null -> array.pushNull()
|
||||||
|
is ExternalInputParser -> array.pushMap(readableMapOf(value))
|
||||||
is FiatCurrency -> array.pushMap(readableMapOf(value))
|
is FiatCurrency -> array.pushMap(readableMapOf(value))
|
||||||
is LnOfferBlindedPath -> array.pushMap(readableMapOf(value))
|
is LnOfferBlindedPath -> array.pushMap(readableMapOf(value))
|
||||||
is LocaleOverrides -> array.pushMap(readableMapOf(value))
|
is LocaleOverrides -> array.pushMap(readableMapOf(value))
|
||||||
|
|||||||
@@ -75,21 +75,6 @@ class BreezSDKLiquidModule(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ReactMethod
|
|
||||||
fun parse(
|
|
||||||
input: String,
|
|
||||||
promise: Promise,
|
|
||||||
) {
|
|
||||||
executor.execute {
|
|
||||||
try {
|
|
||||||
val res = parse(input)
|
|
||||||
promise.resolve(readableMapOf(res))
|
|
||||||
} catch (e: Exception) {
|
|
||||||
promise.reject(e.javaClass.simpleName.replace("Exception", "Error"), e.message, e)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ReactMethod
|
@ReactMethod
|
||||||
fun parseInvoice(
|
fun parseInvoice(
|
||||||
input: String,
|
input: String,
|
||||||
@@ -222,6 +207,21 @@ class BreezSDKLiquidModule(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ReactMethod
|
||||||
|
fun parse(
|
||||||
|
input: String,
|
||||||
|
promise: Promise,
|
||||||
|
) {
|
||||||
|
executor.execute {
|
||||||
|
try {
|
||||||
|
val res = getBindingLiquidSdk().parse(input)
|
||||||
|
promise.resolve(readableMapOf(res))
|
||||||
|
} catch (e: Exception) {
|
||||||
|
promise.reject(e.javaClass.simpleName.replace("Exception", "Error"), e.message, e)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ReactMethod
|
@ReactMethod
|
||||||
fun prepareSendPayment(
|
fun prepareSendPayment(
|
||||||
req: ReadableMap,
|
req: ReadableMap,
|
||||||
|
|||||||
@@ -328,8 +328,12 @@ enum BreezSDKLiquidMapper {
|
|||||||
}
|
}
|
||||||
zeroConfMaxAmountSat = zeroConfMaxAmountSatTmp
|
zeroConfMaxAmountSat = zeroConfMaxAmountSatTmp
|
||||||
}
|
}
|
||||||
|
var externalInputParsers: [ExternalInputParser]?
|
||||||
|
if let externalInputParsersTmp = config["externalInputParsers"] as? [[String: Any?]] {
|
||||||
|
externalInputParsers = try asExternalInputParserList(arr: externalInputParsersTmp)
|
||||||
|
}
|
||||||
|
|
||||||
return Config(liquidElectrumUrl: liquidElectrumUrl, bitcoinElectrumUrl: bitcoinElectrumUrl, mempoolspaceUrl: mempoolspaceUrl, workingDir: workingDir, network: network, paymentTimeoutSec: paymentTimeoutSec, zeroConfMinFeeRateMsat: zeroConfMinFeeRateMsat, breezApiKey: breezApiKey, cacheDir: cacheDir, zeroConfMaxAmountSat: zeroConfMaxAmountSat)
|
return Config(liquidElectrumUrl: liquidElectrumUrl, bitcoinElectrumUrl: bitcoinElectrumUrl, mempoolspaceUrl: mempoolspaceUrl, workingDir: workingDir, network: network, paymentTimeoutSec: paymentTimeoutSec, zeroConfMinFeeRateMsat: zeroConfMinFeeRateMsat, breezApiKey: breezApiKey, cacheDir: cacheDir, zeroConfMaxAmountSat: zeroConfMaxAmountSat, externalInputParsers: externalInputParsers)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func dictionaryOf(config: Config) -> [String: Any?] {
|
static func dictionaryOf(config: Config) -> [String: Any?] {
|
||||||
@@ -344,6 +348,7 @@ enum BreezSDKLiquidMapper {
|
|||||||
"breezApiKey": config.breezApiKey == nil ? nil : config.breezApiKey,
|
"breezApiKey": config.breezApiKey == nil ? nil : config.breezApiKey,
|
||||||
"cacheDir": config.cacheDir == nil ? nil : config.cacheDir,
|
"cacheDir": config.cacheDir == nil ? nil : config.cacheDir,
|
||||||
"zeroConfMaxAmountSat": config.zeroConfMaxAmountSat == nil ? nil : config.zeroConfMaxAmountSat,
|
"zeroConfMaxAmountSat": config.zeroConfMaxAmountSat == nil ? nil : config.zeroConfMaxAmountSat,
|
||||||
|
"externalInputParsers": config.externalInputParsers == nil ? nil : arrayOf(externalInputParserList: config.externalInputParsers!),
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -499,6 +504,45 @@ enum BreezSDKLiquidMapper {
|
|||||||
return currencyInfoList.map { v -> [String: Any?] in return dictionaryOf(currencyInfo: v) }
|
return currencyInfoList.map { v -> [String: Any?] in return dictionaryOf(currencyInfo: v) }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static func asExternalInputParser(externalInputParser: [String: Any?]) throws -> ExternalInputParser {
|
||||||
|
guard let providerId = externalInputParser["providerId"] as? String else {
|
||||||
|
throw SdkError.Generic(message: errMissingMandatoryField(fieldName: "providerId", typeName: "ExternalInputParser"))
|
||||||
|
}
|
||||||
|
guard let inputRegex = externalInputParser["inputRegex"] as? String else {
|
||||||
|
throw SdkError.Generic(message: errMissingMandatoryField(fieldName: "inputRegex", typeName: "ExternalInputParser"))
|
||||||
|
}
|
||||||
|
guard let parserUrl = externalInputParser["parserUrl"] as? String else {
|
||||||
|
throw SdkError.Generic(message: errMissingMandatoryField(fieldName: "parserUrl", typeName: "ExternalInputParser"))
|
||||||
|
}
|
||||||
|
|
||||||
|
return ExternalInputParser(providerId: providerId, inputRegex: inputRegex, parserUrl: parserUrl)
|
||||||
|
}
|
||||||
|
|
||||||
|
static func dictionaryOf(externalInputParser: ExternalInputParser) -> [String: Any?] {
|
||||||
|
return [
|
||||||
|
"providerId": externalInputParser.providerId,
|
||||||
|
"inputRegex": externalInputParser.inputRegex,
|
||||||
|
"parserUrl": externalInputParser.parserUrl,
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
static func asExternalInputParserList(arr: [Any]) throws -> [ExternalInputParser] {
|
||||||
|
var list = [ExternalInputParser]()
|
||||||
|
for value in arr {
|
||||||
|
if let val = value as? [String: Any?] {
|
||||||
|
var externalInputParser = try asExternalInputParser(externalInputParser: val)
|
||||||
|
list.append(externalInputParser)
|
||||||
|
} else {
|
||||||
|
throw SdkError.Generic(message: errUnexpectedType(typeName: "ExternalInputParser"))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
|
static func arrayOf(externalInputParserList: [ExternalInputParser]) -> [Any] {
|
||||||
|
return externalInputParserList.map { v -> [String: Any?] in return dictionaryOf(externalInputParser: v) }
|
||||||
|
}
|
||||||
|
|
||||||
static func asFiatCurrency(fiatCurrency: [String: Any?]) throws -> FiatCurrency {
|
static func asFiatCurrency(fiatCurrency: [String: Any?]) throws -> FiatCurrency {
|
||||||
guard let id = fiatCurrency["id"] as? String else {
|
guard let id = fiatCurrency["id"] as? String else {
|
||||||
throw SdkError.Generic(message: errMissingMandatoryField(fieldName: "id", typeName: "FiatCurrency"))
|
throw SdkError.Generic(message: errMissingMandatoryField(fieldName: "id", typeName: "FiatCurrency"))
|
||||||
|
|||||||
@@ -10,12 +10,6 @@ RCT_EXTERN_METHOD(
|
|||||||
reject: (RCTPromiseRejectBlock)reject
|
reject: (RCTPromiseRejectBlock)reject
|
||||||
)
|
)
|
||||||
|
|
||||||
RCT_EXTERN_METHOD(
|
|
||||||
parse: (NSString*)input
|
|
||||||
resolve: (RCTPromiseResolveBlock)resolve
|
|
||||||
reject: (RCTPromiseRejectBlock)reject
|
|
||||||
)
|
|
||||||
|
|
||||||
RCT_EXTERN_METHOD(
|
RCT_EXTERN_METHOD(
|
||||||
parseInvoice: (NSString*)input
|
parseInvoice: (NSString*)input
|
||||||
resolve: (RCTPromiseResolveBlock)resolve
|
resolve: (RCTPromiseResolveBlock)resolve
|
||||||
@@ -61,6 +55,12 @@ RCT_EXTERN_METHOD(
|
|||||||
reject: (RCTPromiseRejectBlock)reject
|
reject: (RCTPromiseRejectBlock)reject
|
||||||
)
|
)
|
||||||
|
|
||||||
|
RCT_EXTERN_METHOD(
|
||||||
|
parse: (NSString*)input
|
||||||
|
resolve: (RCTPromiseResolveBlock)resolve
|
||||||
|
reject: (RCTPromiseRejectBlock)reject
|
||||||
|
)
|
||||||
|
|
||||||
RCT_EXTERN_METHOD(
|
RCT_EXTERN_METHOD(
|
||||||
prepareSendPayment: (NSDictionary*)req
|
prepareSendPayment: (NSDictionary*)req
|
||||||
resolve: (RCTPromiseResolveBlock)resolve
|
resolve: (RCTPromiseResolveBlock)resolve
|
||||||
|
|||||||
@@ -84,16 +84,6 @@ class RNBreezSDKLiquid: RCTEventEmitter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc(parse:resolve:reject:)
|
|
||||||
func parse(_ input: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
|
||||||
do {
|
|
||||||
var res = try BreezSDKLiquid.parse(input: input)
|
|
||||||
resolve(BreezSDKLiquidMapper.dictionaryOf(inputType: res))
|
|
||||||
} catch let err {
|
|
||||||
rejectErr(err: err, reject: reject)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@objc(parseInvoice:resolve:reject:)
|
@objc(parseInvoice:resolve:reject:)
|
||||||
func parseInvoice(_ input: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
func parseInvoice(_ input: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
||||||
do {
|
do {
|
||||||
@@ -187,6 +177,16 @@ class RNBreezSDKLiquid: RCTEventEmitter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@objc(parse:resolve:reject:)
|
||||||
|
func parse(_ input: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
||||||
|
do {
|
||||||
|
var res = try getBindingLiquidSdk().parse(input: input)
|
||||||
|
resolve(BreezSDKLiquidMapper.dictionaryOf(inputType: res))
|
||||||
|
} catch let err {
|
||||||
|
rejectErr(err: err, reject: reject)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@objc(prepareSendPayment:resolve:reject:)
|
@objc(prepareSendPayment:resolve:reject:)
|
||||||
func prepareSendPayment(_ req: [String: Any], resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
func prepareSendPayment(_ req: [String: Any], resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
||||||
do {
|
do {
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ export interface Config {
|
|||||||
breezApiKey?: string
|
breezApiKey?: string
|
||||||
cacheDir?: string
|
cacheDir?: string
|
||||||
zeroConfMaxAmountSat?: number
|
zeroConfMaxAmountSat?: number
|
||||||
|
externalInputParsers?: ExternalInputParser[]
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ConnectRequest {
|
export interface ConnectRequest {
|
||||||
@@ -89,6 +90,12 @@ export interface CurrencyInfo {
|
|||||||
localeOverrides: LocaleOverrides[]
|
localeOverrides: LocaleOverrides[]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface ExternalInputParser {
|
||||||
|
providerId: string
|
||||||
|
inputRegex: string
|
||||||
|
parserUrl: string
|
||||||
|
}
|
||||||
|
|
||||||
export interface FiatCurrency {
|
export interface FiatCurrency {
|
||||||
id: string
|
id: string
|
||||||
info: CurrencyInfo
|
info: CurrencyInfo
|
||||||
@@ -747,11 +754,6 @@ export const defaultConfig = async (network: LiquidNetwork, breezApiKey: string
|
|||||||
return response
|
return response
|
||||||
}
|
}
|
||||||
|
|
||||||
export const parse = async (input: string): Promise<InputType> => {
|
|
||||||
const response = await BreezSDKLiquid.parse(input)
|
|
||||||
return response
|
|
||||||
}
|
|
||||||
|
|
||||||
export const parseInvoice = async (input: string): Promise<LnInvoice> => {
|
export const parseInvoice = async (input: string): Promise<LnInvoice> => {
|
||||||
const response = await BreezSDKLiquid.parseInvoice(input)
|
const response = await BreezSDKLiquid.parseInvoice(input)
|
||||||
return response
|
return response
|
||||||
@@ -777,6 +779,11 @@ export const checkMessage = async (req: CheckMessageRequest): Promise<CheckMessa
|
|||||||
return response
|
return response
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const parse = async (input: string): Promise<InputType> => {
|
||||||
|
const response = await BreezSDKLiquid.parse(input)
|
||||||
|
return response
|
||||||
|
}
|
||||||
|
|
||||||
export const prepareSendPayment = async (req: PrepareSendRequest): Promise<PrepareSendResponse> => {
|
export const prepareSendPayment = async (req: PrepareSendRequest): Promise<PrepareSendResponse> => {
|
||||||
const response = await BreezSDKLiquid.prepareSendPayment(req)
|
const response = await BreezSDKLiquid.prepareSendPayment(req)
|
||||||
return response
|
return response
|
||||||
|
|||||||
Reference in New Issue
Block a user