'use client';
import { cn } from '#lib/utils';
import { Tabs as TabsPrimitive } from '@base-ui/react/tabs';
import { type VariantProps, cva } from 'class-variance-authority';
function Tabs({
className,
orientation = 'horizontal',
...props
}: TabsPrimitive.Root.Props) {
return (
);
}
const tabsListVariants = cva(
'group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-8 group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col data-[variant=line]:rounded-none',
{
variants: {
variant: {
default: 'bg-muted',
line: 'gap-1 bg-transparent',
},
},
defaultVariants: {
variant: 'default',
},
},
);
function TabsList({
className,
variant = 'default',
...props
}: TabsPrimitive.List.Props & VariantProps) {
return (
);
}
function TabsTrigger({ className, ...props }: TabsPrimitive.Tab.Props) {
return (
);
}
function TabsContent({ className, ...props }: TabsPrimitive.Panel.Props) {
return (
);
}
export { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants };