1import{D as e,N as t,O as n,P as r,T as i,_ as a,at as o,dn as s,hn as c,qt as l,ut as u,w as d,zt as f}from"./BaBhFZm2.js";import{c as p,l as m}from"./Cm8_Znr6.js";import{t as h}from"./BGICmH9Q.js";import{t as g}from"./C2ANWNt82.js";import"./QTQ0kpFP2.js";var _={key:0,class:`s-common__view-type-buttons flex items-center`},v=[`aria-label`],y=[`id`,`aria-pressed`,`onClick`,`onKeyup`,`onKeydown`],b={class:`sr-only`},x={__name:`CommonViewTypeButtons`,props:{viewType:String,viewTypeConfig:{type:Object,default:()=>({list:!0,card:!0,grid:!1,table:!0})},viewTypeDefault:String,ariaLabel:String,isGameCenter:Boolean},emits:[`changeView`],setup(x,{emit:S}){let C=x,w=S,T=f([{type:`list`,text:`List View`,icon:`icon-list`},{type:`card`,text:`Card View`,icon:`icon-grid-view`},{type:`grid`,text:`Grid View`,icon:`icon-grid-view`},{type:`table`,text:`Table View`,icon:`icon-table-view`}]),E=d(()=>{let e=T.value.filter(e=>e.type in C.viewTypeConfig&&C.viewTypeConfig?.[e.type]);if(C.viewTypeDefault){let t=e.find(e=>e.type===C.viewTypeDefault);t&&(e=e.sort((e,n)=>e.type===t.type?-1:+(n.type===t.type)))}return e}),{polite:D}=h(),O=e=>{w(`changeView`,e),D(`You are now on the ${e} view`)},k=f(null),A=(e,t=0)=>{let n=e.key||e.code,r=E?.value?.length?E.value.length-1:0,i=t;switch(n){case`ArrowLeft`:e.preventDefault(),i=t-1,i<0&&(i=r);break;case`ArrowRight`:e.preventDefault(),i=t+1,i>r&&(i=0);break;default:return}E?.value?.length&&k?.value?.length&&k?.value?.[i]?.focus()};return(d,f)=>{let h=g;return l(E)&&l(E).length?(o(),n(`div`,_,[f[0]||=i(`div`,{class:`s-text-regular text-theme-muted-light mr-2 hidden md:grid`},[i(`span`,null,`View`),i(`span`,null,`Type:`)],-1),i(`div`,{class:`flex items-center gap-2`,role:`group`,"aria-label":x.ariaLabel?x.ariaLabel:`View Type Buttons`},[(o(!0),n(a,null,u(l(E),(l,u)=>(o(),n(`button`,{id:`_viewType_${l.type}`,key:`_viewType_${l.type}`,ref_for:!0,ref_key:`buttonRef`,ref:k,type:`button`,class:s([`grid h-[53px] w-[53px] appearance-none place-content-center overflow-hidden rounded-[10px]`,x.isGameCenter?[x.viewType===l.type?`bg-primary hover:bg-primary-hover text-on-primary border-none`:`border border-theme-border-light text-theme-muted-light bg-theme-background-light hover:bg-theme-elevated-light`,`!w-[46px] !h-[46px] min-[330px]:!w-[53px] min-[330px]:!h-[53px]`]:[x.viewType===l.type?`bg-primary hover:bg-primary-hover text-on-primary`:`bg-theme-elevated-light hover:bg-theme-elevated-light-hover text-theme-muted`]]),"aria-pressed":x.viewType===l.type,onClick:m(e=>O(l.type),[`prevent`]),onKeyup:p(e=>O(l.type),[`enter`]),onKeydown:e=>A(e,u)},[i(`span`,b,[t(c(l.text)+` `,1),x.viewType===l.type?e(``,!0):(o(),n(a,{key:0},[t(`not selected`)],64))]),r(h,{name:l.icon,size:`small`,"aria-hidden":`true`},null,8,[`name`])],42,y))),128))],8,v)])):e(``,!0)}}};export{x as t};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.