@everymatrix/casino-tournament-buttons 1.29.4 → 1.29.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- import{p as n,b as e}from"./p-de285d04.js";(()=>{const e=import.meta.url,r={};return""!==e&&(r.resourcesUrl=new URL(".",e).href),n(r)})().then((n=>e([["p-3f6ac723",[[1,"casino-tournament-buttons",{language:[1],tournamentId:[1,"tournament-id"],session:[1],loginEvent:[1,"login-event"],loginUrl:[1,"login-url"],registerEvent:[1,"register-event"],registerUrl:[1,"register-url"],endpoint:[1],currency:[1],bonusCode:[1,"bonus-code"],enrolled:[4],showReadMore:[4,"show-read-more"],clientStyling:[1,"client-styling"],clientStylingUrl:[1,"client-styling-url"],limitStylingAppends:[32],joinButtonLoading:[32],errorJoin:[32],errorJoinConcurrently:[32]}]]]],n)));
1
+ import{p as n,b as t}from"./p-2a13fa86.js";(()=>{const t=import.meta.url,e={};return""!==t&&(e.resourcesUrl=new URL(".",t).href),n(e)})().then((n=>t([["p-dc9c8c76",[[1,"casino-tournament-buttons",{language:[1],tournamentId:[1,"tournament-id"],session:[1],loginEvent:[1,"login-event"],loginUrl:[1,"login-url"],registerEvent:[1,"register-event"],registerUrl:[1,"register-url"],endpoint:[1],currency:[1],bonusCode:[1,"bonus-code"],enrolled:[4],showReadMore:[4,"show-read-more"],clientStyling:[1,"client-styling"],clientStylingUrl:[1,"client-styling-url"],translationData:[520,"translation-data"],limitStylingAppends:[32],joinButtonLoading:[32],errorJoin:[32],errorJoinConcurrently:[32]}]]]],n)));
@@ -0,0 +1 @@
1
+ let e,t,n=!1;const l="undefined"!=typeof window?window:{},s=l.document||{head:{}},o={t:0,l:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},r=e=>Promise.resolve(e),i=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replace}catch(e){}return!1})(),c=new WeakMap,u=e=>"sc-"+e.o,a={},f=e=>"object"==(e=typeof e)||"function"===e,$=(e,t,...n)=>{let l=null,s=!1,o=!1,r=[];const i=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?i(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!f(l))&&(l+=""),s&&o?r[r.length-1].i+=l:r.push(s?h(null,l):l),o=s)};if(i(n),t){const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}const c=h(e,null);return c.u=t,r.length>0&&(c.$=r),c},h=(e,t)=>({t:0,h:e,i:t,m:null,$:null,u:null}),d={},m=(e,t,n,s,r,i)=>{if(n!==s){let c=H(e,t),u=t.toLowerCase();if("class"===t){const t=e.classList,l=p(n),o=p(s);t.remove(...l.filter((e=>e&&!o.includes(e)))),t.add(...o.filter((e=>e&&!l.includes(e))))}else if(c||"o"!==t[0]||"n"!==t[1]){const l=f(s);if((c||l&&null!==s)&&!r)try{if(e.tagName.includes("-"))e[t]=s;else{let l=null==s?"":s;"list"===t?c=!1:null!=n&&e[t]==l||(e[t]=l)}}catch(e){}null==s||!1===s?!1===s&&""!==e.getAttribute(t)||e.removeAttribute(t):(!c||4&i||r)&&!l&&e.setAttribute(t,s=!0===s?"":s)}else t="-"===t[2]?t.slice(3):H(l,u)?u.slice(2):u[2]+t.slice(3),n&&o.rel(e,t,n,!1),s&&o.ael(e,t,s,!1)}},y=/\s/,p=e=>e?e.split(y):[],b=(e,t,n,l)=>{const s=11===t.m.nodeType&&t.m.host?t.m.host:t.m,o=e&&e.u||a,r=t.u||a;for(l in o)l in r||m(s,l,o[l],void 0,n,t.t);for(l in r)m(s,l,o[l],r[l],n,t.t)},w=(t,n,l)=>{let o,r,i=n.$[l],c=0;if(null!==i.i)o=i.m=s.createTextNode(i.i);else if(o=i.m=s.createElement(i.h),b(null,i,!1),null!=e&&o["s-si"]!==e&&o.classList.add(o["s-si"]=e),i.$)for(c=0;c<i.$.length;++c)r=w(t,i,c),r&&o.appendChild(r);return o},S=(e,n,l,s,o,r)=>{let i,c=e;for(c.shadowRoot&&c.tagName===t&&(c=c.shadowRoot);o<=r;++o)s[o]&&(i=w(null,l,o),i&&(s[o].m=i,c.insertBefore(i,n)))},g=(e,t,n,l)=>{for(;t<=n;++t)(l=e[t])&&l.m.remove()},j=(e,t)=>e.h===t.h,M=(e,t)=>{const n=t.m=e.m,l=e.$,s=t.$,o=t.i;null===o?(b(e,t,!1),null!==l&&null!==s?((e,t,n,l)=>{let s,o=0,r=0,i=t.length-1,c=t[0],u=t[i],a=l.length-1,f=l[0],$=l[a];for(;o<=i&&r<=a;)null==c?c=t[++o]:null==u?u=t[--i]:null==f?f=l[++r]:null==$?$=l[--a]:j(c,f)?(M(c,f),c=t[++o],f=l[++r]):j(u,$)?(M(u,$),u=t[--i],$=l[--a]):j(c,$)?(M(c,$),e.insertBefore(c.m,u.m.nextSibling),c=t[++o],$=l[--a]):j(u,f)?(M(u,f),e.insertBefore(u.m,c.m),u=t[--i],f=l[++r]):(s=w(t&&t[r],n,r),f=l[++r],s&&c.m.parentNode.insertBefore(s,c.m));o>i?S(e,null==l[a+1]?null:l[a+1].m,n,l,r,a):r>a&&g(t,o,i)})(n,l,t,s):null!==s?(null!==e.i&&(n.textContent=""),S(n,null,t,s,0,s.length-1)):null!==l&&g(l,0,l.length-1)):e.i!==o&&(n.data=o)},v=e=>q(e).p,k=(e,t)=>{t&&!e.S&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.S=t)))},C=(e,t)=>{if(e.t|=16,!(4&e.t))return k(e,e.g),Y((()=>O(e,t)));e.t|=512},O=(e,t)=>{const n=e.j;let l;return t&&(l=N(n,"componentWillLoad")),R(l,(()=>P(e,n,t)))},P=async(e,t,n)=>{const l=e.p,o=l["s-rc"];n&&(e=>{const t=e.M,n=e.p,l=t.t,o=((e,t)=>{let n=u(t),l=B.get(n);if(e=11===e.nodeType?e:s,l)if("string"==typeof l){let t,o=c.get(e=e.head||e);o||c.set(e,o=new Set),o.has(n)||(t=s.createElement("style"),t.innerHTML=l,e.insertBefore(t,e.querySelector("link")),o&&o.add(n))}else e.adoptedStyleSheets.includes(l)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return n})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);x(e,t),o&&(o.map((e=>e())),l["s-rc"]=void 0);{const t=l["s-p"],n=()=>E(e);0===t.length?n():(Promise.all(t).then(n),e.t|=4,t.length=0)}},x=(n,l)=>{try{l=l.render(),n.t&=-17,n.t|=2,((n,l)=>{const s=n.p,o=n.M,r=n.v||h(null,null),i=(e=>e&&e.h===d)(l)?l:$(null,null,l);t=s.tagName,o.k&&(i.u=i.u||{},o.k.map((([e,t])=>i.u[t]=s[e]))),i.h=null,i.t|=4,n.v=i,i.m=r.m=s.shadowRoot||s,e=s["s-sc"],M(r,i)})(n,l)}catch(e){V(e,n.p)}return null},E=e=>{const t=e.p,n=e.g;N(e.j,"componentDidRender"),64&e.t||(e.t|=64,T(t),e.C(t),n||L()),e.S&&(e.S(),e.S=void 0),512&e.t&&X((()=>C(e,!1))),e.t&=-517},L=()=>{T(s.documentElement),X((()=>(e=>{const t=o.ce("appload",{detail:{namespace:"casino-tournament-buttons"}});return e.dispatchEvent(t),t})(l)))},N=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){V(e)}},R=(e,t)=>e&&e.then?e.then(t):t(),T=e=>e.classList.add("hydrated"),W=(e,t,n)=>{if(t.O){const l=Object.entries(t.O),s=e.prototype;if(l.map((([e,[l]])=>{(31&l||2&n&&32&l)&&Object.defineProperty(s,e,{get(){return((e,t)=>q(this).P.get(t))(0,e)},set(n){((e,t,n,l)=>{const s=q(e),o=s.P.get(t),r=s.t,i=s.j;n=((e,t)=>null==e||f(e)?e:4&t?"false"!==e&&(""===e||!!e):1&t?e+"":e)(n,l.O[t][0]),8&r&&void 0!==o||n===o||Number.isNaN(o)&&Number.isNaN(n)||(s.P.set(t,n),i&&2==(18&r)&&C(s,!1))})(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const n=new Map;s.attributeChangedCallback=function(e,t,l){o.jmp((()=>{const t=n.get(e);if(this.hasOwnProperty(t))l=this[t],delete this[t];else if(s.hasOwnProperty(t)&&"number"==typeof this[t]&&this[t]==l)return;this[t]=(null!==l||"boolean"!=typeof this[t])&&l}))},e.observedAttributes=l.filter((([e,t])=>15&t[0])).map((([e,l])=>{const s=l[1]||e;return n.set(s,e),512&l[0]&&t.k.push([e,s]),s}))}}return e},A=(e,t={})=>{const n=[],r=t.exclude||[],c=l.customElements,a=s.head,f=a.querySelector("meta[charset]"),$=s.createElement("style"),h=[];let d,m=!0;Object.assign(o,t),o.l=new URL(t.resourcesUrl||"./",s.baseURI).href,e.map((e=>{e[1].map((t=>{const l={t:t[0],o:t[1],O:t[2],L:t[3]};l.O=t[2],l.k=[];const s=l.o,a=class extends HTMLElement{constructor(e){super(e),F(e=this,l),1&l.t&&e.attachShadow({mode:"open"})}connectedCallback(){d&&(clearTimeout(d),d=null),m?h.push(this):o.jmp((()=>(e=>{if(0==(1&o.t)){const t=q(e),n=t.M,l=()=>{};if(!(1&t.t)){t.t|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){k(t,t.g=n);break}}n.O&&Object.entries(n.O).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n,l,s)=>{if(0==(32&t.t)){{if(t.t|=32,(s=z(n)).then){const e=()=>{};s=await s,e()}s.isProxied||(W(s,n,2),s.isProxied=!0);const e=()=>{};t.t|=8;try{new s(t)}catch(e){V(e)}t.t&=-9,e()}if(s.style){let e=s.style;const t=u(n);if(!B.has(t)){const l=()=>{};((e,t,n)=>{let l=B.get(e);i&&n?(l=l||new CSSStyleSheet,l.replace(t)):l=t,B.set(e,l)})(t,e,!!(1&n.t)),l()}}}const o=t.g,r=()=>C(t,!0);o&&o["s-rc"]?o["s-rc"].push(r):r()})(0,t,n)}l()}})(this)))}disconnectedCallback(){o.jmp((()=>{}))}componentOnReady(){return q(this).N}};l.R=e[0],r.includes(s)||c.get(s)||(n.push(s),c.define(s,W(a,l,1)))}))})),$.innerHTML=n+"{visibility:hidden}.hydrated{visibility:inherit}",$.setAttribute("data-styles",""),a.insertBefore($,f?f.nextSibling:a.firstChild),m=!1,h.length?h.map((e=>e.connectedCallback())):o.jmp((()=>d=setTimeout(L,30)))},U=new WeakMap,q=e=>U.get(e),D=(e,t)=>U.set(t.j=e,t),F=(e,t)=>{const n={t:0,p:e,M:t,P:new Map};return n.N=new Promise((e=>n.C=e)),e["s-p"]=[],e["s-rc"]=[],U.set(e,n)},H=(e,t)=>t in e,V=(e,t)=>(0,console.error)(e,t),_=new Map,z=e=>{const t=e.o.replace(/-/g,"_"),n=e.R,l=_.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(_.set(n,e),e[t])),V)},B=new Map,G=[],I=[],J=(e,t)=>l=>{e.push(l),n||(n=!0,t&&4&o.t?X(Q):o.raf(Q))},K=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){V(e)}e.length=0},Q=()=>{K(G),K(I),(n=G.length>0)&&o.raf(Q)},X=e=>r().then(e),Y=J(I,!0);export{A as b,v as g,$ as h,r as p,D as r}
@@ -0,0 +1 @@
1
+ import{r as e,h as t,g as i}from"./p-2a13fa86.js";const r={en:{joined:"Joined",join:"Join",enrolled:"Enrolled",scoreCriteria:"Score Criteria",minbet:"min bet count",seegames:"You can see the games",here:"here",scheduled:"Scheduled",ongoing:"Ongoing",finished:"Finished",startingAt:"Starting at:",startedAt:"Started at:",startingAtWithTime:"Starts ",startedAtWithTime:"Started ",mostRounds:"Most Rounds",betCount:"Number of Bets",maxWinStakeRatio:"Max Win per Stake",winStakeRatio:"Total Win per Stake",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Log in",register:"Register",details:"Details",joinerror:"An error occurred while registering in the tournament, please try again."},"zh-hk":{enrolled:"已註冊",scoreCriteria:"評分標準",minbet:"最小投注數:",seegames:"你可以看比賽",here:"這裡",scheduled:"預定的",ongoing:"進行中",finished:"完成的",startingAt:"開始於",startedAt:"大多數回合",mostRounds:"投注數",betCount:"投注计数",maxWinStakeRatio:"最大勝率",winStakeRatio:"勝率",January:"一月",February:"二月",March:"行进",April:"四月",May:"可能",June:"六月",July:"七月",August:"八月",September:"九月",October:"十月",November:"十一月",December:"十二月",login:"登錄",register:"登記",details:"細節",join:"加入",joinerror:"加入錦標賽時出錯,請重試"},fr:{enrolled:"Inscrits",scoreCriteria:"Critères de notation",minbet:"nombre de paris minimum",seegames:"Vous pouvez voir les jeux",here:"ici",scheduled:"Programmé",ongoing:"En cours",finished:"Fini",startingAt:"À partir de:",startedAt:"Commencé à:",mostRounds:"Le plus grand nombre de tours",betCount:"Nombre de paris",maxWinStakeRatio:"Indice maximum du gain d'une mise",winStakeRatio:"Indice du gain d'une mise",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Connexion",register:"Enregistre",details:"Détails",join:"Rejoignez",joinerror:"Une erreur s'est produite lors de l'inscription au tournoi - "},ro:{enrolled:"Înscris",scoreCriteria:"Criterii de punctaj",minbet:"număr minim de pariuri",seegames:"Vezi jocurile",here:"aici",scheduled:"Programat",ongoing:"În desfășurare",finished:"Finalizat",startingAt:"Începând de la",startedAt:"A inceput la:",startingAtWithTime:"Începând de",startedAtWithTime:"A inceput:",mostRounds:"Cele mai multe runde",betCount:"Număr de pariuri",maxWinStakeRatio:"Pondere maximă a mizei din câștig",winStakeRatio:"Câștig Total per Miză",January:"Ianuarie",February:"Februarie",March:"Martie",April:"Aprilie",May:"Mai",June:"Iunie",July:"Iulie",August:"August",September:"Septembrie",October:"Octombrie",November:"Noiembrie",December:"Decembrie",login:"Autentificare",register:"Înregistrare",details:"Detalii",join:"Participă",joinerror:"A apărut o eroare la înregistrarea în turneu, te rugăm să încerci din nou."},tr:{enrolled:"Katıldın",scoreCriteria:"Skor kriteri",minbet:"en düşük bahis sayısı",seegames:"Turnuvadaki oyunları görmek için",here:"tıklayın",scheduled:"Planlanmış",ongoing:"Devam Eden",finished:"Sona Ermiş",startingAt:"Başlangıç saati:",startedAt:"Başlangıç saati:",mostRounds:"ÇoğuRounds",betCount:"Oynanan Tur Sayısı",maxWinStakeRatio:"Maksimum Kazanç / Bahis Oranı",winStakeRatio:"Kazanç / Bahis Oranı",January:"Ocak",February:"Şubat",March:"Mart",April:"Nisan",May:"Mayıs",June:"Haziran",July:"Temmuz",August:"Ağustos",September:"Eylül",October:"Ekim",November:"Kasım",December:"Aralık",login:"Giriş",register:"Kayıt Ol",details:"Detaylar",join:"Katıl",joinerror:"Turnuvaya katılım ile ilgili bir hata oluştu - "},el:{enrolled:"Εγγεγραμμένος",scoreCriteria:"Κριτήρια Σκορ",minbet:"Ελάχιστος αριθμός πονταρισμάτων",seegames:"Μπορείς να δεις τα παιχνίδια",here:"εδώ",all:"Όλα",scheduled:"Προγραμματισμένα",ongoing:"Τρέχοντα",finished:"Ολοκληρωμένα",startingAt:"Αρχίζει στις:",startedAt:"Άρχισε στις:",startingAtWithTime:"Αρχίζει στις ",startedAtWithTime:"Άρχισε στις ",mostRounds:"Οι περισσότεροι γύροι",betCount:"Οι περισσότεροι γύροι",maxWinStakeRatio:"Μεγαλύτερο Κέρδος άνα Ποντάρισμα",winStakeRatio:"Συνολική Αναλογία Κερδών άνα Ποντάρισμα",January:"Ιανουαρίου",February:"Φεβρουαρίου",March:"Μαρτίου",April:"Απριλίου",May:"Μαΐου",June:"Ιουνίου",July:"Ιουλίου",August:"Αυγούστου",September:"Σεπτεμβρίου",October:"Οκτωβρίου",November:"Νοεμβρίου",December:"Δεκεμβρίου",login:"Είσοδος",register:"Εγγραφή",details:"Λεπτομέρειες",join:"Συμμετοχή",joinerror:"Παρουσιάστηκε σφάλμα κατά τη διαδικασία εγγραφής στο τουρνουά, παρακαλούμε δοκιμάστε ξανά."},es:{enrolled:"Inscrito",scoreCriteria:"Criterios de puntuación",minbet:"la apuesta mínima cuenta",seegames:"Puedes ver los juegos",here:"aquí",scheduled:"Programado",ongoing:"En marcha",finished:"Terminado",startingAt:"Desde",startedAt:"Empezó el:",mostRounds:"LaMayoríaDeLasRondas",betCount:"Recuento De Apuestas",maxWinStakeRatio:"Ratio De Ganancia Máxima",winStakeRatio:"Ratio De Ganancia",January:"de enero",February:"de febrero",March:"de marzo",April:"de abril",May:"de mayo",June:"de junio",July:"de julio",August:"de agosto",September:"de septiembre",October:"de octubre",November:"de noviembre",December:"de diciembre",login:"Iniciar sesión",register:"Regístrate",details:"Detalles",join:"Unirse",joinerror:"Ha ocurrido un error mientras se registra en el Torneo"},pt:{enrolled:"Inscrito",scoreCriteria:"Critérios de pontuação",minbet:"Contagens de aposta mínima",seegames:"Você pode ver os jogos",here:"Aqui",scheduled:"Agendado",ongoing:"Em progresso",finished:"Finalizado",startingAt:"Começando às:",startedAt:"Começou às:",mostRounds:"Mais rodadas",betCount:"Contagem de Apostas",maxWinStakeRatio:"Rácio máximo de vitórias",winStakeRatio:"Rácio de Vitórias",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Entrar",register:"Registro",details:"Detalhes",join:"Junte-se",joinerror:"Ocorreu um erro ao entrar no torneio -"},hu:{enrolled:"Feliratkozott",scoreCriteria:"Pontozási kritériumok",minbet:"Minimális tét",seegames:"Játékok megnézése",here:"itt",scheduled:"Ütemezés",ongoing:"Folyamatban lévő",finished:"Befejezett",startingAt:"Kezdődik",startedAt:"Started at:",mostRounds:"Legtöbb kör",betCount:"Számított tét",maxWinStakeRatio:"Maximális nyeremény tétenként",winStakeRatio:"Összes nyeremény tétenként",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Bejelentkezés",register:"Regisztráció",details:"Adatok",join:"Csatlakozás",joinerror:"Hiba történt a versenyre való regisztráció során, kérjük próbálja újra."},hr:{joined:"Pridružen",enrolled:"Upisan",scoreCriteria:"Kriteriji bodovanja",minbet:"minimalni broj beta",seegames:"Možete vidjeti igre",here:"Ovdje",scheduled:"Zakazano",ongoing:"U tijeku",finished:"Gotovo",startingAt:"S početkom u",startedAt:"Započelo u",startingAtWithTime:"Počinje ",startedAtWithTime:"Započelo ",mostRounds:"Najviše rundi",betCount:"Broj betova",maxWinStakeRatio:"Maksimalni dobitak po ulogu",winStakeRatio:"Ukupni dobitak po ulogu",January:"Siječanj",February:"Veljača",March:"Ožujak",April:"Travanj",May:"Svibanj",June:"Lipanj",July:"Srpanj",August:"Kolovoz",September:"Rujan",October:"Listopad",November:"Studeni",December:"Prosinac",login:"Prijaviti se",register:"Registracija",details:"Detalji",join:"join",joinerror:"Došlo je do pogreške prilikom registracije na turnir, pokušajte ponovno.",left:"lijevo",minutes:"minute",hours:"sati",days:"dani"}},n=(e,t)=>{var i,n;return(null===(i=r[t])||void 0===i?void 0:i[e])||(null===(n=r.en)||void 0===n?void 0:n[e])},o=class{constructor(t){e(this,t),this.enrolled=!1,this.showReadMore=!1,this.clientStyling="",this.clientStylingUrl="",this.limitStylingAppends=!1,this.joinButtonLoading=!1,this.errorJoin=!1,this.errorJoinConcurrently=!1}componentWillLoad(){var e;this.translationData&&(e=JSON.parse(this.translationData),Object.keys(e).forEach((t=>{for(let i in e[t])r[t][i]=e[t][i]})))}componentDidRender(){!this.limitStylingAppends&&this.host&&(this.clientStyling&&this.setClientStyling(),this.clientStylingUrl&&this.setClientStylingURL(),this.limitStylingAppends=!0)}setClientStyling(){const e=new CSSStyleSheet;e.replace(this.clientStyling),this.host.shadowRoot.adoptedStyleSheets=[...this.host.shadowRoot.adoptedStyleSheets,e]}setClientStylingURL(){let e=new URL(this.clientStylingUrl);fetch(e.href).then((e=>e.text())).then((e=>{const t=new CSSStyleSheet;t.replace(e),this.host.shadowRoot.adoptedStyleSheets=[...this.host.shadowRoot.adoptedStyleSheets,t]}))}loginAction(){this.loginEvent&&(window.postMessage({type:this.loginEvent,transition:"Login"},window.location.href),"function"==typeof gtag&&gtag("event","OpenLoginModal",{context:"TournamentsThumbnailController"})),this.loginUrl&&(location.href=this.loginUrl)}registerAction(){this.registerEvent&&(window.postMessage({type:this.registerEvent,transition:"Register"},window.location.href),"function"==typeof gtag&&gtag("event","OpenRegisterModal",{context:"TournamentsThumbnailController"})),this.registerUrl&&(location.href=this.registerUrl)}async joinAction(e,t){var i;this.errorJoin=!1,this.errorJoinConcurrently=!1,window.postMessage({type:"TournamentJoinRequest",tournamentId:e},window.location.href),this.joinButtonLoading=!0;let r=new URL(`${this.endpoint}/v1/bonus/claim`),n=new Headers,o={};r.searchParams.append("language",this.language),r.searchParams.append("platform",(()=>{let e=window.navigator.userAgent;return e.toLowerCase().match(/android/i)?"Android":e.toLowerCase().match(/iphone/i)?"iPhone":e.toLowerCase().match(/ipad|ipod/i)?"iPad":"PC"})()),n.append("Content-Type","application/json"),n.append("X-SessionID",this.session),t&&(o={language:this.language,bonusCode:t,currency:this.currency});let a={method:"PUT",headers:n,body:JSON.stringify(o)};const s=()=>{this.joinButtonLoading=!1,this.enrolled=!0,window.postMessage({type:"TournamentUserEnrolled",userenrolled:this.enrolled},window.location.href)},u=()=>{this.joinButtonLoading=!1,this.errorJoin=!0},d=await(async()=>{let e;try{e=await fetch(`${this.endpoint}/v1/bonus/claim?${r.searchParams.toString()}`,a),e=await e.json()}catch(e){u()}return e})();if(d)if(1==d.success)s();else if(d.errorMessage.match("VersionMismatchException")){let e;e=await fetch(`${this.endpoint}/v1/tournaments/${this.tournamentId}`,{headers:{"X-SessionID":this.session}}),e=await e.json(),(null===(i=null==e?void 0:e.item)||void 0===i?void 0:i.playerEnrolled)?s():(u(),this.errorJoinConcurrently=!0,this.errorJoin=!1)}else u()}detailAction(e){window.postMessage({type:"TournamentDetailsClicked",tournamentId:e,showLeaderboard:!0},window.location.href)}moreAction(e){window.postMessage({type:"TournamentReadMoreClicked",tournamentId:e},window.location.href)}render(){return t("div",{class:"TournamentButtons"},!this.session&&t("div",{class:"ButtonGroup"},t("button",{class:"LoginButton Button",part:"LoginButton",onClick:()=>this.loginAction()},n("login",this.language)),t("button",{class:"RegisterButton Button",part:"RegisterButton",onClick:()=>this.registerAction()},n("register",this.language))),this.session&&t("div",null,!this.enrolled&&t("div",{class:"ButtonGroup"},t("button",{class:"Button",onClick:()=>this.joinAction(this.tournamentId,this.bonusCode)},n("join",this.language)),this.showReadMore&&t("button",{class:"Button NoBorder",onClick:()=>this.moreAction(this.tournamentId)},n("readmore",this.language))),this.enrolled&&t("div",{class:"ButtonGroup"},t("button",{class:"Button",onClick:()=>this.detailAction(this.tournamentId)},n("details",this.language)),this.showReadMore&&t("button",{class:"Button NoBorder",onClick:()=>this.moreAction(this.tournamentId)},n("readmore",this.language)))),(this.errorJoin||this.errorJoinConcurrently)&&t("span",{class:"ErrorText",part:"ErrorText"},n("joinerror",this.language)))}get host(){return i(this)}};o.style=':host{display:block}.ButtonGroup{display:flex;gap:4px}.Button{padding:6px 8px;border-radius:2px;border:1px solid #fff;color:#fff;background:none;position:relative;cursor:pointer}.Button.NoBorder{border:0;padding:7px 8px}.Button::after{content:"";display:block;position:absolute;border-radius:2px;left:0;top:0;width:100%;height:100%;opacity:0;transition:all 0.5s;box-shadow:0 0 10px 10px white}.Button:active::after{box-shadow:0 0 0 0 white;position:absolute;border-radius:2px;left:0;top:0;opacity:1;transition:0s}.Button:active{top:1px}';export{o as casino_tournament_buttons}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3c551592.js');
5
+ const index = require('./index-7d32432f.js');
6
6
 
7
7
  const getDevice = () => {
8
8
  let userAgent = window.navigator.userAgent;
@@ -19,7 +19,6 @@ const getDevice = () => {
19
19
  };
20
20
 
21
21
  const DEFAULT_LANGUAGE = 'en';
22
- const SUPPORTED_LANGUAGES = ['ro', 'en', 'zh-hk', 'fr', 'hu', 'tr', 'el', 'es', 'pt', 'hr'];
23
22
  const TRANSLATIONS = {
24
23
  en: {
25
24
  joined: 'Joined',
@@ -368,8 +367,16 @@ const TRANSLATIONS = {
368
367
  }
369
368
  };
370
369
  const translate = (key, customLang) => {
370
+ var _a, _b;
371
371
  const lang = customLang;
372
- return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
372
+ return ((_a = TRANSLATIONS[lang]) === null || _a === void 0 ? void 0 : _a[key]) || ((_b = TRANSLATIONS[DEFAULT_LANGUAGE]) === null || _b === void 0 ? void 0 : _b[key]);
373
+ };
374
+ const getTranslations = (data) => {
375
+ Object.keys(data).forEach((item) => {
376
+ for (let key in data[item]) {
377
+ TRANSLATIONS[item][key] = data[item][key];
378
+ }
379
+ });
373
380
  };
374
381
 
375
382
  const casinoTournamentButtonsCss = ":host{display:block}.ButtonGroup{display:flex;gap:4px}.Button{padding:6px 8px;border-radius:2px;border:1px solid #fff;color:#fff;background:none;position:relative;cursor:pointer}.Button.NoBorder{border:0;padding:7px 8px}.Button::after{content:\"\";display:block;position:absolute;border-radius:2px;left:0;top:0;width:100%;height:100%;opacity:0;transition:all 0.5s;box-shadow:0 0 10px 10px white}.Button:active::after{box-shadow:0 0 0 0 white;position:absolute;border-radius:2px;left:0;top:0;opacity:1;transition:0s}.Button:active{top:1px}";
@@ -398,6 +405,11 @@ const CasinoTournamentButtons = class {
398
405
  this.errorJoin = false;
399
406
  this.errorJoinConcurrently = false;
400
407
  }
408
+ componentWillLoad() {
409
+ if (this.translationData) {
410
+ getTranslations(JSON.parse(this.translationData));
411
+ }
412
+ }
401
413
  componentDidRender() {
402
414
  if (!this.limitStylingAppends && this.host) {
403
415
  if (this.clientStyling)
@@ -540,8 +552,8 @@ const CasinoTournamentButtons = class {
540
552
  return index.h("div", { class: "TournamentButtons" }, !this.session &&
541
553
  index.h("div", { class: "ButtonGroup" }, index.h("button", { class: "LoginButton Button", part: "LoginButton", onClick: () => this.loginAction() }, translate('login', this.language)), index.h("button", { class: "RegisterButton Button", part: "RegisterButton", onClick: () => this.registerAction() }, translate('register', this.language))), this.session &&
542
554
  index.h("div", null, !this.enrolled &&
543
- index.h("div", { class: "ButtonGroup" }, index.h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && index.h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more")), this.enrolled &&
544
- index.h("div", { class: "ButtonGroup" }, index.h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && index.h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more"))), (this.errorJoin || this.errorJoinConcurrently) &&
555
+ index.h("div", { class: "ButtonGroup" }, index.h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && index.h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language))), this.enrolled &&
556
+ index.h("div", { class: "ButtonGroup" }, index.h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && index.h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language)))), (this.errorJoin || this.errorJoinConcurrently) &&
545
557
  index.h("span", { class: "ErrorText", part: "ErrorText" }, translate('joinerror', this.language)));
546
558
  }
547
559
  get host() { return index.getElement(this); }
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-3c551592.js');
3
+ const index = require('./index-7d32432f.js');
4
4
 
5
5
  /*
6
6
  Stencil Client Patch Browser v2.15.2 | MIT Licensed | https://stenciljs.com
@@ -15,5 +15,5 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- return index.bootstrapLazy([["casino-tournament-buttons.cjs",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
18
+ return index.bootstrapLazy([["casino-tournament-buttons.cjs",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"translationData":[520,"translation-data"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
19
19
  });
@@ -510,9 +510,14 @@ const patch = (oldVNode, newVNode) => {
510
510
  };
511
511
  const renderVdom = (hostRef, renderFnResults) => {
512
512
  const hostElm = hostRef.$hostElement$;
513
+ const cmpMeta = hostRef.$cmpMeta$;
513
514
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
514
515
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
515
516
  hostTagName = hostElm.tagName;
517
+ if (cmpMeta.$attrsToReflect$) {
518
+ rootVnode.$attrs$ = rootVnode.$attrs$ || {};
519
+ cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
520
+ }
516
521
  rootVnode.$tag$ = null;
517
522
  rootVnode.$flags$ |= 4 /* isHost */;
518
523
  hostRef.$vnode$ = rootVnode;
@@ -560,6 +565,11 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
560
565
  const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
561
566
  const instance = hostRef.$lazyInstance$ ;
562
567
  let promise;
568
+ if (isInitialLoad) {
569
+ {
570
+ promise = safeCall(instance, 'componentWillLoad');
571
+ }
572
+ }
563
573
  endSchedule();
564
574
  return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
565
575
  };
@@ -841,6 +851,9 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
841
851
  .map(([propName, m]) => {
842
852
  const attrName = m[1] || propName;
843
853
  attrNameToPropName.set(attrName, propName);
854
+ if (m[0] & 512 /* ReflectAttr */) {
855
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
856
+ }
844
857
  return attrName;
845
858
  });
846
859
  }
@@ -986,6 +999,9 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
986
999
  {
987
1000
  cmpMeta.$members$ = compactMeta[2];
988
1001
  }
1002
+ {
1003
+ cmpMeta.$attrsToReflect$ = [];
1004
+ }
989
1005
  const tagName = cmpMeta.$tagName$;
990
1006
  const HostElement = class extends HTMLElement {
991
1007
  // StencilLazyHost
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3c551592.js');
5
+ const index = require('./index-7d32432f.js');
6
6
 
7
7
  /*
8
8
  Stencil Client Patch Esm v2.15.2 | MIT Licensed | https://stenciljs.com
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["casino-tournament-buttons.cjs",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
17
+ return index.bootstrapLazy([["casino-tournament-buttons.cjs",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"translationData":[520,"translation-data"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -1,6 +1,6 @@
1
1
  import { Component, Prop, h, State, Element } from '@stencil/core';
2
2
  import { getDevice } from '../../utils/utils';
3
- import { translate } from '../../utils/locale.utils';
3
+ import { translate, getTranslations } from '../../utils/locale.utils';
4
4
  export class CasinoTournamentButtons {
5
5
  constructor() {
6
6
  /**
@@ -24,6 +24,11 @@ export class CasinoTournamentButtons {
24
24
  this.errorJoin = false;
25
25
  this.errorJoinConcurrently = false;
26
26
  }
27
+ componentWillLoad() {
28
+ if (this.translationData) {
29
+ getTranslations(JSON.parse(this.translationData));
30
+ }
31
+ }
27
32
  componentDidRender() {
28
33
  if (!this.limitStylingAppends && this.host) {
29
34
  if (this.clientStyling)
@@ -173,11 +178,11 @@ export class CasinoTournamentButtons {
173
178
  !this.enrolled &&
174
179
  h("div", { class: "ButtonGroup" },
175
180
  h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)),
176
- this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more")),
181
+ this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language))),
177
182
  this.enrolled &&
178
183
  h("div", { class: "ButtonGroup" },
179
184
  h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)),
180
- this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more"))),
185
+ this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language)))),
181
186
  (this.errorJoin || this.errorJoinConcurrently) &&
182
187
  h("span", { class: "ErrorText", part: "ErrorText" }, translate('joinerror', this.language)));
183
188
  }
@@ -431,6 +436,23 @@ export class CasinoTournamentButtons {
431
436
  "attribute": "client-styling-url",
432
437
  "reflect": false,
433
438
  "defaultValue": "''"
439
+ },
440
+ "translationData": {
441
+ "type": "any",
442
+ "mutable": false,
443
+ "complexType": {
444
+ "original": "any",
445
+ "resolved": "any",
446
+ "references": {}
447
+ },
448
+ "required": false,
449
+ "optional": true,
450
+ "docs": {
451
+ "tags": [],
452
+ "text": "Translations via parent component"
453
+ },
454
+ "attribute": "translation-data",
455
+ "reflect": true
434
456
  }
435
457
  }; }
436
458
  static get states() { return {
@@ -1,5 +1,4 @@
1
1
  const DEFAULT_LANGUAGE = 'en';
2
- const SUPPORTED_LANGUAGES = ['ro', 'en', 'zh-hk', 'fr', 'hu', 'tr', 'el', 'es', 'pt', 'hr'];
3
2
  const TRANSLATIONS = {
4
3
  en: {
5
4
  joined: 'Joined',
@@ -348,6 +347,14 @@ const TRANSLATIONS = {
348
347
  }
349
348
  };
350
349
  export const translate = (key, customLang) => {
350
+ var _a, _b;
351
351
  const lang = customLang;
352
- return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
352
+ return ((_a = TRANSLATIONS[lang]) === null || _a === void 0 ? void 0 : _a[key]) || ((_b = TRANSLATIONS[DEFAULT_LANGUAGE]) === null || _b === void 0 ? void 0 : _b[key]);
353
+ };
354
+ export const getTranslations = (data) => {
355
+ Object.keys(data).forEach((item) => {
356
+ for (let key in data[item]) {
357
+ TRANSLATIONS[item][key] = data[item][key];
358
+ }
359
+ });
353
360
  };
@@ -15,7 +15,6 @@ const getDevice = () => {
15
15
  };
16
16
 
17
17
  const DEFAULT_LANGUAGE = 'en';
18
- const SUPPORTED_LANGUAGES = ['ro', 'en', 'zh-hk', 'fr', 'hu', 'tr', 'el', 'es', 'pt', 'hr'];
19
18
  const TRANSLATIONS = {
20
19
  en: {
21
20
  joined: 'Joined',
@@ -364,8 +363,16 @@ const TRANSLATIONS = {
364
363
  }
365
364
  };
366
365
  const translate = (key, customLang) => {
366
+ var _a, _b;
367
367
  const lang = customLang;
368
- return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
368
+ return ((_a = TRANSLATIONS[lang]) === null || _a === void 0 ? void 0 : _a[key]) || ((_b = TRANSLATIONS[DEFAULT_LANGUAGE]) === null || _b === void 0 ? void 0 : _b[key]);
369
+ };
370
+ const getTranslations = (data) => {
371
+ Object.keys(data).forEach((item) => {
372
+ for (let key in data[item]) {
373
+ TRANSLATIONS[item][key] = data[item][key];
374
+ }
375
+ });
369
376
  };
370
377
 
371
378
  const casinoTournamentButtonsCss = ":host{display:block}.ButtonGroup{display:flex;gap:4px}.Button{padding:6px 8px;border-radius:2px;border:1px solid #fff;color:#fff;background:none;position:relative;cursor:pointer}.Button.NoBorder{border:0;padding:7px 8px}.Button::after{content:\"\";display:block;position:absolute;border-radius:2px;left:0;top:0;width:100%;height:100%;opacity:0;transition:all 0.5s;box-shadow:0 0 10px 10px white}.Button:active::after{box-shadow:0 0 0 0 white;position:absolute;border-radius:2px;left:0;top:0;opacity:1;transition:0s}.Button:active{top:1px}";
@@ -396,6 +403,11 @@ const CasinoTournamentButtons$1 = /*@__PURE__*/ proxyCustomElement(class extends
396
403
  this.errorJoin = false;
397
404
  this.errorJoinConcurrently = false;
398
405
  }
406
+ componentWillLoad() {
407
+ if (this.translationData) {
408
+ getTranslations(JSON.parse(this.translationData));
409
+ }
410
+ }
399
411
  componentDidRender() {
400
412
  if (!this.limitStylingAppends && this.host) {
401
413
  if (this.clientStyling)
@@ -538,8 +550,8 @@ const CasinoTournamentButtons$1 = /*@__PURE__*/ proxyCustomElement(class extends
538
550
  return h("div", { class: "TournamentButtons" }, !this.session &&
539
551
  h("div", { class: "ButtonGroup" }, h("button", { class: "LoginButton Button", part: "LoginButton", onClick: () => this.loginAction() }, translate('login', this.language)), h("button", { class: "RegisterButton Button", part: "RegisterButton", onClick: () => this.registerAction() }, translate('register', this.language))), this.session &&
540
552
  h("div", null, !this.enrolled &&
541
- h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more")), this.enrolled &&
542
- h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more"))), (this.errorJoin || this.errorJoinConcurrently) &&
553
+ h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language))), this.enrolled &&
554
+ h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language)))), (this.errorJoin || this.errorJoinConcurrently) &&
543
555
  h("span", { class: "ErrorText", part: "ErrorText" }, translate('joinerror', this.language)));
544
556
  }
545
557
  get host() { return this; }
@@ -559,6 +571,7 @@ const CasinoTournamentButtons$1 = /*@__PURE__*/ proxyCustomElement(class extends
559
571
  "showReadMore": [4, "show-read-more"],
560
572
  "clientStyling": [1, "client-styling"],
561
573
  "clientStylingUrl": [1, "client-styling-url"],
574
+ "translationData": [520, "translation-data"],
562
575
  "limitStylingAppends": [32],
563
576
  "joinButtonLoading": [32],
564
577
  "errorJoin": [32],
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, g as getElement } from './index-2a64c803.js';
1
+ import { r as registerInstance, h, g as getElement } from './index-9e95ffbf.js';
2
2
 
3
3
  const getDevice = () => {
4
4
  let userAgent = window.navigator.userAgent;
@@ -15,7 +15,6 @@ const getDevice = () => {
15
15
  };
16
16
 
17
17
  const DEFAULT_LANGUAGE = 'en';
18
- const SUPPORTED_LANGUAGES = ['ro', 'en', 'zh-hk', 'fr', 'hu', 'tr', 'el', 'es', 'pt', 'hr'];
19
18
  const TRANSLATIONS = {
20
19
  en: {
21
20
  joined: 'Joined',
@@ -364,8 +363,16 @@ const TRANSLATIONS = {
364
363
  }
365
364
  };
366
365
  const translate = (key, customLang) => {
366
+ var _a, _b;
367
367
  const lang = customLang;
368
- return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
368
+ return ((_a = TRANSLATIONS[lang]) === null || _a === void 0 ? void 0 : _a[key]) || ((_b = TRANSLATIONS[DEFAULT_LANGUAGE]) === null || _b === void 0 ? void 0 : _b[key]);
369
+ };
370
+ const getTranslations = (data) => {
371
+ Object.keys(data).forEach((item) => {
372
+ for (let key in data[item]) {
373
+ TRANSLATIONS[item][key] = data[item][key];
374
+ }
375
+ });
369
376
  };
370
377
 
371
378
  const casinoTournamentButtonsCss = ":host{display:block}.ButtonGroup{display:flex;gap:4px}.Button{padding:6px 8px;border-radius:2px;border:1px solid #fff;color:#fff;background:none;position:relative;cursor:pointer}.Button.NoBorder{border:0;padding:7px 8px}.Button::after{content:\"\";display:block;position:absolute;border-radius:2px;left:0;top:0;width:100%;height:100%;opacity:0;transition:all 0.5s;box-shadow:0 0 10px 10px white}.Button:active::after{box-shadow:0 0 0 0 white;position:absolute;border-radius:2px;left:0;top:0;opacity:1;transition:0s}.Button:active{top:1px}";
@@ -394,6 +401,11 @@ const CasinoTournamentButtons = class {
394
401
  this.errorJoin = false;
395
402
  this.errorJoinConcurrently = false;
396
403
  }
404
+ componentWillLoad() {
405
+ if (this.translationData) {
406
+ getTranslations(JSON.parse(this.translationData));
407
+ }
408
+ }
397
409
  componentDidRender() {
398
410
  if (!this.limitStylingAppends && this.host) {
399
411
  if (this.clientStyling)
@@ -536,8 +548,8 @@ const CasinoTournamentButtons = class {
536
548
  return h("div", { class: "TournamentButtons" }, !this.session &&
537
549
  h("div", { class: "ButtonGroup" }, h("button", { class: "LoginButton Button", part: "LoginButton", onClick: () => this.loginAction() }, translate('login', this.language)), h("button", { class: "RegisterButton Button", part: "RegisterButton", onClick: () => this.registerAction() }, translate('register', this.language))), this.session &&
538
550
  h("div", null, !this.enrolled &&
539
- h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more")), this.enrolled &&
540
- h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, "Read more"))), (this.errorJoin || this.errorJoinConcurrently) &&
551
+ h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.joinAction(this.tournamentId, this.bonusCode) }, translate('join', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language))), this.enrolled &&
552
+ h("div", { class: "ButtonGroup" }, h("button", { class: "Button", onClick: () => this.detailAction(this.tournamentId) }, translate('details', this.language)), this.showReadMore && h("button", { class: "Button NoBorder", onClick: () => this.moreAction(this.tournamentId) }, translate('readmore', this.language)))), (this.errorJoin || this.errorJoinConcurrently) &&
541
553
  h("span", { class: "ErrorText", part: "ErrorText" }, translate('joinerror', this.language)));
