wip
Some checks failed
Rust / build (ubuntu-latest, stable) (push) Failing after 1m43s

This commit is contained in:
2026-02-17 07:54:46 +07:00
parent d25080f5e7
commit 1d8e3724a8
8 changed files with 239 additions and 248 deletions

View File

@@ -14,7 +14,7 @@ use gpui::{
};
use nostr_sdk::prelude::*;
use smallvec::{smallvec, SmallVec};
use state::{tracker, NostrRegistry, RelayState, DEVICE_GIFTWRAP, USER_GIFTWRAP};
use state::{NostrRegistry, RelayState, DEVICE_GIFTWRAP, USER_GIFTWRAP};
mod message;
mod room;
@@ -153,19 +153,10 @@ impl ChatRegistry {
match Self::extract_rumor(&client, &device_signer, event.as_ref()).await {
Ok(rumor) => match rumor.created_at >= initialized_at {
true => {
// Check if the event is sent by coop
let sent_by_coop = {
let tracker = tracker().read().await;
tracker.is_sent_by_coop(&event.id)
};
// No need to emit if sent by coop
// the event is already emitted
if !sent_by_coop {
let new_message = NewMessage::new(event.id, rumor);
let signal = Signal::Message(new_message);
let new_message = NewMessage::new(event.id, rumor);
let signal = Signal::Message(new_message);
tx.send_async(signal).await.ok();
}
tx.send_async(signal).await.ok();
}
false => {
status.store(true, Ordering::Release);

View File

@@ -30,11 +30,13 @@ impl SendReport {
}
}
/// Set the output.
pub fn output(mut self, output: Output<EventId>) -> Self {
self.output = Some(output);
self
}
/// Set the error message.
pub fn error<T>(mut self, error: T) -> Self
where
T: Into<SharedString>,
@@ -43,11 +45,13 @@ impl SendReport {
self
}
pub fn is_relay_error(&self) -> bool {
self.error.is_some()
/// Returns true if the send is pending.
pub fn pending(&self) -> bool {
self.output.is_none() && self.error.is_none()
}
pub fn is_sent_success(&self) -> bool {
/// Returns true if the send was successful.
pub fn success(&self) -> bool {
if let Some(output) = self.output.as_ref() {
!output.success.is_empty()
} else {