ivt
Version:
Ivt Components Library
3 lines (2 loc) • 4.12 kB
JavaScript
import{c as e}from"../chunks/utils-C-nkZ_Ir.mjs";import*as t from"react";import a from"react";import{c as n}from"../chunks/index-DVnblQ-a.mjs";import{c as r}from"../chunks/index-Dr5ObK3L.mjs";import{c as o,R as i,I as s}from"../chunks/index-9IZ9Aw1I.mjs";import{P as c}from"../chunks/index-1xuBLrml.mjs";import{P as d}from"../chunks/index-DiPp8h7C.mjs";import{u as l}from"../chunks/index-DBjm5RwN.mjs";import{u}from"../chunks/index-BOUg6o32.mjs";import{u as m}from"../chunks/index-UQBMY2z8.mjs";import{jsx as p}from"react/jsx-runtime";import"../chunks/bundle-mjs-DHbvkKp4.mjs";import"@radix-ui/react-collection";import"../chunks/index-C-j8pU3U.mjs";import"../chunks/index-DSUHCtxx.mjs";import"../chunks/index-0-u0cdz8.mjs";import"react-dom";import"@radix-ui/react-slot";var f="Tabs",[b,v]=r(f,[o]),h=o(),[x,g]=b(f),k=t.forwardRef((e,t)=>{const{__scopeTabs:a,value:n,onValueChange:r,defaultValue:o,orientation:i="horizontal",dir:s,activationMode:c="automatic",...b}=e,v=l(s),[h,g]=u({prop:n,onChange:r,defaultProp:o??"",caller:f});return p(x,{scope:a,baseId:m(),value:h,onValueChange:g,orientation:i,dir:v,activationMode:c,children:p(d.div,{dir:v,"data-orientation":i,...b,ref:t})})});k.displayName=f;var j="TabsList",y=t.forwardRef((e,t)=>{const{__scopeTabs:a,loop:n=!0,...r}=e,o=g(j,a),s=h(a);return p(i,{asChild:!0,...s,orientation:o.orientation,dir:o.dir,loop:n,children:p(d.div,{role:"tablist","aria-orientation":o.orientation,...r,ref:t})})});y.displayName=j;var w="TabsTrigger",N=t.forwardRef((e,t)=>{const{__scopeTabs:a,value:r,disabled:o=!1,...i}=e,c=g(w,a),l=h(a),u=T(c.baseId,r),m=I(c.baseId,r),f=r===c.value;return p(s,{asChild:!0,...l,focusable:!o,active:f,children:p(d.button,{type:"button",role:"tab","aria-selected":f,"aria-controls":m,"data-state":f?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:u,...i,ref:t,onMouseDown:n(e.onMouseDown,e=>{o||0!==e.button||!1!==e.ctrlKey?e.preventDefault():c.onValueChange(r)}),onKeyDown:n(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&c.onValueChange(r)}),onFocus:n(e.onFocus,()=>{const e="manual"!==c.activationMode;f||o||!e||c.onValueChange(r)})})})});N.displayName=w;var _="TabsContent",C=t.forwardRef((e,a)=>{const{__scopeTabs:n,value:r,forceMount:o,children:i,...s}=e,l=g(_,n),u=T(l.baseId,r),m=I(l.baseId,r),f=r===l.value,b=t.useRef(f);return t.useEffect(()=>{const e=requestAnimationFrame(()=>b.current=!1);return()=>cancelAnimationFrame(e)},[]),p(c,{present:o||f,children:({present:t})=>p(d.div,{"data-state":f?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":u,hidden:!t,id:m,tabIndex:0,...s,ref:a,style:{...e.style,animationDuration:b.current?"0s":void 0},children:t&&i})})});function T(e,t){return`${e}-trigger-${t}`}function I(e,t){return`${e}-content-${t}`}C.displayName=_;var D=k,E=y,M=N,R=C;function V({className:t,...n}){return a.createElement(D,{"data-slot":"tabs",className:e("flex flex-col gap-2",t),...n})}function F({className:t,...n}){return a.createElement(E,{"data-slot":"tabs-list",className:e("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...n})}function K({className:t,...n}){return a.createElement(M,{"data-slot":"tabs-trigger",className:e("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/50 inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...n})}function $({className:t,...n}){return a.createElement(R,{"data-slot":"tabs-content",className:e("flex-1 outline-none",t),...n})}export{V as Tabs,$ as TabsContent,F as TabsList,K as TabsTrigger};
//# sourceMappingURL=index.mjs.map