import{r as e}from"./rolldown-runtime-S-ySWqyJ.js";import{Ar as t,Dr as n,Gr as r,In as i,Jt as a,Lt as o,Qr as s,Rt as c,Sr as l,Xt as u,Yt as d,Zr as f,ai as p,an as m,bi as h,ei as g,hi as _,lr as v,qt as y,ri as ee,rn as b,si as x,tr as S,zn as te}from"./vendor-DU4C2Mru.js";import{n as C}from"./api--bJYSUUx.js";import{I as ne,J as re,K as w,L as ie,M as T,N as E,R as D,T as ae,U as oe,W as O,X as se,s as ce,vt as k,w as A,z as j}from"./index-B7s3VjPV.js";import{r as le}from"./adminApi-gBUQa48w.js";import{t as M}from"./status-pill-bTqAlgAD.js";import{r as ue}from"./time-DscUFrit.js";import{n as N,t as P}from"./flags-DiQ3rOp9.js";import{n as de}from"./SparkLine-BycqV2pL.js";import{n as fe,t as F}from"./widget-footer-link-DjMbNM2t.js";import{t as pe}from"./useLeaderboardV2-CizIzwf6.js";import{t as me}from"./rank-medal-DUujkT4g.js";import{t as he}from"./AgentIcon-CuXjXZM3.js";import{t as I}from"./MatchRow-955bWM52.js";import{t as L}from"./FeaturedMatchCard-BhL5sVxB.js";import{t as ge}from"./TeamMomentumWidget-BWfjC74S.js";import{n as _e}from"./useNews-Dq5BQsGv.js";import{n as ve}from"./job-auto-flags-6yf5GGid.js";var R=e(h(),1);function ye(e){return g({queryKey:[`trendingTeams`,e],queryFn:()=>C(`/games/${e}/sentiment/trending`),staleTime:12e4})}var z=ee();function be(e){let t=ye(e),n=(0,R.useMemo)(()=>{if(!t.data)return 1;let e=[...t.data.gainers,...t.data.losers].map(e=>Math.abs(e.delta));return Math.max(...e,.01)},[t.data]);return{...t,data:t.data?{...t.data,maxAbsDelta:n}:t.data}}function xe({delta:e,maxAbsDelta:t}){let n=t>0?t:1,r=Math.abs(e)/n*44,i=e>=0,a=i?`var(--glk-win, #10b981)`:`var(--glk-loss, #f43f5e)`,o=i?50:50-r;return(0,z.jsxs)(`svg`,{viewBox:`0 0 100 10`,className:`h-2.5 w-16 flex-shrink-0 @[18rem]:w-20 @[22rem]:w-24 @[26rem]:w-28`,preserveAspectRatio:`none`,"aria-hidden":`true`,children:[(0,z.jsx)(`line`,{x1:`50`,y1:`0`,x2:`50`,y2:`10`,stroke:`currentColor`,strokeWidth:`0.5`,className:`text-zinc-300 dark:text-zinc-700`}),r>0&&(0,z.jsx)(`rect`,{x:o,y:`2`,width:r,height:`6`,fill:a,rx:`1.5`,opacity:.75+Math.abs(e)/n*.25}),r>1&&i&&(0,z.jsx)(`polygon`,{points:`${o+r},5 ${Math.max(o+r-3,50)},2 ${Math.max(o+r-3,50)},8`,fill:a,opacity:.9}),r>1&&!i&&(0,z.jsx)(`polygon`,{points:`${o},5 ${Math.min(o+3,50)},2 ${Math.min(o+3,50)},8`,fill:a,opacity:.9})]})}function B({team:e,maxAbsDelta:t}){let n=e.delta>=0,r=(n?`+`:``)+e.delta.toFixed(2);return(0,z.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/40`,children:[(0,z.jsx)(T,{name:e.name,abbreviation:e.abbreviation,logoUrl:e.logoUrl,size:`xs`,className:`flex-shrink-0`}),(0,z.jsx)(`span`,{className:`glk-tabular w-10 flex-shrink-0 truncate text-xs font-bold text-zinc-800 dark:text-zinc-200`,children:e.abbreviation??e.name.slice(0,4).toUpperCase()}),(0,z.jsx)(`div`,{className:`flex flex-1 items-center`,children:(0,z.jsx)(xe,{delta:e.delta,maxAbsDelta:t})}),(0,z.jsx)(`span`,{className:k(`glk-tabular w-12 flex-shrink-0 text-right text-xs font-bold`,n?`text-emerald-500 dark:text-emerald-400`:`text-rose-500 dark:text-rose-400`),children:r}),(0,z.jsx)(`span`,{className:`glk-tabular hidden min-w-[28px] flex-shrink-0 rounded-full bg-zinc-100 px-1.5 py-0.5 text-center text-2xs font-semibold text-zinc-500 @[18rem]:inline-block dark:bg-zinc-800 dark:text-zinc-500`,children:e.mentionCount})]})}function V({label:e,up:t}){return(0,z.jsxs)(`div`,{className:`mb-1 mt-0.5 flex items-center gap-1.5`,children:[t?(0,z.jsx)(d,{size:11,className:`flex-shrink-0 text-emerald-500 dark:text-emerald-400`,"aria-hidden":`true`}):(0,z.jsx)(u,{size:11,className:`flex-shrink-0 text-rose-500 dark:text-rose-400`,"aria-hidden":`true`}),(0,z.jsx)(`span`,{className:k(`glk-eyebrow`,t?`text-emerald-600 dark:text-emerald-500`:`text-rose-600 dark:text-rose-500`),children:e})]})}var H={id:`trendingTeams`,title:`Trending Teams`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(d,{size:14,"aria-hidden":`true`}),useData:e=>be(e.gameSlug),renderData:e=>{let t=e.gainers.filter(e=>e.delta>0),n=e.losers.filter(e=>e.delta<0),r=e.maxAbsDelta;return(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`mb-1 flex items-center justify-end gap-1 glk-eyebrow pr-1`,children:[(0,z.jsx)(`span`,{className:`mr-auto pl-[3.25rem]`,children:`Swing`}),(0,z.jsx)(`span`,{className:`w-12 text-right`,children:`delta`}),(0,z.jsx)(`span`,{className:`hidden w-7 text-center @[18rem]:inline-block`,children:`posts`})]}),t.length>0&&(0,z.jsxs)(`section`,{"aria-label":`Sentiment gainers`,children:[(0,z.jsx)(V,{label:`Gainers`,up:!0}),(0,z.jsx)(`div`,{className:`space-y-0`,children:t.map(e=>(0,z.jsx)(B,{team:e,maxAbsDelta:r},e.teamId))})]}),t.length>0&&n.length>0&&(0,z.jsx)(`div`,{className:`my-2.5 h-px bg-zinc-100 dark:bg-zinc-800`}),n.length>0&&(0,z.jsxs)(`section`,{"aria-label":`Sentiment losers`,children:[(0,z.jsx)(V,{label:`Losers`,up:!1}),(0,z.jsx)(`div`,{className:`space-y-0`,children:n.map(e=>(0,z.jsx)(B,{team:e,maxAbsDelta:r},e.teamId))})]}),(0,z.jsx)(`p`,{className:`mt-3 text-center text-2xs text-zinc-400 dark:text-zinc-500`,children:`Based on community sentiment · last 7 days vs prior 7 days`})]})},empty:{message:`No trending teams`,submessage:`Trends surface from the recent results delta.`,icon:(0,z.jsx)(d,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Se(){return(0,z.jsx)(`span`,{title:`Teams with the biggest shift in community sentiment this week vs last week. Delta = avg sentiment change across all mentions.`,className:`ml-1 text-zinc-400 hover:text-zinc-500 dark:text-zinc-500 dark:hover:text-zinc-400 cursor-help`,"aria-label":`About this widget`,children:(0,z.jsx)(t,{size:12,"aria-hidden":`true`})})}function Ce(e){return g({queryKey:[`sentimentHeadlines`,e],queryFn:()=>C(`/games/${e}/sentiment/headlines`),staleTime:12e4})}function we(e){let t=Ce(e);return{...t,data:t.data?{items:(t.data.headlines??[]).slice(0,6)}:t.data}}function Te(e,t){return e>=.6?`On a tear`:e>=.35?`Trending up`:e>=.15?`Gaining steam`:e>-.15?t===`roster_move`||t===`roster`?`Roster news`:t===`tournament_news`||t===`tournament`?`In the mix`:`Mixed takes`:e>-.35?`Under pressure`:e>-.6?`Struggling`:`In crisis`}function Ee(e){return e>=.35?`text-emerald-400 bg-emerald-500/10 border-emerald-500/20`:e>=.15?`text-emerald-500/80 bg-emerald-500/5 border-emerald-500/15`:e>-.15?`text-zinc-400 bg-zinc-500/10 border-zinc-500/20`:e>-.35?`text-rose-500/80 bg-rose-500/5 border-rose-500/15`:`text-rose-400 bg-rose-500/10 border-rose-500/20`}function De({sentiment:e}){return e>=.15?(0,z.jsx)(d,{size:10,"aria-hidden":`true`}):e<=-.15?(0,z.jsx)(u,{size:10,"aria-hidden":`true`}):(0,z.jsx)(i,{size:10,"aria-hidden":`true`})}function Oe({item:e,gameSlug:t}){let n=Te(e.sentiment,e.label),r=Ee(e.sentiment);return(0,z.jsxs)(x,{to:e.entityType===`team`?`/${t}/teams/${e.entitySlug}`:`/${t}/players/${e.entitySlug}`,className:`group -mx-2 flex items-start gap-3 rounded px-2 py-2 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-900/40`,children:[(0,z.jsx)(`div`,{className:`flex-shrink-0 pt-0.5`,children:(0,z.jsx)(T,{...e.entityType===`team`?{name:e.entityName,slug:e.entitySlug,abbreviation:e.team?.abbreviation,logoUrl:e.team?.logoUrl}:{name:e.team?.name??e.entityName,slug:e.team?.slug??void 0,abbreviation:e.team?.abbreviation,logoUrl:e.team?.logoUrl},size:`md`})}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,z.jsx)(`span`,{className:`text-sm font-bold tracking-tight text-zinc-900 transition-colors group-hover:text-[var(--glk-brand)] dark:text-zinc-50`,style:{fontFamily:`var(--font-display)`},children:e.entityName}),e.entityType===`player`&&e.team?.abbreviation&&(0,z.jsx)(`span`,{className:`glk-tabular text-xs font-semibold text-zinc-500 dark:text-zinc-500`,children:e.team.abbreviation}),(0,z.jsxs)(`span`,{className:k(`ml-auto flex flex-shrink-0 items-center gap-1 rounded-full border px-1.5 py-0.5 text-2xs font-semibold tracking-tight`,r),children:[(0,z.jsx)(De,{sentiment:e.sentiment}),n]})]}),(0,z.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-xs leading-relaxed text-zinc-600 dark:text-zinc-400`,children:e.summary}),(0,z.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5 glk-eyebrow`,children:[(0,z.jsxs)(`span`,{className:`glk-tabular`,children:[e.mentions,` signals`]}),(0,z.jsx)(`span`,{className:`opacity-50`,"aria-hidden":`true`,children:`·`}),(0,z.jsx)(`span`,{className:`normal-case tracking-normal`,children:ue(e.latestPublishedAt)})]})]})]})}var U={id:`hotTakes`,title:`Scene Beat`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(v,{size:14,"aria-hidden":`true`}),useData:e=>we(e.gameSlug),renderData:(e,n)=>(0,z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between px-0.5`,children:[(0,z.jsx)(`span`,{className:`glk-eyebrow`,children:`Scene beat · last 7 days`}),(0,z.jsxs)(`div`,{className:`group/help relative`,children:[(0,z.jsx)(t,{size:13,className:`cursor-help text-zinc-400 hover:text-zinc-600 dark:text-zinc-600 dark:hover:text-zinc-400`,"aria-label":`About Scene Beat`}),(0,z.jsx)(`div`,{className:k(`pointer-events-none absolute right-0 top-full z-10 mt-1 w-60 rounded-md border border-zinc-200 bg-white px-3 py-2`,`text-xs leading-snug text-zinc-600 shadow-md`,`opacity-0 transition-opacity group-hover/help:opacity-100`,`dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-400`),children:`The biggest narratives in VCT right now. Teams and players the community is talking about most, ranked by signal strength.`})]})]}),(0,z.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-zinc-800/50`,children:e.items.map(e=>(0,z.jsx)(Oe,{item:e,gameSlug:n.gameSlug},e.entityId))})]}),empty:{message:`No scene chatter`,submessage:`Quiet day on the community feeds.`,icon:(0,z.jsx)(v,{size:20,"aria-hidden":`true`})}};function W(e,t,n=20){return A(ae.player,{gameSlug:e,playerSlug:t,limit:n},{enabled:!!t,placeholderData:p})}function ke(){let{preferences:e}=D(),t=e.watchlist.filter(e=>e.type===`player`);return g({queryKey:[`watchedPlayers`,t.map(e=>e.slug).join(`,`)],queryFn:()=>({items:t}),staleTime:1/0,gcTime:1/0})}function G(e,t=0){return e==null?`—`:t>0?e.toFixed(t):Math.round(e).toString()}function Ae({gameSlug:e,slug:t,onUnwatch:n}){let{data:r,isLoading:i}=W(e,t);if(i)return(0,z.jsx)(`div`,{className:`h-20 animate-pulse rounded-lg bg-zinc-100 dark:bg-zinc-800`});if(!r)return null;let a=P(r.country),o=r.role?r.role.charAt(0).toUpperCase()+r.role.slice(1).toLowerCase():null;return(0,z.jsxs)(`div`,{className:`relative`,children:[(0,z.jsxs)(x,{to:`/${e}/players/${t}`,className:`block rounded-lg bg-zinc-50 p-3 transition-colors hover:bg-zinc-100 dark:bg-zinc-800/40 dark:hover:bg-zinc-800/70`,children:[(0,z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[r.avatarUrl?(0,z.jsx)(`img`,{src:r.avatarUrl.startsWith(`//`)?`https:${r.avatarUrl}`:r.avatarUrl,alt:r.ign,className:`h-8 w-8 rounded-full object-cover`}):(0,z.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-zinc-200 text-xs font-bold text-zinc-500 dark:bg-zinc-700 dark:text-zinc-400`,children:r.ign.charAt(0).toUpperCase()}),(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`span`,{className:`text-sm font-bold tracking-tight text-zinc-900 dark:text-zinc-50`,style:{fontFamily:`var(--font-display)`},children:[a&&(0,z.jsx)(`span`,{className:`mr-1`,children:a}),r.ign]}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs text-zinc-500 dark:text-zinc-400`,children:[r.team?.abbreviation&&(0,z.jsx)(`span`,{className:`font-semibold`,children:r.team.abbreviation}),o&&(0,z.jsxs)(`span`,{children:[`· `,o]})]})]})]}),r.rating&&(0,z.jsx)(N,{rating:Math.round(r.rating.rating),rd:Math.round(r.rating.rd)})]}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1.5`,children:[{label:`ACS`,value:G(r.careerAvgAcs)},{label:`K/D`,value:G(r.careerAvgKd,2)},{label:`ADR`,value:G(r.careerAvgAdr)},{label:`KAST`,value:r.careerAvgKast==null?`—`:`${G(r.careerAvgKast*100)}%`}].map(e=>(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`glk-eyebrow`,children:e.label}),(0,z.jsx)(`div`,{className:`glk-metric glk-metric-sm mt-0.5 text-zinc-900 dark:text-zinc-50`,children:e.value})]},e.label))})]}),(0,z.jsx)(`button`,{"aria-label":`Remove ${r.ign} from watchlist`,onClick:()=>n(t),className:`absolute right-2 top-2 rounded p-0.5 text-zinc-400 transition-colors hover:bg-zinc-200/60 hover:text-zinc-600 dark:text-zinc-500 dark:hover:bg-zinc-700/60 dark:hover:text-zinc-300`,children:(0,z.jsx)(c,{size:12,"aria-hidden":`true`})})]})}function je({gameSlug:e,slug:t,onUnwatch:n}){let{data:r,isLoading:i}=W(e,t);if(i)return(0,z.jsx)(`div`,{className:`h-8 animate-pulse rounded bg-zinc-100 dark:bg-zinc-800`});if(!r)return null;let a=P(r.country);return(0,z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,z.jsxs)(x,{to:`/${e}/players/${t}`,className:`flex min-w-0 flex-1 items-center gap-2 rounded-md px-2 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/50`,children:[(0,z.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-800 dark:text-zinc-100`,children:[a&&(0,z.jsx)(`span`,{className:`mr-1`,children:a}),r.ign]}),(0,z.jsx)(`span`,{className:`text-xs text-zinc-500 dark:text-zinc-500`,children:r.team?.abbreviation??``}),(0,z.jsx)(`span`,{className:`glk-metric glk-metric-sm text-zinc-700 dark:text-zinc-200`,children:G(r.careerAvgAcs)}),r.rating&&(0,z.jsx)(N,{rating:Math.round(r.rating.rating),rd:Math.round(r.rating.rd)})]}),(0,z.jsx)(`button`,{"aria-label":`Remove ${r.ign} from watchlist`,onClick:()=>n(t),className:`shrink-0 rounded p-1 text-zinc-400 transition-colors hover:bg-zinc-200/60 hover:text-zinc-600 dark:text-zinc-500 dark:hover:bg-zinc-700/60 dark:hover:text-zinc-300`,children:(0,z.jsx)(c,{size:12,"aria-hidden":`true`})})]})}function Me({data:e,gameSlug:t}){let{removeFromWatchlist:n}=D(),{items:r}=e,i=r.length>=4;return(0,z.jsx)(`div`,{className:`space-y-2`,children:r.map(e=>i?(0,z.jsx)(je,{gameSlug:t,slug:e.slug,onUnwatch:n},e.slug):(0,z.jsx)(Ae,{gameSlug:t,slug:e.slug,onUnwatch:n},e.slug))})}var Ne={id:`watchedPlayers`,title:`Watchlist`,column:`secondary`,canvasSize:`1x1`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(m,{size:14,"aria-hidden":`true`}),useData:()=>ke(),renderData:(e,t)=>(0,z.jsx)(Me,{data:e,gameSlug:t.gameSlug}),empty:{message:`Add players to your watchlist`,submessage:`Watched players show their recent form here.`,icon:(0,z.jsx)(m,{size:24,strokeWidth:1.5,"aria-hidden":`true`}),action:(0,z.jsx)(x,{to:`/valorant/players`,className:`font-semibold text-[var(--glk-brand)] hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--glk-brand)]`,children:`Browse players →`})}};function Pe(){return g({queryKey:[`ad`],queryFn:()=>!0,staleTime:1/0})}var Fe={id:`ad`,title:`Sponsored`,column:`secondary`,canvasSize:`1x1`,contentShape:`metric`,icon:(0,z.jsx)(S,{size:14,"aria-hidden":`true`}),useData:Pe,renderData:()=>(0,z.jsx)(`div`,{className:`h-[232px] w-full`,children:(0,z.jsxs)(`div`,{className:`mx-auto flex h-full w-full max-w-[300px] flex-col items-center justify-center gap-3 rounded-xl border border-dashed border-zinc-200 bg-zinc-50/60 px-4 transition-colors hover:border-zinc-300 dark:border-zinc-700/60 dark:bg-zinc-800/20 dark:hover:border-zinc-600`,children:[(0,z.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,z.jsx)(S,{size:14,className:`text-zinc-400 dark:text-zinc-500`,"aria-hidden":`true`})}),(0,z.jsxs)(`div`,{className:`text-center`,children:[(0,z.jsx)(`p`,{className:`text-sm font-bold tracking-tight text-zinc-700 dark:text-zinc-300`,style:{fontFamily:`var(--font-display)`},children:`Support Glicko`}),(0,z.jsx)(`p`,{className:`glk-tabular mt-0.5 text-xs text-zinc-500 dark:text-zinc-500`,children:`Ad space · 300 × 232`})]}),(0,z.jsx)(`span`,{className:`glk-eyebrow rounded-full border border-zinc-200 px-2.5 py-0.5 dark:border-zinc-700`,children:`Advertise here`})]})}),empty:{message:`No sponsor`,icon:(0,z.jsx)(S,{size:24,strokeWidth:1.5})}};function Ie(e){return g({queryKey:[`gameMood`,e],queryFn:()=>C(`/games/${e}/sentiment/game-mood`),staleTime:12e4})}var Le={excited:`success`,hopeful:`success`,impressed:`success`,neutral:`neutral`,meme:`warning`,disappointed:`danger`,frustrated:`danger`,angry:`danger`},Re={excited:`Excited`,hopeful:`Hopeful`,impressed:`Impressed`,neutral:`Neutral`,meme:`Meme`,disappointed:`Disappointed`,frustrated:`Frustrated`,angry:`Angry`};function ze(e){return Le[e]??`neutral`}function Be(e){return Re[e]??e}function Ve(e){let t=e.toFixed(2);return e>0&&!t.startsWith(`-`)?`+${t}`:t}function He(e){let t=new Date(e).getTime(),n=Math.round((Date.now()-t)/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.round(n/60);return r<24?`${r}h ago`:`${Math.round(r/24)}d ago`}function Ue({latest:e,history:t}){let n=ze(e.mood),r=Be(e.mood),i=t.map(e=>e.avgSentiment),a=i.filter(e=>e!==null),o=a.length>=2,s=a[0]??null,c=i.map(e=>e===null?s:(s=e,e));return(0,z.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,z.jsx)(ce,{label:`Community mood · updated ${He(e.updatedAt)}`,value:r,displayValue:!0,accent:n===`danger`||n===`success`,sub:(0,z.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[(0,z.jsx)(`span`,{className:`glk-tabular flex-shrink-0 text-zinc-400 dark:text-zinc-500`,title:`Sentiment score (−1 = negative, +1 = positive)`,children:Ve(e.sentiment)}),e.summary&&(0,z.jsx)(`span`,{className:`min-w-0 truncate text-zinc-500 dark:text-zinc-400`,children:e.summary})]}),trail:o?(0,z.jsx)(de,{data:c,width:180,height:32}):void 0}),e.themes.length>0&&(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:e.themes.slice(0,6).map(e=>(0,z.jsx)(`span`,{className:`rounded-full border border-zinc-200 bg-zinc-50 px-2 py-0.5 text-2xs font-medium text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400`,children:e},e))})]})}var We={id:`gameMood`,title:`Community Mood`,column:`secondary`,canvasSize:`1x1`,contentShape:`metric`,toggleable:!0,icon:(0,z.jsx)(f,{size:14,"aria-hidden":`true`}),useData:e=>Ie(e.gameSlug),isDataEmpty:e=>e.latest==null,renderData:e=>(0,z.jsx)(Ue,{latest:e.latest,history:e.history}),empty:{message:`No mood data yet`,submessage:`Check back once content flows in.`,icon:(0,z.jsx)(f,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Ge(e){let t=new Date,n=[...e.filter(e=>e.tier===`vct`)].sort((e,t)=>new Date(t.startDate??0).getTime()-new Date(e.startDate??0).getTime()).filter((e,t,n)=>n.findIndex(t=>t.name===e.name)===n.indexOf(e)),r=e=>!!(e.startDate&&new Date(e.startDate)<=t&&(!e.endDate||new Date(e.endDate)>=t)),i=n.filter(e=>e.status===`ongoing`||e.status==null&&r(e)),a=n.filter(e=>e.status===`upcoming`||e.status==null&&e.startDate&&new Date(e.startDate)>t).slice(0,3),o=n.filter(e=>e.status===`completed`||e.status==null&&e.endDate&&new Date(e.endDate)<t).slice(0,3);return i.length+a.length>0?[...i,...a]:o}function Ke(e){let t=fe(e);return{...t,data:t.data?Ge(t.data):t.data}}var qe={id:`tournamentContext`,title:`Tournament`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(y,{size:14,"aria-hidden":`true`}),useData:e=>Ke(e.gameSlug),renderData:(e,t)=>{let n=new Date,r=e.filter(e=>e.status===`ongoing`||e.status==null&&e.startDate&&new Date(e.startDate)<=n&&(!e.endDate||new Date(e.endDate)>=n)),i=e.filter(e=>e.status===`upcoming`||e.status==null&&e.startDate&&new Date(e.startDate)>n),a=r.length===0&&i.length===0&&e.length>0;return(0,z.jsx)(`div`,{className:`space-y-3`,children:e.map(e=>{let r=e.status===`ongoing`||e.status==null&&e.startDate&&new Date(e.startDate)<=n&&(!e.endDate||new Date(e.endDate)>=n);return(0,z.jsx)(x,{to:`/${t.gameSlug}/tournaments/${e.slug}`,className:`group block rounded-lg px-1 py-1 transition-colors hover:bg-zinc-100 dark:hover:bg-zinc-800/50 focus-visible:ring-2 focus-visible:ring-[var(--glk-brand)] focus-visible:outline-none`,children:(0,z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,z.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsx)(`div`,{className:`truncate text-sm font-bold text-zinc-900 group-hover:text-[var(--glk-brand)] dark:text-zinc-100`,title:e.name,children:e.name}),(0,z.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 text-xs text-zinc-500 dark:text-zinc-400`,children:[e.region&&(0,z.jsx)(`span`,{className:`font-semibold uppercase tracking-wide text-zinc-600 dark:text-zinc-300`,children:e.region}),(0,z.jsx)(`span`,{className:`rounded px-1.5 py-0.5 text-2xs font-bold leading-none ${re(e.tier)}`,children:se(e.tier)??`VCT`})]})]}),(0,z.jsx)(`div`,{className:`flex-shrink-0`,children:r?(0,z.jsx)(M,{tone:`live`,pulse:!0,children:`Live`}):a?(0,z.jsx)(M,{tone:`neutral`,size:`xs`,children:`Recent`}):(0,z.jsx)(M,{tone:`info`,size:`xs`,children:`Upcoming`})})]}),(0,z.jsxs)(`div`,{className:`flex min-w-0 flex-wrap gap-4 text-xs text-zinc-500 dark:text-zinc-400`,children:[e.prizePool&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{children:`Prize `}),(0,z.jsx)(`span`,{className:`font-semibold text-zinc-700 dark:text-zinc-300`,children:e.prizePool})]}),e.startDate&&(0,z.jsxs)(`div`,{children:[new Date(e.startDate).toLocaleDateString(void 0,{month:`short`,day:`numeric`}),e.endDate&&(0,z.jsxs)(z.Fragment,{children:[` – `,new Date(e.endDate).toLocaleDateString(void 0,{month:`short`,day:`numeric`})]})]})]})]})},e.id)})})},empty:{message:`No VCT tournaments scheduled`,icon:(0,z.jsx)(y,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Je(e){switch(e){case`vct`:return`VCT`;case`vcl`:return`Challengers`;case`gc`:return`Game Changers`;case`all`:return`Global`}}function Ye(e){let t=pe(e,`vct`,{limit:15}),n=(0,R.useMemo)(()=>(t.data?.teams??[]).slice(0,15),[t.data]);return{...t,data:t.data?{items:n}:t.data}}var Xe={id:`powerRankings`,title:`Rankings`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(l,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/teams`,useData:e=>Ye(e.gameSlug),renderData:(e,t)=>{let n=e.items,r=Je(`vct`);return(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,title:`Top teams in the ${r} pool — ranked by Glicko-2 rating.`,children:n.map((e,n)=>{let i=e.poolRank??n+1;return(0,z.jsxs)(x,{to:`/${t.gameSlug}/teams/${e.slug}`,title:`${e.name} — ${r} pool · rating ${e.rating}`,className:`group flex min-w-0 items-center gap-2 px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-white/[0.03]`,children:[(0,z.jsx)(me,{rank:i,variant:`text`,className:`w-5 flex-shrink-0 text-right text-xs`}),(0,z.jsx)(T,{name:e.name,slug:e.slug,abbreviation:e.abbreviation,logoUrl:e.logoUrl,size:`xs`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-900 dark:text-zinc-100`,children:e.name}),(0,z.jsxs)(`span`,{className:k(`glk-metric glk-metric-sm text-zinc-900 dark:text-zinc-100`,e.isProvisional&&`text-zinc-500 dark:text-zinc-400`),children:[e.rating,e.isProvisional&&(0,z.jsx)(`span`,{className:`ml-0.5 text-2xs text-zinc-400`,"aria-hidden":`true`,children:`*`})]})]},e.teamId)})}),(0,z.jsx)(F,{to:`/${t.gameSlug}/teams`,children:`View full rankings →`})]})},empty:{message:`No teams ranked`,submessage:`Rankings refresh after match results post.`,icon:(0,z.jsx)(l,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}},Ze=50;function K(e,t={}){let{stat:n=`acs`,minMaps:r=0,limit:i=Ze,tier:a,tiers:o,region:c,subRegion:l,role:u,from:d}=t;return s({queryKey:[`leaderboard`,e,n,r,i,a,o,c,l,u,d],queryFn:({pageParam:t=0})=>{let s=new URLSearchParams({stat:n,min_maps:String(r),limit:String(i),offset:String(t)});return a&&a!==`all`&&s.set(`tier`,a),o&&o.length>0&&s.set(`tiers`,o.join(`,`)),c&&c!==`all`&&s.set(`region`,c),l&&s.set(`subRegion`,l),u&&u!==`all`&&s.set(`role`,u),d&&s.set(`from`,d),C(`/games/${e}/stats/leaderboard?${s}`)},initialPageParam:0,getNextPageParam:(e,t)=>{if(!(e.length<i))return t.length*i},staleTime:300*1e3})}function q(e=180){return(0,R.useMemo)(()=>{let t=new Date;return t.setDate(t.getDate()-e),t.toISOString().split(`T`)[0]},[e])}function Qe({label:e,value:t,percent:n,className:r}){return(0,z.jsxs)(`div`,{className:k(`min-w-0`,r),children:[(0,z.jsxs)(`div`,{className:`flex min-w-0 items-baseline justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold text-zinc-800 dark:text-zinc-200`,children:e}),(0,z.jsx)(`span`,{className:`glk-metric glk-metric-sm flex-shrink-0 text-zinc-900 dark:text-zinc-100`,children:t})]}),(0,z.jsx)(`div`,{className:`mt-1 h-1 w-full overflow-hidden rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,z.jsx)(`div`,{className:`h-full rounded-full transition-all`,style:{width:`${Math.min(100,n)}%`,background:`linear-gradient(90deg, var(--glk-brand), var(--glk-brand) 40%, color-mix(in srgb, var(--glk-brand) 25%, transparent))`}})})]})}function $e(e){let t=K(e,{stat:`acs`,limit:5,tier:`vct`,minMaps:5,from:q()}),n=t.data?.pages.flat();return{...t,data:n,isLoading:t.isLoading,isError:t.isError}}var et={id:`leaderboard`,title:`Top Performers`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(o,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/players`,useData:e=>$e(e.gameSlug),renderData:(e,t)=>{let n=e[0]?.value??1;return(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`space-y-1.5`,children:e.map((e,r)=>{let i=r+1;return(0,z.jsxs)(x,{to:`/${t.gameSlug}/players/${e.player.slug}`,className:`flex min-w-0 items-center gap-2 rounded-md px-1 py-0.5 transition-colors hover:bg-zinc-100 dark:hover:bg-zinc-800/50`,children:[(0,z.jsx)(me,{rank:i,className:`h-6 w-6 flex-shrink-0`}),e.player.team&&(0,z.jsx)(T,{name:e.player.team.name,slug:e.player.team.slug??``,abbreviation:e.player.team.abbreviation,logoUrl:e.player.team.logoUrl??null,size:`xs`,className:`flex-shrink-0`}),(0,z.jsx)(Qe,{label:e.player.ign,value:e.value,percent:e.value/n*100,className:`flex-1`})]},e.player.id)})}),(0,z.jsx)(F,{to:`/${t.gameSlug}/players`,children:`View full leaderboard →`})]})},empty:{message:`No leaders yet`,submessage:`Leaderboards build up after enough recent maps.`,icon:(0,z.jsx)(o,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function tt(e){if(!e)return``;let t=new URLSearchParams;e.from&&t.set(`from`,e.from),e.to&&t.set(`to`,e.to);let n=t.toString();return n?`?${n}`:``}function J(e,t){let n=tt(t);return g({queryKey:[`agentMeta`,e,t?.from??``,t?.to??``],queryFn:()=>C(`/games/${e}/stats/agents${n}`),staleTime:300*1e3})}var Y=60,nt=30;function X(e){return new Date(Date.now()-e*24*60*60*1e3).toISOString()}function rt(e){let t=(0,R.useMemo)(()=>({from:X(Y)}),[]),n=(0,R.useMemo)(()=>({from:X(2*Y),to:X(Y)}),[]),r=J(e,t),i=J(e,n),a=r.isLoading,o=r.isError,s=(0,R.useMemo)(()=>{if(!r.data)return;let e=new Map(i.data?.map(e=>[e.agent,e.presenceRate])??[]);return{items:r.data.filter(e=>e.mapsPlayed>=nt).map(t=>({agent:t.agent,presenceRate:t.presenceRate,winRate:t.winRate,delta:e.has(t.agent)?t.presenceRate-(e.get(t.agent)??0):null})).sort((e,t)=>t.presenceRate-e.presenceRate).slice(0,10)}},[r.data,i.data]);return{...r,data:s,isLoading:a,isError:o}}function it(e){return e>=.55?`text-emerald-600 dark:text-emerald-400`:e<=.45?`text-rose-500 dark:text-rose-400`:`text-zinc-700 dark:text-zinc-300`}function at({delta:e}){if(e==null)return(0,z.jsx)(`span`,{className:`text-2xs text-zinc-400`,children:`new`});let t=e*100;if(Math.abs(t)<1)return(0,z.jsx)(`span`,{className:`text-2xs text-zinc-400`,children:`—`});let n=t>0,r=n?d:u;return(0,z.jsxs)(`span`,{className:k(`inline-flex items-baseline gap-0.5 text-2xs font-bold tabular-nums`,n?`text-emerald-600 dark:text-emerald-400`:`text-rose-500 dark:text-rose-400`),children:[(0,z.jsx)(r,{size:10,strokeWidth:2.5,"aria-hidden":`true`,className:`self-center`}),n?`+`:``,t.toFixed(1)]})}var ot={id:`agentMeta`,title:`Agent Meta`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(b,{size:14,"aria-hidden":`true`}),useData:e=>rt(e.gameSlug),renderData:e=>{let{items:t}=e;return(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`mb-1 flex items-center gap-2 px-1 text-2xs uppercase tracking-wider text-zinc-400`,children:[(0,z.jsx)(`span`,{className:`w-6`}),(0,z.jsx)(`span`,{className:`flex-1`,children:`Agent`}),(0,z.jsx)(`span`,{className:`w-12 text-right`,title:`Maps the agent appeared in (either team)`,children:`Presence`}),(0,z.jsx)(`span`,{className:`w-12 text-right`,children:`Δ split`}),(0,z.jsx)(`span`,{className:`w-10 text-right`,children:`WR`})]}),(0,z.jsx)(`ul`,{className:`space-y-1`,children:t.map(e=>(0,z.jsxs)(`li`,{className:`flex items-center gap-2 rounded-md px-1 py-1.5 transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/40`,children:[(0,z.jsx)(he,{name:e.agent,size:`xs`,className:`flex-shrink-0`}),(0,z.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,z.jsx)(`span`,{className:`truncate text-sm font-semibold capitalize text-zinc-800 dark:text-zinc-200`,children:e.agent}),(0,z.jsx)(`div`,{className:`mt-1 h-1 w-full overflow-hidden rounded-full bg-zinc-100 dark:bg-zinc-800`,children:(0,z.jsx)(`div`,{className:`h-full rounded-full`,style:{width:`${Math.round(e.presenceRate*100)}%`,background:`linear-gradient(90deg, var(--glk-brand), color-mix(in srgb, var(--glk-brand) 30%, transparent))`}})})]}),(0,z.jsxs)(`span`,{className:`glk-tabular w-12 flex-shrink-0 text-right text-xs font-bold text-zinc-900 dark:text-zinc-100`,children:[Math.round(e.presenceRate*100),`%`]}),(0,z.jsx)(`span`,{className:`w-12 flex-shrink-0 text-right`,children:(0,z.jsx)(at,{delta:e.delta})}),(0,z.jsxs)(`span`,{className:k(`glk-tabular w-10 flex-shrink-0 text-right text-xs font-semibold`,it(e.winRate)),children:[Math.round(e.winRate*100),`%`]})]},e.agent))}),(0,z.jsx)(`p`,{className:`mt-3 text-center text-2xs text-zinc-400 dark:text-zinc-500`,children:`Presence = % of maps the agent appeared in · Last 60 days`})]})},empty:{message:`No agent meta data`,submessage:`Agent stats appear after the recent map window settles.`,icon:(0,z.jsx)(b,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function st({children:e,scrollStep:t=320,className:n,viewportClassName:r}){let i=(0,R.useRef)(null),[a,o]=(0,R.useState)(!1),[s,c]=(0,R.useState)(!1),l=(0,R.useCallback)(()=>{let e=i.current;e&&(o(e.scrollLeft>2),c(e.scrollLeft+e.clientWidth<e.scrollWidth-2))},[]);(0,R.useEffect)(()=>{l();let e=i.current;if(!e)return;e.addEventListener(`scroll`,l,{passive:!0}),e.addEventListener(`scrollend`,l,{passive:!0});let t=new ResizeObserver(l);return t.observe(e),()=>{e.removeEventListener(`scroll`,l),e.removeEventListener(`scrollend`,l),t.disconnect()}},[l]),(0,R.useEffect)(()=>{let e=i.current;if(!e)return;let t=t=>{Math.abs(t.deltaY)>Math.abs(t.deltaX)&&(t.preventDefault(),e.scrollLeft+=t.deltaY)};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[]);let u=e=>{i.current?.scrollBy({left:e===`left`?-t:t,behavior:`smooth`}),setTimeout(l,100),setTimeout(l,350)};return(0,z.jsxs)(`div`,{className:k(`relative flex min-w-0 flex-1 items-stretch`,n),children:[(0,z.jsx)(`div`,{className:k(`pointer-events-none absolute inset-y-0 left-0 z-[2] w-[30px] bg-gradient-to-r from-zinc-50 to-transparent transition-opacity duration-150 dark:from-glk-bg-app`,a?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,z.jsx)(`div`,{className:k(`pointer-events-none absolute inset-y-0 right-0 z-[2] w-[30px] bg-gradient-to-l from-zinc-50 to-transparent transition-opacity duration-150 dark:from-glk-bg-app`,s?`opacity-100`:`opacity-0`),"aria-hidden":!0}),a&&(0,z.jsx)(`button`,{onClick:()=>u(`left`),"aria-label":`Scroll left`,className:`absolute left-0.5 top-1/2 z-[3] grid h-8 w-6 -translate-y-1/2 place-items-center rounded-[4px] border border-zinc-200 bg-white text-zinc-700 opacity-90 transition-opacity hover:opacity-100 dark:border-white/[0.1] dark:bg-zinc-900 dark:text-zinc-100`,children:(0,z.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2.2,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,z.jsx)(`polyline`,{points:`15 18 9 12 15 6`})})}),s&&(0,z.jsx)(`button`,{onClick:()=>u(`right`),"aria-label":`Scroll right`,className:`absolute right-0.5 top-1/2 z-[3] grid h-8 w-6 -translate-y-1/2 place-items-center rounded-[4px] border border-zinc-200 bg-white text-zinc-700 opacity-90 transition-opacity hover:opacity-100 dark:border-white/[0.1] dark:bg-zinc-900 dark:text-zinc-100`,children:(0,z.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2.2,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,z.jsx)(`polyline`,{points:`9 18 15 12 9 6`})})}),(0,z.jsx)(`div`,{ref:i,className:k(`flex min-w-0 flex-1 snap-x snap-mandatory items-stretch gap-3 overflow-x-auto scrollbar-none scroll-smooth`,r),children:e})]})}function ct(e){let{preferences:t}=D(),n=j(e,`upcoming`),r=j(e,`live`),i=j(e,`completed`),a=n.isLoading||r.isLoading||i.isLoading,o=n.isError||r.isError||i.isError,s;if(!a&&!o){let a=[...r.data??[],...n.data??[],...i.data??[]],o=new Set,c=a.filter(e=>o.has(e.id)?!1:(o.add(e.id),!0)),l=c.filter(e=>w(e.tournament?.tier)&&!ie(e)),u=[],d=[],f=Date.now();for(let e of l)if(E(e)){if(ne(e))continue;u.push(e)}else if(!e.playedAt){if(!e.scheduledAt||new Date(e.scheduledAt).getTime()<=f)continue;d.push(e)}u.sort(O),d.sort(O);let p=c.filter(e=>e.playedAt&&w(e.tournament?.tier)&&!E(e)).sort(oe),m=new Date().toLocaleDateString(`en-CA`),h=p.filter(e=>e.playedAt?new Date(e.playedAt).toLocaleDateString(`en-CA`)===m:!1),g=(h.length>0?h:p).slice(0,4),_=h.length>0?`Today's Results`:`Recent Results`;s={items:[...u,...d,...g],live:u,upcoming:d,results:g,resultsHeading:_,gameSlug:e,hideSpoilers:t.hideSpoilers}}return{...n,data:s,isLoading:a,isError:o,isFetching:n.isFetching||r.isFetching||i.isFetching,refetch:async()=>{await Promise.all([n.refetch(),r.refetch(),i.refetch()])}}}var lt={id:`matches`,title:`Matches`,column:`primary`,canvasSize:`2x2`,contentShape:`hero`,toggleable:!0,icon:(0,z.jsx)(o,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/matches`,useData:e=>ct(e.gameSlug),renderData:e=>{let{live:t,upcoming:r,results:i,resultsHeading:a,gameSlug:o,hideSpoilers:s}=e;return(0,z.jsxs)(`div`,{children:[t.length>0&&(0,z.jsxs)(`section`,{className:`mb-4`,"aria-label":`Live matches`,children:[(0,z.jsxs)(`h3`,{className:`glk-eyebrow mb-2 flex items-center gap-1.5 !text-red-500`,children:[(0,z.jsx)(`span`,{className:`glk-live-dot`,"aria-hidden":`true`}),`Live Now`,t.length>1&&(0,z.jsx)(`span`,{className:`glk-tabular ml-1 rounded-full bg-red-500/10 px-1.5 text-2xs font-bold text-red-500`,children:t.length})]}),t.length===1?(0,z.jsx)(L,{match:t[0],gameSlug:o,hideSpoilers:s}):(0,z.jsx)(st,{scrollStep:400,children:t.slice(0,5).map(e=>(0,z.jsx)(`div`,{className:`w-full flex-shrink-0 snap-start`,children:(0,z.jsx)(L,{match:e,gameSlug:o,hideSpoilers:s})},e.id))})]}),(i.length>0||r.length>0)&&(0,z.jsxs)(`section`,{className:`glk-card !p-0 mb-3 overflow-hidden`,"aria-label":`Matches schedule`,children:[i.length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`glk-eyebrow flex items-center gap-1.5 bg-zinc-50/60 px-3 py-1.5 dark:bg-white/[0.02]`,children:[(0,z.jsx)(y,{size:11,"aria-hidden":`true`}),a]}),(0,z.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,children:i.map(e=>(0,z.jsx)(I,{match:e,gameSlug:o,hideSpoilers:s,showTierBadge:!0,compact:!0},e.id))})]}),r.length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`glk-eyebrow flex items-center gap-1.5 border-t border-zinc-200 bg-zinc-50/60 px-3 py-1.5 dark:border-white/[0.06] dark:bg-white/[0.02]`,children:[(0,z.jsx)(n,{size:11,"aria-hidden":`true`}),`Upcoming`]}),(0,z.jsx)(`div`,{className:`divide-y divide-zinc-100 dark:divide-white/[0.04]`,children:r.slice(0,4).map(e=>(0,z.jsx)(I,{match:e,gameSlug:o,hideSpoilers:s,showTierBadge:!0,compact:!0},e.id))})]})]}),(t.length>0||r.length>0||i.length>0)&&(0,z.jsx)(F,{to:`/${o}/matches`,children:`View all matches →`})]})},empty:{message:`No matches scheduled`,submessage:`Live, upcoming, and recent results will appear here.`,icon:(0,z.jsx)(o,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}},Z={TEAM_MOMENTUM:`Momentum`,SENTIMENT_SHIFT:`Sentiment`};function ut(e){return e?new Date(e).toLocaleDateString(`en-US`,{month:`short`,day:`numeric`}):``}function dt(e){let t=_e(e,5);return{...t,data:t.data?{items:t.data.stories??[]}:t.data}}var ft={id:`latestStories`,title:`Latest Stories`,column:`primary`,canvasSize:`2x2`,contentShape:`hero`,toggleable:!0,icon:(0,z.jsx)(i,{size:14,"aria-hidden":`true`}),href:e=>`/${e.gameSlug}/news`,useData:e=>dt(e.gameSlug),renderData:(e,t)=>{let[n,...r]=e.items,a=`/${t.gameSlug}/news`;return(0,z.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,z.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 @[28rem]:grid-cols-[minmax(0,1.4fr)_minmax(0,1fr)]`,children:[(0,z.jsxs)(`a`,{href:`${a}/${n.slug}`,className:`group block min-w-0 overflow-hidden rounded-lg`,children:[(0,z.jsxs)(`div`,{className:`relative aspect-[16/9] w-full overflow-hidden rounded-lg bg-zinc-100 dark:bg-zinc-800`,children:[n.heroImageUrl?(0,z.jsx)(`img`,{src:n.heroImageUrl,alt:``,loading:`lazy`,className:`absolute inset-0 h-full w-full object-cover transition-transform duration-300 group-hover:scale-[1.02]`}):(0,z.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,z.jsx)(i,{size:32,strokeWidth:1.25,className:`text-zinc-300 dark:text-zinc-700`,"aria-hidden":`true`})}),(0,z.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-x-0 bottom-0 h-1/2 bg-gradient-to-t from-black/75 via-black/30 to-transparent`}),(0,z.jsxs)(`div`,{className:`absolute inset-x-0 bottom-0 p-3`,children:[(0,z.jsx)(`p`,{className:`glk-eyebrow mb-1 text-white/80`,children:Z[n.archetype]??`Story`}),(0,z.jsx)(`p`,{className:`line-clamp-2 text-sm font-bold leading-snug text-white`,style:{fontFamily:`var(--font-display)`,textShadow:`0 1px 2px rgba(0,0,0,0.55)`},children:n.title})]})]}),(0,z.jsxs)(`p`,{className:`mt-1.5 text-xs text-zinc-400`,children:[ut(n.publishedAt),n.readTimeSec!=null&&` · ${Math.max(1,Math.round(n.readTimeSec/60))} min read`]})]}),r.length>0&&(0,z.jsx)(`ul`,{className:`flex flex-col divide-y divide-zinc-100 dark:divide-zinc-800/60`,children:r.slice(0,4).map(e=>(0,z.jsx)(`li`,{children:(0,z.jsxs)(`a`,{href:`${a}/${e.slug}`,className:`group flex min-w-0 items-start gap-3 py-2.5 first:pt-0 last:pb-0`,children:[(0,z.jsx)(`div`,{className:`relative h-12 w-16 flex-shrink-0 overflow-hidden rounded-md bg-zinc-100 dark:bg-zinc-800`,children:e.heroImageUrl?(0,z.jsx)(`img`,{src:e.heroImageUrl,alt:``,loading:`lazy`,className:`absolute inset-0 h-full w-full object-cover`}):(0,z.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,z.jsx)(i,{size:14,strokeWidth:1.5,className:`text-zinc-400 dark:text-zinc-600`,"aria-hidden":`true`})})}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsx)(`p`,{className:`glk-eyebrow mb-0.5 text-zinc-400`,children:Z[e.archetype]??`Story`}),(0,z.jsx)(`p`,{className:`line-clamp-2 text-xs font-semibold leading-snug text-zinc-800 dark:text-zinc-200`,children:e.title}),(0,z.jsx)(`p`,{className:`mt-0.5 text-2xs text-zinc-400`,children:ut(e.publishedAt)})]})]})},e.id))})]}),(0,z.jsx)(F,{to:a,className:`mt-1`,children:`All stories →`})]})},empty:{message:`No stories yet`,submessage:`Editorial coverage updates daily.`,icon:(0,z.jsx)(i,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function pt(e){return(0,R.useMemo)(()=>{if(!e||e.length===0)return[];let t=new Map;for(let n of e){if(!n.agent)continue;let e=t.get(n.agent)??{maps:0,totalAcs:0,acsCount:0,totalKills:0,totalDeaths:0,kdCount:0,wins:0};e.maps++,n.acs!=null&&(e.totalAcs+=n.acs,e.acsCount++),n.kills!=null&&n.deaths!=null&&(e.totalKills+=n.kills,e.totalDeaths+=n.deaths,e.kdCount++),n.mapResult.winnerId===n.teamId&&e.wins++,t.set(n.agent,e)}let n=Array.from(t.values()).reduce((e,t)=>e+t.maps,0),r=[];for(let[e,i]of t)r.push({agent:e,maps:i.maps,pct:n>0?i.maps/n:0,avgAcs:i.acsCount>0?i.totalAcs/i.acsCount:null,avgRating:i.kdCount>0&&i.totalDeaths>0?i.totalKills/i.totalDeaths:null,winRate:i.maps>0?i.wins/i.maps:0,wins:i.wins,losses:i.maps-i.wins});return r.sort((e,t)=>t.maps-e.maps)},[e])}function mt(e){let{playerSlug:t}=_(),n=W(e??``,t),r=pt(n.data?.recentStats);return{...n,data:n.data?{items:r}:n.data}}function ht({agent:e}){let t=Math.round(e.winRate*100),n=Math.max(e.pct*100,4),r=Math.min(80,Math.max(2,n/100*80));return(0,z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,z.jsx)(he,{name:e.agent,size:`sm`,className:`flex-shrink-0`}),(0,z.jsx)(`span`,{className:`w-16 flex-shrink-0 truncate text-xs font-semibold text-zinc-700 dark:text-zinc-300`,children:e.agent}),(0,z.jsxs)(`svg`,{width:80,height:6,viewBox:`0 0 80 6`,className:`flex-1 min-w-[40px]`,"aria-hidden":`true`,children:[(0,z.jsx)(`rect`,{x:0,y:0,width:80,height:6,rx:6/2,className:`fill-zinc-200/70 dark:fill-zinc-700/40`}),(0,z.jsx)(`rect`,{x:0,y:0,width:r,height:6,rx:6/2,fill:`var(--glk-brand)`,opacity:.7})]}),(0,z.jsx)(`span`,{className:`hidden sm:inline w-10 text-right glk-metric glk-metric-sm text-zinc-700 dark:text-zinc-300`,children:e.avgAcs==null?`—`:Math.round(e.avgAcs)}),(0,z.jsx)(`span`,{className:k(`hidden sm:inline w-10 text-right glk-metric glk-metric-sm`,e.avgRating!=null&&e.avgRating>=1?`text-emerald-600 dark:text-emerald-400`:`text-red-500 dark:text-red-400`),children:e.avgRating==null?`—`:e.avgRating.toFixed(2)}),(0,z.jsxs)(`span`,{className:k(`w-10 text-right glk-metric glk-metric-sm`,t>=50?`text-emerald-600 dark:text-emerald-400`:`text-zinc-500 dark:text-zinc-400`),children:[t,`%`]}),(0,z.jsx)(`span`,{className:`w-8 text-right glk-tabular text-xs text-zinc-400`,children:e.maps})]})}var gt={id:`playerAgentPool`,title:`Agent Pool`,size:`sm`,column:`secondary`,canvasSize:`1x2`,contentShape:`list`,toggleable:!0,icon:(0,z.jsx)(b,{size:14,"aria-hidden":`true`}),useData:e=>mt(e.gameSlug),renderData:e=>(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`glk-eyebrow mb-2 flex min-w-0 items-center justify-between`,children:[(0,z.jsx)(`span`,{className:`truncate`,children:`Agent`}),(0,z.jsxs)(`span`,{className:`flex flex-shrink-0 items-center gap-3`,children:[(0,z.jsx)(`span`,{className:`hidden sm:inline w-10 text-right`,children:`ACS`}),(0,z.jsx)(`span`,{className:`hidden sm:inline w-10 text-right`,children:`K/D`}),(0,z.jsx)(`span`,{className:`w-10 text-right`,children:`Win%`}),(0,z.jsx)(`span`,{className:`w-8 text-right`,children:`Maps`})]})]}),(0,z.jsx)(`div`,{className:`space-y-1`,children:e.items.map(e=>(0,z.jsx)(ht,{agent:e},e.agent))})]}),empty:{message:`No agent data yet`,submessage:`Stats will appear once this player has logged a map.`,icon:(0,z.jsx)(b,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function _t(e,t){return A(ae.playerRatingHistory,{gameSlug:e,playerSlug:t},{enabled:!!t})}var Q=30,vt=2;function yt(e,t=new Date){if(!e||e.length===0)return{points:[],direction:`flat`,delta:0};let n=t.getTime()-Q*24*60*60*1e3,r=new Map;for(let i of e){let e=new Date(i.snapshotDate).getTime();if(Number.isNaN(e)||e<n||e>t.getTime())continue;let a=i.snapshotDate.slice(0,10),o=r.get(a)??{sum:0,count:0,t:e};o.sum+=i.rating,o.count+=1,o.t=Math.min(o.t,e),r.set(a,o)}let i=Array.from(r.entries()).sort((e,t)=>e[1].t-t[1].t).map(([e,t])=>({date:e,rating:t.sum/t.count}));if(i.length<2)return{points:i,direction:`flat`,delta:0};let a=i[i.length-1].rating-i[0].rating;return{points:i,direction:a>vt?`up`:a<-vt?`down`:`flat`,delta:a}}function bt(e){let{playerSlug:t}=_(),n=_t(e??``,t),r=(0,R.useMemo)(()=>yt(n.data),[n.data]);return{...n,data:n.data?{items:r.points.length>=2?r.points:[],direction:r.direction,delta:r.delta}:n.data}}var xt={up:`var(--glk-win, #10b981)`,down:`var(--glk-brand, #dc2626)`,flat:`#a1a1aa`};function St(e){return e===`up`?(0,z.jsx)(d,{size:14,"aria-hidden":`true`}):e===`down`?(0,z.jsx)(u,{size:14,"aria-hidden":`true`}):(0,z.jsx)(te,{size:14,"aria-hidden":`true`})}function Ct({points:e,direction:t,delta:n}){let r=e.map(e=>e.rating),i=Math.min(...r),a=Math.max(...r),o=a-i||1,s=e.length>1?e.length-1:1,c=e.map((e,t)=>({...e,x:28+t/s*184,y:58-(e.rating-i)/o*44})),l=c.map((e,t)=>`${t===0?`M`:`L`}${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `),u=xt[t],d=c[0],f=c[c.length-1],p=`${n>0?`+`:``}${n.toFixed(0)}`,m=t===`up`?`text-emerald-600 dark:text-emerald-400`:t===`down`?`text-[var(--glk-brand)]`:`text-zinc-500 dark:text-zinc-400`;return(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`glk-eyebrow`,children:[`Rating · `,Q,`d`]}),(0,z.jsx)(`div`,{className:`glk-metric glk-metric-md text-zinc-900 dark:text-zinc-100`,children:Math.round(f.rating)})]}),(0,z.jsxs)(`div`,{className:k(`flex items-center gap-1 text-xs font-semibold`,m),children:[St(t),(0,z.jsx)(`span`,{className:`glk-tabular`,children:p})]})]}),(0,z.jsxs)(`svg`,{width:`100%`,viewBox:`0 0 240 72`,preserveAspectRatio:`none`,role:`img`,"aria-label":`30-day rating sparkline, trend ${t}, change ${p}`,children:[(0,z.jsx)(`path`,{d:l,fill:`none`,stroke:u,strokeWidth:1.6,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,z.jsx)(`circle`,{cx:d.x,cy:d.y,r:2.5,fill:u}),(0,z.jsx)(`text`,{x:Math.max(4,d.x-4),y:d.y-6,textAnchor:`end`,className:`fill-zinc-500 dark:fill-zinc-400 glk-tabular`,fontSize:`9`,children:Math.round(d.rating)}),(0,z.jsx)(`circle`,{cx:f.x,cy:f.y,r:3,fill:u}),(0,z.jsx)(`text`,{x:Math.min(236,f.x+4),y:f.y-6,textAnchor:`start`,className:`fill-zinc-700 dark:fill-zinc-200 glk-tabular`,fontSize:`9`,fontWeight:700,children:Math.round(f.rating)})]}),(0,z.jsxs)(`div`,{className:`mt-1 flex items-center justify-between text-2xs text-zinc-400`,children:[(0,z.jsxs)(`span`,{children:[e.length,` day`,e.length===1?``:`s`,` sampled`]}),(0,z.jsxs)(`span`,{children:[`min `,Math.round(i),` · max `,Math.round(a)]})]})]})}var wt={id:`playerRatingTrend`,title:`Rating · 30d`,size:`sm`,column:`secondary`,canvasSize:`1x1`,contentShape:`chart`,toggleable:!0,icon:(0,z.jsx)(f,{size:14,"aria-hidden":`true`}),useData:e=>bt(e.gameSlug),renderData:e=>(0,z.jsx)(Ct,{points:e.items,direction:e.direction,delta:e.delta}),empty:{message:`Not enough rating history`,submessage:`Needs ≥2 days in the last ${Q} to draw a trend.`,icon:(0,z.jsx)(f,{size:24,strokeWidth:1.5,"aria-hidden":`true`})}};function Tt(){return g({queryKey:[`admin`,`jobs`,`overview-widget`],queryFn:()=>le(`/admin/jobs/overview-widget`),staleTime:6e4,refetchInterval:6e4})}var Et=5;function Dt(){let{data:e,isLoading:t,isError:n,error:i}=Tt();return(0,z.jsxs)(`div`,{className:`glk-card !p-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-zinc-200 dark:border-zinc-800`,children:[(0,z.jsxs)(`h3`,{className:`glk-eyebrow flex items-center gap-1.5`,children:[(0,z.jsx)(a,{size:11,"aria-hidden":`true`}),`Jobs needing attention`]}),(0,z.jsxs)(x,{to:`/admin/jobs`,className:`flex items-center gap-1 text-xs text-zinc-500 hover:text-zinc-700 dark:hover:text-zinc-300 transition-colors`,"aria-label":`Open all jobs`,children:[`All jobs `,(0,z.jsx)(r,{size:10,"aria-hidden":`true`})]})]}),(0,z.jsxs)(`div`,{className:`divide-y divide-zinc-200/70 dark:divide-zinc-800/50`,children:[t&&(0,z.jsx)(`div`,{className:`px-4 py-8 text-center text-zinc-500 text-sm`,children:`Loading…`}),!t&&n&&(0,z.jsxs)(`div`,{className:`px-4 py-6 text-center text-sm text-zinc-500`,children:[(0,z.jsxs)(`div`,{className:`mb-1 text-red-500 inline-flex items-center gap-1.5`,children:[(0,z.jsx)(a,{size:14,"aria-hidden":`true`}),`Couldn't load job health`]}),i instanceof Error&&(0,z.jsx)(`div`,{className:`text-xs text-zinc-500`,children:i.message})]}),!t&&!n&&e&&(0,z.jsx)(Ot,{rows:e.unhealthyJobTypes.slice(0,Et),threshold:e.threshold})]})]})}function Ot({rows:e,threshold:t}){return e.length===0?(0,z.jsxs)(`div`,{className:`px-4 py-8 text-center text-sm text-zinc-500`,children:[(0,z.jsxs)(`div`,{className:`inline-flex items-center gap-1.5 text-emerald-600 dark:text-emerald-400`,children:[(0,z.jsx)(f,{size:14,"aria-hidden":`true`}),`All healthy`]}),(0,z.jsxs)(`div`,{className:`mt-1 text-xs text-zinc-500`,children:[`No job types above `,Math.round(t*100),`% failure in the last 24h.`]})]}):(0,z.jsx)(z.Fragment,{children:e.map(e=>(0,z.jsx)(kt,{row:e},e.type))})}function kt({row:e}){let t=e.autoFlags??[],n=t.length>0?ve(t):`Failing runs`,i=At(t);return(0,z.jsxs)(x,{to:`/admin/jobs/types/${encodeURIComponent(e.type)}`,className:k(`flex min-w-0 items-center gap-3 px-4 py-3`,`hover:bg-zinc-50 dark:hover:bg-zinc-900/40 transition-colors`),"aria-label":`Open ${e.label} type dashboard`,children:[(0,z.jsx)(M,{tone:i,size:`xs`,dot:!0,className:`flex-shrink-0`,children:n}),(0,z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,z.jsx)(`p`,{className:`text-xs font-medium text-zinc-800 dark:text-zinc-200 truncate`,children:e.label}),(0,z.jsxs)(`p`,{className:`text-xs text-zinc-500 tabular-nums truncate`,children:[e.failed,` of `,e.total,` runs failed · `,Math.round(e.failureRate*100),`%`]})]}),e.lastFailureAt&&(0,z.jsx)(`span`,{className:`text-xs text-zinc-500 tabular-nums whitespace-nowrap`,children:jt(e.lastFailureAt)}),(0,z.jsx)(r,{size:12,className:`text-zinc-400 flex-shrink-0`,"aria-hidden":`true`})]})}function At(e){return e.length===0||e.includes(`failed`)||e.includes(`invariant-violated`)?`danger`:e.includes(`slow`)||e.includes(`long-running`)||e.includes(`large-writes`)||e.includes(`warnings`)||e.includes(`stale`)?`warning`:`neutral`}function jt(e){let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t)||t<0)return`now`;let n=Math.floor(t/1e3);if(n<60)return`${n}s`;let r=Math.floor(n/60);if(r<60)return`${r}m`;let i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}var $={matches:lt,teamForm:ge,latestStories:ft,trendingTeams:{...H,icon:(0,R.createElement)(R.Fragment,null,H.icon,(0,R.createElement)(Se))},hotTakes:U,gameMood:We,powerRankings:Xe,leaderboard:et,tournamentContext:qe,agentMeta:ot,playerAgentPool:gt,playerRatingTrend:wt,ad:Fe,watchedPlayers:Ne};function Mt(e){return $[e]}var Nt=Object.keys($),Pt=new Set([`playerAgentPool`,`playerRatingTrend`]),Ft=Nt.filter(e=>!Pt.has(e));export{_t as a,W as c,Dt as i,U as l,$ as n,q as o,Mt as r,K as s,Ft as t};