1d04fd43fSBartosz Kaszubowskiimport { SidebarNodeProps } from './Sidebar'; 2999e0356SBartosz Kaszubowskiimport { SidebarGroup, SidebarCollapsible, SidebarLink } from './index'; 3d04fd43fSBartosz Kaszubowski 4d04fd43fSBartosz Kaszubowskiexport const SidebarSection = ({ route, ...rest }: SidebarNodeProps) => { 5d04fd43fSBartosz Kaszubowski // If the section or group is hidden, or has no content, we should not render it 6d04fd43fSBartosz Kaszubowski if (route.hidden || !route.children?.length) { 7d04fd43fSBartosz Kaszubowski return null; 8d04fd43fSBartosz Kaszubowski } 9d04fd43fSBartosz Kaszubowski 10d04fd43fSBartosz Kaszubowski return ( 11d04fd43fSBartosz Kaszubowski <SidebarCollapsible key={`section-${route.name}`} info={route}> 12*6c13861cSBartosz Kaszubowski <div className="mb-2"> 13999e0356SBartosz Kaszubowski {route.children.map(child => 14999e0356SBartosz Kaszubowski child.type === 'page' ? ( 15999e0356SBartosz Kaszubowski <SidebarLink key={`${route.name}-${child.name}`} info={child}> 16999e0356SBartosz Kaszubowski {child.sidebarTitle || child.name} 17999e0356SBartosz Kaszubowski </SidebarLink> 18999e0356SBartosz Kaszubowski ) : ( 19d04fd43fSBartosz Kaszubowski <SidebarGroup 20d04fd43fSBartosz Kaszubowski {...rest} 21999e0356SBartosz Kaszubowski key={`group-${child.name}-${route.name}`} 22999e0356SBartosz Kaszubowski route={child} 23d04fd43fSBartosz Kaszubowski parentRoute={route} 24d04fd43fSBartosz Kaszubowski /> 25999e0356SBartosz Kaszubowski ) 26999e0356SBartosz Kaszubowski )} 27999e0356SBartosz Kaszubowski </div> 28d04fd43fSBartosz Kaszubowski </SidebarCollapsible> 29d04fd43fSBartosz Kaszubowski ); 30d04fd43fSBartosz Kaszubowski}; 31