542
554
  }
543
555
  get host() { return getElement(this); }
@@ -1,4 +1,4 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-2a64c803.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-9e95ffbf.js';
2
2
 
3
3
  /*
4
4
  Stencil Client Patch Browser v2.15.2 | MIT Licensed | https://stenciljs.com
@@ -13,5 +13,5 @@ const patchBrowser = () => {
13
13
  };
14
14
 
15
15
  patchBrowser().then(options => {
16
- return bootstrapLazy([["casino-tournament-buttons",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
16
+ return bootstrapLazy([["casino-tournament-buttons",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"translationData":[520,"translation-data"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
17
17
  });
@@ -488,9 +488,14 @@ const patch = (oldVNode, newVNode) => {
488
488
  };
489
489
  const renderVdom = (hostRef, renderFnResults) => {
490
490
  const hostElm = hostRef.$hostElement$;
491
+ const cmpMeta = hostRef.$cmpMeta$;
491
492
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
492
493
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
493
494
  hostTagName = hostElm.tagName;
495
+ if (cmpMeta.$attrsToReflect$) {
496
+ rootVnode.$attrs$ = rootVnode.$attrs$ || {};
497
+ cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
498
+ }
494
499
  rootVnode.$tag$ = null;
495
500
  rootVnode.$flags$ |= 4 /* isHost */;
496
501
  hostRef.$vnode$ = rootVnode;
@@ -538,6 +543,11 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
538
543
  const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
539
544
  const instance = hostRef.$lazyInstance$ ;
540
545
  let promise;
546
+ if (isInitialLoad) {
547
+ {
548
+ promise = safeCall(instance, 'componentWillLoad');
549
+ }
550
+ }
541
551
  endSchedule();
542
552
  return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
543
553
  };
@@ -819,6 +829,9 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
819
829
  .map(([propName, m]) => {
820
830
  const attrName = m[1] || propName;
821
831
  attrNameToPropName.set(attrName, propName);
832
+ if (m[0] & 512 /* ReflectAttr */) {
833
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
834
+ }
822
835
  return attrName;
823
836
  });
824
837
  }
@@ -964,6 +977,9 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
964
977
  {
965
978
  cmpMeta.$members$ = compactMeta[2];
966
979
  }
980
+ {
981
+ cmpMeta.$attrsToReflect$ = [];
982
+ }
967
983
  const tagName = cmpMeta.$tagName$;
