@stanfordspezi/spezi-web-design-system
Version:
Stanford Biodesign Digital Health Spezi Web Design System
2 lines (1 loc) • 3.66 kB
JavaScript
;const s=require("react/jsx-runtime"),T=require("react"),x=require("./index-DwV9MiDB.js"),g=require("./index-CLdeiAAB.js"),p=require("./index-CrhDNEEl.js"),E=require("./index-DM1mqyG5.js"),m=require("./index-14SsMENa.js"),M=require("./index-BM0VQ-wq.js"),q=require("./index-Bqh8zfKH.js");function F(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const b=F(T);var C="Tabs",[D,J]=g.createContextScope(C,[p.createRovingFocusGroupScope]),y=p.createRovingFocusGroupScope(),[G,h]=D(C),j=b.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,onValueChange:i,defaultValue:u,orientation:a="horizontal",dir:d,activationMode:v="automatic",...f}=e,c=M.useDirection(d),[r,l]=g.useControllableState({prop:o,onChange:i,defaultProp:u});return s.jsx(G,{scope:n,baseId:q.useId(),value:r,onValueChange:l,orientation:a,dir:c,activationMode:v,children:s.jsx(m.Primitive.div,{dir:c,"data-orientation":a,...f,ref:t})})});j.displayName=C;var _="TabsList",I=b.forwardRef((e,t)=>{const{__scopeTabs:n,loop:o=!0,...i}=e,u=h(_,n),a=y(n);return s.jsx(p.Root,{asChild:!0,...a,orientation:u.orientation,dir:u.dir,loop:o,children:s.jsx(m.Primitive.div,{role:"tablist","aria-orientation":u.orientation,...i,ref:t})})});I.displayName=_;var P="TabsTrigger",R=b.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,disabled:i=!1,...u}=e,a=h(P,n),d=y(n),v=S(a.baseId,o),f=$(a.baseId,o),c=o===a.value;return s.jsx(p.Item,{asChild:!0,...d,focusable:!i,active:c,children:s.jsx(m.Primitive.button,{type:"button",role:"tab","aria-selected":c,"aria-controls":f,"data-state":c?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:v,...u,ref:t,onMouseDown:g.composeEventHandlers(e.onMouseDown,r=>{!i&&r.button===0&&r.ctrlKey===!1?a.onValueChange(o):r.preventDefault()}),onKeyDown:g.composeEventHandlers(e.onKeyDown,r=>{[" ","Enter"].includes(r.key)&&a.onValueChange(o)}),onFocus:g.composeEventHandlers(e.onFocus,()=>{const r=a.activationMode!=="manual";!c&&!i&&r&&a.onValueChange(o)})})})});R.displayName=P;var w="TabsContent",N=b.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,forceMount:i,children:u,...a}=e,d=h(w,n),v=S(d.baseId,o),f=$(d.baseId,o),c=o===d.value,r=b.useRef(c);return b.useEffect(()=>{const l=requestAnimationFrame(()=>r.current=!1);return()=>cancelAnimationFrame(l)},[]),s.jsx(E.Presence,{present:i||c,children:({present:l})=>s.jsx(m.Primitive.div,{"data-state":c?"active":"inactive","data-orientation":d.orientation,role:"tabpanel","aria-labelledby":v,hidden:!l,id:f,tabIndex:0,...a,ref:t,style:{...e.style,animationDuration:r.current?"0s":void 0},children:l&&u})})});N.displayName=w;function S(e,t){return`${e}-trigger-${t}`}function $(e,t){return`${e}-content-${t}`}var L=j,V=I,O=R,k=N;const H=L,A=T.createContext({grow:!1}),K=({className:e,grow:t,...n})=>s.jsx(A.Provider,{value:{grow:t},children:s.jsx(V,{className:x.cn("inline-flex-center text-muted-foreground h-10 p-1",t&&"w-full",e),...n})}),z=({className:e,...t})=>{const{grow:n}=T.useContext(A);return s.jsx(O,{className:x.cn("inline-flex-center focus-ring border-b-border data-[state=active]:border-b-primary data-[state=active]:text-foreground border-b px-3 py-2 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-offset-0 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-xs",n&&"grow",e),...t})},B=({className:e,...t})=>s.jsx(k,{className:x.cn("focus-ring mt-2",e),...t});exports.Tabs=H;exports.TabsContent=B;exports.TabsList=K;exports.TabsTrigger=z;