AppNav
AppYatay navigasyon çubuğu. Masaüstünde inline linkler, mobilde hamburger drawer açar. logoContent, navItems ve children slotları. sticky ve bordered seçenekleri.
<%- include('modules/app/AppNav', {
logoContent: 'Acme',
navItems: [
{ label: 'Home', href: '/', active: currentPath === '/' },
{ label: 'Features', href: '/features', active: currentPath === '/features' },
{ label: 'Pricing', href: '/pricing', active: currentPath === '/pricing' },
{ label: 'Docs', href: '/docs', active: currentPath === '/docs' },
],
children: `
<%- include('modules/ui/Button', { variant: 'outline', children: 'Sign in', href: '/login' }) %>
<%- include('modules/ui/Button', { children: 'Get started', href: '/register' }) %>
`
}) %>
JD
<%- include('modules/app/AppNav', {
logoContent: 'Dashboard',
navItems: [
{ label: 'Overview', href: '/dashboard', active: true },
{ label: 'Analytics', href: '/dashboard/analytics' },
{ label: 'Projects', href: '/dashboard/projects' },
{ label: 'Team', href: '/dashboard/team' },
],
children: `
<%- include('modules/domain/common/user/UserMenu', { name: user.name, role: user.role }) %>
`
}) %>
<%
var _navItems = locals.navItems || [];
var _sticky = !!locals.sticky;
var _bordered = locals.bordered !== false;
var _drawerId = 'appnav-drawer-' + Math.random().toString(36).substr(2,6);
var _title = locals.mobileSidebarTitle || 'Navigation';
%>
<% if (locals.logoContent) { %><%- locals.logoContent %><% } %>
<% if (locals.children) { %>
<%- locals.children %>
<% } %>
<%- include('./NavDrawer', { id: _drawerId, title: _title, side: 'left', open: false, navItems: _navItems }) %>