PageSourceSearch

https://www.wtatennis.com/resources/v7.52.1/scripts/h2h-match-centre.js

js wtatennis.com collected 2026-10-02 02:19:59 UTC 4,863 bytes, 1 lines download raw bytes

1import{R as e,r as t}from"./index.js";import{c as a}from"./client.js";import{u as s,P as r,s as n}from"./store.js";import{P as o}from"./index2.js";import{H as i,g as l,a as m,b as p,c,d as h}from"./h2h-stats-container.js";import{c as d,t as y}from"./bundle-es.js";import{H as u}from"./h2h-error.js";import{q as b}from"./tennis.js";import{g as f}from"./get-h2h-player-info.js";import{S as g}from"./unlocked-badge.js";import"./_commonjsHelpers.js";import"./tournament-player-service.js";import"./api-client.js";import"./content-api.js";import"./search-api.js";import"./favourite-player-button.js";import"./svg-icon.js";import"./player-headshot.js";import"./use-window-resize.js";import"./measurements.js";import"./h2h-career-surface-records-shared.js";import"./moment.js";import"./chart.js";import"./index3.js";import"./rankings-constants.js";function w({playerBio:t,opponentBio:a}){const s=t.playerid,r=a.playerid,n=`${t.firstname} ${t.lastname}`,o=`${a.firstname} ${a.lastname}`,i=d(s,n),l=d(r,o);return e.createElement("div",{className:"h2h__mc-players-names"},e.createElement("a",{href:i,className:"h2h__mc-player-name h-xs-sb"},t?.firstname?.charAt(0),". ",t?.lastname),e.createElement("a",{href:l,className:"h2h__mc-player-name h-xs-sb"},a?.firstname?.charAt(0),". ",a?.lastname))}function _({headToHeadSummary:a}){const s=t.useMemo(()=>b(a?.wins,a?.losses),[a?.losses,a?.wins]),r=t.useMemo(()=>b(a?.losses,a?.wins),[a?.losses,a?.wins]);if(!a)return null;const n=s<r;return e.createElement("div",{className:"h2h__mc-players-w-l-stats"},e.createElement("div",{className:"h2h__w-l-total h-l-b dt:h-xl-b"},a?.wins," - ",a?.losses),e.createElement("div",{className:"h2h__w-l-percentage"},e.createElement("span",{className:"h2h__w-l-bar-label l-s-m dt:l-m-m"},y.lookup("label.h2h.mc.wins")),e.createElement("span",{className:"h2h__w-l-bar "+(n?"h2h__w-l-bar--opponent-win":""),style:{"--w-l-bar-percentage":`${n?r:s}%`}}),e.createElement("div",{className:"h2h__w-l-bar-percentages"},e.createElement("span",{className:"h2h__w-l-percentage-player b-s-sb dt:b-m-sb"},s,"%"),e.createElement("span",{className:"h2h__w-l-percentage-opponent b-s-sb dt:b-m-sb"},r,"%"))))}function E({title:a,playerInfo:r,opponentInfo:n,widgetName:o,widgetType:d}){const[b,f]=t.useState(i.CAREER),[g,E]=t.useState(r),[j,N]=t.useState(n),[I,T]=t.useState(!1),{data:S,isLoading:v,isFetching:R,isError:k,error:H}=s({playerId:g.playerid,opponentId:j.playerid,params:{sort:"desc"}},{skip:!g.playerid||!j.playerid}),$=S?.bio?.[0]||g,x=S?.bio?.[1]||j,[B]=S?.headToHeadSummary||[],C=t.useMemo(()=>l(S?.matchEncounterResults,B,$?.playerid),[S?.matchEncounterResults,B,$?.playerid]),M=b===i.YEAR_TO_DATE?C:B;return e.createElement(m,{value:{isMatchCentre:!0,h2hData:S,h2hIsLoading:v,h2hIsFetching:R,showMore:I,statsToShow:b,setShowMore:T,setStatsToShow:f,setCurrentPlayerInfo:E,setCurrentOpponentInfo:N}},e.createElement("div",{className:"h2h__header"},e.createElement("h1",{className:"h2h__title h-m-sb"},a||y.lookup("label.h2h.title")),e.createElement("div",{className:"h2h__player-stats-switcher-container"},e.createElement(p,{onStatsChange:f,small:!0,widgetName:o,widgetType:d}))),e.createElement("div",{className:"h2h__mc-players-info"},e.createElement("div",{className:"h2h__mc-players"},e.createElement(c,{playerId:$.playerid,playerName:$&&`${$?.firstname} ${$?.lastname}`,opponentId:x.playerid,opponentName:x&&`${x?.firstname} ${x?.lastname}`,showFavouriteButton:!1,widgetName:o,widgetType:d}),e.createElement(_,{headToHeadSummary:M})),e.createElement(w,{playerBio:$,opponentBio:x})),e.createElement("div",{className:"h2h__content"},k?e.createElement(u,{error:H}):e.createElement(h,{activeStats:b,embeddable:!1,playerId:r?.id?String(r.id):null,opponentId:n?.playerid?String(n.playerid):null}),b===i.CAREER&&e.createElement("button",{className:"h2h__all-stats-link sbtn sbtn--med sbtn--gt "+($.playerid?"":"is-disabled"),onClick:()=>T(!I)},I?y.lookup("label.h2h.showLess"):y.lookup("label.h2h.showMore"))))}w.propTypes={playerBio:o.object.isRequired,opponentBio:o.object.isRequired},_.propTypes={headToHeadSummary:o.object},E.propTypes={title:o.string,playerInfo:o.object,opponentInfo:o.object,widgetName:o.string,widgetType:o.str
1ing};class j{constructor(e){this.container=e,this.containerRoot=a.createRoot(this.container),this.title=this.container.dataset.title,this.playerInfo=f(this.container.dataset).playerInfo,this.opponentInfo=f(this.container.dataset).opponentInfo,this.widgetName=this.container.dataset.trackingWidgetName,this.widgetType=this.container.dataset.trackingWidgetType,this.renderH2H()}renderH2H(){this.containerRoot.render(e.createElement(r,{store:n},e.createElement(g,null,e.createElement(E,{title:this.title.length>0&&this.title,playerInfo:this.playerInfo,opponentInfo:this.opponentInfo,widgetName:this.widgetName,widgetType:this.widgetType}))))}}export{j as default};

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.