diff --git a/packages/web/src/components/layout/MobileDmsScreen.tsx b/packages/web/src/components/layout/MobileDmsScreen.tsx index cfc9dc19..5a3c8090 100644 --- a/packages/web/src/components/layout/MobileDmsScreen.tsx +++ b/packages/web/src/components/layout/MobileDmsScreen.tsx @@ -9,6 +9,7 @@ import { Avatar } from '../ui/Avatar'; import { Mascot } from '../ui/Mascot'; import { resolveAssetUrl } from '../../utils/assetUrls'; import { useNavigate } from 'react-router-dom'; +import { parseFederatedUsername } from '../../utils/identity'; export function MobileDmsScreen() { const pushMobileScreen = useUIStore((s) => s.pushMobileScreen); @@ -195,6 +196,13 @@ export function MobileDmsScreen() { )} + {(() => { + const mainUser = otherMembers[0]; + if (!mainUser) return null; + const { domain } = parseFederatedUsername(mainUser.username); + if (!domain) return null; + return
@{domain}
; + })()} {preview && (

{previewSender && previewSender.id !== authUser?.id diff --git a/packages/web/src/components/layout/MobileSpacesScreen.tsx b/packages/web/src/components/layout/MobileSpacesScreen.tsx index b6a0b34d..11c35121 100644 --- a/packages/web/src/components/layout/MobileSpacesScreen.tsx +++ b/packages/web/src/components/layout/MobileSpacesScreen.tsx @@ -13,6 +13,7 @@ import type { Channel } from '@backspace/shared'; import { Mascot } from '../ui/Mascot'; import { ConfirmDialog } from '../ui/ConfirmDialog'; import { TransferOwnershipModal } from '../modals/TransferOwnershipModal'; +import { useInstanceStore } from '../../stores/instanceStore'; export function MobileSpacesScreen() { const spaces = useSpaceStore((s) => s.spaces); @@ -466,6 +467,24 @@ export function MobileSpacesScreen() { )} + {(() => { + const origin = (space as TaggedSpace)._instanceOrigin; + if (!origin) return null; + const instances = useInstanceStore.getState().instances; + const inst = instances.find(i => i.origin === origin); + const isDisconnected = inst ? !inst.connected : false; + return ( +

+ {isDisconnected ? ( +
+ ) : ( + + + + )} +
+ ); + })()}
); })} diff --git a/packages/web/src/components/layout/MobileYouScreen.tsx b/packages/web/src/components/layout/MobileYouScreen.tsx index 5e8c18b4..aecfa4fe 100644 --- a/packages/web/src/components/layout/MobileYouScreen.tsx +++ b/packages/web/src/components/layout/MobileYouScreen.tsx @@ -3,6 +3,7 @@ import { useUIStore } from '../../stores/uiStore'; import { useAuthStore } from '../../stores/authStore'; import { Avatar } from '../ui/Avatar'; import { ConfirmDialog } from '../ui/ConfirmDialog'; +import { parseFederatedUsername } from '../../utils/identity'; export function MobileYouScreen() { const pushMobileScreen = useUIStore((s) => s.pushMobileScreen); @@ -99,6 +100,11 @@ export function MobileYouScreen() { {user.displayName ?? user.username}

@{user.username}

+ {(() => { + const { domain } = parseFederatedUsername(user.username); + if (!domain) return null; + return
Home instance: {domain}
; + })()} {user.customStatus && (

{user.customStatus}

)}