import { chipTabs, type ChipTabsVariantProps } from "@seed-design/css/recipes/chip-tabs"; import { Tabs as TabsPrimitive } from "@seed-design/react-tabs"; import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext"; import { forwardRef } from "react"; import clsx from "clsx"; const { ClassNamesProvider, withContext } = createSlotRecipeContext(chipTabs); //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsRootProps extends ChipTabsVariantProps, TabsPrimitive.RootProps {} export const ChipTabsRoot = forwardRef( ({ className, ...props }, ref) => { const [variantProps, otherProps] = chipTabs.splitVariantProps(props); const classNames = chipTabs(variantProps); return ( ); }, ); ChipTabsRoot.displayName = "ChipTabsRoot"; //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsListProps extends TabsPrimitive.ListProps {} export const ChipTabsList = withContext( TabsPrimitive.List, "list", ); //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsTriggerProps extends TabsPrimitive.TriggerProps {} export const ChipTabsTrigger = withContext( TabsPrimitive.Trigger, "trigger", ); //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsContentProps extends TabsPrimitive.ContentProps {} export const ChipTabsContent = withContext( TabsPrimitive.Content, "content", ); //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsCarouselProps extends TabsPrimitive.CarouselProps {} export const ChipTabsCarousel = withContext( TabsPrimitive.Carousel, "carousel", ); //////////////////////////////////////////////////////////////////////////////////// export interface ChipTabsCarouselCameraProps extends TabsPrimitive.CarouselCameraProps {} export const ChipTabsCarouselCamera = withContext( TabsPrimitive.CarouselCamera, "carouselCamera", );