import{d as N,h as k,o as p,a7 as P,a2 as s,b as _,a as K,bF as oe,aJ as re,w as F,ab as G,t as B,ar as te,af as se,ac as ae,e as ne,i as ie,a3 as le,ag as ce,aH as ue,j as pe,bn as de,S as T,T as fe,K as j,a4 as ve,C as h,a6 as me,c as z,F as ge,bG as b,bH as he,bI as be,bJ as _e,bK as D,bL as q}from"./index-Cj-040Sc.js";const ke=["aria-label"],ye={class:"sportsbook-loading__content flex animate-pulse flex-col items-center justify-center gap-4 transition-all"},Se=N({__name:"Index",props:{currentPhrase:{default:void 0}},setup(i){return(d,a)=>(p(),k("div",{class:"sportsbook-loading absolute left-0 right-0 top-0 z-10 flex h-[95dvh] flex-col items-center justify-center gap-4 bg-[var(--color-brand-background)]",role:"status","aria-label":P(s)("sportsbook.loading")},[_(oe,{class:"h-auto max-w-48"}),K("div",ye,[_(re,{indeterminate:"",color:"primary",size:"32",width:"3","aria-hidden":"true"}),_(te,{name:"sportsbook-fade",mode:"out-in"},{default:F(()=>[i.currentPhrase?(p(),k("p",{key:i.currentPhrase,class:"text-center text-[var(--color-content-secondary)]"},B(i.currentPhrase),1)):G("",!0)]),_:1})])],8,ke))}}),we=se(Se,[["__scopeId","data-v-9156be75"]]),xe={class:"sportsbook-error absolute left-0 right-0 top-0 z-10 flex h-[95dvh] flex-col items-center justify-center gap-4 text-center text-[var(--color-content-primary)]",role:"alert"},Te={class:"font-semibold text-[var(--body-md-size,1rem)]"},Pe=N({__name:"Index",props:{error:{}},emits:["retry"],setup(i){return(d,a)=>(p(),k("div",xe,[_(ae,{icon:"fas fa-triangle-exclamation",color:"warning",size:"36","aria-hidden":"true"}),K("p",Te,B(P(s)("sportsbook.error.title")),1),_(ie,{color:"primary",variant:"flat","aria-label":P(s)("sportsbook.error.retry"),onClick:a[0]||(a[0]=R=>d.$emit("retry"))},{default:F(()=>[ne(B(P(s)("sportsbook.error.retry")),1)]),_:1},8,["aria-label"])]))}}),Re={digitain:i=>{throw new Error("Digitain server URL is required (VITE_SPORTSBOOK_DIGITAIN_SERVER_URL)")},altenar:()=>{throw new Error("Altenar SDK URL is required (VITE_SPORTSBOOK_ALTENAR_SDK_URL)")}};function Oe(i,d){return Re[i](d)}const Ee={class:"relative flex min-h-[95dvh] w-full flex-col overflow-hidden bg-[var(--color-surface-primary)]"},Ce=N({__name:"Index",props:{mode:{default:"sports"}},setup(i,{expose:d}){const a=i,R=le(),y=ce(),H=ue(),J=pe(),A=de(),O=T(null),n=fe(null),S=T(!1),l=T(null),w=[],E=T("");let v="",u=null,m=0;const V=j(()=>[s("sports.loading"),s("sports.wait-moment"),s("sports.almost-there"),s("sports.loading-dots"),s("sports.searching-odds")]),W=j(()=>a.mode==="esports"?"/sports/esports":"/sports");function Q(){const e=V.value,r=Math.floor(Math.random()*e.length);E.value=e[r]}function L(){const e=A.params.page;return(Array.isArray(e)?e:e?[e]:[]).join("/")}async function U(){const e=++m,r=R.business;if(!r.sport_enabled){l.value={code:"sportsbook/disabled",message:"Sportsbook is not available for this house"};return}const c=r.sport_sportbook_type;if(!c){l.value={code:"sportsbook/no-provider",message:"No sportsbook provider configured"},b.warning("no provider configured",{tag:"SPORTSBOOK"});return}if(!he(c,a.mode)){l.value={code:"sportsbook/mode-unsupported",message:`${a.mode} mode is not supported on this house`};return}if(!O.value||y.isAuthenticated&&(await y.fetchSportsbookToken(),e!==m))return;let f;try{f=Oe(c,{isMobile:typeof window<"u"?window.innerWidth<=768:!1,mode:a.mode})}catch(o){l.value={code:"sportsbook/config",message:s("sportsbook.error.title")},b.error(`config failure: ${o.message}`,{tag:"SPORTSBOOK"});return}let t;try{t=be(c,f)}catch(o){l.value=o instanceof _e?{code:"sportsbook/unknown-provider",message:s("sportsbook.error.title")}:{code:"sportsbook/registry",message:s("sportsbook.error.title")},b.error(`registry failure: ${o.message}`,{tag:"SPORTSBOOK"});return}if(e!==m){t.destroy();return}n.value=t;const C=L(),M=a.mode==="esports"?C.replace(/^esports\/?/,""):C,Z=t.urlToProviderState(M);v=C,w.push(t.on("ready",()=>{S.value=!0}),t.on("route-change",X),t.on("sign-in-requested",()=>{J.setModal({name:"login"})}),t.on("balance-changed",({balance:o})=>H.setBalance(o)),t.on("error",o=>b.error(o.message,{tag:"SPORTSBOOK"})),t.on("seo-context",o=>{const x=String(o.page||"overview");if(x==="event"||x==="liveEvent"){const g=String(o.eventName||"");g&&D({viewType:"event",eventName:g})}else if(x!=="overview"&&x!=="betHistory"){const g=String(o.championshipName||o.sportName||"");g&&D({viewType:"category",categoryName:g})}})),w.push(h(()=>y.sportsbookToken,o=>t.setToken(o??null)),h(()=>R.business.cometa_sportsbook_css,o=>t.setCustomCss(o)),h(()=>L(),Y));const $=A.query?.shareCode,ee=Array.isArray($)?$[0]??null:$??null;try{await t.init({mountEl:O.value,language:q(),customCssUrl:r.cometa_sportsbook_css??null,initialRoute:Z,initialPathTail:M,initialToken:y.sportsbookToken??null,shareCode:ee})}catch(o){if(e!==m)return;l.value={code:"sportsbook/init",message:s("sportsbook.error.title")},b.error(`init failure: ${o.message}`,{tag:"SPORTSBOOK"})}}function X(e){if(!n.value)return;const r=n.value.providerStateToUrl(e),c=a.mode==="esports"?`esports/${r}`.replace(/\/$/,""):r,f=`${W.value}${r?"/"+r.replace(/^\//,""):""}`;c!==v&&(v=c,window.history.replaceState({},"",f))}function Y(e){if(!n.value||e===v)return;v=e;const r=a.mode==="esports"?e.replace(/^esports\/?/,""):e;n.value.navigate(n.value.urlToProviderState(r))}function I(){l.value=null,S.value=!1,w.splice(0).forEach(e=>e()),n.value?.destroy(),n.value=null,U()}return ve(()=>{E.value=V.value[0],u=setInterval(Q,2500),U()}),h(S,e=>{e&&u&&(clearInterval(u),u=null)}),h(()=>q(),I,{immediate:!1}),me(()=>{m++,u&&(clearInterval(u),u=null),w.splice(0).forEach(e=>e()),n.value?.destroy(),n.value=null}),d({retry:I}),(e,r)=>{const c=Pe,f=we;return p(),k("div",Ee,[l.value?(p(),z(c,{key:0,error:l.value,onRetry:I},null,8,["error"])):(p(),k(ge,{key:1},[K("div",{ref_key:"mountEl",ref:O,class:"w-full"},null,512),S.value?G("",!0):(p(),z(f,{key:0,"current-phrase":E.value},null,8,["current-phrase"]))],64))])}}});export{Ce as _};