UNPKG

@baseplate-dev/ui-components

Version:

Shared UI component library

23 lines 1.84 kB
'use client'; import { jsx as _jsx } from "react/jsx-runtime"; import { Tabs as TabsPrimitive } from 'radix-ui'; import { cn } from '#src/utils/index.js'; /** * A set of layered sections of content—known as tab panels—that are displayed one at a time. * * https://ui.shadcn.com/docs/components/tabs */ function Tabs({ className, ...props }) { return (_jsx(TabsPrimitive.Root, { "data-slot": "tabs", className: cn('flex flex-col gap-2', className), ...props })); } function TabsList({ className, ...props }) { return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", className: cn('inline-flex h-9 w-fit items-center justify-center rounded-lg bg-muted p-[3px] text-muted-foreground', className), ...props })); } function TabsTrigger({ className, ...props }) { return (_jsx(TabsPrimitive.Trigger, { "data-slot": "tabs-trigger", className: cn("inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-foreground transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:shadow-sm dark:text-muted-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props })); } function TabsContent({ className, ...props }) { return (_jsx(TabsPrimitive.Content, { "data-slot": "tabs-content", className: cn('flex-1 outline-none', className), ...props })); } export { Tabs, TabsContent, TabsList, TabsTrigger }; //# sourceMappingURL=tabs.js.map