Navigation Components
Navigation Components
Breadcrumb Component
interface BreadcrumbItem {
label: string;
href?: string;
current?: boolean;
}
interface BreadcrumbProps {
items: BreadcrumbItem[];
separator?: React.ComponentType;
maxItems?: number; // Show ellipsis for long paths
}
// Usage
<Breadcrumb
items={[
{ label: 'Dashboard', href: '/dashboard' },
{ label: 'Campaigns', href: '/campaigns' },
{ label: 'Summer Sale 2025', current: true }
]}
/>
Tab Component
interface TabItem {
id: string;
label: string;
icon?: React.ComponentType;
badge?: string | number;
disabled?: boolean;
}
interface TabsProps {
tabs: TabItem[];
activeTab: string;
variant?: 'default' | 'pills' | 'underline';
size?: 'sm' | 'md' | 'lg';
fullWidth?: boolean;
onChange: (tabId: string) => void;
}
// Usage
<Tabs
tabs={[
{ id: 'overview', label: 'Overview', icon: DashboardIcon },
{ id: 'performance', label: 'Performance', badge: 'New' },
{ id: 'settings', label: 'Settings' }
]}
activeTab={activeTab}
onChange={setActiveTab}
/>