aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdrien Hopkins <[email protected]>2025-10-11 17:16:06 -0500
committerAdrien Hopkins <[email protected]>2025-10-11 17:16:06 -0500
commitcbf8818aefafbf389401ed76366a24fc641a9e09 (patch)
tree821fa03626f64613bc3f309aad144d72f0596a5f /src
parent1d5fa4114d0590572ab74f56db3c82510c418250 (diff)
downloadcoinos-ui-cbf8818aefafbf389401ed76366a24fc641a9e09.tar.gz
coinos-ui-cbf8818aefafbf389401ed76366a24fc641a9e09.zip
Use users' preferred relays for DMs
Diffstat (limited to 'src')
-rw-r--r--src/routes/(app)/dm/[recipient]/+page.svelte15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/routes/(app)/dm/[recipient]/+page.svelte b/src/routes/(app)/dm/[recipient]/+page.svelte
index 88f6d92c..2bde110b 100644
--- a/src/routes/(app)/dm/[recipient]/+page.svelte
+++ b/src/routes/(app)/dm/[recipient]/+page.svelte
@@ -54,10 +54,9 @@
return relays;
}
- const loadEvents = async () => {
+ const loadEvents = async (relays: string[]) => {
const wrapped = await pool.querySync(
- DM_RELAYS_LIST,
- { kinds: [1059], "#p": [user.pubkey], limit: DM_FETCH_LIMIT }
+ relays, { kinds: [1059], "#p": [user.pubkey], limit: DM_FETCH_LIMIT }
);
// intentionally decrypting sequentially to avoid having a bunch of popups
@@ -77,7 +76,7 @@
dates.sort((d1, d2) => d1 - d2);
}
- loadEvents();
+ getPreferredRelays(user.pubkey).then(loadEvents);
const sendMessage = async (message: string) => {
let event1, event2;
@@ -93,10 +92,12 @@
message, sk, recipient.pubkey, user.pubkey);
}
- const p1 = Promise.any(pool.publish(DM_RELAYS_LIST, event1));
- const p2 = Promise.any(pool.publish(DM_RELAYS_LIST, event2));
+ const recipientRelays = await getPreferredRelays(recipient.pubkey);
+ const p1 = Promise.any(pool.publish(recipientRelays, event1));
+ const senderRelays = await getPreferredRelays(user.pubkey);
+ const p2 = Promise.any(pool.publish(senderRelays, event2));
await Promise.all([p1, p2]);
- loadEvents();
+ getPreferredRelays(user.pubkey).then(loadEvents);
}
const decryptMessage = async (event: object): object => {