{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "branding-header", "title": "Branding Header", "description": "Full-width header bar with logo/branding slot and optional action area.", "registryDependencies": ["separator", "utils"], "files": [ { "path": "src/patterns/branding-header/branding-header.tsx", "content": "import * as React from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { Separator } from \"../../primitives/separator\";\n\n// ---------------------------------------------------------------------------\n// Public types\n// ---------------------------------------------------------------------------\n\nexport interface BrandingHeaderProps {\n /** Application / tenant name shown as the primary heading */\n title: string;\n /** Optional tagline or secondary line below the title */\n subtitle?: string;\n /**\n * URL of the logo image. When provided the image is displayed to the left\n * of the title. When omitted the title is shown without an icon.\n */\n logoUrl?: string;\n /** Alt text for the logo image; defaults to `\"${title} logo\"` */\n logoAlt?: string;\n /**\n * Optional slot for actions rendered at the trailing end of the header\n * (e.g. a user-menu button, theme toggle, or notification icon).\n */\n actions?: React.ReactNode;\n /** Extra class names applied to the root
element */\n className?: string;\n}\n\n// ---------------------------------------------------------------------------\n// Main export\n// ---------------------------------------------------------------------------\n\nexport function BrandingHeader({\n title,\n subtitle,\n logoUrl,\n logoAlt,\n actions,\n className,\n}: Readonly) {\n return (\n
\n {/* Logo */}\n {logoUrl && (\n <>\n \n \n \n )}\n\n {/* Brand text */}\n
\n {title}\n {subtitle && (\n \n {subtitle}\n \n )}\n
\n\n {/* Spacer */}\n
\n\n {/* Trailing actions slot */}\n {actions &&
{actions}
}\n
\n );\n}\n", "type": "registry:ui" }, { "path": "src/patterns/branding-header/index.ts", "content": "export { BrandingHeader } from \"./branding-header\";\nexport type { BrandingHeaderProps } from \"./branding-header\";\n", "type": "registry:ui" } ], "type": "registry:ui" }