import{s as fa,v as pa,X as Ve,d3 as ga,aL as ha,Z as w,d4 as ya,a0 as fe,aM as ba,z as wa,aN as _a,aO as Re,cZ as De,f as u,N as Be,aQ as xa,c_ as ka,aS as $a,b as t,D as re,E as O,P as Ca,d5 as Ma,ah as N,d6 as Sa,bi as pe,F as R,d as X,Q as p,a9 as n,m as i,o as l,c as B,ag as $,t as g,ab as s,n as J,w as j,h as H,p as F,ar as Te,q as Fe,d7 as Aa,J as te,aE as Ia,as as Ga,ai as Ne,aq as La,d8 as We,a7 as za,b0 as Pa,aj as ke,aH as Va,bM as we,b2 as Ra,k as Da,al as Ba,bg as Oa,c1 as Ua,at as ja,am as Ea,ao as Ta,bQ as Fa,d9 as Na,da as Wa,aT as qa,ac as Ha,a_ as Oe,bV as Ka}from"./index-BTTFajzp.js";import{u as qe,b as Qa,c as Za,d as xe,e as He,g as Ja,_ as Ke,h as Xa}from"./Index.vue_vue_type_script_setup_true_lang-eoQh5PjQ.js";import{_ as Ya}from"./Index-CrrqY5U_.js";import{_ as et}from"./Index.vue_vue_type_script_setup_true_lang-BZPGjRJE.js";import{u as Qe}from"./useCasinoGameListing-CWX0_nxd.js";import{_ as at}from"./Index.vue_vue_type_script_setup_true_lang-D_beMPZ0.js";import{_ as tt}from"./GameSearchInput.vue_vue_type_script_setup_true_lang-pdOUkKu5.js";const st=pa({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...$a(),...ka()},"VSwitch"),lt=fa()({name:"VSwitch",inheritAttrs:!1,props:st(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,{attrs:r,slots:a}){const c=Ve(e,"indeterminate"),m=Ve(e,"modelValue"),{loaderClasses:d}=ga(e),{isFocused:b,focus:G,blur:C}=ha(e),L=w(),v=w(),M=ya&&window.matchMedia("(forced-colors: active)").matches,S=fe(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),z=ba(),_=fe(()=>e.id||`switch-${z}`);function f(){c.value&&(c.value=!1)}function x(A){A.stopPropagation(),A.preventDefault(),L.value?.input?.click()}return wa(()=>{const[A,k]=_a(r),D=Re.filterProps(e),W=De.filterProps(e);return u(Re,Be({ref:v,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":c.value},d.value,e.class]},A,D,{modelValue:m.value,"onUpdate:modelValue":Y=>m.value=Y,id:_.value,focused:b.value,style:e.style}),{...a,default:({id:Y,messagesId:Q,isDisabled:se,isReadonly:ee,isValid:P})=>{const I={model:m,isValid:P};return u(De,Be({ref:L},W,{modelValue:m.value,"onUpdate:modelValue":[V=>m.value=V,f],id:Y.value,"aria-describedby":Q.value,type:"checkbox","aria-checked":c.value?"mixed":void 0,disabled:se.value,readonly:ee.value,onFocus:G,onBlur:C},k),{...a,default:({backgroundColorClasses:V,backgroundColorStyles:E})=>t("div",{class:O(["v-switch__track",M?void 0:V.value]),style:re(E.value),onClick:x},[a["track-true"]&&t("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](I)]),a["track-false"]&&t("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](I)])]),input:({inputNode:V,icon:E,backgroundColorClasses:T,backgroundColorStyles:ae})=>t(R,null,[V,t("div",{class:O(["v-switch__thumb",{"v-switch__thumb--filled":E||e.loading},e.inset||M?void 0:T.value]),style:re(e.inset?void 0:ae.value)},[a.thumb?u(Ca,{defaults:{VIcon:{icon:E,size:"x-small"}}},{default:()=>[a.thumb({...I,icon:E})]}):u(Ma,null,{default:()=>[e.loading?u(Sa,{name:"v-switch",active:!0,color:P.value===!1?void 0:S.value},{default:le=>a.loader?a.loader(le):u(pe,{active:le.isActive,color:le.color,indeterminate:!0,size:"16",width:"2"},null)}):E&&u(N,{key:String(E),icon:E,size:"x-small"},null)]})])])})}})}),xa({},v)}}),nt={class:"bg-brand-card border-brand-separator/60 rounded-xl border p-4 md:p-5"},ot={class:"flex flex-col gap-3 md:flex-row md:items-center md:justify-between"},it={class:"flex w-full items-center justify-between gap-2 md:w-auto md:justify-start"},rt={class:"flex min-w-0 items-center gap-2"},dt={class:"shrink-0 text-sm font-bold uppercase tracking-wide text-white"},ut={class:"flex shrink-0 items-center gap-1 md:hidden"},ct=["aria-label"],mt=["aria-label"],vt={class:"flex w-full justify-end md:w-auto"},ft={class:"bg-brand-card-darken flex gap-1 rounded-full p-1 text-xs font-semibold"},pt=["data-testid","onClick"],gt={class:"mt-4 hidden grid-cols-4 gap-3 md:grid md:gap-4"},ht=["data-testid"],yt={class:"flex items-center gap-1.5"},bt={class:"text-[10px] font-semibold uppercase tracking-wide text-gray-400"},wt={class:"flex items-center gap-1.5"},_t={class:"text-[10px] font-semibold uppercase tracking-wide text-gray-400"},xt=X({__name:"Index",props:{game:{}},setup(e){const r=e,a=w("day"),c=w(null),m=p(()=>r.game?.id),{loading:d,dailyStats:b,avgWin:G}=qe(m,a),{isCasinoOnlinePlayersEnabled:C}=Qa(),{onlineCount:L}=Za(m,C),v=p(()=>[{value:"day",label:n("play.stats-period-day")},{value:"week",label:n("play.stats-period-week")},{value:"month",label:n("play.stats-period-month")}]),M=p(()=>{const f=b.value;return[{key:"winAmount",icon:"mdi:cash",label:n("play.stats-total-paid"),value:f?xe(f.win_amount):"—",positive:!1},{key:"betCount",icon:"mdi:cash-multiple",label:n("play.stats-total-bets"),value:f?He(f.bet_count):"—",positive:!1},{key:"rtpReal",icon:"mdi:trending-up",label:n("play.stats-rtp"),value:f?.rtp_formatted||"—",positive:!0},{key:"avgWin",icon:"mdi:chart-line",label:n("play.stats-avg-win"),value:G.value!=null?xe(G.value):"—",positive:!0}]}),S=p(()=>{const f=M.value,x=[];for(let A=0;A{const A=Ja;return l(),i("div",nt,[t("div",ot,[t("div",it,[t("div",rt,[t("h3",dt,g(s(n)("play.stats-title")),1),s(L)!=null?(l(),B(A,{key:0,count:s(L),size:"sm","show-label":""},null,8,["count"])):$("",!0)]),t("div",ut,[t("button",{type:"button",class:"text-gray-400 transition-colors hover:text-white","aria-label":s(n)("play.stats-prev"),onClick:x[0]||(x[0]=k=>_(-1))},[u(N,{icon:"mdi:chevron-left",size:"16"})],8,ct),t("button",{type:"button",class:"text-gray-400 transition-colors hover:text-white","aria-label":s(n)("play.stats-next"),onClick:x[1]||(x[1]=k=>_(1))},[u(N,{icon:"mdi:chevron-right",size:"16"})],8,mt)])]),t("div",vt,[t("div",ft,[(l(!0),i(R,null,J(v.value,k=>(l(),i("button",{key:k.value,type:"button",class:O(["rounded-full px-3 py-1 transition-colors",a.value===k.value?"bg-brand-primary text-white":"text-gray-400 hover:text-white"]),"data-testid":`period-${k.value}`,onClick:D=>a.value=k.value},g(k.label),11,pt))),128))])])]),t("div",gt,[(l(!0),i(R,null,J(M.value,k=>(l(),i("div",{key:k.key,class:O(["bg-brand-card-darken flex flex-col gap-2 rounded-lg border border-white/5 p-3",s(d)&&"animate-pulse opacity-60"]),"data-testid":`stat-card-${k.key}`},[s(d)?(l(),i(R,{key:1},[x[2]||(x[2]=t("div",{class:"flex h-3.5 items-center gap-1.5","aria-hidden":"true"},[t("span",{class:"size-3.5 shrink-0 rounded bg-white/10"}),t("span",{class:"h-2.5 w-16 rounded bg-white/10"})],-1)),x[3]||(x[3]=t("span",{class:"block h-4 w-24 rounded bg-white/10 md:h-5","aria-hidden":"true"},null,-1))],64)):(l(),i(R,{key:0},[t("div",yt,[u(N,{icon:k.icon,size:"14",class:"text-gray-400"},null,8,["icon"]),t("span",bt,g(k.label),1)]),t("span",{class:O(["text-base font-bold tabular-nums leading-none md:text-lg",k.positive?"text-green-400":"text-white"])},g(k.value),3)],64))],10,ht))),128))]),t("div",{ref_key:"carouselRef",ref:c,class:"-mx-1 mt-4 flex snap-x snap-mandatory gap-3 overflow-x-auto px-1 md:hidden","data-testid":"stats-carousel"},[(l(!0),i(R,null,J(S.value,(k,D)=>(l(),i("div",{key:k[0]?.key??`col-${D}`,class:"flex min-w-[calc(50%-6px)] shrink-0 snap-start flex-col gap-3"},[(l(!0),i(R,null,J(k,W=>(l(),i("div",{key:W.key,class:O(["bg-brand-card-darken flex flex-col gap-2 rounded-lg border border-white/5 p-3",s(d)&&"animate-pulse opacity-60"])},[s(d)?(l(),i(R,{key:1},[x[4]||(x[4]=t("div",{class:"flex h-3.5 items-center gap-1.5","aria-hidden":"true"},[t("span",{class:"size-3.5 shrink-0 rounded bg-white/10"}),t("span",{class:"h-2.5 w-16 rounded bg-white/10"})],-1)),x[5]||(x[5]=t("span",{class:"block h-4 w-24 rounded bg-white/10","aria-hidden":"true"},null,-1))],64)):(l(),i(R,{key:0},[t("div",wt,[u(N,{icon:W.icon,size:"14",class:"text-gray-400"},null,8,["icon"]),t("span",_t,g(W.label),1)]),t("span",{class:O(["text-base font-bold tabular-nums leading-none",W.positive?"text-green-400":"text-white"])},g(W.value),3)],64))],2))),128))]))),128))],512)])}}}),kt={class:"relative h-full min-h-0 w-full overflow-hidden bg-black"},$t={key:0,class:"absolute inset-0 z-10 flex items-center justify-center",role:"status"},Ct=["id"],Mt=["src","title"],St=["srcdoc","title"],At=["src","title"],It={class:"relative z-10 flex flex-col items-center gap-3 px-6 text-center text-white"},Gt={class:"font-bold"},Lt={key:3,class:"flex h-full min-h-64 flex-col items-center justify-center gap-3 px-6 text-center text-white",role:"alert"},zt={class:"font-bold"},Pt=X({__name:"Index",props:{data:{},loading:{type:Boolean},loaded:{type:Boolean},authenticated:{type:Boolean},canPlay:{type:Boolean},coverUrl:{},message:{}},emits:["loaded","login"],setup(e,{expose:r,emit:a}){const c=e,m=a,d=w(null),b=p(()=>c.data?.game?.provider.aggregator?.toLowerCase()??""),G=p(()=>["pgsoft","plugnplay"].includes(b.value)),C=p(()=>c.data?.game?.name||n("play.game-frame")),L=p(()=>c.coverUrl?{backgroundImage:`url(${c.coverUrl})`}:void 0);function v(){m("loaded")}function M(S){return!!(d.value?.contentWindow&&S===d.value.contentWindow)}return r({isMessageSource:M}),(S,z)=>(l(),i("div",kt,[e.loading||e.data?.link&&!e.loaded?(l(),i("div",$t,[u(pe,{color:"primary",indeterminate:"",size:"48"})])):$("",!0),e.canPlay&&e.data?.link?(l(),i(R,{key:1},[b.value==="softswiss"?(l(),i("div",{key:0,id:`softswiss-game-${e.data.game?.id}`,class:"h-full w-full"},[t("iframe",{ref_key:"frameRef",ref:d,src:e.data.link,class:"h-full w-full border-0",title:C.value,allow:"autoplay; fullscreen; clipboard-read; clipboard-write",allowfullscreen:"",onLoad:v},null,40,Mt)],8,Ct)):G.value?(l(),i("iframe",{key:1,ref_key:"frameRef",ref:d,srcdoc:e.data.link,class:"h-full w-full border-0",title:C.value,allow:"autoplay; fullscreen; clipboard-read; clipboard-write",allowfullscreen:"",onLoad:v},null,40,St)):(l(),i("iframe",{key:2,ref_key:"frameRef",ref:d,src:e.data.link,class:"h-full w-full border-0",title:C.value,allow:"autoplay; fullscreen; clipboard-read; clipboard-write",allowfullscreen:"",onLoad:v},null,40,At))],64)):e.authenticated?e.loading?$("",!0):(l(),i("div",Lt,[u(N,{icon:"fa6-solid:triangle-exclamation",size:"48"}),t("p",zt,g(e.message||s(n)("play.unavailable")),1)])):(l(),i("div",{key:2,class:"relative flex h-full min-h-64 items-center justify-center bg-cover bg-center",style:re(L.value)},[z[1]||(z[1]=t("div",{class:"absolute inset-0 bg-black/70 backdrop-blur-sm"},null,-1)),t("div",It,[u(N,{icon:"fa6-solid:lock",size:"48"}),t("p",Gt,g(s(n)("play.login-required")),1),u(F,{color:"primary",variant:"flat",onClick:z[0]||(z[0]=_=>m("login"))},{default:j(()=>[H(g(s(n)("play.login")),1)]),_:1})])],4))]))}}),Vt={class:"flex flex-wrap items-center gap-1 md:gap-1.5"},Rt=["href","aria-label","title"],Dt=["aria-label","title"],Bt=["aria-label","title"],_e="flex h-6 w-6 shrink-0 cursor-pointer items-center justify-center rounded-full bg-white/10 text-white/80 transition-colors hover:bg-white/20 hover:text-white md:h-8 md:w-8",Ue=X({__name:"ShareActions",props:{actions:{},copied:{type:Boolean},demo:{type:Boolean},showStats:{type:Boolean,default:!0}},emits:["copy","demo"],setup(e,{emit:r}){const a=r;return(c,m)=>(l(),i("div",Vt,[e.showStats?(l(),i(R,{key:0},[(l(!0),i(R,null,J(e.actions,d=>(l(),i("a",{key:d.key,href:d.href,target:"_blank",rel:"noopener noreferrer","aria-label":d.label,title:d.label,class:O(_e)},[u(N,{icon:d.icon,size:"x-small"},null,8,["icon"])],8,Rt))),128)),t("button",{type:"button",class:O(_e),"aria-label":s(n)("play.share-copy"),title:s(n)("play.share-copy"),onClick:m[0]||(m[0]=d=>a("copy"))},[u(N,{icon:e.copied?"fa6-solid:check":"fa6-solid:copy",size:"x-small"},null,8,["icon"])],8,Dt)],64)):$("",!0),e.demo?(l(),i("button",{key:1,type:"button",class:O(_e),"aria-label":s(n)("play.demo"),title:s(n)("play.demo"),onClick:m[1]||(m[1]=d=>a("demo"))},[u(N,{icon:"fa6-solid:play",size:"x-small"})],8,Bt)):$("",!0)]))}}),Ot={class:"flex min-w-0 flex-col gap-3"},Ut={class:"flex min-w-0 items-start gap-3 md:gap-4"},jt=["src","alt"],Et={key:1,class:"flex h-full w-full items-center justify-center bg-white/10","aria-hidden":"true"},Tt={class:"flex min-w-0 flex-1 flex-col gap-1"},Ft={class:"truncate text-sm font-bold leading-tight text-white"},Nt={class:"text-brand-primary truncate text-xs font-medium uppercase tracking-wide"},Wt={class:"text-xs text-white/60"},qt={key:0,class:"grid grid-cols-2 gap-2"},Ht={class:"flex items-center gap-1.5"},Kt={class:"text-[10px] font-semibold uppercase tracking-wide text-gray-400"},Qt={class:"text-sm font-bold tabular-nums leading-none text-white"},Zt={key:1,class:"flex gap-2"},Jt=X({__name:"Index",props:{game:{},imageUrl:{},demo:{type:Boolean},embedded:{type:Boolean},showStats:{type:Boolean,default:!0}},emits:["play","demo"],setup(e,{emit:r}){const a=e,c=r,m=Te(),d=Fe(),{registrationEnabled:b}=Aa(),G=w(!1),C=w(!1),L=w(!1),v=p(()=>a.game?.custom_image||""),M=p(()=>a.game?.image_url||a.game?.image||""),S=p(()=>L.value?M.value:a.imageUrl?a.imageUrl:v.value?v.value:M.value),z=p(()=>!!S.value&&!C.value);te(()=>[a.imageUrl,a.game?.custom_image,a.game?.image,a.game?.id],()=>{C.value=!1,L.value=!1});function _(){const P=M.value,I=S.value;if(!L.value&&P&&P!==I){L.value=!0;return}C.value=!0}const f=p(()=>a.showStats?a.game?.id:void 0),{dailyStats:x,loading:A}=qe(f,"month"),k=p(()=>{if(!a.showStats)return[];const P=x.value;return P?[{key:"winAmount",icon:"fa6-solid:money-bill",label:n("play.stats-total-paid"),value:xe(P.win_amount)},{key:"betCount",icon:"fa6-solid:coins",label:n("play.stats-total-bets"),value:He(P.bet_count)}]:[]}),D=p(()=>typeof window<"u"?window.location.href:""),W=p(()=>`${a.game?.name??""} - ${a.game?.provider?.name??""}`),Y=p(()=>{const P=encodeURIComponent(D.value),I=encodeURIComponent(W.value);return[{key:"facebook",icon:"fa6-brands:square-facebook",label:n("play.share-facebook"),href:`https://www.facebook.com/sharer/sharer.php?u=${P}`},{key:"whatsapp",icon:"fa6-brands:whatsapp",label:n("play.share-whatsapp"),href:`https://api.whatsapp.com/send?text=${I}%20${P}`},{key:"telegram",icon:"fa6-brands:telegram",label:n("play.share-telegram"),href:`https://t.me/share/url?url=${P}&text=${I}`},{key:"twitter",icon:"fa6-brands:x-twitter",label:n("play.share-twitter"),href:`https://twitter.com/intent/tweet?url=${P}&text=${I}`}]});async function Q(){if(!(typeof window>"u"))try{await navigator.clipboard.writeText(D.value),G.value=!0,setTimeout(()=>{G.value=!1},1500)}catch{}}function se(){m.clearSessionExpired(),d.setModal({name:"login"})}function ee(){m.isAuthenticated&&c("play")}return(P,I)=>(l(),i("div",{class:O(["z-10 flex items-center justify-center p-4",e.embedded?"relative py-6":"absolute inset-0"])},[t("div",{class:O(["bg-brand-card/95 border-brand-separator flex min-w-0 flex-col gap-4 overflow-hidden rounded-xl border p-4 shadow-lg backdrop-blur-md",e.embedded?"w-full":"w-[min(92%,380px)]"])},[t("div",Ot,[t("div",Ut,[t("div",{class:O(["border-brand-separator shrink-0 overflow-hidden rounded-lg border",e.embedded?"h-24 w-24 md:h-28 md:w-28":"h-28 w-28 md:h-32 md:w-32"])},[z.value?(l(),i("img",{key:0,src:S.value,alt:e.game?.name,class:"h-full w-full object-cover",onError:_},null,40,jt)):(l(),i("div",Et,[u(N,{icon:"fa6-solid:dice",size:"large",class:"text-white/40"})]))],2),t("div",Tt,[t("p",Ft,g(e.game?.name),1),t("p",Nt,g(e.game?.provider?.name),1),t("p",Wt,g(s(m).isAuthenticated?s(n)("play.locked-hint-play"):s(n)("play.locked-hint-login")),1),u(Ue,{class:"mt-1.5 hidden md:flex",actions:Y.value,copied:G.value,demo:e.demo,"show-stats":e.showStats,onCopy:Q,onDemo:I[0]||(I[0]=V=>c("demo"))},null,8,["actions","copied","demo","show-stats"])])]),u(Ue,{class:"md:hidden",actions:Y.value,copied:G.value,demo:e.demo,"show-stats":e.showStats,onCopy:Q,onDemo:I[1]||(I[1]=V=>c("demo"))},null,8,["actions","copied","demo","show-stats"])]),e.showStats&&(s(x)||s(A))?(l(),i("div",qt,[(l(!0),i(R,null,J(k.value,V=>(l(),i("div",{key:V.key,class:O(["bg-brand-card-darken flex flex-col gap-2 rounded-lg border border-white/5 p-3",{"animate-pulse":s(A)}])},[s(A)?$("",!0):(l(),i(R,{key:0},[t("div",Ht,[u(N,{icon:V.icon,size:"x-small",class:"text-gray-400"},null,8,["icon"]),t("span",Kt,g(V.label),1)]),t("span",Qt,g(V.value),1)],64))],2))),128))])):$("",!0),s(m).isAuthenticated?(l(),B(F,{key:2,color:"primary",block:"","prepend-icon":"fa6-solid:play",class:"w-full font-bold tracking-wide","aria-label":s(n)("play.locked-play"),onClick:ee},{default:j(()=>[H(g(s(n)("play.locked-play")),1)]),_:1},8,["aria-label"])):(l(),i("div",Zt,[s(b)?(l(),B(F,{key:0,variant:"flat",class:"min-w-0 flex-1","aria-label":s(n)("navbar.register"),title:s(n)("navbar.register"),onClick:I[2]||(I[2]=V=>s(Ia)())},{default:j(()=>[H(g(s(n)("navbar.register")),1)]),_:1},8,["aria-label","title"])):$("",!0),u(F,{variant:"flat",class:"v-btn--brand-dark min-w-0 flex-1 font-bold tracking-wide","aria-label":s(n)("navbar.login"),title:s(n)("navbar.login"),onClick:se},{default:j(()=>[H(g(s(n)("navbar.login")),1)]),_:1},8,["aria-label","title"])]))],2)],2))}});function K(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function U(e){return typeof e=="string"?e:""}function Xt(e){if(!K(e)||!K(e.response))return"";const r=e.response.data,a=K(r)&&K(r.data)?r.data:r;return K(a)?U(a.message):""}function Yt(e){const r=K(e)?e:{};return{name:U(r.name)||U(r.slug),slug:U(r.slug),aggregator:U(r.aggregator)||void 0}}function es(e){return Array.isArray(e)?e.flatMap(r=>{if(!K(r))return[];const a=U(r.name);if(!a)return[];const c=typeof r.id=="string"||typeof r.id=="number"?r.id:void 0;return[{...c!==void 0?{id:c}:{},name:a}]}):[]}function as(e){const r=K(e)&&K(e.data)?e.data:K(e)?e:{},a=K(r.game)?r.game:null;let c=null;if(a&&(typeof a.id=="string"||typeof a.id=="number")){const m=Yt(a.provider);c={id:a.id,name:U(a.name)||U(a.slug),slug:U(a.slug),image:U(a.image)||void 0,image_url:U(a.image_url)||void 0,custom_image:U(a.custom_image)||void 0,image_cf:U(a.image_cf)||void 0,demo:typeof a.demo=="boolean"||typeof a.demo=="number"?a.demo:void 0,categories:es(a.categories),provider:m}}return{game:c,link:U(r.link),image:U(r.image),message:U(r.message)}}function ts(e){const r=w(null),a=w(!1),c=w(!1),m=w(!1),d=w(null),b=w(""),G=p(()=>{const v=Ga(e);return v.kind==="id"?`/api/casino-games/${encodeURIComponent(v.id)}/start`:`/api/start-game/${encodeURIComponent(v.provider)}/${encodeURIComponent(v.name)}`});async function C(v=a.value,M=!1){c.value=!0,m.value=!1,d.value=null,b.value="";try{const{data:S}=await Ne.get(G.value,{params:{demo:v?1:0,isMobileDevice:M?1:0}}),z=as(S);return r.value=z,z}catch(S){throw d.value=S,b.value=Xt(S),S}finally{c.value=!1}}async function L(v,M=!1){const S=a.value;a.value=v;try{return await C(v,M)}catch(z){throw a.value=S,z}}return{gameData:r,demo:a,isLoading:c,isGameLoaded:m,error:d,errorMessage:b,fetchGameData:C,setDemoMode:L}}async function ss(e){return e.authenticated?e.checkDocument()?await e.checkKyc()?await e.checkTerms()?await e.checkLimits()?"allowed":"limits":"terms":"verification":"document":"guest"}function je(e){const r=e??(typeof navigator<"u"?navigator:void 0);return r?typeof r.userAgentData?.mobile=="boolean"?r.userAgentData.mobile:/Android.+Mobile|iPhone|iPod|IEMobile|Windows Phone|webOS|BlackBerry|Opera Mini/i.test(r.userAgent):!1}const ls=La("to-play",{state:()=>({isMenuOpen:!1,isGameModalOpen:!1,activeGame:null}),actions:{setMenuOpen(e){this.isMenuOpen=e},setGameModalOpen(e){this.isGameModalOpen=e},setActiveGame(e){this.activeGame=e},reset(){this.isMenuOpen=!1,this.isGameModalOpen=!1,this.activeGame=null}}}),Ee=X({__name:"Index",props:{categoryId:{}},setup(e){const r=e,a=w(""),c=w([]),{games:m,isLoading:d}=Qe({search:a,providerIds:c,categoryId:fe(r,"categoryId")});return(b,G)=>{const C=et;return l(),B(C,{title:s(n)("play.related-games"),games:s(m),loading:s(d)},null,8,["title","games","loading"])}}}),ns={key:0,class:"border-brand-separator bg-brand-card overflow-hidden rounded-md border"},os=["aria-expanded"],is=["src","alt"],rs={class:"min-w-0 flex-1"},ds={class:"block truncate text-sm text-white"},us={class:"text-xs text-white/60"},cs={class:"border-brand-separator border-t p-4 sm:p-6"},ms={class:"mb-4 flex flex-wrap gap-2"},vs=["innerHTML"],fs=X({__name:"Index",props:{game:{},imageUrl:{}},setup(e){const r=We(),a=w(!1),c=p(()=>r.seoValues.html);return(m,d)=>c.value?(l(),i("section",ns,[t("button",{type:"button",class:"flex w-full items-center gap-4 p-4 text-left","aria-expanded":a.value,onClick:d[0]||(d[0]=b=>a.value=!a.value)},[e.imageUrl?(l(),i("img",{key:0,src:e.imageUrl,alt:e.game.name,class:"h-12 w-10 rounded object-cover",width:"40",height:"48"},null,8,is)):$("",!0),t("span",rs,[t("strong",ds,g(e.game.name),1),t("span",us,g(s(n)("play.description")),1)]),u(N,{icon:"fa6-solid:chevron-down",size:"small",class:O(["transition-transform",a.value&&"rotate-180"])},null,8,["class"])],8,os),za(t("div",cs,[t("div",ms,[(l(!0),i(R,null,J(e.game.categories,b=>(l(),i("span",{key:String(b.id??b.name),class:"bg-brand-primary/20 rounded px-2 py-1 text-xs font-bold text-white/80"},g(b.name),1))),128))]),t("article",{class:"play-description text-sm leading-6 text-white/80",innerHTML:c.value},null,8,vs)],512),[[Pa,a.value]])])):$("",!0)}}),ps=ke(fs,[["__scopeId","data-v-7d88606f"]]),gs=["aria-hidden"],hs={class:"border-brand-separator flex items-center justify-between border-b p-3"},ys={class:"flex gap-2"},bs={class:"border-brand-separator border-b p-4"},ws={class:"p-4"},_s={class:"mb-4 text-lg font-bold"},xs=X({__name:"Index",props:{open:{type:Boolean},categoryId:{},activeGameId:{}},emits:["close","exit"],setup(e,{emit:r}){const a=e,c=r,m=w(""),d=w([]),{games:b,isLoading:G,canLoadMore:C,loadMore:L}=Qe({search:m,providerIds:d,categoryId:fe(a,"categoryId")}),v=p(()=>b.value.filter(_=>String(_.id)!==String(a.activeGameId??""))),M=p(()=>m.value.trim()),S=p(()=>M.value?`${n("play.showing-results-for")} “${M.value}”`:n("play.related-games")),z=p(()=>M.value?`${n("play.no-results-for")} “${M.value}”`:"");return(_,f)=>{const x=Ke,A=at,k=Va;return l(),i("aside",{class:O(["bg-brand-sidebar fixed inset-0 z-[2600] flex h-dvh w-full flex-col transition-transform duration-300",e.open?"translate-x-0":"-translate-x-full"]),"aria-hidden":!e.open},[t("header",hs,[t("div",ys,[u(F,{to:"/",variant:"text","prepend-icon":"fa6-solid:house"},{default:j(()=>[H(g(s(n)("play.home")),1)]),_:1}),u(F,{variant:"text","prepend-icon":"fa6-solid:arrow-right-from-bracket",onClick:f[0]||(f[0]=D=>c("exit"))},{default:j(()=>[H(g(s(n)("play.exit-game")),1)]),_:1})]),u(F,{icon:"fa6-solid:xmark",variant:"text","aria-label":s(n)("common.close"),onClick:f[1]||(f[1]=D=>c("close"))},null,8,["aria-label"])]),t("div",bs,[u(tt,{modelValue:m.value,"onUpdate:modelValue":f[2]||(f[2]=D=>m.value=D),class:"play-menu-search h-11"},null,8,["modelValue"])]),u(k,{class:"min-h-0 flex-1"},{default:j(()=>[t("div",ws,[t("h2",_s,g(S.value),1),u(A,{"is-loading":s(G),"can-load-more":s(C),"has-items":v.value.length>0,"empty-label":z.value,"loading-count":12,onLoadMore:s(L)},{skeleton:j(()=>[u(x,{shimmer:""})]),item:j(()=>[(l(!0),i(R,null,J(v.value,D=>(l(),B(x,{key:D.id,game:D},null,8,["game"]))),128))]),_:1},8,["is-loading","can-load-more","has-items","empty-label","onLoadMore"])])]),_:1})],10,gs)}}}),ks=ke(xs,[["__scopeId","data-v-df056b65"]]),$s=["aria-label"],Cs={key:0,"data-testid":"play-skeleton-mobile",class:"border-brand-separator bg-brand-card overflow-hidden rounded-md border"},Ms={key:1,"data-testid":"play-skeleton-desktop",class:"border-brand-separator overflow-hidden rounded-md border"},Ss={class:"space-y-4"},As={class:"grid grid-cols-3 gap-4 sm:grid-cols-4 md:grid-cols-6"},Is=X({__name:"Index",props:{mobile:{type:Boolean}},setup(e){return(r,a)=>{const c=Ke;return l(),i("section",{class:"flex flex-col gap-6",role:"status","aria-label":s(n)("games.loading-aria")},[e.mobile?(l(),i("div",Cs,[...a[0]||(a[0]=[we('
',2)])])):(l(),i("div",Ms,[...a[1]||(a[1]=[we('
',2)])])),t("div",Ss,[a[2]||(a[2]=t("div",{class:"h-5 w-40 animate-pulse rounded bg-white/10"},null,-1)),t("div",As,[(l(),i(R,null,J(6,m=>u(c,{key:m,shimmer:""})),64))])]),a[3]||(a[3]=we('
',1))],8,$s)}}}),Gs={key:2,class:"space-y-5"},Ls={key:3,class:"flex flex-col gap-6"},zs={key:0,class:"border-brand-separator bg-brand-card overflow-hidden rounded-md border"},Ps={key:0,class:"relative w-full overflow-hidden"},Vs={key:2,class:"relative z-10 flex min-h-[220px] w-full items-center justify-center py-10","data-testid":"play-auto-start-spinner"},Rs={class:"relative h-40 overflow-hidden bg-black"},Ds=["src","alt"],Bs={class:"space-y-5 p-5"},Os={class:"flex items-center justify-between gap-4"},Us={class:"min-w-0"},js={class:"truncate text-sm font-bold text-white"},Es={class:"truncate text-xs text-white/60"},Ts={class:"grid grid-cols-2 gap-3"},Fs={class:"relative aspect-video w-full"},Ns={key:2,class:"relative z-10 flex h-full w-full items-center justify-center","data-testid":"play-auto-start-spinner"},Ws={class:"bg-brand-card flex flex-wrap items-center justify-between gap-4 p-4 sm:p-6"},qs={class:"min-w-0 text-xs"},Hs={class:"truncate font-bold text-white"},Ks={class:"truncate text-white/60"},Qs={class:"flex items-center gap-2"},Zs={key:0,class:"play-mode-switch flex items-center text-xs"},Js={key:4,class:"fixed inset-0 z-[2500] flex h-dvh flex-col bg-black text-white"},Xs={class:"bg-brand-navbar flex h-14 shrink-0 items-center justify-between gap-3 px-3"},Ys={class:"flex min-w-0 items-center gap-3"},el={class:"min-h-0 flex-1"},al=X({__name:"Index",props:{target:{}},setup(e){const r=e,a=qa(),c=Ha(),{mobile:m}=Ra(),d=Te(),b=Fe(),G=Da(),C=We(),L=Ba(),v=ls(),M=Oa(),{runWithUserDocument:S}=Ua(),{getCloudflareImage:z}=ja(),{gameData:_,demo:f,isLoading:x,isGameLoaded:A,error:k,errorMessage:D,fetchGameData:W,setDemoMode:Y}=ts(()=>r.target),Q=w(!1),se=w(!1),ee=w(!1),P=w(!1),I=w(!1),V=w(!1),E=w(!1),T=w(!1),ae=w(!1),le=w(null),$e=w(null),Ce=w(null),h=p(()=>_.value?.game??null),Me=p(()=>x.value&&!E.value),ne=p(()=>L.business.casino_enabled!==!1),de=p(()=>{const o=Number(L.business.features_show_game_stats);return Number.isFinite(o)&&o===2}),me=p(()=>!!h.value?.demo),ge=p(()=>h.value?.categories?.some(o=>o.name.toLowerCase()==="slots")?1:2),q=p(()=>{const o=h.value;return o?z(o.image_cf,o.custom_image||o.image_url||o.image||_.value?.image):_.value?.image??""}),he=p(()=>q.value?{backgroundImage:`url(${q.value})`}:void 0),Ze=p(()=>!Me.value&&(!!k.value||!h.value)),Je=p(()=>D.value||_.value?.message||n("play.not-found")),ye=p(()=>d.isAuthenticated&&ee.value&&!f.value),Xe=p(()=>(f.value||ye.value)&&!!_.value?.link),Ye=p(()=>(f.value||ye.value)&&!!_.value?.link),Se=p(()=>se.value?n("play.verification-required"):D.value||_.value?.message||n("play.unavailable")),Ae=p(()=>T.value||!h.value||!ne.value?!1:de.value||!d.isAuthenticated?!0:!ae.value);function ea(){T.value=!1,v.setGameModalOpen(!1)}te(h,o=>{o&&b.setBreadcrumb([{text:"",textKey:"breadcrumb.home",link:"/"},{text:"",textKey:"breadcrumb.casino",link:"/casino"},{text:o.provider.name,link:`/providers/${o.provider.slug}`},{text:o.name}])},{immediate:!0}),te(()=>r.target,async()=>{ea(),ne.value&&(await Promise.all([oe(!1),d.isAuthenticated?Z():Promise.resolve(!1)]),await ie())},{deep:!0});async function aa(){try{const{data:o}=await Ne.get("/api/user-settings/check-terms");if(!o||typeof o!="object")return!1;const y=o;return y.accepted===!0||y.data?.accepted===!0}catch{return!1}}function Ie(){b.setModal({name:"kyc-verification"})}async function Z(){I.value=!0;try{const o=await ss({authenticated:d.isAuthenticated,checkDocument:()=>M.hasDocument,checkKyc:()=>G.refreshStatus({force:!0}),checkTerms:aa,checkLimits:async()=>await Na()==="done"});return se.value=o==="document"||o==="verification",ee.value=o==="allowed",o==="document"&&S(Ie,{persistent:!0}),o==="verification"&&!G.isVPNDetected&&Ie(),o==="terms"&&(Q.value=!0),o==="limits"&&(P.value=!0,Wa(a.fullPath)),o==="allowed"}finally{I.value=!1}}async function oe(o=f.value){try{await W(o,je()),v.setActiveGame(h.value),h.value&&(C.setCasinoGameContext({gameId:String(h.value.id),gameName:h.value.name,providerName:h.value.provider.name}),C.fetchCasinoGameSeo(h.value.id,a.path))}catch{}finally{E.value=!0}}function ve(){b.setModal({name:"login"})}async function be(){if(!d.isAuthenticated){ve();return}!ee.value&&!await Z()||!(!f.value&&_.value?.link?_.value:await ue(!1))?.link||(T.value=!0,m.value&&v.setGameModalOpen(!0))}async function ie(){if(!de.value&&!(!d.isAuthenticated||!ne.value)&&!(T.value||ae.value||!h.value)){ae.value=!0;try{await be()}finally{ae.value=!1}}}async function ta(){(f.value&&_.value?.link?_.value:await ue(!0))?.link&&(T.value=!0,m.value&&v.setGameModalOpen(!0))}async function sa(){if(!d.isAuthenticated){ve();return}if(!ee.value&&!await Z())return;(!f.value&&_.value?.link?_.value:await ue(!1))?.link&&v.setGameModalOpen(!0)}async function la(){(f.value&&_.value?.link?_.value:await ue(!0))?.link&&v.setGameModalOpen(!0)}async function ue(o){if(V.value||o===f.value)return _.value;V.value=!0;try{return await Y(o,je())}catch{return b.showAlert("error",n("play.unavailable")),null}finally{V.value=!1}}async function na(o){const y=!!o;V.value||y===f.value||!y&&!await Z()||await ue(y)}async function oa(){if(h.value)try{if(navigator.share){await navigator.share({title:h.value.name,text:h.value.provider.name,url:window.location.href});return}await navigator.clipboard.writeText(window.location.href),b.showAlert("success",n("play.share-copied"))}catch(o){o.name!=="AbortError"&&b.showAlert("error",n("play.share-error"))}}async function ia(){document.fullscreenElement?await document.exitFullscreen():await le.value?.requestFullscreen()}function ra(){L.business.deposit_enable_popup?b.setModal({name:"deposit"}):c.push("/deposit")}function da(){v.setMenuOpen(!1),v.setGameModalOpen(!1)}async function ua(){Q.value=!1,await Z()&&(await oe(!1),await ie())}function Ge(o){($e.value?.isMessageSource(o.source)||Ce.value?.isMessageSource(o.source))&&o.data&&typeof o.data=="object"&&o.data.type==="RGS-home"&&c.push("/")}return Ea(async()=>{if(v.reset(),T.value=!1,window.addEventListener("message",Ge),!ne.value){E.value=!0;return}await Promise.all([oe(!1),d.isAuthenticated?Z():Promise.resolve(!1)]),await ie()}),te(()=>b.modals.some(o=>o.name==="prudential-limits"),async(o,y)=>{o||!y||!P.value||(P.value=!1,await Z()&&(await oe(!1),await ie()))}),te(()=>d.isAuthenticated,async(o,y)=>{!o||y||await Z()&&(await oe(!1),await ie())}),te(m,async(o,y)=>{if(!(o===y||!E.value||!_.value?.link)){v.setMenuOpen(!1),o&&T.value&&(f.value||ye.value)?v.setGameModalOpen(!0):v.setGameModalOpen(!1);try{await W(f.value,o)}catch{b.showAlert("error",n("play.unavailable"))}}}),te(()=>G.isApproved,async(o,y)=>{!o||y||!d.isAuthenticated||I.value||(b.closeModal("kyc-verification"),await Z()&&(await oe(!1),await ie()))}),Ta(()=>{window.removeEventListener("message",Ge),C.clearCasinoGameContext(),T.value=!1,v.reset()}),(o,y)=>{const ca=Ya,Le=Jt,ze=Xa,Pe=Pt,ma=xt,va=Ka;return l(),B(Fa,null,{default:j(()=>[u(ca,{modelValue:Q.value,"onUpdate:modelValue":y[0]||(y[0]=ce=>Q.value=ce),onComplete:ua},null,8,["modelValue"]),Me.value?(l(),B(Is,{key:0,mobile:s(m)},null,8,["mobile"])):ne.value?Ze.value?(l(),i("div",Gs,[u(Oe,{type:"warning",variant:"tonal",class:"min-h-48 items-center"},{default:j(()=>[H(g(Je.value),1)]),_:1}),u(Ee,{"category-id":ge.value},null,8,["category-id"])])):(l(),i("section",Ls,[t("div",null,[s(m)?(l(),i("div",zs,[!T.value&&h.value?(l(),i("div",Ps,[q.value?(l(),i("div",{key:0,class:"absolute inset-0 bg-cover bg-center",style:re(he.value),"aria-hidden":"true"},null,4)):$("",!0),y[5]||(y[5]=t("div",{class:"absolute inset-0 blur-sm backdrop-brightness-50","aria-hidden":"true"},null,-1)),Ae.value?(l(),B(Le,{key:1,embedded:"",game:h.value,"image-url":q.value,demo:me.value,"show-stats":de.value,onPlay:be,onDemo:ta},null,8,["game","image-url","demo","show-stats"])):ae.value?(l(),i("div",Vs,[u(pe,{color:"primary",indeterminate:"",size:"48"})])):$("",!0)])):(l(),i(R,{key:1},[t("div",Rs,[q.value?(l(),i("div",{key:0,class:"absolute -inset-3 scale-110 bg-cover bg-center opacity-45 blur-lg",style:re(he.value),"aria-hidden":"true"},null,4)):$("",!0),q.value?(l(),i("img",{key:1,src:q.value,alt:h.value?.name||s(n)("play.game-frame"),class:"play-cover-image relative h-full w-full object-contain"},null,8,Ds)):$("",!0),y[6]||(y[6]=t("div",{class:"absolute inset-0 bg-gradient-to-b from-transparent to-black/75"},null,-1)),u(F,{class:"play-share-button",variant:"text",ripple:!1,"prepend-icon":"fa6-solid:share-nodes","aria-label":s(n)("play.share"),title:s(n)("play.share"),onClick:oa},{default:j(()=>[H(g(s(n)("play.share")),1)]),_:1},8,["aria-label","title"])]),t("div",Bs,[t("div",Os,[t("div",Us,[t("h1",js,g(h.value?.name),1),t("p",Es,g(h.value?.provider.name),1)]),h.value?(l(),B(ze,{key:0,game:h.value,size:"small"},null,8,["game"])):$("",!0)]),t("div",Ts,[me.value?(l(),B(F,{key:0,block:"",variant:"outlined","prepend-icon":"fa6-solid:play",onClick:la},{default:j(()=>[H(g(s(n)("play.demo")),1)]),_:1})):$("",!0),u(F,{block:"",color:"primary",class:O(me.value?"":"col-span-2"),"prepend-icon":"fa6-solid:play",onClick:sa},{default:j(()=>[H(g(s(n)("play.play-now")),1)]),_:1},8,["class"])])])],64))])):(l(),i("div",{key:1,id:"casino-table",ref_key:"casinoTableRef",ref:le,class:"border-brand-separator overflow-hidden rounded-md border"},[t("div",Fs,[T.value?(l(),B(Pe,{key:0,ref_key:"desktopFrameRef",ref:$e,data:s(_),loading:s(x)||I.value,loaded:s(A),authenticated:s(d).isAuthenticated||s(f),"can-play":Xe.value,"cover-url":q.value,message:Se.value,onLoaded:y[1]||(y[1]=ce=>A.value=!0),onLogin:ve},null,8,["data","loading","loaded","authenticated","can-play","cover-url","message"])):h.value?(l(),i(R,{key:1},[q.value?(l(),i("div",{key:0,class:"absolute inset-0 bg-cover bg-center",style:re(he.value),"aria-hidden":"true"},null,4)):$("",!0),y[7]||(y[7]=t("div",{class:"absolute inset-0 blur-sm backdrop-brightness-50","aria-hidden":"true"},null,-1)),Ae.value?(l(),B(Le,{key:1,game:h.value,"image-url":q.value,"show-stats":de.value,onPlay:be},null,8,["game","image-url","show-stats"])):ae.value?(l(),i("div",Ns,[u(pe,{color:"primary",indeterminate:"",size:"48"})])):$("",!0)],64)):$("",!0)]),t("div",Ws,[t("div",qs,[t("h1",Hs,g(h.value?.name),1),t("p",Ks,g(h.value?.provider.name),1)]),t("div",Qs,[T.value&&me.value?(l(),i("div",Zs,[t("span",null,g(s(n)("play.real-mode")),1),u(lt,{"model-value":s(f),disabled:V.value,"aria-label":s(n)("play.toggle-demo"),color:"transparent",density:"compact","hide-details":"",inset:"","onUpdate:modelValue":na},null,8,["model-value","disabled","aria-label"]),t("span",null,g(s(n)("play.demo-mode")),1)])):$("",!0),h.value?(l(),B(ze,{key:1,game:h.value,size:"small"},null,8,["game"])):$("",!0),u(F,{icon:"fa6-solid:expand",variant:"text",size:"small","aria-label":s(n)("play.fullscreen"),title:s(n)("play.fullscreen"),onClick:ia},null,8,["aria-label","title"])])])],512))]),h.value&&ne.value&&de.value?(l(),B(ma,{key:0,game:h.value},null,8,["game"])):$("",!0),u(Ee,{"category-id":ge.value},null,8,["category-id"]),h.value?(l(),B(ps,{key:1,game:h.value,"image-url":q.value},null,8,["game","image-url"])):$("",!0)])):(l(),B(Oe,{key:1,type:"warning",variant:"tonal"},{default:j(()=>[H(g(s(n)("play.maintenance")),1)]),_:1})),s(m)&&s(v).isGameModalOpen?(l(),i("div",Js,[t("header",Xs,[t("div",Ys,[u(F,{icon:"fa6-solid:bars-staggered",variant:"text",size:"small","aria-label":s(n)("play.open-menu"),onClick:y[2]||(y[2]=ce=>s(v).setMenuOpen(!0))},null,8,["aria-label"]),u(va,{class:"h-7 max-w-36"})]),u(F,{color:"primary",size:"small","prepend-icon":"fa6-solid:arrow-down",onClick:ra},{default:j(()=>[H(g(s(n)("play.deposit")),1)]),_:1})]),t("div",el,[u(Pe,{ref_key:"mobileFrameRef",ref:Ce,data:s(_),loading:s(x)||I.value,loaded:s(A),authenticated:s(d).isAuthenticated||s(f),"can-play":Ye.value,"cover-url":q.value,message:Se.value,onLoaded:y[3]||(y[3]=ce=>A.value=!0),onLogin:ve},null,8,["data","loading","loaded","authenticated","can-play","cover-url","message"])])])):$("",!0),s(v).isMenuOpen?(l(),B(ks,{key:5,open:s(v).isMenuOpen,"category-id":ge.value,"active-game-id":h.value?.id,onClose:y[4]||(y[4]=ce=>s(v).setMenuOpen(!1)),onExit:da},null,8,["open","category-id","active-game-id"])):$("",!0)]),_:1})}}}),dl=ke(al,[["__scopeId","data-v-d8cf0ef0"]]);export{dl as P};