968
984
  const HostElement = class extends HTMLElement {
969
985
  // StencilLazyHost
@@ -1,4 +1,4 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-2a64c803.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-9e95ffbf.js';
2
2
 
3
3
  /*
4
4
  Stencil Client Patch Esm v2.15.2 | MIT Licensed | https://stenciljs.com
@@ -10,7 +10,7 @@ const patchEsm = () => {
10
10
  const defineCustomElements = (win, options) => {
11
11
  if (typeof window === 'undefined') return Promise.resolve();
12
12
  return patchEsm().then(() => {
13
- return bootstrapLazy([["casino-tournament-buttons",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
13
+ return bootstrapLazy([["casino-tournament-buttons",[[1,"casino-tournament-buttons",{"language":[1],"tournamentId":[1,"tournament-id"],"session":[1],"loginEvent":[1,"login-event"],"loginUrl":[1,"login-url"],"registerEvent":[1,"register-event"],"registerUrl":[1,"register-url"],"endpoint":[1],"currency":[1],"bonusCode":[1,"bonus-code"],"enrolled":[4],"showReadMore":[4,"show-read-more"],"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"translationData":[520,"translation-data"],"limitStylingAppends":[32],"joinButtonLoading":[32],"errorJoin":[32],"errorJoinConcurrently":[32]}]]]], options);
14
14
  });
15
15
  };
16
16
 
@@ -55,11 +55,16 @@ export declare class CasinoTournamentButtons {
55
55
  * Client custom styling via url
56
56
  */
57
57
  clientStylingUrl?: string;
58
+ /**
59
+ * Translations via parent component
60
+ */
61
+ translationData?: any;
58
62
  limitStylingAppends: boolean;
59
63
  joinButtonLoading: boolean;
60
64
  errorJoin: boolean;
61
65
  errorJoinConcurrently: boolean;
62
66
  host: HTMLElement;
67
+ componentWillLoad(): void;
63
68
  componentDidRender(): void;
64
69
  setClientStyling(): void;
65
70
  setClientStylingURL(): void;
@@ -63,6 +63,10 @@ export namespace Components {
63
63
  * Tournament ID
64
64
  */
65
65
  "tournamentId"?: string;
66
+ /**
67
+ * Translations via parent component
68
+ */
69
+ "translationData"?: any;
66
70
  }
67
71
  }
