@@ -5,6 +5,8 @@ import { cn } from '@openzeppelin/ui-builder-utils';
55export interface SidebarLayoutProps {
66 /** Content for the sidebar header (e.g., logo) */
77 header ?: ReactNode ;
8+ /** Content to be displayed below the header but above the scrollable area */
9+ subHeader ?: ReactNode ;
810 /** Main scrollable content area */
911 children : ReactNode ;
1012 /** Content for the fixed footer (e.g., nav icons) */
@@ -29,6 +31,7 @@ export interface SidebarLayoutProps {
2931 */
3032export function SidebarLayout ( {
3133 header,
34+ subHeader,
3235 children,
3336 footer,
3437 className,
@@ -52,7 +55,10 @@ export function SidebarLayout({
5255 style = { { width : widthStyle } }
5356 >
5457 { /* Fixed Header */ }
55- { header && < div className = "flex-shrink-0 px-8 pt-12" > { header } </ div > }
58+ { header && < div className = "shrink-0 px-8 pt-12" > { header } </ div > }
59+
60+ { /* Fixed SubHeader */ }
61+ { subHeader && < div className = "shrink-0 px-8 mt-6" > { subHeader } </ div > }
5662
5763 { /* Scrollable Content Area */ }
5864 < div className = "flex-1 overflow-y-auto px-8 pb-24" > { children } </ div >
@@ -93,7 +99,10 @@ export function SidebarLayout({
9399 >
94100 < div className = "flex h-full flex-col" >
95101 { /* Mobile Header */ }
96- { header && < div className = "flex-shrink-0 px-6 pt-10 pb-4" > { header } </ div > }
102+ { header && < div className = "shrink-0 px-6 pt-10 pb-4" > { header } </ div > }
103+
104+ { /* Mobile SubHeader */ }
105+ { subHeader && < div className = "shrink-0 px-6 pb-4" > { subHeader } </ div > }
97106
98107 { /* Mobile Scrollable Content */ }
99108 < div className = "flex-1 overflow-y-auto px-6 pb-20" > { children } </ div >
0 commit comments