{"success":true,"data":{"block":{"id":"navbar-icon-links","name":"Navbar Icon Links","title":"NavBar Icon Links","category":"Navbar","categorySlug":"navbar","description":"A compact navigation bar with icon-only links and tooltips. Features a minimalist design with icon-only navigation links that display tooltips on hover to reveal the link label. This approach maximizes horizontal space while maintaining accessibility through tooltips. The active state is indicated by a highlighted background. Mobile view uses a slide-out sheet with full text labels. Ideal for dashboards, admin panels, applications, and interfaces where users are familiar with the navigation structure and icon meanings.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290457/9hxc4wfq9dy6ed1vvc6mqesbazbn/cleanshot-2026-02-19-at-05-18-03-2x.png","mobile":"https://cdn.ing/assets/i/r/290457/9hxc4wfq9dy6ed1vvc6mqesbazbn/cleanshot-2026-02-19-at-05-18-03-2x.png"},"componentPath":"blocks/navbars/navbar-icon-links.tsx","code":"import { NavbarIconLinks } from \"@opensite/ui/blocks/navbars/navbar-icon-links\";\nimport { brandLogoPlaceholders } from \"@/lib/media\";\nimport { DynamicIcon } from \"@opensite/ui/components/dynamic-icon\";\nimport CarouselAnimatedSections from \"@/blocks/carousel/carousel-animated-sections\";\nimport FeatureShowcase from \"@/blocks/features/feature-showcase\";\nimport FaqSplitHelp from \"@/blocks/faq/faq-split-help\";\n\nexport default function Demo() {\n  return (\n    <>\n      <NavbarIconLinks\n      logo={{\n        url: \"/\",\n        src: brandLogoPlaceholders.black[0],\n        title: \"IconNav\",\n        alt: \"IconNav Logo\",\n      }}\n      navItems={[\n        {\n          title: \"Dashboard\",\n          url: \"#\",\n          icon: \"lucide/layout-dashboard\",\n        },\n        {\n          title: \"Analytics\",\n          url: \"#\",\n          icon: \"lucide/bar-chart-3\",\n        },\n        {\n          title: \"Projects\",\n          url: \"#\",\n          icon: \"lucide/folder\",\n        },\n        {\n          title: \"Team\",\n          url: \"#\",\n          icon: \"lucide/users\",\n        },\n        {\n          title: \"Settings\",\n          url: \"#\",\n          icon: \"lucide/settings\",\n        },\n      ]}\n      authActions={[\n        {\n          label: \"Notifications\",\n          variant: \"ghost\",\n          href: \"#\",\n          icon: <DynamicIcon name=\"lucide/bell\" size={16} />,\n        },\n        {\n          label: \"Profile\",\n          variant: \"ghost\",\n          href: \"#\",\n          icon: <DynamicIcon name=\"lucide/user\" size={16} />,\n        },\n      ]}\n      />\n\n      <CarouselAnimatedSections />\n      <FeatureShowcase />\n      <FaqSplitHelp />\n    </>\n  );\n}","propsSchema":{"logo":{"type":"object","description":"Logo configuration","fields":{"url":{"type":"string","description":"URL to navigate to when logo is clicked","required":false},"src":{"type":"string","description":"Image source for the logo","required":false},"alt":{"type":"string","description":"Alt text for the logo image","required":false},"title":{"type":"object","description":"Text title to display (alternative to image)","typeLabel":"React.ReactNode","required":false},"className":{"type":"string","description":"Additional CSS classes for the logo","required":false}},"typeLabel":"LogoConfig","required":true,"mediaHints":{"path":"logo","roles":["logo"],"disallowedRoles":["favicon","video-thumbnail"],"minPixelClass":"small","required":true,"note":"Brand logo. LOGO IMAGE ONLY. Do not use photos, favicons, or video assets."}},"navItems":{"type":"array","description":"Navigation items with icons","items":{"type":"object","description":"","fields":{"title":{"type":"string","description":"","required":true},"url":{"type":"string","description":"","required":true},"icon":{"type":"object","description":"","fields":{},"typeLabel":"DynamicIconName","required":true}},"typeLabel":"NavItem"},"typeLabel":"NavItem[]","required":true,"minItems":3,"maxItems":7},"authActions":{"type":"array","description":"Authentication action configurations","items":{"type":"object","description":"","fields":{"variant":{"type":"string","description":"","typeLabel":"\"default\" | \"destructive\" | \"outline\" | \"secondary\" | \"ghost\" | \"link\"","required":false},"size":{"type":"string","description":"","typeLabel":"\"default\" | \"sm\" | \"md\" | \"lg\" | \"icon\" | \"icon-sm\" | \"icon-lg\"","required":false},"label":{"type":"object","description":"Button/link label text or ReactNode","typeLabel":"ReactNode","required":false},"icon":{"type":"object","description":"Icon to display (typically before label)","typeLabel":"ReactNode","required":false},"iconAfter":{"type":"object","description":"Icon to display after the label","typeLabel":"ReactNode","required":false},"href":{"type":"string","description":"URL for link behavior","required":false},"onClick":{"type":"object","description":"Click handler for button behavior","typeLabel":"MouseEventHandler","required":false},"className":{"type":"string","description":"Additional CSS classes for the action","required":false},"children":{"type":"object","description":"Custom children (overrides label + icon rendering)","typeLabel":"ReactNode","required":false},"aria-label":{"type":"string","description":"ARIA label for accessibility","required":false},"asButton":{"type":"boolean","description":"Render as a button element instead of an anchor/link","required":false}},"typeLabel":"ActionConfig"},"typeLabel":"ActionConfig[]","required":false,"minItems":0,"maxItems":3}},"exampleProps":{"logo":{"url":"/","src":"https://cdn.ing/assets/i/r/287635/1tmeh86afyxszfz7hbmvcc0oct8w/logo-dark.png","title":"IconNav","alt":"IconNav Logo"},"navItems":[{"title":"Dashboard","url":"#","icon":"lucide/layout-dashboard"},{"title":"Analytics","url":"#","icon":"lucide/bar-chart-3"},{"title":"Projects","url":"#","icon":"lucide/folder"},{"title":"Team","url":"#","icon":"lucide/users"},{"title":"Settings","url":"#","icon":"lucide/settings"}],"authActions":[{"label":"Notifications","variant":"ghost","href":"#","icon":"lucide/bell"},{"label":"Profile","variant":"ghost","href":"#","icon":"lucide/user"}]},"dependencies":["@opensite/ui"],"tags":["navbar","navigation","icon-only","tooltips","compact","minimalist","dashboard","admin-panel","application","space-efficient"],"performance":{},"importantUsageNotes":"All media src values must be absolute URLs to real assets; relative paths and placeholder media variables are not allowed. Every item in 'navItems' MUST include an 'icon' (DynamicIconName) — this field is required. Items use 'title'/'url'/'icon' — there are no dropdown sub-items. Tooltips automatically display the 'title' on hover. The 'authActions' array renders on the right — typically icon buttons for notifications and profile.","usageRequirements":{"requiredProps":["logo","navItems"],"mediaSlots":{"logo":{"path":"logo","roles":["logo"],"disallowedRoles":["favicon","video-thumbnail"],"minPixelClass":"small","required":true,"note":"Brand logo. LOGO IMAGE ONLY. Do not use photos, favicons, or video assets."}},"propConstraints":{"navItems":{"minItems":3,"maxItems":7},"authActions":{"minItems":0,"maxItems":3}}}}},"timestamp":"2026-06-27T20:18:43.127Z"}