import { ComponentType, ReactNode, forwardRef } from "react"; import * as Tabs from "@radix-ui/react-tabs"; import { LucideProps } from "lucide-react"; import { cn } from "@/lib/cn"; const Root = forwardRef< HTMLDivElement, Omit >(function VerticalTabsRoot({ className, ...props }, ref) { return ( ); }); const List = forwardRef( function VerticalTabsList({ className, ...props }, ref) { return ( ); }, ); type TriggerProps = Tabs.TabsTriggerProps & { icon: ComponentType; title: string; iconSize?: number; adornment?: ReactNode; }; const Trigger = forwardRef( function VerticalTabsTrigger( { icon: Icon, title, iconSize = 16, adornment, className, ...props }, ref, ) { return (

{title}

{adornment &&
{adornment}
}
); }, ); const Content = forwardRef( function VerticalTabsContent({ className, ...props }, ref) { return ( ); }, ); export const VerticalTabs = Object.assign(Root, { List, Trigger, Content });