@xcpcio/board-app
Version:
XCPCIO Board App
1 lines • 75 kB
JavaScript
import{w as rt,_ as Tt,T as de,h as wt,P as me,a as pe}from"./pagination-D1pCU19r.js";import{_ as gt,D as fe}from"./Tooltip.vue_vue_type_script_setup_true_lang-OTaxJAgs.js";import{_ as Xt}from"./TheInput.vue_vue_type_script_setup_true_lang-DsqG2YZ8.js";import{G as at,_ as It,M as J,S as Wt,C as At,e as ve,I as ge,i as _e,f as be,h as Yt,g as qt,T as he,j as ye,a as xe,b as ke,d as we,R as Se}from"./index-BYh7ktqe.js";import{d as L,f as b,p as z,c as m,o as a,b as e,k as g,h as t,K as et,s as y,a as w,w as N,v as $e,L as zt,M as Te,z as V,g as dt,N as Qt,u as nt,C as ct,G as W,O as Ce,P as Kt,T as Dt,F as R,E as j,H as Me,Q as yt,R as Oe,S as Zt,U as Jt,n as H,j as Y,V as Ie,q as ze,W as te,J as Fe,A as Ae,m as De,X as Pe,Y as Be,Z as Ee,$ as Le,D as Ne}from"./index-CYsJ2gG-.js";import{_ as Re}from"./use-vmodel-CT985YGh.js";import{a as ee,u as He}from"./query-DfOnN8jV.js";import{S as je,b as Pt,C as Ue}from"./index-BNZRV8LR.js";import{_ as q}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{u as $t}from"./index-DXMw63yv.js";import{_ as Ge,a as Ve}from"./ContestStateBadge-hRbbyZ5a.js";import{T as Bt,D as Xe}from"./constant-2MSuUQN9.js";const We={"ml-4":"","mt-2":""},Ye={"ml-4":"","mt-2":"",grid:"","grid-cols-6":"","gap-y-4":""},qe={flex:"","items-center":"","w-full":"","col-span-5":""},Qe={key:0,flex:"","items-center":"","text-sm":""},Ke={key:1,flex:"","items-center":"","w-full":"","col-span-5":""},Ze={flex:"","items-center":"","w-full":"","col-span-5":""},Je=L({__name:"GiantsOptions",props:{rank:null,orgOptions:null,teamsOptions:null,giants:null},emits:["update:giants"],setup(v,{emit:r}){const n=v,p=r,d=b({get(){return n.giants},set(c){p("update:giants",c)}}),u=z(d.value.filterOrganizations);function f(c,l){u.value=c,d.value.setFilterOrganizations(c)}const s=z(d.value.filterTeams);function _(c,l){s.value=c,d.value.setFilterTeams(c)}const i=b(()=>`${d.value.type===at.BLUE?"Blue":"Red"} Team`),o=b(()=>d.value.type===at.BLUE?"#0000FF":"#FF0000");return(c,l)=>{const k=Xt,S=gt;return a(),m("div",We,[e("div",{flex:"","text-sm":"",style:et({color:t(o)})},g(t(i)),5),e("div",Ye,[l[3]||(l[3]=e("div",{flex:"","items-center":"","text-sm":""}," Name: ",-1)),e("div",qe,[w(k,{modelValue:t(d).name,"onUpdate:modelValue":l[0]||(l[0]=O=>t(d).name=O),"text-align":"left"},null,8,["modelValue"]),w(S,null,{popper:N(()=>l[2]||(l[2]=[e("div",null," Refresh Name ",-1)])),default:N(()=>[e("div",{"i-material-symbols-refresh":"","cursor-pointer":"",btn:"","text-2xl":"","ml-2":"",onClick:l[1]||(l[1]=O=>t(d).refreshName())})]),_:1})]),v.rank.contest.organization?(a(),m("div",Qe,g(v.rank.contest.organization)+": ",1)):y("",!0),v.rank.contest.organization?(a(),m("div",Ke,[w(t(rt),{options:v.orgOptions,"selected-options":t(u),onSelect:f},null,8,["options","selected-options"])])):y("",!0),l[4]||(l[4]=e("div",{"text-sm":"",flex:"","items-center":""}," Team: ",-1)),e("div",Ze,[w(t(rt),{options:v.teamsOptions,"selected-options":t(s),onSelect:_},null,8,["options","selected-options"])])])])}}}),tn={relative:"","inline-flex":"","items-center":"","cursor-pointer":""},en=L({__name:"TheCheckbox",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(v){const{modelValue:r}=Re("modelValue");return(n,p)=>(a(),m("label",tn,[$e(e("input",{"onUpdate:modelValue":p[0]||(p[0]=d=>V(r)?r.value=d:null),type:"checkbox",class:"sr-only peer"},null,512),[[Te,t(r)]]),p[1]||(p[1]=e("div",{class:"w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600"},null,-1)),zt(n.$slots,"default")]))}});function nn(){return`filter-organizations-${dt().path}`}function on(){return`filter-teams-${dt().path}`}function sn(){const r=`filter-organizations-${dt().path}`;return Qt(r,[])}function an(){const r=`filter-teams-${dt().path}`;return Qt(r,[])}const ln={"w-full":"","font-bold":"","font-mono":"","text-base":"",flex:"","flex-col":"","gap-4":"","items-center":"","justify-center":""},rn={flex:"","flex-col":"","w-full":""},un={"ml-8":"","mt-2":"",grid:"","grid-cols-6":"","gap-y-4":""},cn={key:0,flex:"","items-center":"","text-sm":""},dn={key:1,flex:"","items-center":"","w-full":"","col-span-5":""},mn={flex:"","items-center":"","w-full":"","col-span-5":""},pn={flex:"","flex-col":"","w-full":""},fn={"ml-4":"","mt-2":""},vn={grid:"","grid-cols-8":"","items-center":""},gn={flex:"","flex-col":"","w-full":""},_n={"ml-4":"","mt-2":""},bn={flex:"","flex-row":""},hn={"w-full":"",flex:"","flex-row-reverse":"","items-center":"","gap-x-4":""},yn=L({__name:"OptionsModal",props:{isHidden:{type:Boolean},rank:null,rankOptions:null},emits:["update:isHidden","update:rankOptions"],setup(v,{emit:r}){const n=v,p=r,d=It.cloneDeep(n.rankOptions),{t:u}=nt(),f=b({get(){return n.isHidden},set(U){p("update:isHidden",U)}}),s=b({get(){return n.rankOptions},set(U){p("update:rankOptions",U)}}),_=b(()=>n.rank),i=b(()=>u("type_menu.options")),o=z(!1);function c(){o.value=!0}function l(){o.value=!1}function k(U){o.value&&U.stopPropagation()}const S=b(()=>_.value.organizations.map(C=>({value:C,text:C}))),O=z(s.value.filterOrganizations);function x(U,C){O.value=U,s.value.setFilterOrganizations(U)}const h=b(()=>_.value.originTeams.map(C=>({value:C.id,text:C.organization?`${C.name} - ${C.organization}`:C.name}))),$=z(s.value.filterTeams);function M(U,C){$.value=U,s.value.setFilterTeams(U)}const B=ee();function Q(){s.value.battleOfGiants.persist?B.value=s.value.battleOfGiants.ToBase64():B.value=void 0}ct(()=>s.value.battleOfGiants.persist,()=>{Q()});async function it(){s.value.setSelf(d),await Kt(),Q(),f.value=!0}const K=nn(),ut=on();function E(){localStorage.setItem(K,JSON.stringify(O.value)),localStorage.setItem(ut,JSON.stringify($.value)),Q(),f.value=!0}return(U,C)=>{const Z=en,mt=Xt,ot=Je,lt=Tt;return a(),W(lt,{"is-hidden":t(f),"onUpdate:isHidden":C[5]||(C[5]=X=>V(f)?f.value=X:null),title:t(i),width:"w-200",mt:"mt-4"},{default:N(()=>[e("div",ln,[e("div",rn,[C[7]||(C[7]=e("div",{flex:""}," Filter ",-1)),e("div",un,[t(_).contest.organization?(a(),m("div",cn,g(t(_).contest.organization)+": ",1)):y("",!0),t(_).contest.organization?(a(),m("div",dn,[w(t(rt),{options:t(S),"selected-options":t(O),onSelect:x,onCompositionstart:c,onCompositionend:l,onKeydownCapture:Ce(k,["delete"])},null,8,["options","selected-options"])])):y("",!0),C[6]||(C[6]=e("div",{"text-sm":"",flex:"","items-center":""}," Team: ",-1)),e("div",mn,[w(t(rt),{options:t(h),"selected-options":t($),onSelect:M},null,8,["options","selected-options"])])])]),e("div",pn,[C[12]||(C[12]=e("div",{flex:""}," Battle of Giants ",-1)),e("div",fn,[e("div",vn,[C[8]||(C[8]=e("span",{"text-sm":"","font-medium":"","text-gray-900":"","dark:text-gray-300":""}," Enable ",-1)),w(Z,{modelValue:t(s).battleOfGiants.enable,"onUpdate:modelValue":C[0]||(C[0]=X=>t(s).battleOfGiants.enable=X)},null,8,["modelValue"]),C[9]||(C[9]=e("span",{"text-sm":"","font-medium":"","text-gray-900":"","dark:text-gray-300":""}," Equal Teams ",-1)),w(Z,{modelValue:t(s).battleOfGiants.equalTeams,"onUpdate:modelValue":C[1]||(C[1]=X=>t(s).battleOfGiants.equalTeams=X)},null,8,["modelValue"]),C[10]||(C[10]=e("span",{"text-sm":"","font-medium":"","text-gray-900":"","dark:text-gray-300":""}," Persist ",-1)),w(Z,{modelValue:t(s).battleOfGiants.persist,"onUpdate:modelValue":C[2]||(C[2]=X=>t(s).battleOfGiants.persist=X)},null,8,["modelValue"]),C[11]||(C[11]=e("span",{"text-sm":"","font-medium":"","text-gray-900":"","dark:text-gray-300":""}," TopX ",-1)),w(mt,{modelValue:t(s).battleOfGiants.topX,"onUpdate:modelValue":C[3]||(C[3]=X=>t(s).battleOfGiants.topX=X),"text-align":"left","text-type":"number"},null,8,["modelValue"])])]),w(ot,{rank:t(_),"org-options":t(S),"teams-options":t(h),giants:t(s).battleOfGiants.blueTeam},null,8,["rank","org-options","teams-options","giants"]),w(ot,{rank:t(_),"org-options":t(S),"teams-options":t(h),giants:t(s).battleOfGiants.redTeam},null,8,["rank","org-options","teams-options","giants"])]),e("div",gn,[C[14]||(C[14]=e("div",{flex:""}," Feature ",-1)),e("div",_n,[e("div",bn,[w(Z,{modelValue:t(s).enableAnimatedSubmissions,"onUpdate:modelValue":C[4]||(C[4]=X=>t(s).enableAnimatedSubmissions=X)},{default:N(()=>C[13]||(C[13]=[e("span",{"ml-3":"","text-sm":"","font-medium":"","text-gray-900":"","dark:text-gray-300":""}," Submission Queue ",-1)])),_:1},8,["modelValue"])])])]),e("div",hn,[e("button",{type:"submit",class:"text-white bg-primary-700 hover:bg-primary-800 focus:ring-4 focus:outline-none focus:ring-primary-300 px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800","font-medium":"","text-sm":"","rounded-md":"",onClick:E},g(t(u)("button.confirm")),1),e("button",{type:"reset",class:"py-2.5 px-5 text-gray-900 focus:outline-none bg-white border border-gray-200 hover:bg-gray-100 hover:text-primary-700 focus:z-10 focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 dark:bg-gray-800 dark:text-gray-400 dark:border-gray-600 dark:hover:text-white dark:hover:bg-gray-700","font-medium":"","text-sm":"","rounded-md":"",onClick:it},g(t(u)("button.cancel")),1)])])]),_:1},8,["is-hidden","title"])}}});function xn(v){const r={backgroundColor:"#fff",color:"#000"};if(v.awards.includes(J.GOLD))return r.backgroundColor="#fff566",r;if(v.awards.includes(J.SILVER))return r.backgroundColor="#ffadd2",r;if(v.awards.includes(J.BRONZE))return r.backgroundColor="#f0c0a0",r;if(v.awards.includes(J.HONORABLE))return r.backgroundColor="#e6f7ff",r}function kn(v){return v.isFirstSolved?"#3db03d":v.isAccepted()?"#e1ffb5":v.isPending()?"#c8d6fa":"#ffd0d0"}var vt=(v=>(v[v.SUBMISSION_STATUS=0]="SUBMISSION_STATUS",v[v.SUBMIT_TIMESTAMP=1]="SUBMIT_TIMESTAMP",v))(vt||{});const wn={"h-7":"","w-124":"","text-gray-200":"","font-mono":"",flex:"","flex-row":"","justify-center":"","items-center":"",class:"bg-resolver-bg-zero"},Sn={"h-full":"","w-92":"","pl-1":"",truncate:""},$n={"h-full":"","w-4":""},Tn=L({__name:"AnimatedSubmissionBlock",props:{item:null,lastBlockDisplayType:null},setup(v){const r=v,n=b(()=>r.item);function p(){const d=n.value.submission;if(r.lastBlockDisplayType===vt.SUBMISSION_STATUS)return je[d.status];if(r.lastBlockDisplayType===vt.SUBMIT_TIMESTAMP)return d.timestampToMinute}return(d,u)=>(a(),m("div",wn,[e("div",{"h-full":"","w-10":"",style:et(t(xn)(t(n).team)),flex:"","justify-center":"","items-center":""},[e("div",null,g(t(n).team.rank),1)],4),e("div",Sn,g(t(n).displayName),1),e("div",$n,g(t(n).team.solvedProblemNum),1),e("div",{"h-full":"","w-6":"","border-b-3":"",flex:"","justify-center":"",style:et({borderColor:t(n).problem.balloonColor.background_color})},g(t(n).problem.label),5),e("div",{"h-full":"","w-12":"",flex:"","justify-center":"","font-sans":"","font-medium":"","text-zinc-800":"",style:et({backgroundColor:("getStandingsStatusColor"in d?d.getStandingsStatusColor:t(kn))(t(n).submission)})},g(p()),5)]))}}),Cn={absolute:"",fixed:"","z-99":"","bottom-4":"","left-4":"","opacity-80":""},Mn={flex:"","flex-col":""},On={flex:"","flex-col":"","mt-6":""},In=L({__name:"AnimatedSubmissionsModal",props:{rank:null},setup(v){const r=v,n=b(()=>r.rank),p=b(()=>{const f=n.value.getSubmissions().sort(Wt.compare).reverse();let s=0;const _=10,i=[];let o=0;const c=6,l=[];for(let k=0;k<f.length&&(o<c||s<_);k++){const S=f[k],O=S.teamId,x=S.problemId,h=n.value.teamsMap.get(O);if(!h||n.value.filterTeamByOrg(h))continue;const $=n.value.contest.problemsMap.get(x);if(!$)continue;let M=h.name;h.organization&&(M=`${h.organization} - ${M}`);const B={submission:S,team:h,problem:$,displayName:M};s<_&&(i.push(B),++s),S.isSolved&&o<c&&(l.push(B),++o)}return l.reverse(),i.reverse(),{acceptedRes:l,allRes:i}}),d=b(()=>p.value.acceptedRes),u=b(()=>p.value.allRes);return(f,s)=>{const _=Tn;return a(),m("div",Cn,[e("div",Mn,[e("div",null,[w(Dt,{name:"list",tag:"ul"},{default:N(()=>[(a(!0),m(R,null,j(t(d),i=>(a(),m("div",{key:i.submission.id},[w(_,{item:i,"last-block-display-type":t(vt).SUBMIT_TIMESTAMP},null,8,["item","last-block-display-type"])]))),128))]),_:1})])]),e("div",On,[e("div",null,[w(Dt,{name:"list",tag:"ul"},{default:N(()=>[(a(!0),m(R,null,j(t(u),i=>(a(),m("div",{key:i.submission.id},[e("div",null,[w(_,{item:i,"last-block-display-type":t(vt).SUBMISSION_STATUS},null,8,["item","last-block-display-type"])])]))),128))]),_:1})])])])}}}),zn=q(In,[["__scopeId","data-v-35c08bf7"]]),Fn={"w-full":"",flex:"","mt-4":"","gap-4":""},An={btn:"",title:"Submissions",disabled:"true"},Dn={"w-full":"",flex:"","mt-4":"","gap-4":""},Pn=L({__name:"Utility",setup(v){const{t:r}=nt(),n=dt(),p=Me(),d=$t("component","board",{transform:String});function u(){window.DATA_SOURCE?d.value="resolver":p.push(`/resolver/?data-source=${n.path}`)}function f(){window.DATA_SOURCE?d.value="balloon":p.push(`/balloon/?data-source=${n.path}`)}function s(){window.DATA_SOURCE?d.value="countdown":p.push(`/countdown/?data-source=${n.path}`)}return(_,i)=>(a(),m(R,null,[e("div",Fn,[e("button",{btn:"",title:"Balloon",onClick:f},g(t(r)("type_menu.balloon")),1),e("button",An,g(t(r)("type_menu.submissions")),1)]),e("div",Dn,[e("button",{btn:"",title:"Resolver",onClick:u},g(t(r)("type_menu.resolver")),1),e("button",{btn:"",title:"Countdown",onClick:s},g(t(r)("type_menu.countdown")),1)])],64))}});var St={exports:{}},Bn=St.exports,Et;function En(){return Et||(Et=1,function(v,r){(function(n,p){p()})(Bn,function(){function n(i,o){return typeof o>"u"?o={autoBom:!1}:typeof o!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),o={autoBom:!o}),o.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(i.type)?new Blob(["\uFEFF",i],{type:i.type}):i}function p(i,o,c){var l=new XMLHttpRequest;l.open("GET",i),l.responseType="blob",l.onload=function(){_(l.response,o,c)},l.onerror=function(){console.error("could not download file")},l.send()}function d(i){var o=new XMLHttpRequest;o.open("HEAD",i,!1);try{o.send()}catch{}return 200<=o.status&&299>=o.status}function u(i){try{i.dispatchEvent(new MouseEvent("click"))}catch{var o=document.createEvent("MouseEvents");o.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),i.dispatchEvent(o)}}var f=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof yt=="object"&&yt.global===yt?yt:void 0,s=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),_=f.saveAs||(typeof window!="object"||window!==f?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(i,o,c){var l=f.URL||f.webkitURL,k=document.createElement("a");o=o||i.name||"download",k.download=o,k.rel="noopener",typeof i=="string"?(k.href=i,k.origin===location.origin?u(k):d(k.href)?p(i,o,c):u(k,k.target="_blank")):(k.href=l.createObjectURL(i),setTimeout(function(){l.revokeObjectURL(k.href)},4e4),setTimeout(function(){u(k)},0))}:"msSaveOrOpenBlob"in navigator?function(i,o,c){if(o=o||i.name||"download",typeof i!="string")navigator.msSaveOrOpenBlob(n(i,c),o);else if(d(i))p(i,o,c);else{var l=document.createElement("a");l.href=i,l.target="_blank",setTimeout(function(){u(l)})}}:function(i,o,c,l){if(l=l||open("","_blank"),l&&(l.document.title=l.document.body.innerText="downloading..."),typeof i=="string")return p(i,o,c);var k=i.type==="application/octet-stream",S=/constructor/i.test(f.HTMLElement)||f.safari,O=/CriOS\/[\d]+/.test(navigator.userAgent);if((O||k&&S||s)&&typeof FileReader<"u"){var x=new FileReader;x.onloadend=function(){var M=x.result;M=O?M:M.replace(/^data:[^;]*;/,"data:attachment/file;"),l?l.location.href=M:location=M,l=null},x.readAsDataURL(i)}else{var h=f.URL||f.webkitURL,$=h.createObjectURL(i);l?l.location=$:location.href=$,l=null,setTimeout(function(){h.revokeObjectURL($)},4e4)}});f.saveAs=_.saveAs=_,v.exports=_})}(St)),St.exports}var Ln=En();const Lt=Oe(Ln);var Nn=setTimeout;function Rn(v,r){var n=r.useCachedSetTimeout?Nn:setTimeout;return new Promise(function(p){n(p,v)})}function Hn(v){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=r.useCachedSetTimeout,p=Rn(v,{useCachedSetTimeout:n});function d(u){return p.then(function(){return u})}return d.then=function(){return p.then.apply(p,arguments)},d.catch=Promise.resolve().catch,d}const jn={flex:"","flex-col":""},Un={"w-160":"","font-bold":""},Gn={"mt-8":""},Vn={key:0,flex:"","flex-row":"","justify-center":"","gap-4":""},Xn=["disabled"],Wn=["disabled"],Yn={key:1,flex:"","justify-center":""},qn=["disabled"],Qn={key:2,flex:"","justify-center":""},Kn=["disabled"],Zn=L({__name:"Export",props:{rank:null},setup(v){const r=v,n=Zt.useToast(),{copy:p,isSupported:d}=Jt(),u=b(()=>r.rank),f=z({value:"cf-dat",text:"Codeforces Gym Ghost(dat)"}),s=z([{value:"cf-dat",text:"Codeforces Gym Ghost(dat)"},{value:"general-xlsx",text:"Excel Table(xlsx)"},{value:"icpc-standings-csv",text:"ICPC Standings(csv)"}]),_=z({CfDatDownload:!1,CfDatCopy:!1,GeneralXLSXDownload:!1,ICPCStandingsCsvDownload:!1});async function i(){await Kt(),await Hn(16)}async function o(){_.value.CfDatDownload=!0,await i();const O=new At().convert(u.value),x=new Blob([O],{type:"text/plain;charset=utf-8"});Lt.saveAs(x,"contest.dat"),_.value.CfDatDownload=!1}async function c(){if(!d.value){n.warning("clipboard is not supported");return}_.value.CfDatCopy=!0,await i();const O=new At().convert(u.value);p(O),_.value.CfDatCopy=!1,n.success("Copy Success")}async function l(){_.value.GeneralXLSXDownload=!0,await i(),new ve().convertAndWrite(u.value,`${u.value.contest.name}.xlsx`),_.value.GeneralXLSXDownload=!1}async function k(){_.value.ICPCStandingsCsvDownload=!0,await i();const O=new ge().convert(u.value),x=new Blob([O],{type:"text/csv;charset=utf-8"});Lt.saveAs(x,"standings.csv"),_.value.ICPCStandingsCsvDownload=!1}return(S,O)=>(a(),m("div",jn,[e("div",Un,[w(t(de),{modelValue:t(f),"onUpdate:modelValue":O[0]||(O[0]=x=>V(f)?f.value=x:null),options:t(s),placeholder:"Export Type"},null,8,["modelValue","options"])]),e("div",Gn,[t(f).value==="cf-dat"?(a(),m("div",Vn,[e("button",{disabled:t(_).CfDatDownload,btn:"",onClick:o}," Download ",8,Xn),e("button",{disabled:t(_).CfDatCopy,btn:"",onClick:c}," Copy to Clipboard ",8,Wn)])):y("",!0),t(f).value==="general-xlsx"?(a(),m("div",Yn,[e("button",{disabled:t(_).GeneralXLSXDownload,btn:"",onClick:l}," Download ",8,qn)])):y("",!0),t(f).value==="icpc-standings-csv"?(a(),m("div",Qn,[e("button",{disabled:t(_).ICPCStandingsCsvDownload,btn:"",onClick:k}," Download ",8,Kn)])):y("",!0)])]))}}),Jn=L({__name:"HeatMapTooltip",props:{content:{type:String,default:""},position:{type:String,default:"top",validator:v=>["top","right","bottom","left"].includes(v)},delay:{type:Number,default:100},textColor:{type:String,default:"#fff"},width:{type:String,default:"auto"},zIndex:{type:Number,default:1e3}},setup(v){const r=v,n=z(!1);let p;const d=b(()=>({color:r.textColor,width:r.width,zIndex:r.zIndex}));function u(){clearTimeout(p),p=setTimeout(()=>{n.value=!0},r.delay)}function f(){clearTimeout(p),n.value=!1}return(s,_)=>(a(),m("div",{class:"tooltip-container",onMouseenter:u,onMouseleave:f},[zt(s.$slots,"default",{},void 0,!0),e("div",{class:H(["tooltip",[v.position,{visible:t(n)}]]),style:et(t(d))},[Y(g(v.content)+" ",1),zt(s.$slots,"tooltip-content",{},void 0,!0)],6)],32))}}),to=q(Jn,[["__scopeId","data-v-73d1bbe4"]]),eo={flex:"","flex-col":"","mb-8":""},no={"text-align-center":"","text-size-lg":"","font-semibold":"","mb-8":""},oo={grid:"","grid-cols-3":"","gap-10":"","space-y-0":"","place-items-center":""},so={"text-size-lg":"","font-semibold":""},ao={flex:"","flex-row":"","gap-1":""},lo=["data-level"],ro={flex:"","flex-row":"","gap-1":""},io=["data-level"],xt=20,uo=L({__name:"SubmitHeatMap",props:{rank:null},setup(v){const r=v,{t:n}=nt(),p=b(()=>r.rank),d=p.value.contest.getStartTime(),s=p.value.contest.getEndTime().diff(d,"minute")/xt,_=b(()=>p.value.getSubmissions()),i=Array.from({length:xt},(x,h)=>{const $=h*s,M=(h+1)*s;return`Between ${$} and ${M} minutes: `}),o=b(()=>{const x=new Map;return p.value.contest.problems.forEach(h=>{x.set(h.id,{correct:[],incorrect:[]})}),_.value.forEach(h=>{const $=x.get(h.problemId);$&&(_e(h.status)?$.correct.push(h):be(h.status)&&$.incorrect.push(h))}),x});function c(x,h){const $=Array.from({length:xt}).fill(0);return x.forEach(M=>{const B=Math.min(Math.floor(M.timestampToMinute/s),xt-1);$[B]++}),$.map((M,B)=>({count:M,level:0,description:`${i[B]}${M} ${h} submissions`}))}function l(x,h){if(x.length===0)return 0;const $=(x.length-1)*h,M=Math.floor($),B=$-M;return x[M+1]!==void 0?x[M]+B*(x[M+1]-x[M]):x[M]}function k(x){const h=x.filter(M=>M>0);if(h.length===0)return[0,0,0,0,0];const $=[...h].sort((M,B)=>M-B);return[0,l($,.2),l($,.4),l($,.6),l($,.8)]}function S(x,h){for(let $=h.length-1;$>=0;$--){if(x===0)return 0;if(x>=h[$])return $}return 0}const O=b(()=>p.value.contest.problems.map(x=>{const{correct:h,incorrect:$}=o.value.get(x.id),M=c(h,"correct"),B=c($,"incorrect"),Q=M.map(E=>E.count),it=k(Q),K=B.map(E=>E.count),ut=k(K);return M.forEach(E=>E.level=S(E.count,it)),B.forEach(E=>E.level=S(E.count,ut)),{label:x.label,balloonColor:x.balloonColor,correctHeatMap:M,incorrectHeatMap:B}}));return(x,h)=>{const $=to;return a(),m("div",eo,[e("span",no,g(t(n)("standings.statistics.submit_heatmap")),1),e("div",oo,[(a(!0),m(R,null,j(t(O),M=>(a(),m("div",{key:M.label,class:"w-350px h-100px",flex:"","flex-col":"","items-center":"","justify-center":"",border:"","border-gray-100":"","dark:border-gray-600":"","rounded-md":"",shadow:""},[e("div",{"mb-1":"","size-30px":"",flex:"","justify-center":"","items-center":"","rounded-md":"",style:et({backgroundColor:M.balloonColor.background_color,color:M.balloonColor.color})},[e("span",so,g(M.label),1)],4),e("div",ao,[(a(!0),m(R,null,j(M.correctHeatMap,(B,Q)=>(a(),m("div",{key:`correct-${Q}`},[w($,{content:B.description,position:"top"},{default:N(()=>[e("div",{"data-level":B.level,class:"correct-heat","size-12px":"","rounded-1":"",shadow:"",border:"","border-gray-100":"","dark:border-gray-600":""},null,8,lo)]),_:2},1032,["content"])]))),128))]),e("div",ro,[(a(!0),m(R,null,j(M.incorrectHeatMap,(B,Q)=>(a(),m("div",{key:`incorrect-${Q}`},[w($,{content:B.description,position:"top"},{default:N(()=>[e("div",{"data-level":B.level,class:"incorrect-heat","size-12px":"","rounded-1":"",shadow:"",border:"","border-gray-100":"","dark:border-gray-600":""},null,8,io)]),_:2},1032,["content"])]))),128))])]))),128))])])}}}),co=q(uo,[["__scopeId","data-v-2b79f3f0"]]);function Ft(v,r,n,p,d,u){return{colors:u,chart:window.innerWidth<992?{type:"bar",backgroundColor:"transparent"}:{type:"column",backgroundColor:"transparent",height:"420px"},title:{text:v},xAxis:{categories:p,labels:{style:{fontSize:"16px"}},title:{text:r,style:{fontSize:"16px"}}},yAxis:{min:0,title:{text:n,style:{fontSize:"16px",height:"320px"}},stackLabels:{enabled:!0,style:{fontSize:"16px"}}},tooltip:{enabled:!0,headerFormat:"",pointFormat:"{series.name}:{point.y}"},plotOptions:{bar:{stacking:"normal"},column:{stacking:"normal"}},credits:{enabled:!1},series:d}}function mo(v){const r=[];v.contest.problems.forEach((u,f)=>{r.push({problem_id:u.label,index:f,solved:u.statistics.acceptedNum})}),r.sort((u,f)=>u.solved>f.solved?-1:u.solved<f.solved?1:u.index<f.index?-1:u.index>f.index?1:0);const{cat:n,series:p,colors:d}=(()=>{const u=[],f=[];return r.forEach(i=>{u.push(i.problem_id),f.push(i.solved)}),{cat:u,series:[{name:"队伍数",showInLegend:!1,data:f}],colors:["rgb(124, 181, 236)"]}})();return Ft("题目通过数","题目编号","通过数",n,p,d)}function po(v){const r=v.rankStatistics.teamSolvedNum.map((u,f)=>({index:f,cnt:u})),{cat:n,series:p,colors:d}=(()=>{const u=[],f=[];return r.forEach(i=>{u.push(i.index),f.push(i.cnt)}),{cat:u,series:[{name:"队伍数",showInLegend:!1,data:f}],colors:["rgb(124, 181, 236)"]}})();return Ft("队伍过题数","过题数","队伍数",n,p,d)}function fo(v){const{cat:r,series:n,colors:p}=(()=>{const d=[],u=[],f=[],s=[];return v.contest.problems.forEach(o=>{u.push(o.statistics.acceptedNum),f.push(o.statistics.rejectedNum),s.push(o.statistics.pendingNum),d.push(o.label)}),{cat:d,series:[{name:"Accepted",showInLegend:!1,data:u},{name:"Rejected",showInLegend:!1,data:f},{name:"Pending",showInLegend:!1,data:s}],colors:["#E1FFB5","#FFD0D0","#C8D6FA"]}})();return Ft("提交分类","题目编号","提交数",r,n,p)}function vo(v,r){const n=r.placeChartPoints.map(d=>{var u,f;return{x:d.timePoint,y:d.rank,showX:Yt(d.timePoint),lastSolved:(u=d.lastSolvedProblem)!=null&&u.label?`Last Solved Problem ${(f=d.lastSolvedProblem)==null?void 0:f.label}`:""}});return{chart:{type:"spline"},title:{text:"排名变化趋势图"},series:[{showInLegend:!1,allowPointSelect:!1,name:"rank",type:"spline",data:n,marker:{symbol:"circle",radius:4,lineWidth:2,fillColor:"yellow",lineColor:"yellow"}}],xAxis:[{allowDecimals:!1,title:{text:"Time(min)"},crosshair:!0}],yAxis:[{allowDecimals:!1,title:{text:"Place"},reversed:!0,gridLineWidth:1}],plotOptions:{line:{color:"#efbc47",dataLabels:{enabled:!1},enableMouseTracking:!0,marker:{enabled:!0,fillColor:"#fff566"}}},tooltip:{enabled:!0,headerFormat:"",pointFormat:"Time: {point.showX} <br/> Place: {point.y} <br/> {point.lastSolved}"},credits:{enabled:!1},exporting:{enabled:!0},navigation:{menuItemStyle:{fontSize:"10px"}}}}const go={class:"w-full",flex:"","flex-col":""},_o={class:"sm:w-full md:w-[92%]","mx-auto":"","px-4":"","py-4":"","lg:px-6":"","lg:py-6":""},bo={grid:"","grid-cols-3":"","gap-10":"","space-y-0":""},ho={class:"mx-auto w-[16rem]","p-6":"","xl:p-8":"",flex:"","flex-col":"",border:"","border-gray-100":"","dark:border-gray-600":"","text-center":"","test-gray-900":"","bg-white":"","dark:bg-gray-800":"","dark:text-white":"",shadow:"","rounded-md":""},yo={"mb-4":"","text-2xl":"","font-semibold":""},xo={class:"my-8 flex items-baseline justify-center"},ko={class:"mr-2 text-5xl font-extrabold"},wo={"mt-8":"","gap-8":"",flex:"","flex-col":""},So=L({__name:"Statistics",props:{rank:null},setup(v){const r=v,{t:n}=nt(),p=b(()=>r.rank);function d(){const u=[];return u.push({title:"standings.statistics.head_data.problems",data:p.value.contest.problems.length}),u.push({title:"standings.statistics.head_data.teams",data:p.value.teams.length}),u.push({title:"standings.statistics.head_data.submissions",data:p.value.getSubmissions().length}),u}return(u,f)=>{const s=co;return a(),m("div",go,[e("section",null,[e("div",_o,[e("div",bo,[(a(!0),m(R,null,j(d(),_=>(a(),m("div",{key:_.title},[e("div",ho,[e("h3",yo,g(t(n)(_.title)),1),e("div",xo,[e("span",ko,g(_.data),1)])])]))),128))])])]),e("div",wo,[e("div",null,[w(s,{rank:t(p)},null,8,["rank"])]),e("div",null,[w(t(wt.Chart),{options:("getSubmitChart"in u?u.getSubmitChart:t(fo))(t(p))},null,8,["options"])]),e("div",null,[w(t(wt.Chart),{options:("getProblemChart"in u?u.getProblemChart:t(mo))(t(p))},null,8,["options"])]),e("div",null,[w(t(wt.Chart),{options:("getTeamChart"in u?u.getTeamChart:t(po))(t(p))},null,8,["options"])])])])}}}),$o=["src"],To=L({__name:"ReactionVideoModal",props:{isOpen:{type:Boolean},submissionReaction:null,width:null},emits:["close"],setup(v,{emit:r}){const n=v,p=r,d=z(null);function u(){p("close")}function f(s){s.target===s.currentTarget&&u()}return ct(()=>n.isOpen,s=>{s&&d.value?d.value.play():d.value&&(d.value.pause(),d.value.currentTime=0)}),(s,_)=>v.isOpen?(a(),m("div",{key:0,fixed:"","inset-0":"",flex:"","items-center":"","justify-center":"","p-2":"","bg-black":"","bg-opacity-50":"","z-2999":"",onClick:f},[e("div",{"bg-white":"",shadow:"",relative:"","overflow-hidden":"",class:H(["h-[100%]",[v.width??"w-[540px]"]]),onClick:_[0]||(_[0]=Ie(()=>{},["stop"]))},[e("video",{ref_key:"videoPlayer",ref:d,controls:"",autoplay:"",class:"w-full h-full"},[e("source",{src:v.submissionReaction.url,type:"video/mp4"},null,8,$o),_[1]||(_[1]=Y(" Your browser does not support the video tag. "))],512),e("div",{absolute:"","top-0.5":"","right-0.5":"","text-black":"","rounded-md":"","p-2":"","transition-colors":"","duration-300":"","focus:outline-none":"","cursor-pointer":"",onClick:u},_[2]||(_[2]=[e("span",{"i-ion-close-circle-outline":"","text-2xl":""},null,-1)]))],2)])):y("",!0)}}),Co={"mx-auto":"","w-full":""},Mo={key:0,flex:"","justify-start":"","items-start":""},Oo={"space-y-3":"",flex:"","flex-col":"","px-4":"","py-3":"","lg:flex-row":"","lg:items-center":"","lg:justify-between":"","lg:space-x-4":"","lg:space-y-0":""},Io={flex:"","flex-shrink-0":"","flex-col":"","md:flex-row":"","md:items-center":"","lg:justify-end":"","space-y-3":"","md:space-x-3":"","md:space-y-0":""},zo={key:0,"w-48":""},Fo={key:1,"w-48":""},Ao={key:2,"w-68":""},Do={key:3,"w-48":""},Po={key:4},Bo={class:"overflow-x-auto"},Eo={class:"w-full text-left text-sm text-gray-500 dark:text-gray-400","font-medium":"","font-mono":""},Lo={class:"bg-gray-50 text-xs uppercase text-gray-700 dark:bg-gray-700 dark:text-gray-400"},No={key:0,scope:"col",class:"px-4 py-3"},Ro={key:1,scope:"col",class:"px-4 py-3"},Ho={key:2,scope:"col",class:"px-4 py-3"},jo={key:3,scope:"col",class:"px-4 py-3"},Uo={key:4,scope:"col",class:"px-4 py-3"},Go={"px-4":"","py-2":""},Vo={key:0,class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Xo={class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Wo={key:1,class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Yo={flex:"","items-center":""},qo={key:2,class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Qo={key:3,class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Ko={flex:"","items-center":""},Zo={class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},Jo={flex:"","items-center":""},ts={key:4,class:"whitespace-nowrap px-4 py-2 text-gray-900 dark:text-white"},es=["onClick"],ns=L({__name:"SubmissionsTable",props:{rank:null,submissions:null,pageSize:null,removeBorder:{type:Boolean},enableFilter:null},setup(v){const r=v,n=b(()=>r.rank),p=b(()=>r.enableFilter),d=b(()=>{if(!p.value)return!1;for(const[D,T]of Object.entries(p.value))if(T===!0)return!0;return!1}),u=z({orgNames:[],teamIds:[],languages:[],statuses:[]}),f=b(()=>n.value.organizations.map(T=>({value:T,text:T}))),s=z([]),_=z({});function i(D,T){s.value=D,_.value=T}const o=b(()=>n.value.originTeams.map(T=>({value:T.id,text:T.organization?`${T.name} - ${T.organization}`:T.name}))),c=z([]),l=z({});function k(D,T){c.value=D,l.value=T}const S=b(()=>n.value.languages.map(P=>({value:P,text:P}))),O=z([]),x=z({});function h(D,T){O.value=D,x.value=T}const $=b(()=>n.value.statuses.map(P=>({value:P,text:Pt[P]}))),M=z([]),B=z({});function Q(D,T){M.value=D,B.value=T}function it(D){return D.value.toString()}const K=b(()=>r.submissions.filter(T=>{const P=u.value;if(P.orgNames.length===0&&P.teamIds.length===0&&P.languages.length===0&&P.statuses.length===0)return!0;if(P.teamIds.length>0){for(const G of P.teamIds)if(G===T.teamId)return!0}if(P.orgNames.length>0){const G=n.value.teamsMap.get(T.teamId);for(const pt of P.orgNames)if(pt===(G==null?void 0:G.organization))return!0}if(P.languages.length>0){for(const G of P.languages)if(G===T.language)return!0}if(P.statuses.length>0){for(const G of P.statuses)if(G===T.status)return!0}return!1}).sort(Wt.compare).reverse());function ut(){const D={orgNames:[],teamIds:[],languages:[],statuses:[]};D.orgNames=s.value.map(T=>T.value),D.teamIds=c.value.map(T=>T.value),D.languages=O.value.map(T=>T.value),D.statuses=M.value.map(T=>T.value),u.value=D}const E=z(new me);E.value.currentPage=0,E.value.pageSize=r.pageSize??16,E.value.totalSize=K.value.length,ct(K,()=>{E.value.totalSize=K.value.length,E.value.currentPage>=E.value.totalPage&&(E.value.currentPage=E.value.totalPage-1)});const U=b(()=>K.value.slice(E.value.currentLeft,E.value.currentRight)),C=z(!1);function Z(D){const T="bg-primary-100 text-primary-800 dark:bg-primary-900 dark:text-primary-300",P=D.problemId,G=n.value.contest.problemsMap.get(P);if(G==null||!G.balloonColor)return T}function mt(D){const T=D.problemId,P=n.value.contest.problemsMap.get(T);if(!(P==null||!P.balloonColor))return{backgroundColor:P.balloonColor.background_color,color:P.balloonColor.color}}const ot=z(!1),lt=z(null);function X(D){lt.value=D,ot.value=!0}function Mt(){ot.value=!1}return(D,T)=>{var _t,ft,I,A;const P=To,G=gt,pt=pe;return a(),m("section",null,[e("div",Co,[t(ot)?(a(),m("div",Mo,[w(P,{"is-open":t(ot),"submission-reaction":t(lt),onClose:Mt},null,8,["is-open","submission-reaction"])])):y("",!0),e("div",{relative:"","overflow-hidden":"","bg-white":"","dark:bg-gray-800":"",class:H({"shadow-md":r.removeBorder!==!0,"sm:rounded-sm":r.removeBorder!==!0})},[e("div",Oo,[e("div",Io,[t(n).contest.organization&&((_t=t(p))!=null&&_t.organization)?(a(),m("div",zo,[w(t(rt),{options:t(f),"selected-options":t(s),placeholder:t(n).contest.organization,onSelect:i},null,8,["options","selected-options","placeholder"])])):y("",!0),(ft=t(p))!=null&&ft.team?(a(),m("div",Fo,[w(t(rt),{options:t(o),"selected-options":t(c),placeholder:"Team",onSelect:k},null,8,["options","selected-options"])])):y("",!0),(I=t(p))!=null&&I.status?(a(),m("div",Ao,[w(t(rt),{options:t($),"selected-options":t(M),placeholder:"Status","custom-attr":it,onSelect:Q},null,8,["options","selected-options"])])):y("",!0),(A=t(p))!=null&&A.language&&t(S).length>0?(a(),m("div",Do,[w(t(rt),{options:t(S),"selected-options":t(O),placeholder:"Language",onSelect:h},null,8,["options","selected-options"])])):y("",!0),t(d)?(a(),m("div",Po,[e("button",{type:"button",class:"flex flex-shrink-0 items-center justify-center border border-gray-200 rounded-lg bg-white px-3 py-2 text-sm font-medium text-gray-900 focus:z-10 dark:border-gray-600 dark:bg-gray-800 hover:bg-gray-100 dark:text-gray-400 hover:text-primary-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:hover:bg-gray-700 dark:hover:text-white dark:focus:ring-gray-700",onClick:ut},T[1]||(T[1]=[e("div",{"i-material-symbols-search":"","mr-1":"","h-5":"","w-5":""},null,-1),Y(" Filter ")]))])):y("",!0)])]),e("div",Bo,[e("table",Eo,[e("thead",Lo,[e("tr",null,[T[2]||(T[2]=e("th",{scope:"col",class:"px-4 py-3"}," Problem ",-1)),t(n).contest.organization?(a(),m("th",No,g(t(n).contest.organization),1)):y("",!0),T[3]||(T[3]=e("th",{scope:"col",class:"px-4 py-3"}," Team ",-1)),T[4]||(T[4]=e("th",{scope:"col",class:"px-4 py-3"}," Status ",-1)),t(n).contest.options.submissionHasTimeField?(a(),m("th",Ro," Time ")):y("",!0),t(C)?(a(),m("th",Ho," Memory ")):y("",!0),t(n).contest.options.submissionHasLanguageField?(a(),m("th",jo," Answer ")):y("",!0),T[5]||(T[5]=e("th",{scope:"col",class:"px-4 py-3"}," Submit Time ",-1)),t(n).contest.options.submissionEnableActionField?(a(),m("th",Uo," Action ")):y("",!0)])]),e("tbody",null,[(a(!0),m(R,null,j(t(U),F=>{var tt,bt,ht;return a(),m("tr",{key:F.id,class:"border-b dark:border-gray-600 hover:bg-gray-100 dark:hover:bg-gray-700"},[e("td",Go,[e("span",{class:H(["rounded px-2 py-0.5 text-sm",[Z(F)]]),style:et(mt(F))},g((tt=t(n).contest.problemsMap.get(F.problemId))==null?void 0:tt.label),7)]),t(n).contest.organization?(a(),m("td",Vo,g((bt=t(n).teamsMap.get(F.teamId))==null?void 0:bt.organization),1)):y("",!0),e("td",Xo,g((ht=t(n).teamsMap.get(F.teamId))==null?void 0:ht.name),1),e("td",{scope:"row",class:H([F.status.toString()]),"whitespace-nowrap":"","px-4":"","py-2":"",flex:"","items-center":"","font-bold":""},g(t(Pt)[F.status]),3),t(n).contest.options.submissionHasTimeField?(a(),m("td",Wo,[e("div",Yo,g(`${F.time??0} ms`),1)])):y("",!0),t(C)?(a(),m("td",qo," 0.47 ")):y("",!0),t(n).contest.options.submissionHasLanguageField?(a(),m("td",Qo,[e("div",Ko,g(F.language),1)])):y("",!0),e("td",Zo,[e("div",Jo,[w(G,null,{popper:N(()=>[Y(g(F.timestampDisplayFormatWithMilliSecond),1)]),default:N(()=>[Y(g(F.timestampDisplayFormatWithSecond)+" ",1)]),_:2},1024)])]),t(n).contest.options.submissionEnableActionField?(a(),m("td",ts,[w(G,null,{popper:N(()=>T[6]||(T[6]=[Y(" Reaction Video ")])),default:N(()=>[F.reaction?(a(),m("div",{key:0,flex:"","items-center":"","justify-start":"","text-lg":"","cursor-pointer":"","i-material-symbols-slow-motion-video":"",onClick:Ot=>X(F.reaction)},null,8,es)):y("",!0)]),_:2},1024)])):y("",!0)])}),128))])])]),w(pt,{pagination:t(E),"onUpdate:pagination":T[0]||(T[0]=F=>V(E)?E.value=F:null)},null,8,["pagination"])],2)])])}}}),Ct=q(ns,[["__scopeId","data-v-cef293c5"]]),os={class:"statistics-0"},ss=["colspan"],as={class:"stnd"},ls={class:"statistics-1"},rs=["colspan"],is={class:"stnd"},us={class:"statistics-0"},cs=["colspan"],ds={class:"stnd"},ms={class:"statistics-1"},ps=["colspan"],fs={class:"stnd"},vs={class:"statistics-0"},gs=["colspan"],_s={class:"stnd"},bs={class:"statistics-1"},hs=["colspan"],ys={class:"stnd"},xs={class:"statistics-0"},ks=["colspan"],ws={class:"stnd"},Ss=L({__name:"BottomStatistics",props:{rank:null},setup(v){const r=v,{t:n}=nt(),p=b(()=>r.rank);function d(){let o=3;return p.value.contest.organization&&o++,p.value.contest.badge&&o++,o}function u(o){return o.submittedNum===0?"NaN":`${Math.floor(o.attemptedNum*100/o.submittedNum)}%`}function f(o){return o.submittedNum===0?"NaN":`${Math.floor(o.acceptedNum*100/o.submittedNum)}%`}function s(o){return o.attemptedNum===0?"NaN":`${o.dirt}%`}function _(o){return o.firstSolveSubmissions.length===0?"Null":`${o.firstSolveSubmissions[0].timestampToMinute}`}function i(o){return o.lastSolveSubmissions.length===0?"Null":`${o.lastSolveSubmissions[0].timestampToMinute}`}return(o,c)=>(a(),m(R,null,[e("tr",os,[e("td",{class:"empty",colspan:d()},null,8,ss),e("td",as,[e("b",null,g(t(n)("standings.statistics.submitted")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(l.statistics.submittedNum),1)]))),128))]),e("tr",ls,[e("td",{class:"empty",colspan:d()},null,8,rs),e("td",is,[e("b",null,g(t(n)("standings.statistics.attempted")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(l.statistics.attemptedNum),1),c[0]||(c[0]=e("br",null,null,-1)),e("b",null," ("+g(u(l.statistics))+") ",1)]))),128))]),e("tr",us,[e("td",{class:"empty",colspan:d()},null,8,cs),e("td",ds,[e("b",null,g(t(n)("standings.statistics.accepted")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(l.statistics.acceptedNum),1),c[1]||(c[1]=e("br",null,null,-1)),e("b",null," ("+g(f(l.statistics))+") ",1)]))),128))]),e("tr",ms,[e("td",{class:"empty",colspan:d()},null,8,ps),e("td",fs,[e("b",null,g(t(n)("standings.statistics.dirt")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(l.statistics.attemptedNum-l.statistics.acceptedNum),1),c[2]||(c[2]=e("br",null,null,-1)),e("b",null," ("+g(s(l.statistics))+") ",1)]))),128))]),e("tr",vs,[e("td",{class:"empty",colspan:d()},null,8,gs),e("td",_s,[e("b",null,g(t(n)("standings.statistics.se")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(l.statistics.se.toFixed(2)),1)]))),128))]),e("tr",bs,[e("td",{class:"empty",colspan:d()},null,8,hs),e("td",ys,[e("b",null,g(t(n)("standings.statistics.first_solved")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(_(l.statistics)),1)]))),128))]),e("tr",xs,[e("td",{class:"empty",colspan:d()},null,8,ks),e("td",ws,[e("b",null,g(t(n)("standings.statistics.last_solved")),1)]),(a(!0),m(R,null,j(t(p).contest.problems,l=>(a(),m("td",{key:l.id,class:"stnd"},[e("b",null,g(i(l.statistics)),1)]))),128))])],64))}}),$s=q(Ss,[["__scopeId","data-v-198c3ef3"]]),Ts={"w-full":"","font-bold":"","font-mono":"",flex:"","items-center":"","justify-center":"",class:"mt-[-12px]"},Cs=L({__name:"SubmissionsTableModal",props:{isHidden:{type:Boolean},rank:null,team:null,p:null},emits:["update:isHidden"],setup(v,{emit:r}){const n=v,p=r,d=b({get(){return n.isHidden},set(i){p("update:isHidden",i)}}),u=b(()=>n.rank),f=b(()=>n.team),s=b(()=>n.p),_=b(()=>`${f.value.name} - ${s.value.problem.label}`);return(i,o)=>{const c=Ct,l=Tt;return a(),W(l,{"is-hidden":t(d),"onUpdate:isHidden":o[0]||(o[0]=k=>V(d)?d.value=k:null),title:t(_)},{default:N(()=>[e("div",Ts,[w(c,{"w-full":"",rank:t(u),submissions:t(s).submissions,"page-size":8,"remove-border":!0},null,8,["rank","submissions"])])]),_:1},8,["is-hidden","title"])}}}),Ms=L({__name:"TeamProblemBlock",props:{rank:null,team:null,p:null},setup(v){const r=v,n=z(!0);function p(){n.value=!1}const d=b(()=>r.rank),u=b(()=>r.team),f=b(()=>r.p);function s(o){return o.isSolved?"+":o.isWrongAnswer?"-":o.isPending?`? ${o.pendingCount}`:""}function _(o){let c="";return o.isUnSubmitted||(c+=`${o.failedCount+Number(o.isSolved)}`),(o.isSolved&&d.value.contest.statusTimeDisplay.correct||o.isPending&&d.value.contest.statusTimeDisplay.pending||o.isWrongAnswer&&d.value.contest.statusTimeDisplay.incorrect)&&(c+=`/${Math.floor(o.lastSubmitTimestamp/60)}`),c}function i(o){return o.isFirstSolved?"first-solve":o.isSolved?"correct":o.isWrongAnswer?"incorrect":o.isPending?"pending":"unattempted"}return(o,c)=>{const l=Cs;return a(),m("td",{class:H(["stnd",[i(t(f))]])},[e("div",{"cursor-pointer":"",flex:"","flex-col":"","justify-center":"","items-center":"",onClick:p},[e("div",null,g(s(t(f))),1),e("div",null,g(_(t(f))),1)]),e("div",null,[t(n)?y("",!0):(a(),W(l,{key:0,"is-hidden":t(n),"onUpdate:isHidden":c[0]||(c[0]=k=>V(n)?n.value=k:null),rank:t(d),team:t(u),p:t(f)},null,8,["is-hidden","rank","team","p"]))])],2)}}}),Os=q(Ms,[["__scopeId","data-v-68dd357b"]]),Is={"text-gray-900":"","dark:text-white":"","text-xl":"","font-mono":"","font-semibold":"",italic:"",flex:"","flex-col":"","gap-2":"","justify-center":"","items-center":""},zs={flex:"","flex-col":"","items-start":"","gap-y-2":""},Fs={key:0},As={key:1},Ds={key:2,flex:"","flex-col":"","gap-2":""},Ps={key:3},Bs=L({__name:"TeamAwards",props:{team:null,rank:null},setup(v){const r=v,n=b(()=>r.team),p=b(()=>r.rank),d=b(()=>r.team.problemStatistics.filter(s=>!!s.isFirstSolved).map(s=>s.problem.label).join(",")),u=b(()=>{const s=r.team.awards;return s.includes(J.GOLD)?{text:"Gold"}:s.includes(J.SILVER)?{text:"Silver"}:s.includes(J.BRONZE)?{text:"Bronze"}:s.includes(J.HONORABLE)?{text:"Honorable"}:null}),f=b(()=>{let s=n.value.rank;return p.value.contest.organization&&(s=n.value.organizationRank),s===1?"1st Place":s===2?"2nd Place":s===3?"3rd Place":""});return(s,_)=>(a(),m("div",Is,[e("div",zs,[t(u)?(a(),m("div",Fs,g(t(u).text)+" Medalist ",1)):y("",!0),t(f).length>0?(a(),m("div",As,g(t(f)),1)):y("",!0),t(d).length?(a(),m("div",Ds,[e("div",null," First Solved Problem "+g(t(d)),1)])):y("",!0),t(n).solvedProblemNum>0?(a(),m("div",Ps," Solved "+g(t(n).solvedProblemNum)+" "+g(t(n).solvedProblemNum>1?"Problems":"Problem"),1)):y("",!0)])]))}}),Es={role:"group","inline-flex":"","flex-col":"","w-full":"","md:w-auto":"","md:flex-row":"","rounded-md":"","shadow-sm":""},Ls=["onClick"],ne=L({__name:"ModalMenu",props:{currentType:null,types:null},emits:["update:currentType"],setup(v,{emit:r}){const n=v,p=r,{t:d}=nt(),u=b({get(){return n.currentType},set(_){p("update:currentType",_)}});function f(_){u.value=_}const s=b(()=>n.types.length);return(_,i)=>(a(),m("div",Es,[(a(!0),m(R,null,j(n.types,(o,c)=>(a(),m("button",{key:o,type:"button","px-4":"","py-2":"","my-2":"","text-sm":"","font-medium":"","text-gray-900":"","bg-white":"","dark:bg-gray-700":"","dark:text-white":"","border-gray-200":"","dark:border-gray-600":"","hover:bg-gray-100":"","dark:hover:bg-gray-600":"","hover:text-primary-700":"","dark:hover:text-white":"","focus:z-10":"","focus:ring-2":"","focus:ring-primary-700":"","focus:text-primary-700":"","dark:focus:ring-primary-500":"","dark:focus:text-white":"",class:H({"rounded-t-lg md:rounded-tr-none md:rounded-l-lg":c===0,"rounded-b-lg md:rounded-bl-none md:rounded-r-lg mr-2":c+1===t(s),border:c===0||c+1===t(s),"border-t border-x md:border-x-0 md:border-b":c>0&&c+1<t(s),"md:border-r-0":c===0,"md:border-l":c>0,"z-10 ring-2 ring-primary-700 text-primary-700 dark:ring-primary-600 dark:text-white":t(u)===o}),onClick:l=>f(o)},g(t(d)(`type_menu.${o}`)),11,Ls))),128))]))}}),Ns=["src"],oe=L({__name:"Badge",props:{image:null,widthClass:null},setup(v){const r=v,n=b(()=>r.image),p=b(()=>r.widthClass?r.widthClass:"h-8 w-8");return(d,u)=>t(n).base64?(a(),m("img",{key:0,src:t(qt)(t(n)),alt:"badge",class:H([t(p)])},null,10,Ns)):y("",!0)}}),Rs={"w-full":"","max-w-screen-xl":"","px-4":"","mx-auto":"","lg:px-12":""},Hs={relative:"","overflow-hidden":"","bg-white":"","dark:bg-gray-800":""},js={flex:"","flex-col":"","items-center":"","justify-between":"","md:flex-row":"","space-y-3":"","md:space-y-0":""},Us={flex:"","flex-row":"","space-x-3":""},Gs={"text-gray-900":"","dark:text-white":"","text-2xl":"","font-sans":"","font-semibold":"",italic:""},Vs={flex:"","flex-col":"","justify-start":"","items-start":""},Xs={"w-full":"","font-bold":"","font-mono":"",flex:"","items-center":"","justify-center":""},Ws={key:0,"w-full":"",class:"mt-[-12px]"},Ys={key:1,"w-full":""},qs={key:2,"w-full":""},Nt="submissions",Rt="statistics",Ht="awards",Qs=L({__name:"TeamInfoModal",props:{isHidden:{type:Boolean},rank:null,team:null},emits:["update:isHidden"],setup(v,{emit:r}){const n=v,p=r,d=b({get(){return n.isHidden},set(o){p("update:isHidden",o)}}),u=z("submissions"),f=b(()=>n.rank),s=b(()=>n.team),_=b(()=>{let o="";return f.value.contest.organization&&s.value.organization.length>0&&(o+=`${s.value.organization} - `),o+=`${s.value.name}`,s.value.members&&(o+=` - ${s.value.members}`),s.value.coach&&(o+=` - ${s.value.coach}(coach)`),o}),i=[Nt,Rt,Ht];return(o,c)=>{const l=oe,k=gt,S=ne,O=Ct,x=Bs,h=Tt;return a(),W(h,{"is-hidden":t(d),"onUpdate:isHidden":c[1]||(c[1]=$=>V(d)?d.value=$:null)},{header:N(()=>[e("div",Rs,[e("div",Hs,[e("div",js,[e("div",Us,[t(s).badge?(a(),W(l,{key:0,image:t(s).badge,"width-class":"h-8 w-8"},null,8,["image"])):y("",!0),w(k,null,{popper:N(()=>[e("div",Vs,[e("div",null," TeamID: "+g(t(s).id),1)])]),default:N(()=>[e("h3",Gs,g(t(_)),1)]),_:1})]),w(S,{"current-type":t(u),"onUpdate:currentType":c[0]||(c[0]=$=>V(u)?u.value=$:null),types:i},null,8,["current-type"])])])])]),default:N(()=>[e("div",Xs,[t(u)===Nt?(a(),m("div",Ws,[w(O,{"w-full":"",rank:t(f),submissions:t(s).submissions,"page-size":8,"remove-border":!0},null,8,["rank","submissions"])])):y("",!0),t(u)===Rt?(a(),m("div",Ys,[w(t(wt.Chart),{options:("getTeamPlaceChart"in o?o.getTeamPlaceChart:t(vo))(t(f),t(s))},null,8,["options"])])):y("",!0),t(u)===Ht?(a(),m("div",qs,[w(x,{team:t(s),rank:t(f)},null,8,["team","rank"])])):y("",!0)])]),_:1},8,["is-hidden"])}}}),Ks={},Zs={class:"color-gray-700 dark:color-gray-200"};function Js(v,r){return a(),m("div",Zs,r[0]||(r[0]=[e("svg",{t:"1685666543416",class:"icon",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"3736",width:"16",height:"16"},[e("path",{d:"M661.333333 662.613333c0.213333 82.133333 28.8 169.386667 64 169.386667v170.666667H298.666667v-170.666667c35.2 0 63.786667-87.253333 64-169.386667a176.256 176.256 0 0 1 21.333333-1.28h21.333333c0 35.413333 47.786667 64 106.666667 64s106.666667-28.586667 106.666667-64h21.333333a176.256 176.256 0 0 1 21.333333 1.28z",fill:"#F3596B","p-id":"3737"}),e("path",{d:"M810.666667 832v170.666667h-85.333334v-170.666667c-35.2 0-63.786667-87.253333-64-169.386667A170.666667 170.666667 0 0 1 810.666667 832zM362.666667 662.613333c-0.213333 82.133333-28.8 169.386667-64 169.386667v170.666667h-85.333334v-170.666667a170.666667 170.666667 0 0 1 149.333334-169.386667z",fill:"#FFD0AA","p-id":"3738"}),e("path",{d:"M704 320v-85.333333c0-94.293333-97.706667-170.666667-192-170.666667a42.794667 42.794667 0 0 1 42.666667-42.666667h128a128 128 0 0 1 128 128v234.666667s0 85.333333 85.333333 85.333333c0 0-93.226667 134.613333-228.48 6.186667a166.229333 166.229333 0 0 0 13.866667-49.066667L682.666667 426.666667h21.333333a42.666667 42.666667 0 0 0 0-85.333334h-21.333333v-21.333333z",fill:"#FFCA6B","p-id":"3739"}),e("path",{d:"M704 234.666667H320c0-94.293333 97.706667-170.666667 192-170.666667s192 76.373333 192 170.666667z",fill:"#FFCA6B","p-id":"3740"}),e("path",{d:"M704 234.666667v85.333333H320v-85.333333h384z",fill:"#F3596B","p-id":"3741"}),e("path",{d:"M746.666667 384a42.794667 42.794667 0 0 1-42.666667 42.666667h-21.333333l-1.28-0.213334A172.8 172.8 0 0 0 682.666667 405.333333v-64h21.333333a42.794667 42.794667 0 0 1 42.666667 42.666667zM341.333333 405.333333a172.8 172.8 0 0 0 1.28 21.12L341.333333 426.666667h-21.333333a42.666667 42.666667 0 0 1 0-85.333334h21.333333zM618.666667 661.333333c0 35.413333-47.786667 64-106.666667 64s-106.666667-28.586667-106.666667-64a42.794667 42.794667 0 0 0 42.666667-42.666666v-55.04a171.712 171.712 0 0 0 128 0V618.666667a42.794667 42.794667 0 0 0 42.666667 42.666666z",fill:"#FFD0AA","p-id":"3742"}),e("path",{d:"M682.666667 341.333333v64a172.8 172.8 0 0 1-1.28 21.12 166.229333 166.229333 0 0 1-13.866667 49.066667A170.474667 170.474667 0 0 1 576 563.626667 170.538667 170.538667 0 0 1 341.333333 405.333333v-85.333333h341.333334z",fill:"#FFD0AA","p-id":"3743"}),e("path",{d:"M810.666667 1024H213.333333a21.333333 21.333333 0 0 1-21.333333-21.333333v-170.666667a192.213333 192.213333 0 0 1 192-192h21.333333a21.333333 21.333333 0 0 0 21.333334-21.333333v-64h42.666666v64a64 64 0 0 1-64 64h-21.333333a149.504 149.504 0 0 0-149.333333 149.333333v149.333333h554.666666v-149.333333a149.504 149.504 0 0 0-149.333333-149.333333h-21.333333a64 64 0 0 1-64-64v-64h42.666666v64a21.333333 21.333333 0 0 0 21.333334 21.333333h21.333333a192.213333 192.213333 0 0 1 192 192v170.666667a21.333333 21.333333 0 0 1-21.333333 21.333333z",fill:"#2A3244","p-id":"3744"}),e("path",{d:"M512 597.333333a192.234667 192.234667 0 0 1-192-192v-85.333333a21.333333 21.333333 0 0 1 21.333333-21.333333h341.333334a21.333333 21.333333 0 0 1 21.333333 21.333333v85.333333a192.234667 192.234667 0 0 1-192 192z m-149.333333-256v64a149.333333 149.333333 0 0 0 298.666666 0