1"use strict";(self.webpackChunkvrcompare=self.webpackChunkvrcompare||[]).push([[1489,3870],{1489:(e,t,n)=>{n.r(t),n.d(t,{default:()=>B});var r=n(9950),s=n(2043),l=n(416),a=n(6560),i=n(2275),o=n(1103),c=n(5954),d=n(1890),u=n(4402),h=n(8186),p=n(5178),m=(n(7113),n(4414));const g=function(e){const{column:t}=e,n=e.options?e.options:[],{filterValue:r,setFilter:s}=t;return(0,m.jsx)("div",{className:"columnFilter selectFilter",children:(0,m.jsxs)("select",{value:r,onChange:e=>e.target.value?s(e.target.value):s(),children:[(0,m.jsx)("option",{value:"",children:"-"}),n.map((function(e,t){let{name:n,value:r}=e;return(0,m.jsx)("option",{value:r,children:n},t)}))]})})};var f=n(3047),v=(n(1820),n(1222)),x=n(6072),j=n(5647),y=n(3407);const b=function(e){const{deleteHeadset:t}=(0,r.useContext)(y.uE),n=e.headset,s=function(){window.confirm(`Delete headset: "${n.name}"?`)&&t(n.id)};return(0,m.jsxs)("div",{className:"editButtons",children:[(0,m.jsx)(x.T,{tooltipContents:"Edit headset",noIcon:!0,noPointer:!0,small:!0,children:(0,m.jsx)(f.N_,{to:j.A.editUrl(n),className:"button",children:(0,m.jsx)(v.vAr,{})})}),(0,m.jsx)(x.T,{tooltipContents:"Delete headset",noIcon:!0,noPointer:!0,small:!0,children:(0,m.jsx)("button",{className:"deleteButton",onClick:s,children:(0,m.jsx)(v.kgr,{})})})]})};n(347);var w=n(9619);const A=20,F=function(e){return(0,m.jsx)(g,{...e,options:[{name:"VR",value:"VR"},{name:"AR",value:"AR"}]})},C=function(e,t,n){if(!n)return e;const[r]=t,s=n.toLowerCase();return e.filter((e=>{const t=e.original[r];return(0,a.GC)(t).map((e=>"string"===typeof e?e:e.toString())).filter((e=>e)).join("").toLowerCase().includes(s)}))},N=function(e,t,n){const[r]=t;return null===n?e:e.filter((e=>{const t=e.original[r];return t.type===c.gr&&!0===n||t.type===c.FB&&!1===n}))},S=function(e,t,n){const[r]=t,[s,l]=n;return s||l?e.filter((e=>{const t=e.original[r],n=(0,a.GC)(t).map((e=>"number"===typeof e?e:parseInt(e))).filter((e=>!isNaN(e)));if(0===n.length)return!1;const i=Math.min(...n),o=Math.max(...n);return l?s?i>=s&&i<=l||(o>=s&&o<=l||(s>=i&&s<=o||l>=i&&l<=o)):o<=l||i<=l:i>=s||o>=s})):e},T=function(e,t,n){const[r]=t,[s,l]=n;return s||l?e.filter((e=>{const t=e.original[r];return(0,a.GC)(t).map((e=>"number"===typeof e?e:parseInt(e))).filter((e=>!isNaN(e))).some((e=>(!s||e>=s)&&(!l||e<=l)))})):e},R=function(e,t,n,r){const s=e.original.name.props.children,l=t.original.name.props.children;return s===l?0:s>l?1:-1};function B(e){const t=e.headsets?e.headsets:[],n=e.specs?e.specs:[],{sortBy:a}=e,g=(0,o.U)(),f=!!e.editButtons,v=r.useMemo((()=>(e,n,r,s)=>{const l=e.original.name.props.children,a=n.original.name.props.children,i=t.find((e=>e.name===l)),o=t.find((e=>e.name===a)),c=i.specs[r].quantify(i),d=o.specs[r].quantify(o);return null===c?-1:null===d?1:c-d}),[t]),x=r.useMemo((()=>(e,t,n,r)=>-v(e,t,n,r)),[v]),j=r.useMemo((()=>(e,t,r)=>{const s=r.toLowerCase(),l=e.map((e=>e.original.name.props.children.toLowerCase())),a=n.includes("manufacturer"),i=a?e.map((e=>e.original.manufacturer.props.children.toLowerCase())):null;return e.filter(((e,t)=>l[t].includes(s)||a&&i[t].includes(s)))}),[n]),y=e=>{const t={};return n.forEach((n=>t[n]=e.specs[n].displayValue(e,{summarise:!0}))),f&&(t.editButtons=(0,m.jsx)(b,{headset:e})),t},[B,P]=r.useState(A),H=r.useMemo((()=>{const e=i.A.newSpecsList(null),t={name:R,weight:x,price:x,baseStations:x},r=["image"],s={price:h.A,views24h:h.A,views7d:h.A,views30d:h.A,viewsAllTime:h.A,fov:h.A,refreshRate:h.A,weight:h.A,memory:h.A,storage:h.A,ipdRange:h.A,releaseDate:h.A,standalone:p.A,baseStations:p.A,visible:p.A,augmentedReality:F},l={name:C,price:T,views24h:T,views7d:T,views30d:T,viewsAllTime:T,fov:T,refreshRate:T,weight:T,memory:T,storage:T,ipdRange:S,releaseDate:T,standalone:N,visible:N,baseStations:N,augmentedReality:C},a=["image"],o=n.map((n=>({Header:e[n].displayName(),accessor:n,disableSortBy:r.includes(n),sortType:t[n]?t[n]:e[n].isQuantifiable()?v:"alphanumeric",filter:l[n]?l[n]:C,disableFilters:a.includes(n),Filter:a.includes(n)?null:s[n]?s[n]:u.A})));return f&&o.push({Header:"Actions",accessor:"editButtons",disableSortBy:!0,disableFilters:!0}),o}),[n]),k=r.useMemo((()=>t.map(y)),[n]),M=(0,s.useTable)({columns:H,data:k,globalFilter:j,initialState:{sortBy:[{id:null!==a&&void 0!==a?a:"releaseDate",desc:!0}]}},s.useFilters,s.useGlobalFilter,s.useSortBy),{getTableProps:G,getTableBodyProps:L,headerGroups:I,rows:V,prepareRow:D,state:E,setGlobalFilter:U,setFilter:z}=M,{globalFilter:_}=E,q=()=>{const e=B+A<t.length?B+A:t.length;P(e)},X=(e,t)=>{D(e);const r=g&&g.ads&&(t+1)%15===0,s=n.length;return[r?(0,m.jsx)("tr",{className:"adRow",children:(0,m.jsx)("td",{colSpan:s,children:(0,m.jsx)(w.A,{aboveTheFold:!1})})},0):null,(0,m.jsx)("tr",{...e.getRowProps(),children:e.cells.map((e=>(0,m.jsx)("td",{...e.getCellProps(),children:e.render("Cell")})))})]};return(()=>{const e={textAlign:"center",padding:"2rem",fontStyle:"italic"};return(0,m.jsxs)("div",{className:"headsetsTableContainer",children:[(0,m.jsx)("div",{className:"searchContainer",children:(0,m.jsx)(d.A,{filter:_,setFilter:U,placeholder:"Search headsets"})}),(0,m.jsx)(l.A,{dataLength:B,next:q,hasMore:B!==t.length,loader:(0,m.jsx)("p",{style:e,children:"Loading"}),endMessage:(0,m.jsx)("p",{style:e,children:"- End of results -"}),scrollThreshold:.6,children:(0,m.jsxs)("table",{...G(),className:"headsetsTable",children:[(0,m.jsxs)("thead",{children:[I.map((e=>(0,m.jsx)("tr",{...e.getHeaderGroupProps(),children:e.headers.map((e=>(0,m.jsxs)("th",{...e.getHeaderProps(e.getSortByToggleProps()),children:[e.render("Header"),(0,m.jsx)("span",{children:e.canSort?e.isSorted?e.isSortedDesc?(0,m.jsx)(c.ez,{type:"desc"}):(0,m.jsx)(c.ez,{type:"asc"}):(0,m.jsx)(c.ez,{}):null})]})))}))),I.map((e=>(0,m.jsx)("tr",{...e.getHeaderGroupProps(),children:e.headers.map(((e,t)=>(0,m.jsx)("th",{children:e.canFilter&&e.Filter?e.render("Filter"):null},t)))})))]}),(0,m.jsx)("tbody",{...L(),children:V.slice(0,B).map(X)})]})})]})})()}},1890:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(1536),s=n(4414);const l=function(e){const{filter:t,setFilter:n,placeholder:l}=e;return(0,s.jsx)("span",{className:"globalFilterContainer",children:(0,s.jsx)(r.A,{value:t||"",onChange:e=>n(e.target.value),placeholder:l})})}}
1,4402:(e,t,n)=>{n.d(t,{A:()=>s});n(7113);var r=n(4414);const s=function(e){const{column:t}=e,{filterValue:n,setFilter:s}=t;return(0,r.jsx)("div",{className:"columnFilter",children:(0,r.jsx)("input",{type:"text",value:n||"",onChange:e=>s(e.target.value),placeholder:"Enter filter..."})})}},5178:(e,t,n)=>{n.d(t,{A:()=>s});n(7113);var r=n(4414);const s=function(e){const{column:t}=e,{filterValue:n,setFilter:s}=t;return(0,r.jsx)("div",{className:"columnFilter booleanFilter",children:(0,r.jsxs)("select",{value:n,onChange:e=>s("true"===e.target.value||"false"!==e.target.value&&null),children:[(0,r.jsx)("option",{children:"-"}),(0,r.jsx)("option",{value:!0,children:"Yes"}),(0,r.jsx)("option",{value:!1,children:"No"})]})})}},7113:()=>{},8186:(e,t,n)=>{n.d(t,{A:()=>s});n(7113);var r=n(4414);const s=function(e){const{column:t}=e,{filterValue:n,setFilter:s}=t,[l,a]=n||[null,null];return(0,r.jsxs)("div",{className:"columnFilter minMaxFilter",children:[(0,r.jsx)("input",{type:"number",value:l||"",onChange:e=>s([parseInt(e.target.value),a]),placeholder:"min"}),(0,r.jsx)("input",{type:"number",value:a||"",onChange:e=>s([l,parseInt(e.target.value)]),placeholder:"max"})]})}},9619:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(8153),s=n(2426),l=n(9428),a=n(1103),i=(n(7536),n(2143)),o=n(4414);function c(e){const{aboveTheFold:t=!1,sticky:n=!1}=e,c=(0,a.U)(),[d]=(0,r.fp)(l.G),u=(0,i.Ay)();if(!c||!c.ads||"playwire"!==c.adProvider)return null;if(c.adTest){if(!("true"===new URLSearchParams(window.location.search).get("adtest")))return null}c.adProvider;const h=t?"leaderboard_atf":"leaderboard_btf",p={minHeight:250,maxHeight:250,height:250,backgroundColor:"#00000022",...n?{position:"sticky",top:"5rem"}:{},width:"100%"},m={padding:"1rem",position:"absolute",width:"90vw",left:"0",transform:"translateX(50vw) translateX(-50%)",height:250,minHeight:250,maxHeight:250,display:"flex",alignItems:"center",justifyContent:"center"};return d&&"desktop"===u&&(m.left="7.5rem",m.width="min(1500px, 50vw)"),(0,o.jsx)("div",{style:p,children:(0,o.jsx)("div",{style:m,children:(0,o.jsx)(s.Jj,{type:h})})})}}}]);
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.