@vela-ui/react
Version:
Vela UI React components
3 lines (2 loc) • 1.95 kB
JavaScript
"use client"
import{a as t}from"./chunk-ZNJAWY4A.mjs";import{a as e}from"./chunk-KCI5SKSW.mjs";import{ToggleButton as l,composeRenderProps as d}from"react-aria-components";import{tv as u}from"tailwind-variants";import{jsx as x}from"react/jsx-runtime";var m=u({extend:e,base:"inline-flex shrink-0 items-center justify-center rounded-md font-medium whitespace-nowrap transition-all [&_svg]:pointer-events-none [&_svg]:shrink-0",variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground data-[selected]:bg-primary data-[selected]:text-primary-foreground bg-transparent",outline:"border-input hover:bg-accent hover:text-accent-foreground data-[selected]:bg-accent data-[selected]:text-accent-foreground border bg-transparent shadow-xs",ghost:"data-[selected]:bg-accent data-[selected]:text-accent-foreground hover:bg-accent hover:text-accent-foreground bg-transparent"},size:{xs:"size-8 gap-1 text-xs [&_svg:not([class*='size-'])]:size-4",sm:"size-9 gap-2 text-sm [&_svg:not([class*='size-'])]:size-4",md:"size-10 gap-2 text-sm [&_svg:not([class*='size-'])]:size-5",lg:"size-11 gap-2.5 text-base [&_svg:not([class*='size-'])]:size-5",xl:"size-12 gap-2.5 text-base [&_svg:not([class*='size-'])]:size-5"},shape:{rectangle:"",square:"",circle:"rounded-full"},isDisabled:{true:"pointer-events-none opacity-50"},isPending:{true:"pointer-events-none opacity-50"}},compoundVariants:[{size:"xs",shape:"rectangle",className:"w-auto px-2.5"},{size:"sm",shape:"rectangle",className:"w-auto px-3.5"},{size:"md",shape:"rectangle",className:"w-auto px-4"},{size:"lg",shape:"rectangle",className:"w-auto px-5"},{size:"xl",shape:"rectangle",className:"w-auto px-5"}],defaultVariants:{variant:"default",size:"md",shape:"rectangle"}});function P(s){let a={...t(),...s},{className:o,variant:n,size:r,shape:i,...c}=a;return x(l,{"data-slot":"toggle-button",className:d(o,(g,p)=>m({...p,variant:n,size:r,shape:i,className:g})),...c})}export{m as a,P as b};