From 53d47fcb80437a5af1917cf0a1948d7209a6edd3 Mon Sep 17 00:00:00 2001 From: daniyal Date: Wed, 11 Sep 2024 22:25:55 +0500 Subject: [PATCH] fix: improve findUserRelays method in metadata controller --- src/controllers/metadata.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/controllers/metadata.ts b/src/controllers/metadata.ts index cd2592c..1eb2dad 100644 --- a/src/controllers/metadata.ts +++ b/src/controllers/metadata.ts @@ -121,10 +121,10 @@ export class MetadataController { public findUserRelays = async ( hexKey: string, userRelaysType: UserRelaysType = UserRelaysType.Both - ) => { + ): Promise => { log(true, LogType.Info, `ℹ Finding user's relays`, hexKey, userRelaysType) - const ndkRelayListPromise = await getRelayListForUser(hexKey, this.ndk) + const ndkRelayListPromise = getRelayListForUser(hexKey, this.ndk) // Use Promise.race to either get the NDKRelayList instance or handle the timeout return await Promise.race([ @@ -132,11 +132,12 @@ export class MetadataController { timeout() // Custom timeout function that rejects after a specified time ]) .then((ndkRelayList) => { - return ndkRelayList[userRelaysType] + if (ndkRelayList) return ndkRelayList[userRelaysType] + return [] // Return an empty array if ndkRelayList is undefined }) .catch((err) => { log(true, LogType.Error, err) - return [] as string[] // Return an empty array if an error occurs + return [] // Return an empty array if an error occurs }) }