PageSourceSearch

https://gok-tool.vercel.app/_next/static/chunks/6504.529a3e94a98ac432.js

js gok-tool.vercel.app collected 2026-10-03 07:03:57 UTC 38,938 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6504],{10844:e=>{e.exports={panel:"SportsPanel_panel__dVFoo",calculation:"SportsPanel_calculation__Haw5n",logContent:"SportsPanel_logContent__KnoCZ",handSelection:"SportsPanel_handSelection___t1r4",hero:"SportsPanel_hero__Y6OVw",choiceHeading:"SportsPanel_choiceHeading__WgWbp",setup:"SportsPanel_setup__CK7W5",choiceCard:"SportsPanel_choiceCard__JvoNV",nameGrid:"SportsPanel_nameGrid__sg31B",hint:"SportsPanel_hint__ruXkW",empty:"SportsPanel_empty__051Ce",rosterHeader:"SportsPanel_rosterHeader__QWb7y",rosterLane:"SportsPanel_rosterLane__znXBW",rosterLaneHeader:"SportsPanel_rosterLaneHeader__msz7K",homeRosterTitle:"SportsPanel_homeRosterTitle__YYvAw",availableRosterTitle:"SportsPanel_availableRosterTitle__7HodN",awayRosterTitle:"SportsPanel_awayRosterTitle__q50hr",rosterLaneGuide:"SportsPanel_rosterLaneGuide__Y3gaK",rosterLaneRows:"SportsPanel_rosterLaneRows__O_Cly",rosterTrack:"SportsPanel_rosterTrack__j9N2K",rosterCandidate:"SportsPanel_rosterCandidate__3teWm",rosterCandidateHome:"SportsPanel_rosterCandidateHome__hEZTK",rosterCandidateAway:"SportsPanel_rosterCandidateAway__Y_1P_",rosterCandidateAvailable:"SportsPanel_rosterCandidateAvailable__AY1xi",rosterMove:"SportsPanel_rosterMove__OLZnq",rosterRemove:"SportsPanel_rosterRemove__xPpZC",rosterMoveHome:"SportsPanel_rosterMoveHome__4enKA",rosterMoveAway:"SportsPanel_rosterMoveAway__LwxG1",rosterRemovePlaceholder:"SportsPanel_rosterRemovePlaceholder__iHIpl",rosterCandidateInfo:"SportsPanel_rosterCandidateInfo__Meusl",rosterFallback:"SportsPanel_rosterFallback__NbDbv",rosterCandidateCopy:"SportsPanel_rosterCandidateCopy__hOC_6",rosterEmpty:"SportsPanel_rosterEmpty__B9_sC",primaryButton:"SportsPanel_primaryButton___bSWQ",matchSummary:"SportsPanel_matchSummary__doD5v",scoreboard:"SportsPanel_scoreboard__hpS7k",homeDot:"SportsPanel_homeDot__TnZg3",awayDot:"SportsPanel_awayDot__RUXRV",sets:"SportsPanel_sets__dTJNi",pitch:"SportsPanel_pitch__hmJe8",football:"SportsPanel_football__JUZ_K",basketball:"SportsPanel_basketball__w2iFs",volleyball:"SportsPanel_volleyball__rYh8H",badminton:"SportsPanel_badminton__NfBmt",midline:"SportsPanel_midline__IpZWR",token:"SportsPanel_token__Pk22M",homeToken:"SportsPanel_homeToken__2vEsg",awayToken:"SportsPanel_awayToken__coYh_",activeToken:"SportsPanel_activeToken__iaLIl",ball:"SportsPanel_ball__GmTMw",phaseBadge:"SportsPanel_phaseBadge__G0fKv",metaRow:"SportsPanel_metaRow__G3KVT",tacticalNote:"SportsPanel_tacticalNote__EaEYO",revealed:"SportsPanel_revealed__nAQ34",cards:"SportsPanel_cards__ZAuGT",selectedCard:"SportsPanel_selectedCard__BifCC",combo:"SportsPanel_combo__hU4KE",error:"SportsPanel_error__BlbcT",waiting:"SportsPanel_waiting__2gjK2",zoneRow:"SportsPanel_zoneRow__r44bl",competencePrompt:"SportsPanel_competencePrompt__CSjm_",result:"SportsPanel_result__LfCqo",controls:"SportsPanel_controls__FoL1_",log:"SportsPanel_log__Kcnsd",home:"SportsPanel_home___QgI1",away:"SportsPanel_away__jTw8B",important:"SportsPanel_important__DwGp2"}},13960:(e,t,s)=>{"use strict";function a(e,t){let s=[u(e,"vtt.sports.calculation.card",{card:`${t.card.value} ${{Cuori:"♥",Quadri:"♦",Fiori:"♣",Picche:"♠"}[t.card.suit]||t.card.suit}`,value:t.cardValue})];t.rating&&s.push(`+ ${u(e,"vtt.sports.calculation.rating",{value:t.rating})}`),t.bonus&&s.push(`+ ${u(e,"vtt.sports.calculation.bonus",{value:t.bonus})}`),t.penalty&&s.push(`− ${u(e,"vtt.sports.calculation.penalty",{value:t.penalty})}`);let a=`${t.athleteNameI18n?w(e,t.athleteNameI18n):t.athleteName}: ${s.join(" ")} = ${t.rawTotal}`;return t.rawTotal===t.total?a:`${a}. ${u(e,"vtt.sports.calculation.clamped",{total:t.total})}`}function r(e,t){if(!t)return[];let s=[a(e,t.attacker),...t.defenders.map(t=>a(e,t))];if(t.unopposed)return s.push(u(e,"vtt.sports.calculation.unopposed")),s;let r=t.defenders.find(e=>e.athleteId===t.selectedDefenderId);if(!r)return s;t.defenders.length>1&&s.push(u(e,"vtt.sports.calculation.block",{values:t.defenders.map(e=>e.total).join(", "),total:r.total,athlete:r.athleteNameI18n?w(e,r.athleteNameI18n):r.athleteName}));let n=t.attacker;return s.push(u(e,n.total===r.total?"vtt.sports.calculation.tie":"vtt.sports.calculation.winner",{athlete:o(e,t.attackerWon?{name:n.athleteName,nameI18n:n.athleteNameI18n}:{name:r.athleteName,nameI18n:r.athleteNameI18n}),attackerTotal:n.total,defenderTotal:r.total,relation:t.attackerWon?">":"<"})),s}function o(e,t){return String(t?.nameI18n?w(e,t.nameI18n):t?.name||"")}s.d(t,{Dg:()=>h,JG:()=>v,KG:()=>x,Nh:()=>o,Tj:()=>_,cD:()=>b,uW:()=>r,w6:()=>u,yC:()=>g,zk:()=>f});let n={football:"vtt.sports.labels.sports.football",basketball:"vtt.sports.labels.sports.basketball",volleyball:"vtt.sports.labels.sports.volleyball",badminton:"vtt.sports.labels.sports.badminton"},l={lightning_sprint:"vtt.sports.labels.techniques.lightning_sprint",strategic_pass:"vtt.sports.labels.techniques.strategic_pass",long_pass:"vtt.sports.labels.techniques.long_pass",precision_shot:"vtt.sports.labels.techniques.precision_shot",field_defense:"vtt.sports.labels.techniques.field_defense",precise_set:"vtt.sports.labels.techniques.precise_set",violent_spike:"vtt.sports.labels.techniques.violent_spike"},i={Intellettiva:"vtt.sports.labels.competences.intellectual",Sociale:"vtt.sports.labels.competences.social",Fisica:"vtt.sports.labels.competences.physical",Atletica:"vtt.sports.labels.competences.athletic",Generica:"vtt.sports.labels.competences.generic",Scelta:"vtt.sports.labels.competences.choice"},c={athlete:"vtt.sports.labels.roles.athlete",atleta:"vtt.sports.labels.roles.athlete",portiere:"vtt.sports.labels.roles.goalkeeper",difensore:"vtt.sports.labels.roles.defender",centrocampista:"vtt.sports.labels.roles.midfielder",attaccante:"vtt.sports.labels.roles.forward",playmaker:"vtt.sports.labels.roles.playmaker",guardia:"vtt.sports.labels.roles.guard",ala:"vtt.sports.labels.roles.smallForward","ala grande":"vtt.sports.labels.roles.powerForward",centro:"vtt.sports.labels.roles.center",opposto:"vtt.sports.labels.roles.opposite",ricevitore:"vtt.sports.labels.roles.receiver",libero:"vtt.sports.labels.roles.libero",schiacciatore:"vtt.sports.labels.roles.spiker",alzatore:"vtt.sports.labels.roles.setter",centrale:"vtt.sports.labels.roles.middleBlocker",singolarista:"vtt.sports.labels.roles.singlesPlayer","giocatore di rete":"vtt.sports.labels.roles.netPlayer","giocatore di fondo":"vtt.sports.labels.roles.backCourtPlayer"},d={ready:"vtt.sports.labels.status.ready",running:"vtt.sports.labels.status.running",awaiting_choice:"vtt.sports.labels.status.awaiting_choice",paused:"vtt.sports.labels.status.paused",period_break:"vtt.sports.labels.status.period_break",finished:"vtt.sports.labels.status.finished",success:"vtt.sports.labels.status.success",failure:"vtt.sports.labels.status.failure",tie:"vtt.sports.labels.status.tie"},p={kickoff:"vtt.sports.labels.phases.kickoff",defense:"vtt.sports.labels.phases.defense",midfield:"vtt.sports.labels.phases.midfield",attack:"vtt.sports.labels.phases.attack",tipoff:"vtt.sports.labels.phases.tipoff",possession:"vtt.sports.labels.phases.possession",throw_in:"vtt.sports.labels.phases.throw_in",
1serve:"vtt.sports.labels.phases.serve",receive:"vtt.sports.labels.phases.receive",set:"vtt.sports.labels.phases.set",spike:"vtt.sports.labels.phases.spike",rally:"vtt.sports.labels.phases.rally"},m={defense:"vtt.sports.labels.zones.defense",midfield:"vtt.sports.labels.zones.midfield",attack:"vtt.sports.labels.zones.attack"};function u(e,t,s={},a=t){let r=String(e(t,s)||"").trim();return r&&r!==t?r:a}function h(e,t){return u(e,n[t],{},t)}function v(e,t){return u(e,l[t],{},t)}function b(e,t){return u(e,i[t],{},t)}function _(e,t){let s=c[String(t||"").trim().toLocaleLowerCase("it")];return s?u(e,s,{},t):t}function f(e,t){return u(e,d[t],{},t)}function g(e,t){return u(e,p[t],{},t)}function w(e,t){if(!t||"object"!=typeof t)return t;switch(t.type){case"defaultAthlete":return u(e,`vtt.sports.defaults.${t.value}`,{number:t.number});case"sport":return h(e,t.value);case"technique":return v(e,t.value);case"competence":return b(e,t.value);case"zone":var s;let a;return(a=m[s=t.value])?u(e,a,{},s):s;case"role":return _(e,t.value);case"status":return f(e,t.value);case"phase":return g(e,t.value);case"combo":return u(e,`vtt.combat.combos.names.${t.value}`,{},t.value)}return String(t.value??"")}function x(e,t,s=""){if(!t?.key)return s;let a=Object.fromEntries(Object.entries(t.params||{}).map(([t,s])=>[t,w(e,s)])),r=String(e(t.key,a)||"").trim();return r&&r!==t.key?r:s||t.key}},22424:(e,t,s)=>{"use strict";s.d(t,{lZ:()=>o,nd:()=>r,qz:()=>l,uf:()=>n,vt:()=>a});let a=1800,r=2600;function o(e){let t=e.currentEvent;if(t?.type==="score"&&!t.automaticPoint&&t.scoringTeamId){if("basketball"===e.sport&&t.activeAthleteId)return{x:"home"===t.scoringTeamId?94.4:5.6,y:50};if("volleyball"===e.sport||"badminton"===e.sport)return{x:"home"===t.scoringTeamId?74:26,y:e.ball.y}}if(t?.type==="exchange"&&("volleyball"===e.sport||"badminton"===e.sport)){let s=t.attackerId?e.athletes[t.attackerId]:void 0;if(s)return{x:s.x,y:s.y}}return e.ball}function n(e){let t=o(e);return`${e.createdAt}:${e.currentEvent?.id||e.phase}:${t.x}:${t.y}`}function l(e,t){if(t.currentEvent?.automaticPoint||e&&e.createdAt!==t.createdAt)return null;let s=o(t),a=e?o(e):t.goalAnimation?.from;if(!a||1>Math.hypot(a.x-s.x,a.y-s.y))return null;let r=t.currentEvent?.type==="score",l="kickoff"!==t.phase&&"throw_in"!==t.phase&&("serve"!==t.phase||t.currentEvent?.type==="exchange"||r)&&"football"!==t.sport?"basketball"===t.sport?r?18:3:"badminton"===t.sport?12:"set"!==t.phase&&("spike"!==t.phase||t.currentEvent)?7:16:0;return{key:n(t),from:a,to:s,mid:{x:(a.x+s.x)/2,y:Math.max(3,(a.y+s.y)/2-l)},kind:l?"arc":"ground"}}},46102:(e,t,s)=>{"use strict";s.d(t,{O:()=>r,T:()=>o});let a=new Map;function r(e,t,s,r){let o=`vtt-pending-command:${e}:${t}`,n=JSON.stringify(s),l=a.get(o);try{let e=sessionStorage.getItem(o);e&&(l=JSON.parse(e))}catch{}if(l?.signature===n&&l.command?.opId)return l.command;let i={signature:n,command:{...r,opId:crypto.randomUUID()}};a.set(o,i);try{sessionStorage.setItem(o,JSON.stringify(i))}catch{}return i.command}function o(e,t,s){let r=`vtt-pending-command:${e}:${t}`,o=a.get(r);try{let e=sessionStorage.getItem(r);e&&(o=JSON.parse(e))}catch{}if(o?.command?.opId===s){a.delete(r);try{sessionStorage.removeItem(r)}catch{}}}},61267:(e,t,s)=>{"use strict";function a(e,t,s,r=""){let o=new Map,n=new Map;for(let t of e||[]){let e=String(t.userId||t.id||"");if(e){for(let s of[t.userId,t.id,t.characterId].filter(Boolean))n.set(String(s),e);t.characterId&&o.set(String(t.characterId),e)}}let l=new Map;for(let[s,a]of Object.entries(t||{})){let t=`hero-${s}`,n=String(a?.ownerId||a?.userId||o.get(s)||((e||[]).length?"":r));l.set(t,{id:t,name:String(a?.name||"Eroe senza nome"),kind:"hero",ownerId:n||void 0,avatar:a?.avatar||a?.image||null,rating:0})}for(let t of e||[]){let e=String(t.characterId||"");if("deux"===String(t.role||"").toLowerCase()&&!e)continue;let s=`hero-${e||t.userId||t.id}`;l.has(s)||l.set(s,{id:s,name:String(t.name||t.displayName||"Eroe"),kind:"hero",ownerId:String(t.userId||t.id||"")||void 0,avatar:"string"==typeof t.avatar?t.avatar:null,rating:0})}for(let[t,a]of Object.entries(s||{})){if(!Array.isArray(a))continue;let s=n.get(t)||((e||[]).length?t:r);a.forEach((e,t)=>{let a=String(e?.id||e?.enemyId||t),r=`ally-${s}-${a}`;l.has(r)||l.set(r,{id:r,name:String(e?.name||`Alleato ${t+1}`),kind:"ally",ownerId:s||void 0,avatar:e?.avatar||e?.image||null,rating:0})})}return[...l.values()].sort((e,t)=>
1e.kind.localeCompare(t.kind)||e.name.localeCompare(t.name))}s.d(t,{o:()=>a})},96504:(e,t,s)=>{"use strict";s.r(t),s.d(t,{SportsPanel:()=>j});var a=s(95155),r=s(12115),o=s(4927),n=s(86203),l=s(35498);let i={precise_set:{id:"A103",name:"Alzata Precisa",range:"self",suit:"♠",effect:"L'Eroe o un Alleato ottiene un bonus di +2 alla sua prossima TdC Schiacciata Violenta"},field_defense:{id:"A115",name:"Difesa in Campo",range:"self",suit:"♥",effect:"Il prossimo nemico che Agisce nel suo turno, non pu\xf2 utilizzare TdC con Raggio d'Azione Distanza"},strategic_pass:{id:"A134",name:"Passaggio Strategico",range:"ranged",suit:"♠",effect:"Un Alleato ottiene un bonus di +1 alla sua prossima TdC"},lightning_sprint:{id:"A146",name:"Scatto Fulmineo",range:"melee",suit:"♦",effect:"Ottieni +1 alla prossima Prova di Competenza in questa Scena"},violent_spike:{id:"A147",name:"Schiacciata Violenta",range:"area",suit:"♣",effect:"Tutti i nemici subiscono un malus di -1 alle loro TdC per 2 Scene"},precision_shot:{id:"A157",name:"Tiro di Precisione",range:"ranged",suit:"♣",effect:"Tutti i nemici subiscono un malus di -1 alle loro TdC per 2 Scene"}};i.lightning_sprint.name,i.strategic_pass.name,i.precision_shot.name,i.field_defense.name,i.precise_set.name,i.violent_spike.name;let c={football:{id:"football",label:"Calcio",teamSize:5,alternateTeamSize:11,targetScore:5,setsToWin:1,periods:2,initialPhase:"kickoff",techniques:["lightning_sprint","strategic_pass","precision_shot","field_defense"]},basketball:{id:"basketball",label:"Basket",teamSize:5,targetScore:15,setsToWin:1,periods:1,initialPhase:"tipoff",techniques:["lightning_sprint","strategic_pass","precision_shot","field_defense"]},volleyball:{id:"volleyball",label:"Pallavolo",teamSize:6,targetScore:5,setsToWin:3,periods:5,initialPhase:"serve",techniques:["precision_shot","field_defense","precise_set","violent_spike"]},badminton:{id:"badminton",label:"Badminton",teamSize:1,alternateTeamSize:2,targetScore:7,setsToWin:2,periods:3,initialPhase:"serve",techniques:["precision_shot","field_defense"]}};var d=s(22424),p=s(61267),m=s(70011),u=s(46102),h=s(59368),v=s(45540),b=s(78359),_=s(13960),f=s(10844),g=s.n(f);let w=["football","basketball","volleyball","badminton"];function x(){let e=localStorage.getItem("roomToken");return{"Content-Type":"application/json",...e?{Authorization:`Bearer ${e}`}:{}}}function y(e){return`${({Cuori:"♥",Quadri:"♦",Fiori:"♣",Picche:"♠"})[e.suit]||e.suit} ${e.value}`}function j({roomId:e,role:t,me:s}){let{t:f}=(0,h.o)(),S=(0,v.P)(e=>e.players||[]),k=(0,v.P)(e=>e.charactersById||{}),[C,N]=(0,r.useState)({sportState:null,roomVersion:0}),P=C.sportState,[I,T]=(0,r.useState)("football"),[A,R]=(0,r.useState)(()=>(0,_.w6)(f,"vtt.sports.defaults.homeTeam")),[E,$]=(0,r.useState)(()=>(0,_.w6)(f,"vtt.sports.defaults.awayTeam")),[z,M]=(0,r.useState)(5),[H,L]=(0,r.useState)(1),[B,F]=(0,r.useState)("standard"),[O,G]=(0,r.useState)({}),[q,D]=(0,r.useState)({}),[K,V]=(0,r.useState)(!1),[W,J]=(0,r.useState)(""),[U,Z]=(0,r.useState)(""),[Y,Q]=(0,r.useState)([]),[X,ee]=(0,r.useState)(""),[et,es]=(0,r.useState)("Atletica"),[ea,er]=(0,r.useState)(2),[eo,en]=(0,r.useState)(""),el=(0,r.useRef)(!1),ei=(0,r.useCallback)((e,t)=>{N(s=>(0,m.$6)(s,e,t))},[]),ec=String(s?.id||""),ed=(0,b.I8)(e,ec),ep=(0,r.useMemo)(()=>(Array.isArray(ed?.hand)?ed.hand:[]).flatMap(e=>{let t=String(e?.id||"").trim(),s=String(e?.suit||"").trim(),a=String(e?.value||"").trim();return t&&s&&a?[{id:t,suit:s,value:a}]:[]}),[ed?.hand]),em="DEUX"===t,eu="football"===I?z:"badminton"===I?H:c[I].teamSize,eh=(0,r.useMemo)(()=>(0,p.o)(S,k,O,ec),[O,k,ec,S]),ev=(0,r.useMemo)(()=>{let e=P?.rosterLobby;if(!e)return[];let t=new Map(eh.map(e=>[e.id,e]));return Object.values(e.candidates).sort((e,t)=>e.order-t.order||e.id.localeCompare(t.id)).map(e=>({...e,avatar:t.get(e.id)?.avatar||null}))},[P?.rosterLobby,eh]),eb=eh.filter(e=>"home"===q[e.id]),e_=eh.filter(e=>"away"===q[e.id]),ef=eh.filter(e=>!q[e.id]),eg=eb.length>eu||e_.length>eu,ew=(0,r.useCallback)(async t=>{if(el.current)return;el.current=!0,V(!0),J("");let{expectedRevision:s,...a}=t,r={...a,actorId:ec,matchCreatedAt:P?.createdAt},o=(0,u.O)(e,"sport",r,{...t,expectedRevision:t.expectedRevision??P?.revision??0,matchCreatedAt:P?.createdAt,..."create"===t.type?{expectedRoomVersion:C.roomVersion}:{}}),n="";try{let t=await fetch(`/api/sessions/v2/${encodeURIComponent(e)}`,{method:"PATCH",headers:x(),body:JSON.stringify({action:"sportCommand",sportCommand:o})}),s=await t.json().catch(()=>null);if(!t.ok||s?.success===!1){if(t.status<500&&(0,u.T)(e,"sport",o.opId),409===t.status){let t=await fetch(`/api/sessions/v2/${encodeURIComponent(e)}`,{headers:x()}),s=t.ok?await t.json():null;s&&ei(s.sportState||null,s.version)}let s=409===t.status?"stateChanged":403===t.status?"notAllowed":401===t.status?"sessionExpired":400===t.status?"invali
1dAction":"commandFailed";throw n=(0,_.w6)(f,`vtt.sports.errors.${s}`),Error(n)}if((0,u.T)(e,"sport",o.opId),Object.prototype.hasOwnProperty.call(s||{},"sportState")){let t=s.sportState||null;ei(t,s.newVersion),window.dispatchEvent(new CustomEvent(m.Mr,{detail:{roomId:e,sportState:t,roomVersion:s.newVersion}}))}}catch{J(n||(0,_.w6)(f,"vtt.sports.errors.syncFailed"))}finally{el.current=!1,V(!1)}},[ei,e,f,ec,P?.createdAt,P?.revision,C.roomVersion]);(0,r.useEffect)(()=>{let t=!1;return fetch(`/api/sessions/v2/${encodeURIComponent(e)}`,{headers:x()}).then(async e=>{if(!e.ok)return null;let t=await e.json();return G(t?.allies&&"object"==typeof t.allies?t.allies:{}),{sportState:t?.sportState||null,roomVersion:Number(t?.version||0)}}).then(e=>{!t&&e&&ei(e.sportState,e.roomVersion)}).catch(()=>void 0),()=>{t=!0}},[ei,e]),(0,r.useEffect)(()=>{if(e&&n.Gg&&n.db)return(0,o.onSnapshot)((0,o.doc)(n.db,"games",e,"state","sport"),e=>{if(!e.exists())return;let t=e.data();ei(t?.sportState||null,Number(t?.roomVersion||0))},()=>J((0,_.w6)(f,"vtt.sports.errors.syncFailed")))},[ei,e,f]),(0,r.useEffect)(()=>{if(e&&n.Gg&&n.db)return(0,o.onSnapshot)((0,o.doc)(n.db,"games",e,"state","allies"),e=>{let t=e.exists()?e.data():null;G(t?.allies&&"object"==typeof t.allies?t.allies:{})})},[e]),(0,r.useEffect)(()=>{if(!em||P?.status!=="running"||W||K)return;let e=P.goalAnimation||["basketball","volleyball","badminton"].includes(P.sport)&&P.currentEvent?.type==="score"?d.nd:d.vt,t=window.setTimeout(()=>{ew({type:"advance",expectedRevision:P.revision})},e);return()=>window.clearTimeout(t)},[em,W,K,P?.currentEvent?.type,P?.goalAnimation,P?.revision,P?.sport,P?.status,ew]);let ex=P?.currentEvent?.validTechniques?.join(",")||"";(0,r.useEffect)(()=>{ee(ex.split(",")[0]),Z(""),Q([]);let e=P?.currentEvent?.competenceCheck?.label;es(e&&"Scelta"!==e?e:"Atletica"),window.dispatchEvent(new CustomEvent("sport-card-selection-reset",{detail:{playerId:ec}}))},[P?.currentEvent?.competenceCheck?.label,P?.currentEvent?.id,P?.currentEvent?.activeAthleteId,ex,ec]),(0,r.useEffect)(()=>{let e=e=>{let t=e.detail;t&&String(t.playerId)===ec&&(Z(String(t.primaryCard?.id||"")),Q(Array.isArray(t.supportCardIds)?t.supportCardIds.map(String):[]))};return window.addEventListener("sport-card-selection",e),()=>window.removeEventListener("sport-card-selection",e)},[ec]);let ey=P?.currentEvent?.activeAthleteId?P.athletes[P.currentEvent.activeAthleteId]:void 0,ej=P?.status==="period_break"&&P.currentEvent?.type==="score"?P.currentEvent.scoreAfter:void 0,eS=!s?.spectator&&P?.status==="awaiting_choice"&&P.currentEvent?.requiredPlayerId===ec,ek=ep.find(e=>e.id===U),eC=ep.filter(e=>Y.includes(e.id)&&e.id!==U),eN=(0,l.Bj)([ek,...eC].filter(e=>!!e).map(e=>({suit:e.suit,value:(0,l.Jv)(e.value)}))),eP=eC.length>0&&!eN.valid,eI=P&&ey?P.teams[ey.teamId].athleteIds.map(e=>P.athletes[e]).filter(e=>e?.id!==ey.id):[];(0,r.useEffect)(()=>(window.dispatchEvent(new CustomEvent("sport-card-selection-mode",{detail:{playerId:ec,primaryOnly:!1}})),()=>{window.dispatchEvent(new CustomEvent("sport-card-selection-mode",{detail:{playerId:ec,primaryOnly:!1}}))}),[eS,P?.currentEvent?.competenceCheck,ec]);let eT=(e,t)=>{D(s=>({...s,[e]:t}))};if(!P)return(0,a.jsxs)("section",{className:g().panel,"aria-label":(0,_.w6)(f,"vtt.sports.aria.engine"),children:[(0,a.jsxs)("div",{className:g().hero,children:[(0,a.jsx)("span",{children:"\uD83C\uDFC6"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("small",{children:(0,_.w6)(f,"vtt.sports.hero.exclusive")}),(0,a.jsx)("h2",{children:(0,_.w6)(f,"vtt.sports.hero.title")}),(0,a.jsx)("p",{children:(0,_.w6)(f,"vtt.sports.hero.subtitle")})]})]}),em?(0,a.jsxs)("div",{className:g().setup,children:[(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.sport"),(0,a.jsx)("select",{value:I,onChange:e=>{T(e.target.value),D({})},children:w.map(e=>(0,a.jsx)("option",{value:e,children:(0,_.Dg)(f,e)},e))})]}),(0,a.jsxs)("div",{className:g().nameGrid,children:[(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.homeName"),(0,a.jsx)("input",{value:A,onChange:e=>R(e.target.value),maxLength:60})]}),(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.awayName"),(0,a.jsx)("input",{value:E,onChange:e=>$(e.target.value),maxLength:60})]})]}),"football"===I&&(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.format"),(0,a.jsxs)("select",{value:z,onChange:e=>{M(Number(e.target.value)),D({})},children:[(0,a.jsx)("option",{value:5,children:(0,_.w6)(f,"vtt.sports.setup.footballFive")}),(0,a.jsx)("option",{value:11,children:(0,_.w6)(f,"vtt.sports.setup.footballEleven")}
1)]})]}),"badminton"===I&&(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.format"),(0,a.jsxs)("select",{value:H,onChange:e=>{L(Number(e.target.value)),D({})},children:[(0,a.jsx)("option",{value:1,children:(0,_.w6)(f,"vtt.sports.setup.singles")}),(0,a.jsx)("option",{value:2,children:(0,_.w6)(f,"vtt.sports.setup.doubles")})]})]}),("badminton"!==I||2===H)&&(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.setup.rivalTeam"),(0,a.jsxs)("select",{value:B,onChange:e=>F(e.target.value),children:[(0,a.jsx)("option",{value:"standard",children:(0,_.w6)(f,"vtt.sports.setup.rivalStandard")}),(0,a.jsx)("option",{value:"important",children:(0,_.w6)(f,"vtt.sports.setup.rivalImportant")})]})]}),(0,a.jsxs)("div",{className:g().rosterHeader,children:[(0,a.jsx)("strong",{children:(0,_.w6)(f,"vtt.sports.roster.compose")}),(0,a.jsx)("span",{children:(0,_.w6)(f,"vtt.sports.roster.slots",{count:eu})})]}),(0,a.jsxs)("div",{className:g().rosterLane,role:"group","aria-label":(0,_.w6)(f,"vtt.sports.aria.assignRoster"),children:[(0,a.jsxs)("div",{className:g().rosterLaneHeader,children:[(0,a.jsxs)("h3",{className:g().homeRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.teamA")," ",(0,a.jsxs)("small",{children:[eb.length,"/",eu]})]}),(0,a.jsxs)("h3",{className:g().availableRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.available")," ",(0,a.jsx)("small",{children:ef.length})]}),(0,a.jsxs)("h3",{className:g().awayRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.teamB")," ",(0,a.jsxs)("small",{children:[e_.length,"/",eu]})]})]}),(0,a.jsxs)("div",{className:g().rosterLaneGuide,"aria-hidden":"true",children:[(0,a.jsx)("span",{}),(0,a.jsx)("span",{}),(0,a.jsx)("span",{})]}),(0,a.jsxs)("div",{className:g().rosterLaneRows,children:[eh.map(e=>{let t=q[e.id],s="home"===t?(0,_.w6)(f,"vtt.sports.roster.teamA"):"away"===t?(0,_.w6)(f,"vtt.sports.roster.teamB"):(0,_.w6)(f,"vtt.sports.roster.unassigned"),r="home"!==t&&eb.length>=eu,o="away"!==t&&e_.length>=eu;return(0,a.jsx)("div",{className:g().rosterTrack,children:(0,a.jsxs)("div",{className:`${g().rosterCandidate} ${"home"===t?g().rosterCandidateHome:"away"===t?g().rosterCandidateAway:g().rosterCandidateAvailable}`,"aria-label":`${e.name}: ${s}`,children:[(0,a.jsx)("button",{type:"button",className:`${g().rosterMove} ${g().rosterMoveHome}`,"aria-label":(0,_.w6)(f,"home"===t?"vtt.sports.roster.inTeamA":"vtt.sports.roster.assignTeamA",{name:e.name}),"aria-pressed":"home"===t,disabled:r,onClick:()=>eT(e.id,"home"),children:"←"}),(0,a.jsxs)("span",{className:g().rosterCandidateInfo,children:[e.avatar?(0,a.jsx)("img",{src:e.avatar,alt:""}):(0,a.jsx)("span",{className:g().rosterFallback,"aria-hidden":"true",children:"hero"===e.kind?"★":"◆"}),(0,a.jsxs)("span",{className:g().rosterCandidateCopy,children:[(0,a.jsx)("b",{children:e.name}),(0,a.jsxs)("small",{children:[(0,_.w6)(f,"hero"===e.kind?"vtt.sports.roster.hero":"vtt.sports.roster.ally")," \xb7 ",s,e.ownerId?"":` \xb7 ${(0,_.w6)(f,"vtt.sports.roster.withoutOwner")}`]})]})]}),t?(0,a.jsx)("button",{type:"button",className:g().rosterRemove,"aria-label":(0,_.w6)(f,"vtt.sports.roster.removeFromTeam",{name:e.name}),title:(0,_.w6)(f,"vtt.sports.roster.returnAvailable"),onClick:()=>eT(e.id),children:"\xd7"}):(0,a.jsx)("span",{className:g().rosterRemovePlaceholder,"aria-hidden":"true"}),(0,a.jsx)("button",{type:"button",className:`${g().rosterMove} ${g().rosterMoveAway}`,"aria-label":(0,_.w6)(f,"away"===t?"vtt.sports.roster.inTeamB":"vtt.sports.roster.assignTeamB",{name:e.name}),"aria-pressed":"away"===t,disabled:o,onClick:()=>eT(e.id,"away"),children:"→"})]})},e.id)}),!eh.length&&(0,a.jsx)("p",{className:g().rosterEmpty,children:(0,_.w6)(f,"vtt.sports.roster.emptySetup")})]})]}),(0,a.jsx)("p",{className:g().hint,children:(0,_.w6)(f,"vtt.sports.roster.setupHint")}),eg&&(0,a.jsx)("p",{className:g().error,children:(0,_.w6)(f,"vtt.sports.errors.rosterCapacityShort",{count:eu})}),(0,a.jsx)("p",{className:g().hint,children:(0,_.w6)(f,`vtt.sports.guide.${I}`)}),(0,a.jsx)("button",{className:g().primaryButton,onClick:()=>{let e;if(eg)return void J((0,_.w6)(f,"vtt.sports.errors.rosterCapacity",{count:eu}));let t=(e=[],["home","away"].forEach(t=>{e.push(...eh.filter(e=>q[e.id]===t).slice(0,eu).map(e=>({id:e.id,name:e.name,kind:e.kind,ownerId:e.ownerId,rating:e.rating,teamId:t})));let s=e.filter(e=>e.teamId===t).length;for(;s<eu;)s+=1,e.push({id:`${t}-npc-${s}`,nameI18n:{type:"defaultAthlete",value:"home"===t?"teammate":"badminton"===I?"rival":"opponent",number:s},name:(0,_.w6)(f,"home"===t?"vtt.sports.defaults.teammate":"badminton"===I?"vtt.sports.defaults.rival":"vtt.sports.defaults.opponent",{number:s}),teamId:t,kind:"npc",rating:0})}),e);ew({type:"create",config:{sport:I,teamSize:eu,homeName:A,awayName:E,athletes:t,rivalMode:"badminton"===I&&1===H?"standard":B,seed:Math.floor(Date.now()/1e3)}})},disabled:K||eg,children:(0,_.w6)(f,"vtt.sports.setup.prepare")})]}):(0,a.jsx)("div",{className:g().empty,children:(0,_.w6)(f,"vtt.sports.setup.waitingForDeux")}),W&&(0,a.jsx)("p",{className:g().error,role:"alert",children:W})]});let eA=(0,_.Dg)(f,P.sport),eR=P.rosterLobby,eE=eR?.assignments||{},e$=Object.values(eE).filter(e=>"home"===e).length,ez=Object.values(eE).filter(e=>"away"===e).length,eM=(e,t)=>{eR&&ew({type:"assign_team",lobbyId:eR.id,candidateId:e,teamId:t})},eH=P.currentEvent?.competenceCheck,eL="basketball"===P.sport&&"tipoff"===P.phase?P.pendingBasketballTipoff:void 0,eB=P.pendingFootballPass,eF=X&&"long_pass"!==X?i[X]:void 0;return(0,a.jsxs)("section",{className:g().panel,"aria-label":(0,_.w6)(f,"vtt.sports.aria.match",{sport:eA}),children:[(0,a.jsxs)("div",{className:g().matchSummary,children:[(0,a.jsx)("span",{children:"\uD83C\uDFC6"}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("small",{children:[eA," \xb7 ",(0,_.zk)(f,P.status)]}),(0,a.jsxs)("strong",{children:[P.teams.home.name," ",ej?.home??P.teams.home.score," – ",ej?.away??P.teams.away.score," ",P.team
1s.away.name]}),(0,a.jsx)("p",{children:(0,_.w6)(f,"important"===P.rivalMode?"vtt.sports.summary.importantRival":"vtt.sports.summary.standardRival")}),P.lastCompetenceCheck&&(0,a.jsxs)("p",{role:"status",children:[(0,_.cD)(f,P.lastCompetenceCheck.category),": ",y(P.lastCompetenceCheck.card)," \xb7 ",P.lastCompetenceCheck.total]})]})]}),"ready"===P.status&&eR&&(0,a.jsxs)("div",{className:g().setup,children:[(0,a.jsxs)("div",{className:g().rosterHeader,children:[(0,a.jsx)("strong",{children:(0,_.w6)(f,"vtt.sports.roster.compose")}),(0,a.jsx)("span",{children:(0,_.w6)(f,"vtt.sports.roster.slots",{count:eR.teamSize})})]}),(0,a.jsxs)("div",{className:g().rosterLane,role:"group","aria-label":(0,_.w6)(f,"vtt.sports.aria.sharedRoster"),children:[(0,a.jsxs)("div",{className:g().rosterLaneHeader,children:[(0,a.jsxs)("h3",{className:g().homeRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.teamA")," ",(0,a.jsxs)("small",{children:[e$,"/",eR.teamSize]})]}),(0,a.jsxs)("h3",{className:g().availableRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.heroesAndAllies")," ",(0,a.jsx)("small",{children:ev.length})]}),(0,a.jsxs)("h3",{className:g().awayRosterTitle,children:[(0,_.w6)(f,"vtt.sports.roster.teamB")," ",(0,a.jsxs)("small",{children:[ez,"/",eR.teamSize]})]})]}),(0,a.jsxs)("div",{className:g().rosterLaneGuide,"aria-hidden":"true",children:[(0,a.jsx)("span",{}),(0,a.jsx)("span",{}),(0,a.jsx)("span",{})]}),(0,a.jsxs)("div",{className:g().rosterLaneRows,children:[ev.map(e=>{let t=eE[e.id],r=!s?.spectator&&(em||e.ownerId===ec),o="home"===t?(0,_.w6)(f,"vtt.sports.roster.teamA"):"away"===t?(0,_.w6)(f,"vtt.sports.roster.teamB"):(0,_.w6)(f,"vtt.sports.roster.unassigned"),n=K||!r||"home"!==t&&e$>=eR.teamSize,l=K||!r||"away"!==t&&ez>=eR.teamSize;return(0,a.jsx)("div",{className:g().rosterTrack,children:(0,a.jsxs)("div",{className:`${g().rosterCandidate} ${"home"===t?g().rosterCandidateHome:"away"===t?g().rosterCandidateAway:g().rosterCandidateAvailable}`,"aria-label":`${e.name}: ${o}`,children:[(0,a.jsx)("button",{type:"button",className:`${g().rosterMove} ${g().rosterMoveHome}`,"aria-label":(0,_.w6)(f,"vtt.sports.roster.assignTeamA",{name:e.name}),"aria-pressed":"home"===t,disabled:n,onClick:()=>eM(e.id,"home"),children:"←"}),(0,a.jsxs)("span",{className:g().rosterCandidateInfo,children:[e.avatar?(0,a.jsx)("img",{src:e.avatar,alt:""}):(0,a.jsx)("span",{className:g().rosterFallback,"aria-hidden":"true",children:"hero"===e.kind?"★":"◆"}),(0,a.jsxs)("span",{className:g().rosterCandidateCopy,children:[(0,a.jsx)("b",{children:e.name}),(0,a.jsxs)("small",{children:[(0,_.w6)(f,"hero"===e.kind?"vtt.sports.roster.hero":"vtt.sports.roster.ally")," \xb7 ",o,r?` \xb7 ${(0,_.w6)(f,"vtt.sports.roster.yourChoice")}`:""]})]})]}),t&&r?(0,a.jsx)("button",{type:"button",className:g().rosterRemove,"aria-label":(0,_.w6)(f,"vtt.sports.roster.removeFromTeam",{name:e.name}),disabled:K,onClick:()=>eM(e.id),children:"\xd7"}):(0,a.jsx)("span",{className:g().rosterRemovePlaceholder,"aria-hidden":"true"}),(0,a.jsx)("button",{type:"button",className:`${g().rosterMove} ${g().rosterMoveAway}`,"aria-label":(0,_.w6)(f,"vtt.sports.roster.assignTeamB",{name:e.name}),"aria-pressed":"away"===t,disabled:l,onClick:()=>eM(e.id,"away"),children:"→"})]})},e.id)}),!ev.length&&(0,a.jsx)("p",{className:g().rosterEmpty,children:(0,_.w6)(f,"vtt.sports.roster.emptyShared")})]})]}),(0,a.jsx)("p",{className:g().hint,children:(0,_.w6)(f,em?"vtt.sports.roster.sharedHintDeux":"vtt.sports.roster.sharedHintPlayer")})]}),"awaiting_choice"===P.status&&(0,a.jsxs)("div",{className:g().choiceCard,children:[(0,a.jsxs)("div",{className:g().choiceHeading,children:[(0,a.jsx)("span",{children:eH&&"basketball"===P.sport&&"tipoff"===P.phase?"\uD83C\uDFC0":"⏸"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("small",{children:(0,_.w6)(f,eH&&"basketball"===P.sport&&"tipoff"===P.phase?"vtt.sports.choice.tipoffTitle":"vtt.sports.choice.decisiveMoment")}),(0,a.jsxs)("strong",{children:[(0,_.Nh)(f,ey)||(0,_.w6)(f,"vtt.sports.choice.heroFallback"),eH&&"basketball"===P.sport&&"tipoff"===P.phase?(0,_.w6)(f,"vtt.sports.choice.jumperSuffix"):""]})]})]}),(0,a.jsx)("p",{children:(0,_.KG)(f,P.currentEvent?.commentaryI18n,P.currentEvent?.commentary||"")}),P.currentEvent?.opponentCardRevealed&&P.currentEvent.opponentCard&&(0,a.jsxs)("div",{className:g().revealed,children:[(0,_.w6)(f,"vtt.sports.choice.opponentPrimary"),": ",(0,a.jsx)("b",{children:y(P.currentEvent.opponentCard)})]}),eS?(0,a.jsx)(a.Fragment,{children:eB?(0,a.jsxs)("div",{className:g().competencePrompt,children:[(0,a.jsx)("strong",{children:(0,_.w6)(f,"vtt.sports.choice.passSuccessTitle")}),(0,a.jsx)("p",{children:(0,_.w6)(f,"vtt.sports.choice.passSuccessHint")}),(0,a.jsx)("button",{className:g().primaryButton,onClick:()=>void ew({type:"resolve_football_pass",option:"teammate",expectedRevision:P.revision}),disabled:K,children:(0,_.w6)(f,"vtt.sports.choice.shortPass")}),(0,a.jsx)("button",{onClick:()=>void ew({type:"resolve_football_pass",option:"long",expectedRevision:P.revision}),disabled:K,children:(0,_.w6)(f,"vtt.sports.choice.longPass")})]}):eH?(0,a.jsxs)("div",{className:g().competencePrompt,children:[(0,a.jsx)("strong",{children:eL?void 0===eL.firstTotal?(0,_.w6)(f,"vtt.sports.choice.tipoffFirstResult"):(0,_.w6)(f,"vtt.sports.choice.tipoffBeat",{total:eL.firstTotal}):(0,_.w6)(f,"vtt.sports.choice.competenceDifficulty",{difficulty:eH.difficulty})}),(0,a.jsx)("p",{children:(0,_.KG)(f,eH.reasonI18n,eH.reason)}),(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.choice.competence"),(0,a.jsx)("select",{value:et,disabled:"Scelta"!==eH.label,onChange:e=>es(e.target.value),children:["Atletica","Fisica","Intellettiva","Sociale","Generica"].map(e=>(0,a.jsx)("option",{value:e,children:(0,_.cD)(f,e)},e))})]}),(0,a.jsx)("button",{className:g().primaryButton,onClick:()=>{eH&&ew({type:"submit_competence",checkId:eH.id,category:et,expectedRevision:P.revision})},disabled:K,children:(0,_.w6)(f,"basketball"===P.sport&&"tipoff"===P.phase?"vtt.sports.choice.performTipoff":"vtt.sports.choice.performCheck")})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.choice.technique"),(0,a.jsx)("select",{value:X,onChange:e=>ee(e.target.value),children:(P.currentEvent?.validTechniques||[]).map(e=>(0,a.jsx)("option",{value:e,children:(0,_.JG)(f,e)},e))})]}),P.currentEvent?.techniqueNote&&(0,a.jsx)("p",{className:g().hint,children:(0,_.KG)(f,P.currentEvent.techniqueNoteI18n,P.currentEvent.techniqueNote)}),eF?.range==="self"&&(0,a.jsx)("p",{className:g().hint,children:(0,_.w6)(f,P.currentEvent?.activeRole==="defender"?"vtt.sports.choice.selfDefenseHint":"vtt.sports.choice.selfAttackHint")}),"basketball"===P.sport&&"precision_shot"===X&&(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.choice.shot"),(0,a.jsxs)("select",{value:ea,onChange:e=>er(Number(e.target.value)),children:[(0,a.jsx)("option",{value:2,children:(0,_.w6)(f,"vtt.sports.choice.shotTwo")}),(0,a.jsx)("option",{value:3,children:(0,_.w6)(f,"vtt.sports.choice.shotThree")})]})]}),(0,a.jsxs)("div",{className:g().handSelection,children:[(0,a.jsxs)("label",{children:[(0,_.w6)(f,"vtt.sports.choice.primarySelect"),(0,a.jsxs)("select",{value:U,disabled:K,onChange:e=>{let t=e.currentTarget.value;Z(t),Q(e=>e.filter(e=>e!==t))},children:[(0,a.jsx)("option",{value:"",children:"—"}),ep.map(e=>(0,a.jsx)("option",{value:e.id,children:y(e)},e.id))]})]}),ek&&ep.length>1&&(0,a.jsxs)("fieldset",{className:g().cards,children:[(0,a.jsx)("legend",{children:(0,_.w6)(f,"vtt.sports.choice.supportSelect")}),ep.filter(e=>e.id!==ek.id).map(e=>(0,a.jsxs)("label",{children:[(0,a.jsx)("input",{type:"checkbox",checked:Y.includes(e.id),disabled:K,onChange:t=>{let s=t.currentTarget.checked;Q(t=>s?[...t,e.id]:t.filter(t=>t!==e.id))}}),y(e)]},e.id))]}),(0,a.jsx)("strong",{children:ek?(0,_.w6)(f,"vtt.sports.choice.primarySelected",{card:y(ek)}):(0,_.w6)(f,"vtt.sports.choice.primaryPrompt")}),(0,a.jsx)("small",{children:(0,_.w6)(f,"vtt.sports.choice.handHint")}),eC.length>0&&(0,a.jsx)("small",{children:eP?(0,_.w6)(f,"vtt.sports.choice.invalidCombo"):(0,_.w6)(f,"vtt.sports.choice.comboIgnored",{combo:(0,_.w6)(f,`vtt.combat.combos.names.${eN.key||""}`,{},eN.key||""),bonus:eN.bonus})})]}),ey?.kind==="hero"&&!ey.zoneUsed&&(0,a.jsxs)("div",{className:g().zoneRow,children:[(0,a.jsxs)("select",{"aria-label":(0,_.w6)(f,"vtt.sports.aria.zoneAlly"),value:eo,onChange:e=>en(e.target.value),children:[(0,a.jsx)("option",{value:"",children:(0,_.w6)(f,"vtt.sports.choice.zoneSelf")}),eI.map(e=>(0,a.jsx)("option",{value:e.id,children:(0,_.w6)(f,"vtt.sports.choice.zoneAlly",{name:(0,_.Nh)(f,e)})},e.id))]}),(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"activate_zone",allyId:eo||void 0,expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.choice.enterZone")})]}),(0,a.jsx)("button",{className:g().primaryButton,onClick:()=>{P&&X&&ek&&ew({type:"submit_choice",technique:X,primaryCard:ek,supportCards:eC,shotPoints:"basketball"===P.sport&&"precision_shot"===X?ea:void 0,expectedRevision:P.revision})},disabled:K||!X||!ek||eP,children:(0,_.w6)(f,"vtt.sports.choice.confirmAction")})]})}):(0,a.jsx)("p",{className:g().waiting,children:(0,_.w6)(f,"vtt.sports.choice.waitingOwner")})]}),P.lastResolution&&(0,a.jsxs)("div",{className:g().result,children:[!P.lastResolution.automaticRecovery&&!P.lastResolution.comparison?.unopposed&&(0,a.jsxs)("b",{children:[P.lastResolution.attackerTotal," - ",P.lastResolution.defenderTotal]}),(0,a.jsx)("span",{children:(0,_.KG)(f,P.lastResolution.commentaryI18n,P.lastResolution.commentary)}),(0,_.uW)(f,P.lastResolution.comparison).map((e,t)=>(0,a.jsx)("small",{children:e},t)),P.lastResolution.comboKey&&(0,a.jsx)("small",{children:(0,_.w6)(f,"vtt.sports.choice.comboResult",{combo:(0,_.w6)(f,`vtt.combat.combos.names.${P.lastResolution.comboKey}`,{}
1,P.lastResolution.comboKey)})})]}),em&&(0,a.jsxs)("div",{className:g().controls,children:["running"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"advance",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.advance")}),"ready"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"start",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.start")}),"running"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"pause",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.pause")}),"paused"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"resume",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.resume")}),"football"===P.sport&&1===P.period&&["running","paused"].includes(P.status)&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"end_period",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.endFirstHalf")}),"period_break"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"next_period",expectedRevision:P.revision}),children:(0,_.w6)(f,"football"===P.sport?"vtt.sports.controls.secondHalf":"vtt.sports.controls.nextSet")}),"finished"!==P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"end",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.end")}),"finished"===P.status&&(0,a.jsx)("button",{disabled:K,onClick:()=>void ew({type:"reset",expectedRevision:P.revision}),children:(0,_.w6)(f,"vtt.sports.controls.newMatch")})]}),(0,a.jsxs)("div",{className:g().log,children:[(0,a.jsx)("h3",{children:(0,_.w6)(f,"vtt.sports.commentary.title")}),[...P.log].reverse().map(e=>(0,a.jsxs)("p",{className:g()[e.tone],children:[(0,a.jsx)("small",{children:(0,_.w6)(f,"vtt.sports.commentary.scene",{scene:e.scene})}),(0,a.jsxs)("span",{className:g().logContent,children:[(0,_.KG)(f,e.messageI18n,e.text),(0,_.uW)(f,e.comparison).map((e,t)=>(0,a.jsx)("span",{className:g().calculation,children:e},t))]})]},e.id))]}),W&&(0,a.jsx)("p",{className:g().error,role:"alert",children:W})]})}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.