export: implement export for psbt
This commit is contained in:
parent
baf4e75efe
commit
2b9324993a
@ -45,7 +45,7 @@ impl ExportModal {
|
||||
let date = chrono::Local::now().format("%Y-%m-%dT%H-%M-%S");
|
||||
format!("liana-txs-{date}.csv")
|
||||
}
|
||||
ExportType::Psbt(_) => todo!(),
|
||||
ExportType::Psbt(_) => "psbt.psbt".into(),
|
||||
ExportType::Descriptor(descriptor) => {
|
||||
let checksum = descriptor
|
||||
.to_string()
|
||||
|
||||
@ -199,7 +199,7 @@ impl Export {
|
||||
) {
|
||||
match export_type {
|
||||
ExportType::Transactions => export_transactions(sender, daemon, path).await,
|
||||
ExportType::Psbt(_) => todo!(),
|
||||
ExportType::Psbt(psbt) => export_psbt(sender, path, psbt),
|
||||
ExportType::Descriptor(descriptor) => export_descriptor(sender, path, descriptor),
|
||||
};
|
||||
}
|
||||
@ -472,6 +472,17 @@ pub fn export_descriptor(
|
||||
send_progress!(sender, Ended);
|
||||
}
|
||||
|
||||
pub fn export_psbt(sender: Sender<ExportProgress>, path: PathBuf, psbt: String) {
|
||||
let mut file = open_file!(path, sender);
|
||||
|
||||
if let Err(e) = file.write_all(psbt.as_bytes()) {
|
||||
send_error!(sender, e.into());
|
||||
return;
|
||||
}
|
||||
send_progress!(sender, Progress(100.0));
|
||||
send_progress!(sender, Ended);
|
||||
}
|
||||
|
||||
pub async fn get_path(filename: String) -> Option<PathBuf> {
|
||||
rfd::AsyncFileDialog::new()
|
||||
.set_title("Choose a location to export...")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user