import{getVNodes as A,checkIfVNodeIsSelected as L}from"./2-uMNWYS.js";import H from"./CKvEaNTO.js";import{A as P}from"./DThBoNQI.js";import{r as q,O as x,D as g,g as I,R as w,s as N}from"./tXL-a5uR.js";const D={name:"STabHeader",props:{...P(),scrollable:Boolean,ariaLabel:String},setup(u,p){const c=q(null),T=x({class:["s-tab-header overflow-auto",{"s-tab-header--scrollable":u.scrollable}],role:"tablist",ariaLabel:u.ariaLabel,ref:c},p.attrs),y=g("SidearmTabsState",{selected:0}),n=g("updateSelectedTab"),o=I(()=>p.slots.default?A(p.slots.default(),"STab"):[]),b=async(e,s,l=0)=>{var m,v,h,S,k;const t=l+1,i=0,d=o.value.length-1;let a=e;switch(s){case"ArrowLeft":a=e-1,ad&&(a=i);break;case"Home":a=i;break;case"End":a=d;break;default:return}const r=(m=o.value)==null?void 0:m[a];let f=a;if(r!=null&&r.props&&("value"in r.props&&((v=r.props)!=null&&v.value)&&(f=r.props.value),"disabled"in r.props&&((h=r.props)==null?void 0:h.disabled)||"link"in r.props)){if(t>=o.value.length)return;await b(a,s,t);return}n(f),await N(),(k=(S=c.value)==null?void 0:S.querySelector('.s-tab[aria-selected="true"]'))==null||k.focus()};return()=>w("div",T,o.value.map((e,s)=>w(H,{...e.props,selected:L(e,s,y),onSelected:l=>{if(l){let t=s;e.props&&"value"in e.props&&e.props.value&&(t=e.props.value),n(t)}},onKeyPressed:l=>{b(s,l.key)}},e.children?e.children.default:[])))}};export{D as default};

AltStyle によって変換されたページ (->オリジナル) /