You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

63 lines
2.7 KiB

import Icon from '@/assets/Icon'
import Logo from '@/assets/Logo'
import { useScreenSize } from '@/providers/ScreenSizeProvider'
import HelpAndAccountMenu from '@/components/HelpAndAccountMenu'
import DiscussionsButton from './DiscussionsButton'
import FeedButton from './FeedButton'
import HomeButton from './HomeButton'
import NotificationButton from './NotificationButton'
import PostButton from './PostButton'
import RssButton from './RssButton'
import SearchButton from './SearchButton'
import FollowsLatestButton from './FollowsLatestButton'
import FavoritesButton from './FavoritesButton'
import SpellsButton from './SpellsButton'
import { ConnectedRelaysSidebarStrip } from '@/components/ConnectedRelays/ConnectedRelaysSidebarStrip'
import { FavoriteRelaysActiveStripSidebar } from '@/components/FavoriteRelaysActiveStrip'
import PaneModeToggle from './PaneModeToggle'
import DownloadDesktopSidebarButton from './DownloadDesktopSidebarButton'
import LiveActivitiesStrip from '@/components/LiveActivitiesStrip'
import { ReadOnlySessionIndicator } from '@/components/ReadOnlySessionIndicator'
export default function PrimaryPageSidebar() {
const { isSmallScreen } = useScreenSize()
if (isSmallScreen) return null
return (
<div className="imwald-sidebar w-[4.8rem] xl:w-[15.6rem] flex flex-col pb-2 pt-4 px-2 xl:pl-4 xl:pr-6 justify-between h-full shrink-0">
<div className="imwald-sidebar__atmosphere" aria-hidden />
<div className="relative z-[1] flex min-h-0 flex-1 flex-col justify-between">
<div className="space-y-2">
<div className="mb-6 w-full min-w-0">
<Icon className="mx-auto xl:hidden" />
{/* Full-bleed banner at xl: span entire sidebar column (undo pl-4 + pr-6) */}
<div className="max-xl:hidden -ml-4 -mr-6 w-[calc(100%+2.5rem)] min-w-0">
<Logo className="h-auto w-full max-h-[5.5rem] max-w-full object-contain object-center" />
</div>
</div>
<ReadOnlySessionIndicator variant="sidebar" />
<div className="max-xl:hidden w-full min-w-0 px-1">
<LiveActivitiesStrip placement="sidebar" />
</div>
<HomeButton />
<FeedButton />
<DiscussionsButton />
<NotificationButton />
<SearchButton />
<FollowsLatestButton />
<FavoritesButton />
<SpellsButton />
<RssButton />
<FavoriteRelaysActiveStripSidebar />
<ConnectedRelaysSidebarStrip />
<PostButton />
</div>
<div className="space-y-2">
<HelpAndAccountMenu variant="sidebar" />
<PaneModeToggle />
<DownloadDesktopSidebarButton />
</div>
</div>
</div>
)
}