feat: 💨
This commit is contained in:
@@ -8,7 +8,7 @@ import {
|
|||||||
} from '@renderer/components/ui/dropdown-menu'
|
} from '@renderer/components/ui/dropdown-menu'
|
||||||
import { useFetchProfile } from '@renderer/hooks'
|
import { useFetchProfile } from '@renderer/hooks'
|
||||||
import { toProfile } from '@renderer/lib/link'
|
import { toProfile } from '@renderer/lib/link'
|
||||||
import { generateImageByPubkey } from '@renderer/lib/pubkey'
|
import { formatPubkey, generateImageByPubkey } from '@renderer/lib/pubkey'
|
||||||
import { useSecondaryPage } from '@renderer/PageManager'
|
import { useSecondaryPage } from '@renderer/PageManager'
|
||||||
import { useNostr } from '@renderer/providers/NostrProvider'
|
import { useNostr } from '@renderer/providers/NostrProvider'
|
||||||
import { useTranslation } from 'react-i18next'
|
import { useTranslation } from 'react-i18next'
|
||||||
@@ -24,10 +24,9 @@ export default function ProfileButton({
|
|||||||
const { logout } = useNostr()
|
const { logout } = useNostr()
|
||||||
const { profile } = useFetchProfile(pubkey)
|
const { profile } = useFetchProfile(pubkey)
|
||||||
const { push } = useSecondaryPage()
|
const { push } = useSecondaryPage()
|
||||||
if (!profile) return null
|
|
||||||
|
|
||||||
const { username, avatar } = profile
|
|
||||||
const defaultAvatar = generateImageByPubkey(pubkey)
|
const defaultAvatar = generateImageByPubkey(pubkey)
|
||||||
|
const { username, avatar } = profile || { username: formatPubkey(pubkey), avatar: defaultAvatar }
|
||||||
|
|
||||||
let triggerComponent: React.ReactNode
|
let triggerComponent: React.ReactNode
|
||||||
if (variant === 'titlebar') {
|
if (variant === 'titlebar') {
|
||||||
|
|||||||
@@ -58,8 +58,6 @@ export default function NoteList({
|
|||||||
}
|
}
|
||||||
if (events.length > 0) {
|
if (events.length > 0) {
|
||||||
setEvents((pre) => [...pre, ...events])
|
setEvents((pre) => [...pre, ...events])
|
||||||
}
|
|
||||||
if (events.length > 0) {
|
|
||||||
setUntil(events[events.length - 1].created_at - 1)
|
setUntil(events[events.length - 1].created_at - 1)
|
||||||
}
|
}
|
||||||
if (areAlgoRelays) {
|
if (areAlgoRelays) {
|
||||||
|
|||||||
@@ -14,6 +14,9 @@ export function useFetchRelayInfos(urls: string[]) {
|
|||||||
if (urls.length === 0) {
|
if (urls.length === 0) {
|
||||||
return setIsFetching(false)
|
return setIsFetching(false)
|
||||||
}
|
}
|
||||||
|
const timer = setTimeout(() => {
|
||||||
|
setIsFetching(false)
|
||||||
|
}, 5000)
|
||||||
try {
|
try {
|
||||||
const relayInfos = await client.fetchRelayInfos(urls)
|
const relayInfos = await client.fetchRelayInfos(urls)
|
||||||
setRelayInfos(relayInfos)
|
setRelayInfos(relayInfos)
|
||||||
@@ -21,6 +24,7 @@ export function useFetchRelayInfos(urls: string[]) {
|
|||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
} finally {
|
} finally {
|
||||||
|
clearTimeout(timer)
|
||||||
setIsFetching(false)
|
setIsFetching(false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user