diff --git a/src/components/ConnectedRelays/ActiveRelaysDropdownSection.tsx b/src/components/ConnectedRelays/ActiveRelaysDropdownSection.tsx
index 55836eb0..3e7a0ce3 100644
--- a/src/components/ConnectedRelays/ActiveRelaysDropdownSection.tsx
+++ b/src/components/ConnectedRelays/ActiveRelaysDropdownSection.tsx
@@ -1,34 +1,14 @@
-import { useSmartRelayNavigation } from '@/PageManager'
import {
- DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuSeparator
} from '@/components/ui/dropdown-menu'
import { useRelayConnectionRows } from '@/hooks/useRelayConnectionRows'
-import { toRelay } from '@/lib/link'
-import { simplifyUrl } from '@/lib/url'
-import { cn } from '@/lib/utils'
import { useTranslation } from 'react-i18next'
-import RelayIcon from '../RelayIcon'
+import { ActiveRelaysIconGrid } from './ActiveRelaysIconGrid'
-function rowMuted(connected: boolean) {
- return !connected
-}
-
-function rowTitle(url: string, connected: boolean, t: (k: string) => string) {
- const base = simplifyUrl(url)
- if (!connected) return `${base} — ${t('Not connected')}`
- return base
-}
-
-function rowClass(connected: boolean) {
- return cn(rowMuted(connected) && 'opacity-45 text-muted-foreground')
-}
-
-/** Relay list block for account (or similar) dropdown menus. */
+/** Compact active-relay icons in the account (user badge) dropdown. */
export function ActiveRelaysDropdownSection() {
const { t } = useTranslation()
- const { navigateToRelay } = useSmartRelayNavigation()
const { rows, connectedCount } = useRelayConnectionRows()
if (rows.length === 0) return null
@@ -42,17 +22,13 @@ export function ActiveRelaysDropdownSection() {
{t('Active relays')}
{countSummary}
- {rows.map(({ url, connected }) => (
-
+ — +
+ ) + } + + return ( +{t('Active relays')}
-—
-- {t('Active relays')} -
-+ {t('Recipients detected from your message:')} {extractedMentions.length} + {!showMoreOptions ? ( + {t('Open Advanced to adjust mention recipients')} + ) : null} +
+ ) : ( ++ {t('Add recipients using nostr: mentions (e.g., nostr:npub1...) or open Advanced')} +
+ )}- {relayCapBlockInfo.outboxSlotsInPublish > 0 - ? t('Publish relay cap hint with outbox first', { - max: MAX_PUBLISH_RELAYS, - reservedSlots: relayCapBlockInfo.outboxSlotsInPublish, - selected: relayCapBlockInfo.selectedTotal, - selectedContacted: relayCapBlockInfo.selectedContacted - }) - : t('Publish relay cap hint', { - max: MAX_PUBLISH_RELAYS, - selected: relayCapBlockInfo.selectedTotal, - selectedContacted: relayCapBlockInfo.selectedContacted - })} -
- )} - {isDiscussionThread && threadErrors.relay && ( -{threadErrors.relay}
- )} -