ivt
Version:
Ivt Components Library
3 lines (2 loc) • 1.72 kB
JavaScript
import*as e from"react";import{c as a}from"./index-DVnblQ-a.mjs";import{u as t}from"./index-BOUg6o32.mjs";import{P as r}from"./index-DiPp8h7C.mjs";import{jsx as i}from"react/jsx-runtime";import{cva as s}from"class-variance-authority";import{c as n}from"./utils-C-nkZ_Ir.mjs";var o="Toggle",d=e.forwardRef((e,s)=>{const{pressed:n,defaultPressed:d,onPressedChange:l,...c}=e,[m,u]=t({prop:n,onChange:l,defaultProp:d??!1,caller:o});return i(r.button,{type:"button","aria-pressed":m,"data-state":m?"on":"off","data-disabled":e.disabled?"":void 0,...c,ref:s,onClick:a(e.onClick,()=>{e.disabled||u(!m)})})});d.displayName=o;var l=d;const c=s("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium cursor-pointer hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}});function m({className:a,variant:t,size:r,...i}){return e.createElement(l,{"data-slot":"toggle",className:n(c({variant:t,size:r,className:a})),...i})}export{m as T,d as a,c as t};
//# sourceMappingURL=toggle-zGLA0JZ_.mjs.map