68
72
  declare global {
@@ -134,6 +138,10 @@ declare namespace LocalJSX {
134
138
  * Tournament ID
135
139
  */
136
140
  "tournamentId"?: string;
141
+ /**
142
+ * Translations via parent component
143
+ */
144
+ "translationData"?: any;
137
145
  }
138
146
  interface IntrinsicElements {
139
147
  "casino-tournament-buttons": CasinoTournamentButtons;
@@ -1 +1,2 @@
1
- export declare const translate: (key: string, customLang?: any) => string;
1
+ export declare const translate: (key: string, customLang?: string) => string;
2
+ export declare const getTranslations: (data: any) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@everymatrix/casino-tournament-buttons",
3
- "version": "1.29.4",
3
+ "version": "1.29.6",
4
4
  "main": "./dist/index.cjs.js",
5
5
  "module": "./dist/index.js",
6
6
  "es2015": "./dist/esm/index.mjs",
@@ -1 +0,0 @@
1
- import{r as e,h as t,g as i}from"./p-de285d04.js";const r=["ro","en","zh-hk","fr","hu","tr","el","es","pt","hr"],n={en:{joined:"Joined",join:"Join",enrolled:"Enrolled",scoreCriteria:"Score Criteria",minbet:"min bet count",seegames:"You can see the games",here:"here",scheduled:"Scheduled",ongoing:"Ongoing",finished:"Finished",startingAt:"Starting at:",startedAt:"Started at:",startingAtWithTime:"Starts ",startedAtWithTime:"Started ",mostRounds:"Most Rounds",betCount:"Number of Bets",maxWinStakeRatio:"Max Win per Stake",winStakeRatio:"Total Win per Stake",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Log in",register:"Register",details:"Details",joinerror:"An error occurred while registering in the tournament, please try again."},"zh-hk":{enrolled:"已註冊",scoreCriteria:"評分標準",minbet:"最小投注數:",seegames:"你可以看比賽",here:"這裡",scheduled:"預定的",ongoing:"進行中",finished:"完成的",startingAt:"開始於",startedAt:"大多數回合",mostRounds:"投注數",betCount:"投注计数",maxWinStakeRatio:"最大勝率",winStakeRatio:"勝率",January:"一月",February:"二月",March:"行进",April:"四月",May:"可能",June:"六月",July:"七月",August:"八月",September:"九月",October:"十月",November:"十一月",December:"十二月",login:"登錄",register:"登記",details:"細節",join:"加入",joinerror:"加入錦標賽時出錯,請重試"},fr:{enrolled:"Inscrits",scoreCriteria:"Critères de notation",minbet:"nombre de paris minimum",seegames:"Vous pouvez voir les jeux",here:"ici",scheduled:"Programmé",ongoing:"En cours",finished:"Fini",startingAt:"À partir de:",startedAt:"Commencé à:",mostRounds:"Le plus grand nombre de tours",betCount:"Nombre de paris",maxWinStakeRatio:"Indice maximum du gain d'une mise",winStakeRatio:"Indice du gain d'une mise",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Connexion",register:"Enregistre",details:"Détails",join:"Rejoignez",joinerror:"Une erreur s'est produite lors de l'inscription au tournoi - "},ro:{enrolled:"Înscris",scoreCriteria:"Criterii de punctaj",minbet:"număr minim de pariuri",seegames:"Vezi jocurile",here:"aici",scheduled:"Programat",ongoing:"În desfășurare",finished:"Finalizat",startingAt:"Începând de la",startedAt:"A inceput la:",startingAtWithTime:"Începând de",startedAtWithTime:"A inceput:",mostRounds:"Cele mai multe runde",betCount:"Număr de pariuri",maxWinStakeRatio:"Pondere maximă a mizei din câștig",winStakeRatio:"Câștig Total per Miză",January:"Ianuarie",February:"Februarie",March:"Martie",April:"Aprilie",May:"Mai",June:"Iunie",July:"Iulie",August:"August",September:"Septembrie",October:"Octombrie",November:"Noiembrie",December:"Decembrie",login:"Autentificare",register:"Înregistrare",details:"Detalii",join:"Participă",joinerror:"A apărut o eroare la înregistrarea în turneu, te rugăm să încerci din nou."},tr:{enrolled:"Katıldın",scoreCriteria:"Skor kriteri",minbet:"en düşük bahis sayısı",seegames:"Turnuvadaki oyunları görmek için",here:"tıklayın",scheduled:"Planlanmış",ongoing:"Devam Eden",finished:"Sona Ermiş",startingAt:"Başlangıç saati:",startedAt:"Başlangıç saati:",mostRounds:"ÇoğuRounds",betCount:"Oynanan Tur Sayısı",maxWinStakeRatio:"Maksimum Kazanç / Bahis Oranı",winStakeRatio:"Kazanç / Bahis Oranı",January:"Ocak",February:"Şubat",March:"Mart",April:"Nisan",May:"Mayıs",June:"Haziran",July:"Temmuz",August:"Ağustos",September:"Eylül",October:"Ekim",November:"Kasım",December:"Aralık",login:"Giriş",register:"Kayıt Ol",details:"Detaylar",join:"Katıl",joinerror:"Turnuvaya katılım ile ilgili bir hata oluştu - "},el:{enrolled:"Εγγεγραμμένος",scoreCriteria:"Κριτήρια Σκορ",minbet:"Ελάχιστος αριθμός πονταρισμάτων",seegames:"Μπορείς να δεις τα παιχνίδια",here:"εδώ",all:"Όλα",scheduled:"Προγραμματισμένα",ongoing:"Τρέχοντα",finished:"Ολοκληρωμένα",startingAt:"Αρχίζει στις:",startedAt:"Άρχισε στις:",startingAtWithTime:"Αρχίζει στις ",startedAtWithTime:"Άρχισε στις ",mostRounds:"Οι περισσότεροι γύροι",betCount:"Οι περισσότεροι γύροι",maxWinStakeRatio:"Μεγαλύτερο Κέρδος άνα Ποντάρισμα",winStakeRatio:"Συνολική Αναλογία Κερδών άνα Ποντάρισμα",January:"Ιανουαρίου",February:"Φεβρουαρίου",March:"Μαρτίου",April:"Απριλίου",May:"Μαΐου",June:"Ιουνίου",July:"Ιουλίου",August:"Αυγούστου",September:"Σεπτεμβρίου",October:"Οκτωβρίου",November:"Νοεμβρίου",December:"Δεκεμβρίου",login:"Είσοδος",register:"Εγγραφή",details:"Λεπτομέρειες",join:"Συμμετοχή",joinerror:"Παρουσιάστηκε σφάλμα κατά τη διαδικασία εγγραφής στο τουρνουά, παρακαλούμε δοκιμάστε ξανά."},es:{enrolled:"Inscrito",scoreCriteria:"Criterios de puntuación",minbet:"la apuesta mínima cuenta",seegames:"Puedes ver los juegos",here:"aquí",scheduled:"Programado",ongoing:"En marcha",finished:"Terminado",startingAt:"Desde",startedAt:"Empezó el:",mostRounds:"LaMayoríaDeLasRondas",betCount:"Recuento De Apuestas",maxWinStakeRatio:"Ratio De Ganancia Máxima",winStakeRatio:"Ratio De Ganancia",January:"de enero",February:"de febrero",March:"de marzo",April:"de abril",May:"de mayo",June:"de junio",July:"de julio",August:"de agosto",September:"de septiembre",October:"de octubre",November:"de noviembre",December:"de diciembre",login:"Iniciar sesión",register:"Regístrate",details:"Detalles",join:"Unirse",joinerror:"Ha ocurrido un error mientras se registra en el Torneo"},pt:{enrolled:"Inscrito",scoreCriteria:"Critérios de pontuação",minbet:"Contagens de aposta mínima",seegames:"Você pode ver os jogos",here:"Aqui",scheduled:"Agendado",ongoing:"Em progresso",finished:"Finalizado",startingAt:"Começando às:",startedAt:"Começou às:",mostRounds:"Mais rodadas",betCount:"Contagem de Apostas",maxWinStakeRatio:"Rácio máximo de vitórias",winStakeRatio:"Rácio de Vitórias",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Entrar",register:"Registro",details:"Detalhes",join:"Junte-se",joinerror:"Ocorreu um erro ao entrar no torneio -"},hu:{enrolled:"Feliratkozott",scoreCriteria:"Pontozási kritériumok",minbet:"Minimális tét",seegames:"Játékok megnézése",here:"itt",scheduled:"Ütemezés",ongoing:"Folyamatban lévő",finished:"Befejezett",startingAt:"Kezdődik",startedAt:"Started at:",mostRounds:"Legtöbb kör",betCount:"Számított tét",maxWinStakeRatio:"Maximális nyeremény tétenként",winStakeRatio:"Összes nyeremény tétenként",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",login:"Bejelentkezés",register:"Regisztráció",details:"Adatok",join:"Csatlakozás",joinerror:"Hiba történt a versenyre való regisztráció során, kérjük próbálja újra."},hr:{joined:"Pridružen",enrolled:"Upisan",scoreCriteria:"Kriteriji bodovanja",minbet:"minimalni broj beta",seegames:"Možete vidjeti igre",here:"Ovdje",scheduled:"Zakazano",ongoing:"U tijeku",finished:"Gotovo",startingAt:"S početkom u",startedAt:"Započelo u",startingAtWithTime:"Počinje ",startedAtWithTime:"Započelo ",mostRounds:"Najviše rundi",betCount:"Broj betova",maxWinStakeRatio:"Maksimalni dobitak po ulogu",winStakeRatio:"Ukupni dobitak po ulogu",January:"Siječanj",February:"Veljača",March:"Ožujak",April:"Travanj",May:"Svibanj",June:"Lipanj",July:"Srpanj",August:"Kolovoz",September:"Rujan",October:"Listopad",November:"Studeni",December:"Prosinac",login:"Prijaviti se",register:"Registracija",details:"Detalji",join:"join",joinerror:"Došlo je do pogreške prilikom registracije na turnir, pokušajte ponovno.",left:"lijevo",minutes:"minute",hours:"sati",days:"dani"}},o=(e,t)=>{const i=t;return n[void 0!==i&&r.includes(i)?i:"en"][e]},a=class{constructor(t){e(this,t),this.enrolled=!1,this.showReadMore=!1,this.clientStyling="",this.clientStylingUrl="",this.limitStylingAppends=!1,this.joinButtonLoading=!1,this.errorJoin=!1,this.errorJoinConcurrently=!1}componentDidRender(){!this.limitStylingAppends&&this.host&&(this.clientStyling&&this.setClientStyling(),this.clientStylingUrl&&this.setClientStylingURL(),this.limitStylingAppends=!0)}setClientStyling(){const e=new CSSStyleSheet;e.replace(this.clientStyling),this.host.shadowRoot.adoptedStyleSheets=[...this.host.shadowRoot.adoptedStyleSheets,e]}setClientStylingURL(){let e=new URL(this.clientStylingUrl);fetch(e.href).then((e=>e.text())).then((e=>{const t=new CSSStyleSheet;t.replace(e),this.host.shadowRoot.adoptedStyleSheets=[...this.host.shadowRoot.adoptedStyleSheets,t]}))}loginAction(){this.loginEvent&&(window.postMessage({type:this.loginEvent,transition:"Login"},window.location.href),"function"==typeof gtag&&gtag("event","OpenLoginModal",{context:"TournamentsThumbnailController"})),this.loginUrl&&(location.href=this.loginUrl)}registerAction(){this.registerEvent&&(window.postMessage({type:this.registerEvent,transition:"Register"},window.location.href),"function"==typeof gtag&&gtag("event","OpenRegisterModal",{context:"TournamentsThumbnailController"})),this.registerUrl&&(location.href=this.registerUrl)}async joinAction(e,t){var i;this.errorJoin=!1,this.errorJoinConcurrently=!1,window.postMessage({type:"TournamentJoinRequest",tournamentId:e},window.location.href),this.joinButtonLoading=!0;let r=new URL(`${this.endpoint}/v1/bonus/claim`),n=new Headers,o={};r.searchParams.append("language",this.language),r.searchParams.append("platform",(()=>{let e=window.navigator.userAgent;return e.toLowerCase().match(/android/i)?"Android":e.toLowerCase().match(/iphone/i)?"iPhone":e.toLowerCase().match(/ipad|ipod/i)?"iPad":"PC"})()),n.append("Content-Type","application/json"),n.append("X-SessionID",this.session),t&&(o={language:this.language,bonusCode:t,currency:this.currency});let a={method:"PUT",headers:n,body:JSON.stringify(o)};const s=()=>{this.joinButtonLoading=!1,this.enrolled=!0,window.postMessage({type:"TournamentUserEnrolled",userenrolled:this.enrolled},window.location.href)},u=()=>{this.joinButtonLoading=!1,this.errorJoin=!0},d=await(async()=>{let e;try{e=await fetch(`${this.endpoint}/v1/bonus/claim?${r.searchParams.toString()}`,a),e=await e.json()}catch(e){u()}return e})();if(d)if(1==d.success)s();else if(d.errorMessage.match("VersionMismatchException")){let e;e=await fetch(`${this.endpoint}/v1/tournaments/${this.tournamentId}`,{headers:{"X-SessionID":this.session}}),e=await e.json(),(null===(i=null==e?void 0:e.item)||void 0===i?void 0:i.playerEnrolled)?s():(u(),this.errorJoinConcurrently=!0,this.errorJoin=!1)}else u()}detailAction(e){window.postMessage({type:"TournamentDetailsClicked",tournamentId:e,showLeaderboard:!0},window.location.href)}moreAction(e){window.postMessage({type:"TournamentReadMoreClicked",tournamentId:e},window.location.href)}render(){return t("div",{class:"TournamentButtons"},!this.session&&t("div",{class:"ButtonGroup"},t("button",{class:"LoginButton Button",part:"LoginButton",onClick:()=>this.loginAction()},o("login",this.language)),t("button",{class:"RegisterButton Button",part:"RegisterButton",onClick:()=>this.registerAction()},o("register",this.language))),this.session&&t("div",null,!this.enrolled&&t("div",{class:"ButtonGroup"},t("button",{class:"Button",onClick:()=>this.joinAction(this.tournamentId,this.bonusCode)},o("join",this.language)),this.showReadMore&&t("button",{class:"Button NoBorder",onClick:()=>this.moreAction(this.tournamentId)},"Read more")),this.enrolled&&t("div",{class:"ButtonGroup"},t("button",{class:"Button",onClick:()=>this.detailAction(this.tournamentId)},o("details",this.language)),this.showReadMore&&t("button",{class:"Button NoBorder",onClick:()=>this.moreAction(this.tournamentId)},"Read more"))),(this.errorJoin||this.errorJoinConcurrently)&&t("span",{class:"ErrorText",part:"ErrorText"},o("joinerror",this.language)))}get host(){return i(this)}};a.style=':host{display:block}.ButtonGroup{display:flex;gap:4px}.Button{padding:6px 8px;border-radius:2px;border:1px solid #fff;color:#fff;background:none;position:relative;cursor:pointer}.Button.NoBorder{border:0;padding:7px 8px}.Button::after{content:"";display:block;position:absolute;border-radius:2px;left:0;top:0;width:100%;height:100%;opacity:0;transition:all 0.5s;box-shadow:0 0 10px 10px white}.Button:active::after{box-shadow:0 0 0 0 white;position:absolute;border-radius:2px;left:0;top:0;opacity:1;transition:0s}.Button:active{top:1px}';export{a as casino_tournament_buttons}
@@ -1 +0,0 @@
1
- let e,t,n=!1;const l="undefined"!=typeof window?window:{},s=l.document||{head:{}},o={t:0,l:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},r=e=>Promise.resolve(e),i=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replace}catch(e){}return!1})(),c=new WeakMap,u=e=>"sc-"+e.o,a={},f=e=>"object"==(e=typeof e)||"function"===e,$=(e,t,...n)=>{let l=null,s=!1,o=!1,r=[];const i=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?i(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!f(l))&&(l+=""),s&&o?r[r.length-1].i+=l:r.push(s?h(null,l):l),o=s)};if(i(n),t){const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}const c=h(e,null);return c.u=t,r.length>0&&(c.$=r),c},h=(e,t)=>({t:0,h:e,i:t,m:null,$:null,u:null}),d={},y=(e,t,n,s,r,i)=>{if(n!==s){let c=H(e,t),u=t.toLowerCase();if("class"===t){const t=e.classList,l=p(n),o=p(s);t.remove(...l.filter((e=>e&&!o.includes(e)))),t.add(...o.filter((e=>e&&!l.includes(e))))}else if(c||"o"!==t[0]||"n"!==t[1]){const l=f(s);if((c||l&&null!==s)&&!r)try{if(e.tagName.includes("-"))e[t]=s;else{let l=null==s?"":s;"list"===t?c=!1:null!=n&&e[t]==l||(e[t]=l)}}catch(e){}null==s||!1===s?!1===s&&""!==e.getAttribute(t)||e.removeAttribute(t):(!c||4&i||r)&&!l&&e.setAttribute(t,s=!0===s?"":s)}else t="-"===t[2]?t.slice(3):H(l,u)?u.slice(2):u[2]+t.slice(3),n&&o.rel(e,t,n,!1),s&&o.ael(e,t,s,!1)}},m=/\s/,p=e=>e?e.split(m):[],b=(e,t,n,l)=>{const s=11===t.m.nodeType&&t.m.host?t.m.host:t.m,o=e&&e.u||a,r=t.u||a;for(l in o)l in r||y(s,l,o[l],void 0,n,t.t);for(l in r)y(s,l,o[l],r[l],n,t.t)},w=(t,n,l)=>{let o,r,i=n.$[l],c=0;if(null!==i.i)o=i.m=s.createTextNode(i.i);else if(o=i.m=s.createElement(i.h),b(null,i,!1),null!=e&&o["s-si"]!==e&&o.classList.add(o["s-si"]=e),i.$)for(c=0;c<i.$.length;++c)r=w(t,i,c),r&&o.appendChild(r);return o},S=(e,n,l,s,o,r)=>{let i,c=e;for(c.shadowRoot&&c.tagName===t&&(c=c.shadowRoot);o<=r;++o)s[o]&&(i=w(null,l,o),i&&(s[o].m=i,c.insertBefore(i,n)))},g=(e,t,n,l)=>{for(;t<=n;++t)(l=e[t])&&l.m.remove()},j=(e,t)=>e.h===t.h,v=(e,t)=>{const n=t.m=e.m,l=e.$,s=t.$,o=t.i;null===o?(b(e,t,!1),null!==l&&null!==s?((e,t,n,l)=>{let s,o=0,r=0,i=t.length-1,c=t[0],u=t[i],a=l.length-1,f=l[0],$=l[a];for(;o<=i&&r<=a;)null==c?c=t[++o]:null==u?u=t[--i]:null==f?f=l[++r]:null==$?$=l[--a]:j(c,f)?(v(c,f),c=t[++o],f=l[++r]):j(u,$)?(v(u,$),u=t[--i],$=l[--a]):j(c,$)?(v(c,$),e.insertBefore(c.m,u.m.nextSibling),c=t[++o],$=l[--a]):j(u,f)?(v(u,f),e.insertBefore(u.m,c.m),u=t[--i],f=l[++r]):(s=w(t&&t[r],n,r),f=l[++r],s&&c.m.parentNode.insertBefore(s,c.m));o>i?S(e,null==l[a+1]?null:l[a+1].m,n,l,r,a):r>a&&g(t,o,i)})(n,l,t,s):null!==s?(null!==e.i&&(n.textContent=""),S(n,null,t,s,0,s.length-1)):null!==l&&g(l,0,l.length-1)):e.i!==o&&(n.data=o)},M=e=>q(e).p,k=(e,t)=>{t&&!e.S&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.S=t)))},C=(e,t)=>{if(e.t|=16,!(4&e.t))return k(e,e.g),Y((()=>O(e,t)));e.t|=512},O=(e,t)=>{const n=e.j;return T(void 0,(()=>P(e,n,t)))},P=async(e,t,n)=>{const l=e.p,o=l["s-rc"];n&&(e=>{const t=e.v,n=e.p,l=t.t,o=((e,t)=>{let n=u(t),l=B.get(n);if(e=11===e.nodeType?e:s,l)if("string"==typeof l){let t,o=c.get(e=e.head||e);o||c.set(e,o=new Set),o.has(n)||(t=s.createElement("style"),t.innerHTML=l,e.insertBefore(t,e.querySelector("link")),o&&o.add(n))}else e.adoptedStyleSheets.includes(l)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return n})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);x(e,t),o&&(o.map((e=>e())),l["s-rc"]=void 0);{const t=l["s-p"],n=()=>E(e);0===t.length?n():(Promise.all(t).then(n),e.t|=4,t.length=0)}},x=(n,l)=>{try{l=l.render(),n.t&=-17,n.t|=2,((n,l)=>{const s=n.p,o=n.M||h(null,null),r=(e=>e&&e.h===d)(l)?l:$(null,null,l);t=s.tagName,r.h=null,r.t|=4,n.M=r,r.m=o.m=s.shadowRoot||s,e=s["s-sc"],v(o,r)})(n,l)}catch(e){V(e,n.p)}return null},E=e=>{const t=e.p,n=e.g;R(e.j,"componentDidRender"),64&e.t||(e.t|=64,A(t),e.k(t),n||N()),e.S&&(e.S(),e.S=void 0),512&e.t&&X((()=>C(e,!1))),e.t&=-517},N=()=>{A(s.documentElement),X((()=>(e=>{const t=o.ce("appload",{detail:{namespace:"casino-tournament-buttons"}});return e.dispatchEvent(t),t})(l)))},R=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){V(e)}},T=(e,t)=>e&&e.then?e.then(t):t(),A=e=>e.classList.add("hydrated"),L=(e,t,n)=>{if(t.C){const l=Object.entries(t.C),s=e.prototype;if(l.map((([e,[l]])=>{(31&l||2&n&&32&l)&&Object.defineProperty(s,e,{get(){return((e,t)=>q(this).O.get(t))(0,e)},set(n){((e,t,n,l)=>{const s=q(e),o=s.O.get(t),r=s.t,i=s.j;n=((e,t)=>null==e||f(e)?e:4&t?"false"!==e&&(""===e||!!e):1&t?e+"":e)(n,l.C[t][0]),8&r&&void 0!==o||n===o||Number.isNaN(o)&&Number.isNaN(n)||(s.O.set(t,n),i&&2==(18&r)&&C(s,!1))})(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const t=new Map;s.attributeChangedCallback=function(e,n,l){o.jmp((()=>{const n=t.get(e);if(this.hasOwnProperty(n))l=this[n],delete this[n];else if(s.hasOwnProperty(n)&&"number"==typeof this[n]&&this[n]==l)return;this[n]=(null!==l||"boolean"!=typeof this[n])&&l}))},e.observedAttributes=l.filter((([e,t])=>15&t[0])).map((([e,n])=>{const l=n[1]||e;return t.set(l,e),l}))}}return e},U=(e,t={})=>{const n=[],r=t.exclude||[],c=l.customElements,a=s.head,f=a.querySelector("meta[charset]"),$=s.createElement("style"),h=[];let d,y=!0;Object.assign(o,t),o.l=new URL(t.resourcesUrl||"./",s.baseURI).href,e.map((e=>{e[1].map((t=>{const l={t:t[0],o:t[1],C:t[2],P:t[3]};l.C=t[2];const s=l.o,a=class extends HTMLElement{constructor(e){super(e),F(e=this,l),1&l.t&&e.attachShadow({mode:"open"})}connectedCallback(){d&&(clearTimeout(d),d=null),y?h.push(this):o.jmp((()=>(e=>{if(0==(1&o.t)){const t=q(e),n=t.v,l=()=>{};if(!(1&t.t)){t.t|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){k(t,t.g=n);break}}n.C&&Object.entries(n.C).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n,l,s)=>{if(0==(32&t.t)){{if(t.t|=32,(s=z(n)).then){const e=()=>{};s=await s,e()}s.isProxied||(L(s,n,2),s.isProxied=!0);const e=()=>{};t.t|=8;try{new s(t)}catch(e){V(e)}t.t&=-9,e()}if(s.style){let e=s.style;const t=u(n);if(!B.has(t)){const l=()=>{};((e,t,n)=>{let l=B.get(e);i&&n?(l=l||new CSSStyleSheet,l.replace(t)):l=t,B.set(e,l)})(t,e,!!(1&n.t)),l()}}}const o=t.g,r=()=>C(t,!0);o&&o["s-rc"]?o["s-rc"].push(r):r()})(0,t,n)}l()}})(this)))}disconnectedCallback(){o.jmp((()=>{}))}componentOnReady(){return q(this).N}};l.R=e[0],r.includes(s)||c.get(s)||(n.push(s),c.define(s,L(a,l,1)))}))})),$.innerHTML=n+"{visibility:hidden}.hydrated{visibility:inherit}",$.setAttribute("data-styles",""),a.insertBefore($,f?f.nextSibling:a.firstChild),y=!1,h.length?h.map((e=>e.connectedCallback())):o.jmp((()=>d=setTimeout(N,30)))},W=new WeakMap,q=e=>W.get(e),D=(e,t)=>W.set(t.j=e,t),F=(e,t)=>{const n={t:0,p:e,v:t,O:new Map};return n.N=new Promise((e=>n.k=e)),e["s-p"]=[],e["s-rc"]=[],W.set(e,n)},H=(e,t)=>t in e,V=(e,t)=>(0,console.error)(e,t),_=new Map,z=e=>{const t=e.o.replace(/-/g,"_"),n=e.R,l=_.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(_.set(n,e),e[t])),V)},B=new Map,G=[],I=[],J=(e,t)=>l=>{e.push(l),n||(n=!0,t&&4&o.t?X(Q):o.raf(Q))},K=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){V(e)}e.length=0},Q=()=>{K(G),K(I),(n=G.length>0)&&o.raf(Q)},X=e=>r().then(e),Y=J(I,!0);export{U as b,M as g,$ as h,r as p,D as r}