feat: Dokploy-style sidebar layout for site pages
Sidebar takes full viewport height with Pulse logo at top. No Header on site pages — UtilityBar in content area provides theme toggle, app launcher, notifications, and user menu. Non-site authenticated pages keep static Header. No footer on dashboard pages.
This commit is contained in:
@@ -253,8 +253,23 @@ export default function Sidebar({
|
||||
|
||||
return (
|
||||
<div className="flex flex-col h-full">
|
||||
{/* Logo */}
|
||||
<Link
|
||||
href="/"
|
||||
className={`flex items-center gap-2.5 px-4 py-4 border-b border-neutral-200 dark:border-neutral-800 shrink-0 ${isCollapsed ? 'justify-center' : ''}`}
|
||||
>
|
||||
<img
|
||||
src="/pulse_icon_no_margins.png"
|
||||
alt="Pulse"
|
||||
className="w-8 h-8 shrink-0"
|
||||
/>
|
||||
{!isCollapsed && (
|
||||
<span className="text-lg font-bold text-neutral-900 dark:text-white tracking-tight">Pulse</span>
|
||||
)}
|
||||
</Link>
|
||||
|
||||
{/* Site Picker */}
|
||||
<div className="pt-4 pb-2">
|
||||
<div className="pt-3 pb-2">
|
||||
<SitePicker sites={sites} currentSiteId={siteId} collapsed={isCollapsed} />
|
||||
</div>
|
||||
|
||||
@@ -319,7 +334,7 @@ export default function Sidebar({
|
||||
|
||||
{/* Desktop sidebar */}
|
||||
<aside
|
||||
className={`hidden lg:flex flex-col shrink-0 border-r border-neutral-200 dark:border-neutral-800 bg-white dark:bg-neutral-900 transition-[width] duration-200 overflow-hidden ${
|
||||
className={`hidden lg:flex flex-col shrink-0 border-r border-neutral-200 dark:border-neutral-800 bg-white dark:bg-neutral-900 transition-[width] duration-200 ${
|
||||
collapsed ? 'w-[68px]' : 'w-60'
|
||||
}`}
|
||||
>
|
||||
|
||||
Reference in New Issue
Block a user