From 9285ecca3de53489124d701327157396e9e20d81 Mon Sep 17 00:00:00 2001 From: codytseng Date: Wed, 12 Mar 2025 22:33:46 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/services/client.service.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/services/client.service.ts b/src/services/client.service.ts index dee57543..a3344c63 100644 --- a/src/services/client.service.ts +++ b/src/services/client.service.ts @@ -17,7 +17,7 @@ import { SimplePool, VerifiedEvent } from 'nostr-tools' -import { AbstractRelay } from 'nostr-tools/abstract-relay' +import { AbstractRelay, Subscription } from 'nostr-tools/abstract-relay' import indexedDb from './indexed-db.service' type TTimelineRef = [string, number] @@ -305,14 +305,15 @@ class ClientService extends EventTarget { let eosed = false let closedCount = 0 const closeReasons: string[] = [] - const subPromises = relays.map(async (url) => { - const relay = await this.pool.ensureRelay(url) + const subPromises: Promise[] = [] + relays.forEach((url) => { let hasAuthed = false - return startSub() + subPromises.push(startSub()) - function startSub() { + async function startSub() { startedCount++ + const relay = await that.pool.ensureRelay(url) return relay.subscribe(filters, { receivedEvent: (relay, id) => { that.trackEventSeenOn(id, relay) @@ -358,7 +359,7 @@ class ClientService extends EventTarget { .then(() => { hasAuthed = true if (!eosed) { - startSub() + subPromises.push(startSub()) } }) .catch(() => {