UNPKG

sui-explorer-local

Version:
4 lines (3 loc) 6.14 kB
import{j as c}from"./jsx-runtime-ffb262ed.js";import{_ as u}from"./extends-98964cd2.js";import{r as o}from"./index-76fb7be0.js";import{$ as w,a as A,b as M,c as $,d as g,e as S}from"./index-378103fb.js";import{$ as C,a as k,b as B,c as z}from"./index-789e03fc.js";import{c as V}from"./index-dca19ccf.js";import{c as I}from"./clsx-0839fdbe.js";import{T as G}from"./Tooltip-86444b97.js";import{S as P}from"./info_10x10-fe19ced7.js";const N="Tabs",[F,be]=w(N,[C]),E=C(),[D,h]=F(N),L=o.forwardRef((e,a)=>{const{__scopeTabs:r,value:t,onValueChange:n,defaultValue:l,orientation:s="horizontal",dir:b,activationMode:p="automatic",...m}=e,i=k(b),[d,f]=A({prop:t,onChange:n,defaultProp:l});return o.createElement(D,{scope:r,baseId:M(),value:d,onValueChange:f,orientation:s,dir:i,activationMode:p},o.createElement($.div,u({dir:i,"data-orientation":s},m,{ref:a})))}),W="TabsList",H=o.forwardRef((e,a)=>{const{__scopeTabs:r,loop:t=!0,...n}=e,l=h(W,r),s=E(r);return o.createElement(B,u({asChild:!0},s,{orientation:l.orientation,dir:l.dir,loop:t}),o.createElement($.div,u({role:"tablist","aria-orientation":l.orientation},n,{ref:a})))}),K="TabsTrigger",O=o.forwardRef((e,a)=>{const{__scopeTabs:r,value:t,disabled:n=!1,...l}=e,s=h(K,r),b=E(r),p=j(s.baseId,t),m=q(s.baseId,t),i=t===s.value;return o.createElement(z,u({asChild:!0},b,{focusable:!n,active:i}),o.createElement($.button,u({type:"button",role:"tab","aria-selected":i,"aria-controls":m,"data-state":i?"active":"inactive","data-disabled":n?"":void 0,disabled:n,id:p},l,{ref:a,onMouseDown:g(e.onMouseDown,d=>{!n&&d.button===0&&d.ctrlKey===!1?s.onValueChange(t):d.preventDefault()}),onKeyDown:g(e.onKeyDown,d=>{[" ","Enter"].includes(d.key)&&s.onValueChange(t)}),onFocus:g(e.onFocus,()=>{const d=s.activationMode!=="manual";!i&&!n&&d&&s.onValueChange(t)})})))}),X="TabsContent",J=o.forwardRef((e,a)=>{const{__scopeTabs:r,value:t,forceMount:n,children:l,...s}=e,b=h(X,r),p=j(b.baseId,t),m=q(b.baseId,t),i=t===b.value,d=o.useRef(i);return o.useEffect(()=>{const f=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(f)},[]),o.createElement(S,{present:n||i},({present:f})=>o.createElement($.div,u({"data-state":i?"active":"inactive","data-orientation":b.orientation,role:"tabpanel","aria-labelledby":p,hidden:!f,id:m,tabIndex:0},s,{ref:a,style:{...e.style,animationDuration:d.current?"0s":void 0}}),f&&l))});function j(e,a){return`${e}-trigger-${a}`}function q(e,a){return`${e}-content-${a}`}const Q=L,U=H,Y=O,Z=J,R=o.createContext(null),ee=V(["flex items-center gap-1 border-b border-transparent -mb-px","font-semibold text-steel-dark disabled:text-steel-dark disabled:pointer-events-none hover:text-steel-darker data-[state=active]:border-gray-65"],{variants:{size:{lg:"text-heading4 data-[state=active]:text-steel-darker pb-2",md:"text-body data-[state=active]:text-steel-darker pb-2",sm:"text-captionSmall font-medium pb-0.5 disabled:opacity-40 data-[state=active]:text-steel-darker"}},defaultVariants:{size:"md"}}),ae=V(["flex items-center border-gray-45"],{variants:{fullWidth:{true:"flex-1"},disableBottomBorder:{true:"",false:"border-b"},gap:{3:"gap-3",6:"gap-4 sm:gap-6"}},defaultVariants:{gap:6,disableBottomBorder:!1}}),v=o.forwardRef(({size:e,...a},r)=>c.jsx(R.Provider,{value:e,children:c.jsx(Q,{ref:r,...a})})),_=o.forwardRef(({fullWidth:e,disableBottomBorder:a,gap:r,...t},n)=>c.jsx(U,{ref:n,className:ae({fullWidth:e,disableBottomBorder:a,gap:r}),...t})),x=o.forwardRef(({className:e,...a},r)=>{const t=o.useContext(R);return c.jsx(Y,{ref:r,className:I(ee({size:t}),e),...a})}),y=o.forwardRef(({noGap:e,...a},r)=>c.jsx(Z,{ref:r,className:I("ring-offset-background focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",!e&&"my-4"),...a}));function T({size:e="lg",title:a,children:r,noGap:t,tooltip:n}){return c.jsxs(v,{size:e,defaultValue:"tab",children:[c.jsx(_,{children:c.jsxs(x,{value:"tab",children:[a,n&&c.jsx(G,{tip:n,children:c.jsx(P,{})})]})}),c.jsx(y,{value:"tab",noGap:t,children:r})]})}try{T.displayName="TabHeader",T.__docgenInfo={description:`A special single-tab header that automatically creates the correct components and state. TODO: This probably shouldn't even be tabs, because that's bad for a11y when there's just single tabs acting as headers. We should instead just re-define this as a header components.`,displayName:"TabHeader",props:{size:{defaultValue:{value:"lg"},description:"",name:"size",required:!1,type:{name:"enum",value:[{value:'"lg"'},{value:'"sm"'},{value:'"md"'}]}},title:{defaultValue:null,description:"",name:"title",required:!0,type:{name:"string"}},noGap:{defaultValue:null,description:"",name:"noGap",required:!1,type:{name:"boolean"}},tooltip:{defaultValue:null,description:"",name:"tooltip",required:!1,type:{name:"string"}}}}}catch{}try{v.displayName="Tabs",v.__docgenInfo={description:"",displayName:"Tabs",props:{asChild:{defaultValue:null,description:"",name:"asChild",required:!1,type:{name:"boolean"}},size:{defaultValue:null,description:"",name:"size",required:!1,type:{name:"enum",value:[{value:'"lg"'},{value:'"sm"'},{value:'"md"'}]}}}}}catch{}try{y.displayName="TabsContent",y.__docgenInfo={description:"",displayName:"TabsContent",props:{asChild:{defaultValue:null,description:"",name:"asChild",required:!1,type:{name:"boolean"}},noGap:{defaultValue:null,description:"",name:"noGap",required:!1,type:{name:"boolean"}}}}}catch{}try{_.displayName="TabsList",_.__docgenInfo={description:"",displayName:"TabsList",props:{asChild:{defaultValue:null,description:"",name:"asChild",required:!1,type:{name:"boolean"}},gap:{defaultValue:null,description:"",name:"gap",required:!1,type:{name:"3 | 6 | null"}},fullWidth:{defaultValue:null,description:"",name:"fullWidth",required:!1,type:{name:"boolean | null"}},disableBottomBorder:{defaultValue:null,description:"",name:"disableBottomBorder",required:!1,type:{name:"boolean | null"}}}}}catch{}try{x.displayName="TabsTrigger",x.__docgenInfo={description:"",displayName:"TabsTrigger",props:{asChild:{defaultValue:null,description:"",name:"asChild",required:!1,type:{name:"boolean"}}}}}catch{}export{v as T,_ as a,x as b,y as c};