1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,36363,e=>{"use strict";var t=e.i(43476),r=e.i(71645),a=e.i(57688),s=e.i(22016);let n=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);function l({initialRows:e,initialHasMore:a,initialOffset:s}){let[n,l]=(0,r.useState)(e),[d,o]=(0,r.useState)(s),[c,m]=(0,r.useState)(a),[u,x]=(0,r.useState)(!1),[h,f]=(0,r.useState)(null),v=(0,r.useRef)(null),b=(0,r.useCallback)(async()=>{if(!u&&c){x(!0),f(null);try{let e=await fetch(`/api/leaderboard?offset=${d}&limit=30`,{cache:"default"});if(!e.ok)throw Error("fetch_failed");let t=await e.json();l(e=>[...e,...t.rows]),o(e=>e+t.rows.length),m(!!t.has_more)}catch{f("Couldn't load more. Try again.")}finally{x(!1)}}},[u,c,d]);return(0,r.useEffect)(()=>{if(!c)return;let e=v.current;if(!e)return;let t=new IntersectionObserver(e=>{e[0]?.isIntersecting&&b()},{rootMargin:"300px 0px"});return t.observe(e),()=>t.disconnect()},[c,b]),(0,t.jsxs)("div",{children:[(0,t.jsx)("ul",{className:"divide-y divide-[var(--border-light)] overflow-hidden rounded-xl border border-[var(--border)] bg-white",children:n.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)(i,{row:e})},e.id))}),c&&(0,t.jsx)("div",{ref:v,className:"h-px","aria-hidden":"true"}),u&&(0,t.jsx)("ul",{className:"mt-2 space-y-1",children:Array.from({length:4}).map((e,r)=>(0,t.jsx)("li",{className:"h-16 animate-pulse rounded-xl border border-[var(--border)] bg-[var(--background-secondary)]"},r))}),h&&(0,t.jsxs)("div",{className:"mt-4 text-center text-sm text-[var(--error)]",children:[h,(0,t.jsx)("button",{type:"button",onClick:()=>void b(),className:"ml-2 font-semibold text-[var(--primary)] hover:underline",children:"Retry"})]}),!c&&n.length>0&&(0,t.jsx)("p",{className:"mt-6 text-center text-xs uppercase tracking-[0.18em] text-[var(--foreground-muted)]",children:"End of the ranking"})]})}function i({row:e}){var r;let l=(r=e.avatar_r2_url)?`https://cdn.nearbyonly.com/${r}.webp`:null,i=e.name||e.username,d=!!e.name&&e.name!==e.username,o=e.battle_wins+e.battle_losses;return(0,t.jsxs)(s.default,{href:`/${e.platform||"onlyfans"}/${e.username}`,className:"group flex items-center gap-3 px-3 py-3 transition-colors hover:bg-[var(--primary-light)] md:gap-4 md:px-4 md:py-4",children:[(0,t.jsx)("span",{className:"w-10 shrink-0 text-2xl leading-none tracking-tight text-[var(--foreground-muted)] md:w-14 md:text-3xl",style:{fontFamily:"var(--font-anton), system-ui, sans-serif"},children:e.rank.toString().padStart(2,"0")}),(0,t.jsx)("div",{className:"relative h-12 w-12 shrink-0 overflow-hidden rounded-full bg-[var(--background-secondary)] md:h-14 md:w-14",children:l?(0,t.jsx)(a.default,{src:l,alt:i,fill:!0,className:"object-cover",sizes:"56px"}):(0,t.jsx)("div",{className:"flex h-full w-full items-center justify-center text-base font-semibold text-[var(--foreground-muted)]",children:e.username[0]?.toUpperCase()})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-sm font-semibold text-[var(--foreground)] md:text-base",children:i}),d&&(0,t.jsxs)("div",{className:"truncate text-xs text-[var(--foreground-secondary)]",children:["@",e.username]})]}),(0,t.jsxs)("div",{className:"shrink-0 text-right",children:[(0,t.jsx)("div",{className:"text-sm font-bold tabular-nums text-[var(--primary)] md:text-base",children:e.battle_elo.toLocaleString()}),(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wider tabular-nums text-[var(--foreground-muted)]",children:0===o?"â":`${e.battle_wins}W \xb7 ${e.battle_losses}L`})]}),(0,t.jsx)(n,{className:"hidden h-4 w-4 shrink-0 text-[var(--foreground-muted)] transition-transform group-hover:translate-x-0.5 group-hover:text-[var(--primary)] md:block"})]})}e.s(["LeaderboardList",()=>l],36363)}]);
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.