1import{f as S}from"/build/_shared/chunk-BYGTMP6U.js";import{a as pe,b as ue,d as ce}from"/build/_shared/chunk-Y45XAUYP.js";import{a as se}from"/build/_shared/chunk-PSBOEDK7.js";import{a as oe}from"/build/_shared/chunk-KOKD6DDL.js";import{a as K}from"/build/_shared/chunk-CN6VJXOE.js";import{d as ae,g as ie,o as le}from"/build/_shared/chunk-EIKZ3SHR.js";import{c as J,d as V,e as X,f as Y,g as _,h as ee,i as te,j as re}from"/build/_shared/chunk-KIASMZC3.js";import{c as ne}from"/build/_shared/chunk-WEKJML5W.js";import{a as A}from"/build/_shared/chunk-EM6SKPH6.js";import{b as I}from"/build/_shared/chunk-SCSH5XPI.js";import{b as T}from"/build/_shared/chunk-5FWG67EV.js";import{f as R}from"/build/_shared/chunk-V7M6LDMT.js";import{C as h,a as Pe,o as Z,w as j,y as G}from"/build/_shared/chunk-WFNQTVCJ.js";import{d as y}from"/build/_shared/chunk-G5WX4PPA.js";var U=({playerId:o,target:i="portrait",association:l,season:u})=>{let n=le(o);if(!n)return null;let c=ie(n),m=l&&u?`/click-tt/${l}/${ae(u)}/spieler/${c}/spielerportrait`:`/click-tt/spieler/${c}/spielerportrait`;return i==="portrait"?m:`${R.communityExternalProfile}?player-id=${c}`},xe=({externalId:o})=>`${R.communityExternalProfile}?user-id=${o}`,de=({playerId:o,externalId:i,target:l="profile"})=>i?xe({externalId:i}):o?U({playerId:o,target:l}):null;var fe=y(h(),1);function me({className:o}){return(0,fe.jsx)("div",{className:T("absolute top-0 -left-8 w-full h-full backdrop-blur-3xl md:backdrop-blur-lg bg-white/40 outline-1 outline-red-700",o)})}var s=y(Pe(),1);var e=y(h(),1);function Ce(){return(0,e.jsxs)("div",{className:"flex min-h-24 items-center justify-center gap-3","data-testid":"click-tt-player-popup.loading",role:"status","aria-busy":"true",children:[(0,e.jsx)(I,{name:"loading",size:"sm",className:"animate-spin"}),(0,e.jsx)("span",{className:"text-body-sm",children:"Spielerdaten werden geladen"})]})}function Ne(){return(0,e.jsxs)("div",{className:"flex min-h-16 items-center gap-5 pr-10 md:pr-0","data-testid":"click-tt-player-popup.error",role:"alert",children:[(0,e.jsx)("span",{"aria-hidden":"true",className:"inline-flex h-14 w-14 shrink-0 items-center justify-center text-[3.5rem] leading-none",children:"\u{1F976}"}),(0,e.jsx)("p",{className:"text-h5",children:"Hier ist etwas schief gelaufen!"})]})}function ge({text:o,linkText:i,to:l}){return(0,e.jsxs)("div",{className:"mt-5 rounded-xl bg-mint p-4","data-testid":"click-tt-player-popup.upsell",children:[(0,e.jsx)("p",{className:"mb-8 text-body-subhead",children:o}),(0,e.jsx)(S,{to:l,linkText:i,linkIcon:"arrow",linkIconBg:"bg-white",className:"p-0"})]})}function ye({response:o,isLoading:i,nuPersonId:l,firstName:u,lastName:n,isAuthenticated:c,accessLevel:m,siteLabels:b}){if(i)return(0,e.jsx)(Ce,{});if(!o?.ok)return(0,e.jsx)(Ne,{});let{player:p}=o,g=m==="premium",a=de({playerId:l,externalId:p.userExternalId??void 0});return(0,e.jsxs)("div",{"data-testid":"click-tt-player-popup.content",children:[(0,e.jsxs)("header",{className:"border-b border-keyline pb-5 pr-10 md:pr-0",children:[(0,e.jsxs)("h2",{className:"text-h4",children:[n,", ",u]}),(0,e.jsx)("p",{className:"text-body-sm text-darkGrey",children:p.clubName})]}),(0,e.jsxs)("dl",{children:[(0,e.jsxs)("div",{className:"flex items-center justify-between border-b border-keyline py-1",children:[(0,e.jsx)("dt",{children:(0,e.jsx)(K,{children:"Q-TTR-Wert"})}),p.qttr!==null?(0,e.jsx)("dd",{className:"text-h2",children:p.qttr}):(0,e.jsx)("dd",{className:"text-h5",children:"unbekannt"})]}),(0,e.jsxs)("div",{className:"flex items-center justify-between border-b border-keyline py-1",children:[(0,e.jsx)("dt",{children:(0,e.jsx)(K,{children:"TTR-Wert"})}),g&&!p.ttrLocked?p.ttr!==null?(0,e.jsx)("dd",{className:"text-h2",children:p.ttr}):(0,e.jsx)("dd",{className:"text-h5",children:"unbekannt"}):(0,e.jsx)("dd",{className:"text-h2",children:(0,e.jsxs)("span",{className:"relative block overflow-hidden px-1",children:[(0,e.jsx)("span",{"aria-hidden":!0,children:1234}),(0,e.jsx)(me,{className:"-left-2 -top-1 h-[120%] w-[120%] outline-none"}),(0,e.jsx)("span",{className:"sr-only",children:p.ttrLocked?"Der TTR-Wert dieses Spielers ist nicht sichtbar.":"Der TTR-Wert ist nur f\xFCr Premium-Nutzer sichtbar."})]})})]})]}),a?(0,e.jsx)("div",{className:"mt-5","data-testid":"click-tt-player-popup.profile-link",children:(0,e.jsx)(S,{to:a,linkText:"Zum Spielerprofil",linkIcon:"arrow",className:"px-0 md:px-0"})}):null,c?m!=="premium"&&b?(0,e.jsx)(ge,{text:b.becomePremium,linkText:b.registerNow,to:R.premiumUser}):null:(0,e.jsx)(ge,{text:"Jetzt anmelden oder registrieren, um alles zu sehen.",linkText:"Zur Registrierung",to:R.registerNow})]})}var r=y(h(),1),he=150,Re=100,De="pb-[calc(7rem+env(safe-area-inset-bottom))]";function et({nuPersonId:o,firstName:i,lastName:l,className:u,children:n,linked:c=!0}){let m=j("root"),b=Boolean(m?.userProfile),p=se(m?.userProfile),g=`player-popup-${b?"authenticated":"anonymous"}-${p}-${o??"missing"}`,a=G({key:g}
1),Te=oe(),[k,z]=(0,s.useState)(!1),d=(0,s.useRef)(null),v=(0,s.useRef)(null),P=(0,s.useRef)(!1),F=(0,s.useRef)(!1),$=(0,s.useRef)(null),W=(0,s.useRef)(g),x=`${i} ${l}`.trim();if((0,s.useEffect)(()=>()=>{d.current&&clearTimeout(d.current),v.current&&clearTimeout(v.current)},[]),(0,s.useEffect)(()=>{let t=W.current!==g;W.current=g,t&&d.current&&(clearTimeout(d.current),d.current=null),t&&k&&o&&a.state==="idle"&&a.load(`/api/player-popup/${encodeURIComponent(o)}`)},[a,g,k,o]),!o)return n??(0,r.jsx)("span",{className:u,children:x});let E=o,q=U({playerId:E}),be=a.state!=="idle"||a.data===void 0,D=`click-tt-player-popup.trigger.${E}`;function L(){d.current&&(clearTimeout(d.current),d.current=null)}function C(){v.current&&(clearTimeout(v.current),v.current=null)}function ke(){a.state!=="idle"||a.data?.ok||a.load(`/api/player-popup/${encodeURIComponent(E)}`)}function w(){L(),C(),P.current=!1,z(!0),ke()}function M(){L(),C(),z(!1)}function H(){L(),C(),d.current=setTimeout(w,he)}function O(){if(F.current){F.current=!1;return}H()}function f(){L(),C(),v.current=setTimeout(M,Re)}function B(t){let N=t.key==="Tab"&&!t.shiftKey;if(!k||!N&&t.key!=="ArrowDown")return;t.preventDefault(),P.current=!0,($.current?.querySelector('a[href], button:not([disabled]), [tabindex]:not([tabindex="-1"])')??$.current)?.focus()}let Q=(0,r.jsx)(ye,{response:a.data,isLoading:be,nuPersonId:E,firstName:i,lastName:l,isAuthenticated:b,accessLevel:p,siteLabels:m?.siteLabels});if(Te){let t=n?(0,s.cloneElement)(n,{"data-testid":D,onClick:N=>{N.preventDefault(),n.props.onClick?.(N),k?M():w()}}):(0,r.jsx)("button",{type:"button",className:T(c&&"link","text-left",u),"data-testid":D,children:x});return(0,r.jsxs)(J,{open:k,onOpenChange:N=>N?w():M(),children:[(0,r.jsx)(V,{asChild:!0,children:t}),(0,r.jsxs)(X,{children:[(0,r.jsx)(Y,{className:"fixed inset-0 z-50",children:(0,r.jsx)(ne,{className:"bg-darkBlue/40"})}),(0,r.jsxs)(_,{className:"fixed inset-x-0 bottom-0 z-[51] focus:outline-none","data-testid":"click-tt-player-popup.mobile",children:[(0,r.jsxs)(ee,{className:"sr-only",children:["Spielerinformationen zu ",x]}),(0,r.jsx)(te,{className:"sr-only",children:"Q-TTR-Wert, TTR-Wert, Verein und Spielerprofil"}),(0,r.jsxs)(A,{className:T(De,"max-h-[calc(100dvh-2rem)] overflow-y-auto rounded-b-none px-3.75 pt-7"),children:[(0,r.jsx)(re,{asChild:!0,children:(0,r.jsx)("button",{type:"button",className:"absolute right-3.75 top-7 rounded-full bg-mint p-1 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-darkBlue","aria-label":"Spielerinformationen schlie\xDFen",children:(0,r.jsx)(I,{name:"close",size:"xs"})})}),Q]})]})]})]})}let ve=n?(0,s.cloneElement)(n,{"data-testid":D,onFocus:t=>{n.props.onFocus?.(t),O()},onBlur:t=>{n.props.onBlur?.(t),f()},onKeyDown:t=>{n.props.onKeyDown?.(t),B(t)},onMouseEnter:t=>{n.props.onMouseEnter?.(t),H()},onMouseLeave:t=>{n.props.onMouseLeave?.(t),f()}}):c&&q?(0,r.jsx)(Z,{to:q,className:T("link",u),"data-testid":D,onFocus:O,onBlur:f,onKeyDown:B,onMouseEnter:H,onMouseLeave:f,children:x}):(0,r.jsx)("button",{type:"button",className:T(c&&"link",u),"data-testid":D,onClick:w,onFocus:O,onBlur:f,onKeyDown:B,onMouseEnter:H,onMouseLeave:f,children:x});return(0,r.jsxs)(pe,{open:k,onOpenChange:t=>{t||M()},children:[(0,r.jsx)(ue,{asChild:!0,children:ve}),(0,r.jsx)(ce,{ref:$,"aria-label":`Spielerinformationen zu ${x}`,tabIndex:-1,align:"start",side:"bottom",sideOffset:8,collisionPadding:16,className:"w-96 border-0 bg-transparent p-0 shadow-none","data-testid":"click-tt-player-popup.desktop",onMouseEnter:C,onMouseLeave:f,onFocusCapture:C,onBlurCapture:f,onFocusOutside:()=>{P.current=!1},onPointerDownOutside:()=>{P.current=!1},onOpenAutoFocus:t=>t.preventDefault(),onCloseAutoFocus:t=>{P.current?F.current=!0:t.preventDefault(),P.current=!1},children:(0,r.jsx)(A,{className:"p-6",children:Q})})]})}export{U as a,xe as b,de as c,me as d,et as e};
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.