feat: update rust nostr

This commit is contained in:
2024-02-06 19:28:46 +07:00
parent a4069dae99
commit 3c4bd39384
22 changed files with 721 additions and 1114 deletions

View File

@@ -4,17 +4,26 @@ use std::time::Duration;
use tauri::State;
#[tauri::command(async)]
pub async fn get_event(id: String, nostr: State<'_, Nostr>) -> Result<String, ()> {
pub async fn get_event(id: &str, nostr: State<'_, Nostr>) -> Result<String, ()> {
let client = &nostr.client;
let event_id;
if id.starts_with("note1") {
event_id = EventId::from_bech32(id).unwrap();
} else if id.starts_with("nevent1") {
event_id = EventId::from_bech32(id).unwrap();
} else if id.starts_with("naddr1") {
event_id = EventId::from_bech32(id).unwrap();
} else {
event_id = EventId::from_hex(id).unwrap();
}
let event_id = EventId::from_bech32(id).unwrap();
let filter = Filter::new().id(event_id);
let events = client
.get_events_of(vec![filter], Some(Duration::from_secs(10)))
.await
.expect("Get metadata failed");
let event = events.into_iter().nth(0).unwrap().as_json();
.expect("Get event failed");
let event = events.first().unwrap().as_json();
Ok(event)
}