@everymatrix/casino-challenge-card 1.77.5 → 1.77.7

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.
Files changed (31) hide show
  1. package/dist/casino-challenge-card/casino-challenge-card-f02ce133.js +1 -0
  2. package/dist/casino-challenge-card/casino-challenge-card.entry.js +1 -1
  3. package/dist/casino-challenge-card/casino-challenge-card.esm.js +1 -1
  4. package/dist/casino-challenge-card/index-98abeec4.js +2 -0
  5. package/dist/casino-challenge-card/index.esm.js +1 -1
  6. package/dist/cjs/casino-challenge-card-1f059b3e.js +505 -0
  7. package/dist/cjs/casino-challenge-card.cjs.entry.js +2 -2
  8. package/dist/cjs/casino-challenge-card.cjs.js +2 -2
  9. package/dist/cjs/{index-4b50b479.js → index-c337b778.js} +25 -1
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/collection/assets/finish.svg +7 -0
  13. package/dist/collection/assets/trophy.svg +14 -0
  14. package/dist/collection/components/casino-challenge-card/casino-challenge-card.css +129 -5
  15. package/dist/collection/components/casino-challenge-card/casino-challenge-card.js +193 -14
  16. package/dist/collection/utils/locale.utils.js +35 -5
  17. package/dist/collection/utils/types.js +25 -5
  18. package/dist/esm/casino-challenge-card-f02ce133.js +503 -0
  19. package/dist/esm/casino-challenge-card.entry.js +2 -2
  20. package/dist/esm/casino-challenge-card.js +3 -3
  21. package/dist/esm/{index-d72835d2.js → index-98abeec4.js} +25 -1
  22. package/dist/esm/index.js +2 -2
  23. package/dist/esm/loader.js +3 -3
  24. package/dist/types/components/casino-challenge-card/casino-challenge-card.d.ts +26 -1
  25. package/dist/types/components.d.ts +32 -0
  26. package/dist/types/utils/types.d.ts +17 -7
  27. package/package.json +1 -1
  28. package/dist/casino-challenge-card/casino-challenge-card-1c0b899b.js +0 -1
  29. package/dist/casino-challenge-card/index-d72835d2.js +0 -2
  30. package/dist/cjs/casino-challenge-card-e1c638cc.js +0 -349
  31. package/dist/esm/casino-challenge-card-1c0b899b.js +0 -347
@@ -0,0 +1 @@
1
+ import{r as M,c as e,h as i}from"./index-98abeec4.js";const n=["ro","en","fr","ar","hr"],t={en:{totalLevels:"Total levels:",level1:"Level 1:",get:"Get:",endsIn:"Ends In",expired:"Expired",viewDetails:"View details",placeBetsOf:"Place bets of",place:"Place",bet:"bet",bets:"bets",minBet:"min bet",forfeited:"Forfeited",finished:"Finished",suspended:"Suspended",start:"Start",resume:"Resume",pause:"Pause"},ro:{totalLevels:"Niveluri totale:",level1:"Nivel 1:",get:"Obține:",endsIn:"Se termină în",expired:"Expirat",viewDetails:"Vezi detalii",placeBetsOf:"Plasează pariuri de",place:"Plasare",bet:"pariu",bets:"pariuri",minBet:"pariu minim",forfeited:"Pierdut",finished:"Terminat",suspended:"Suspendat",start:"Start",resume:"Reia",pause:"Pauză"},fr:{totalLevels:"Niveaux totaux :",level1:"Niveau 1 :",get:"Obtenir :",endsIn:"Se termine dans",expired:"Expiré",viewDetails:"Voir les détails",placeBetsOf:"Placez des paris de",place:"Placer",bet:"pari",bets:"paris",minBet:"mise minimale",forfeited:"Forfait",finished:"Terminé",suspended:"Suspendu",start:"Démarrer",resume:"Reprendre",pause:"Pause"},ar:{totalLevels:"إجمالي المستويات:",level1:"المستوى 1:",get:"احصل على:",endsIn:"ينتهي في",expired:"منتهي الصلاحية",viewDetails:"عرض التفاصيل",placeBetsOf:"قم بوضع رهانات بقيمة",place:"ضع",bet:"رهان",bets:"رهانات",minBet:"الحد الأدنى للرهان",forfeited:"خاسر",finished:"منتهي",suspended:"معلق",start:"ابدأ",resume:"استئناف",pause:"إيقاف مؤقت"},hr:{totalLevels:"Ukupno razina:",level1:"Razina 1:",get:"Dobiti:",endsIn:"Završava za",expired:"Isteklo",viewDetails:"Pogledaj detalje",placeBetsOf:"Postavite oklade od",place:"Postavi",bet:"kladnja",bets:"kladnje",minBet:"minimalna oklada",forfeited:"Oduzeto",finished:"Završeno",suspended:"Suspendirano",start:"Počni",resume:"Nastavi",pause:"Pauza"}},r=(M,e)=>{const i=e;return t[void 0!==i&&n.includes(i)?i:"en"][M]};var N,o,D,a,g;!function(M){M[M.Accumulative=0]="Accumulative",M[M.SingleBet=1]="SingleBet",M[M.MultipleOneBetSize=2]="MultipleOneBetSize"}(N||(N={})),function(M){M[M.Single=0]="Single",M[M.Daily=1]="Daily",M[M.Weekly=2]="Weekly",M[M.Monthly=3]="Monthly"}(o||(o={})),function(M){M[M.FreeSpins=0]="FreeSpins",M[M.LuckyWheel=1]="LuckyWheel",M[M.Leaderboard=2]="Leaderboard",M[M.Challenge=3]="Challenge",M[M.Custom=4]="Custom"}(D||(D={})),function(M){M[M.Closed=0]="Closed",M[M.InProgress=1]="InProgress",M[M.Fillup=2]="Fillup",M[M.Completed=3]="Completed"}(a||(a={})),function(M){M[M.Started=0]="Started",M[M.InProgress=1]="InProgress",M[M.PendingLevelReward=2]="PendingLevelReward",M[M.Completed=3]="Completed",M[M.Expired=4]="Expired",M[M.Forfeited=5]="Forfeited",M[M.Awaiting=6]="Awaiting",M[M.Paused=7]="Paused"}(g||(g={}));const s=["started","inProgress","pendingLevelReward","completed","expired","forfeited","awaiting","paused"];var j,c;function u(M,e){if(M){const i=document.createElement("style");i.innerHTML=e,M.appendChild(i)}}function d(M,e){const i=new URL(e);fetch(i.href).then((M=>M.text())).then((e=>{const i=document.createElement("style");i.innerHTML=e,M&&M.appendChild(i)})).catch((M=>{console.error("There was an error while trying to load client styling from URL",M)}))}function I(M,e){if(window.emMessageBus){const i=document.createElement("style");window.emMessageBus.subscribe(e,(e=>{i.innerHTML=e,M&&M.appendChild(i)}))}}!function(M){M[M.GameLaunch=0]="GameLaunch",M[M.Reward=1]="Reward",M[M.Manual=2]="Manual"}(j||(j={})),function(M){M[M.Period=0]="Period",M[M.Date=1]="Date"}(c||(c={}));const z=class{constructor(n){M(this,n),this.timerExpired=e(this,"timerExpired",7),this.calculateTargetValue=(M,e)=>{var i;if(!M)return"";const n=(null===(i=M.BetRange)||void 0===i?void 0:i.MinBet)?`, ${r("minBet",this.language)} ${e+M.BetRange.MinBet}`:"";switch(M.LevelTargetType){case N.Accumulative:return`${r("placeBetsOf",this.language)} ${e+M.DisplayCurrencyTargetTurnover+n}`;case N.SingleBet:return`${r("place",this.language)} ${e+M.TargetTurnover} ${r("bet",this.language)}`;case N.MultipleOneBetSize:return`${r("place",this.language)} ${M.TargetBetCount} ${r("bets",this.language)+n}`}},this.onMouseEnterHandler=(M,e)=>{e.scrollWidth>e.clientWidth&&(this.tooltipIndex=M)},this.onMouseLeaveHandler=()=>{this.tooltipIndex=null},this.getBadgeContent=()=>{switch(this.challenge.Status){case g.Expired:return r("expired",this.language);case g.Forfeited:return r("forfeited",this.language);case g.Completed:return r("finished",this.language);case g.Paused:return r("suspended",this.language);default:return this.timeLeft?[r("endsIn",this.language)," - ",i("span",null,this.timeLeft)]:r("expired",this.language)}},this.checkAttrs=()=>(this.endpoint||(this.error="Endpoint is missing! Please provide a valid endpointURL.",this.hasError=!0,console.error(this.error)),this.hasError),this.mbSource=void 0,this.clientStyling=void 0,this.clientStylingUrl=void 0,this.translationUrl="",this.language="en",this.endpoint="",this.domain="",this.session="",this.challenge=void 0,this.isUserAuthorized=!0,this.tooltipIndex=null,this.timeLeft=void 0,this.error="",this.hasError=!1,this.actionLoading=!1}get infoItems(){var M,e,i,n,t;const N=this.isUserAuthorized?null===(M=this.challenge)||void 0===M?void 0:M.LevelProgresses.find((M=>M.ProgressStatus===a.InProgress)):null===(e=this.challenge)||void 0===e?void 0:e.LevelProgresses.find((M=>0===M.OrderNumber));if(N){const M=null===(i=N.Rewards)||void 0===i?void 0:i.slice(0,2).map((M=>M.RewardDescription)).join(" + ");return[{lable:r("totalLevels",this.language),value:null===(n=this.challenge.LevelProgresses)||void 0===n?void 0:n.length},{lable:r("level1",this.language),value:this.calculateTargetValue(N,null===(t=this.challenge)||void 0===t?void 0:t.CurrencySymbol)},{lable:r("get",this.language),value:M}]}return[]}handleClientStylingChange(M,e){M!=e&&u(this.stylingContainer,this.clientStyling)}handleClientStylingUrlChange(M,e){M!=e&&d(this.stylingContainer,this.clientStylingUrl)}handleMbSourceChange(M,e){M!=e&&I(this.stylingContainer,`${this.mbSource}.Style`)}connectedCallback(){this.timerId=setInterval((()=>{this.updateTime()}),1e3)}componentWillLoad(){this.translationUrl&&(async M=>{if(M)try{const i=await fetch(M);if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);const n=await i.json();e=n,Object.keys(e).forEach((M=>{for(let i in e[M])t[M][i]=e[M][i]}))}catch(M){console.error("Failed to fetch or parse translations from URL:",M)}var e})(this.translationUrl),this.updateTime()}componentDidLoad(){this.stylingContainer&&(this.mbSource&&I(this.stylingContainer,`${this.mbSource}.Style`),this.clientStyling&&u(this.stylingContainer,this.clientStyling),this.clientStylingUrl&&d(this.stylingContainer,this.clientStylingUrl))}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe(),clearInterval(this.timerId)}updateTime(){var M;this.timeLeft=function(M){const e=new Date;let i=new Date(M).getTime()-e.getTime();if(i<=0)return;const n=Math.floor(i/864e5);i-=864e5*n;const t=Math.floor(i/36e5);i-=36e5*t;const r=Math.floor(i/6e4);i-=6e4*r;const N=Math.floor(i/1e3),o=M=>M.toString().padStart(2,"0");return`${o(n)} : ${o(t)} : ${o(r)} : ${o(N)}`}(null===(M=this.challenge)||void 0===M?void 0:M.ExpirationTime),!this.timeLeft&&this.timerExpired&&(clearInterval(this.timerId),this.timerExpired.emit(this.challenge.Id))}renderInfoItem(M,e){return i("div",{class:`info-item ${this.isChallengeGrayed}`,onMouseEnter:M=>this.onMouseEnterHandler(e,M.currentTarget),onMouseLeave:this.onMouseLeaveHandler},i("span",{class:"info-item__label"},M.lable),M.value,this.tooltipIndex===e&&i("div",{class:"info-item__tooltip"},M.value))}get getCardBadge(){return i("div",{class:`card__badge ${s[this.challenge.Status]}`},this.getBadgeContent())}get isChallengeGrayed(){return[g.Expired,g.Forfeited,g.Completed].includes(this.challenge.Status)?"grayed":""}get getChallengeProgress(){var M;const e=null===(M=this.challenge)||void 0===M?void 0:M.LevelProgresses.find((M=>M.ProgressStatus===a.InProgress));if(!this.isUserAuthorized||!e)return null;const{Status:n,LevelProgresses:t}=this.challenge;if(n===g.Expired||n===g.Started)return i("div",{class:"progress__placeholder"});const N=n===g.Paused?r("suspended",this.language):n===g.Completed?r("finished",this.language):`${e.ProgressPercentage}%`,o=!t.some((M=>M.OrderNumber>e.OrderNumber)),D=n===g.Completed?"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTguNjI4NzQgMTAuMTI1VjExLjI2MzNDOC42Mjg3NCAxMS4yNjMzIDguMTQ0MTcgMTEuNzYzMiA1Ljk5OTkyIDExLjc2MzJDMy44NTU2NiAxMS43NjMyIDMuMzcxMDkgMTEuMjYzMyAzLjM3MTA5IDExLjI2MzNWMTAuMTI1SDguNjI4NzRaIiBmaWxsPSIjRTZBNDVFIi8+CjxwYXRoIGQ9Ik04LjYyODggMTAuMTI1VjExLjI2MzNDOC42Mjg4IDExLjI2MzMgOC4xNDQyMyAxMS43NjMyIDUuOTk5OTggMTEuNzYzMkM1LjI4MzMxIDExLjc2MzIgNC43NTIwNSAxMS43MDczIDQuMzYyMyAxMS42MzNDNi4zMTYxMiAxMS43NTk0IDguNjI4OCAxMC4xMjUgOC42Mjg4IDEwLjEyNVoiIGZpbGw9IiNEODkyNEUiLz4KPHBhdGggZD0iTTQuODg2OSA5LjU3NDcxQzMuOTkxNDEgOS42NzE1MyAzLjM3MTA5IDkuODgxNTYgMy4zNzEwOSAxMC4xMjUxQzMuMzcxMDkgMTAuNDYwNSA0LjU0ODA2IDEwLjczMjQgNS45OTk5MiAxMC43MzI0QzcuNDUxNzggMTAuNzMyNCA4LjYyODc0IDEwLjQ2MDUgOC42Mjg3NCAxMC4xMjUxQzguNjI4NzQgOS44ODE1OCA4LjAwODU0IDkuNjcxNTcgNy4xMTMyIDkuNTc0NzRMNC44ODY5IDkuNTc0NzFaIiBmaWxsPSIjRkZFRENDIi8+CjxwYXRoIGQ9Ik01LjQzMTA2IDcuMTE0MjZWOC4yNzk0NkM1LjQzMTA2IDkuMDMyNzYgNC45NjYzMyA5LjcwNzk2IDQuMjYyNyA5Ljk3Njk1QzQuMjYyNyA5Ljk3Njk1IDQuNjQ1NjcgMTAuMjgxOSA2LjAwMDIzIDEwLjI4MTlDNy4zNTQ3OSAxMC4yODE5IDcuNzM3NzYgOS45NzY5NSA3LjczNzc2IDkuOTc2OTVDNy4wMzQxMyA5LjcwNzk2IDYuNTY5MzkgOS4wMzI3NiA2LjU2OTM5IDguMjc5NDZWNy4xMTQyNkg1LjQzMTA2WiIgZmlsbD0iI0Y3RDE3RiIvPgo8cGF0aCBkPSJNMi45MTQwNiAwLjc4MzY5MUMyLjkxNDA2IDQuMzEyNjcgMy42MDEyIDcuMzQ4NzMgNS45OTk5NCA3LjM0ODczQzguMzk4NjcgNy4zNDg3MyA5LjA4NTgxIDQuMzEyNjcgOS4wODU4MSAwLjc4MzY5MUgyLjkxNDA2WiIgZmlsbD0iI0VBQjE2NiIvPgo8cGF0aCBkPSJNMi45NDQzNiAyLjAwMjc3SDEuMTU3MDlDMS4wNTkwNiAyLjAwMjc3IDAuOTg2NjMyIDIuMDkxNjcgMS4wMDcwNyAyLjE4NzU1QzEuMTQwODMgMi44MTUyIDEuNzEwNjUgNC44NTM2NCAzLjU0MDk3IDUuMzQ1NTlMMy44NTU3OCA2LjAxNTMzQzEuMjEwODYgNS4zNjYyOSAwLjUzMjQyNiAzLjEyNTYxIDAuMzU4NDA2IDIuMDIyMDVDMC4zMDY3NjEgMS42OTQ1NCAwLjU1Mzc2MyAxLjM5Nzk1IDAuODg1MzIxIDEuMzk3OTVIMi45MjE1MkwyLjk0NDM2IDIuMDAyNzdaIiBmaWxsPSIjRjdEMTdGIi8+CjxwYXRoIGQ9Ik05LjA1NTk0IDIuMDAyNzdIMTAuODQzMkMxMC45NDEyIDIuMDAyNzcgMTEuMDEzNyAyLjA5MTY3IDEwLjk5MzIgMi4xODc1NUMxMC44NTk1IDIuODE1MiAxMC4yODk3IDQuODUzNjQgOC40NTkzNCA1LjM0NTU5TDguMTQ0NTMgNi4wMTUzM0MxMC43ODk0IDUuMzY2MjkgMTEuNDY3OSAzLjEyNTYxIDExLjY0MTkgMi4wMjIwNUMxMS42OTM1IDEuNjk0NTQgMTEuNDQ2NSAxLjM5Nzk1IDExLjExNSAxLjM5Nzk1SDkuMDc4NzlMOS4wNTU5NCAyLjAwMjc3WiIgZmlsbD0iI0Y3RDE3RiIvPgo8cGF0aCBkPSJNNS45OTk5NCAxLjMyNjE3QzcuNzA0MjIgMS4zMjYxNyA5LjA4NTgxIDEuMDgyMzEgOS4wODU4MSAwLjc4MTQ5NUM5LjA4NTgxIDAuNDgwNjc3IDcuNzA0MjIgMC4yMzY4MTYgNS45OTk5NCAwLjIzNjgxNkM0LjI5NTY1IDAuMjM2ODE2IDIuOTE0MDYgMC40ODA2NzcgMi45MTQwNiAwLjc4MTQ5NUMyLjkxNDA2IDEuMDgyMzEgNC4yOTU2NSAxLjMyNjE3IDUuOTk5OTQgMS4zMjYxN1oiIGZpbGw9IiNFNkE0NUUiLz4KPHBhdGggZD0iTTguODIzNjYgMC43ODM2OTFDNy44OTgxOSA3LjAxNjg0IDQuNjE1NzcgNi41NzYxNyA0LjE5MDkyIDYuNDk4NThDNC42NDE1IDcuMDM2OCA1LjIzMzAxIDcuMzQ4NzIgNi4wMDA0MyA3LjM0ODcyQzguMzk5MTYgNy4zNDg3MiA5LjA4NjMgNC4zMTI2NyA5LjA4NjMgMC43ODM2OTFIOC44MjM2NloiIGZpbGw9IiNFNkE0NUUiLz4KPHBhdGggZD0iTTQuNjQyNCAwLjI5MzQ1N0MzLjYyMDA4IDAuMzgyMDYzIDIuOTE0MDYgMC41NjY3NDQgMi45MTQwNiAwLjc4MTM2NUMyLjkxNDA2IDEuMDAxOTQgMy42NTg3OSAxLjE5MTIxIDQuNzI3MTcgMS4yNzY3NUM0LjY3NTggMC45NTA3ODEgNC42NDY1MSAwLjYyMjIxOSA0LjY0MjQgMC4yOTM0NTdaIiBmaWxsPSIjRDg5MjRFIi8+CjxwYXRoIGQ9Ik02LjIyNTQ4IDIuNjAzNjlMNi4zOTQ5IDMuMTI1MTFDNi40MjY2MiAzLjIyMjc1IDYuNTE3NjEgMy4yODg4NiA2LjYyMDI3IDMuMjg4ODZINy4xNjg1M0M3LjM5ODA5IDMuMjg4ODYgNy40OTM1NCAzLjU4MjYxIDcuMzA3ODIgMy43MTc1NUw2Ljg2NDI3IDQuMDM5ODFDNi43ODEyMSA0LjEwMDE1IDYuNzQ2NDYgNC4yMDcxMSA2Ljc3ODE4IDQuMzA0NzVMNi45NDc2MSA0LjgyNjE4QzcuMDE4NTQgNS4wNDQ1IDYuNzY4NjYgNS4yMjYwNiA2LjU4Mjk0IDUuMDkxMTJMNi4xMzkzOSA0Ljc2ODg2QzYuMDU2MzMgNC43MDg1MiA1Ljk0Mzg3IDQuNzA4NTIgNS44NjA4MSA0Ljc2ODg2TDUuNDE3MjYgNS4wOTExMkM1LjIzMTU0IDUuMjI2MDYgNC45ODE2NSA1LjA0NDUgNS4wNTI1OSA0LjgyNjE4TDUuMjIyMDEgNC4zMDQ3NUM1LjI1Mzc0IDQuMjA3MTEgNS4yMTg5OCA0LjEwMDE1IDUuMTM1OTMgNC4wMzk4MUw0LjY5MjM4IDMuNzE3NTVDNC41MDY2NiAzLjU4MjYxIDQuNjAyMSAzLjI4ODg2IDQuODMxNjcgMy4yODg4Nkg1LjM3OTkzQzUuNDgyNTkgMy4yODg4NiA1LjU3MzU4IDMuMjIyNzUgNS42MDUzIDMuMTI1MTFMNS43NzQ3MiAyLjYwMzY5QzUuODQ1NjYgMi4zODUzNiA2LjE1NDU0IDIuMzg1MzYgNi4yMjU0OCAyLjYwMzY5WiIgZmlsbD0iI0Q4OTI0RSIvPgo8cGF0aCBkPSJNNi4yMjU0OCAyLjUwOTk0TDYuMzk0OSAzLjAzMTM2QzYuNDI2NjIgMy4xMjkgNi41MTc2MSAzLjE5NTExIDYuNjIwMjcgMy4xOTUxMUg3LjE2ODUzQzcuMzk4MDkgMy4xOTUxMSA3LjQ5MzU0IDMuNDg4ODYgNy4zMDc4MiAzLjYyMzhMNi44NjQyNyAzLjk0NjA2QzYuNzgxMjEgNC4wMDY0IDYuNzQ2NDYgNC4xMTMzNiA2Ljc3ODE4IDQuMjExTDYuOTQ3NjEgNC43MzI0M0M3LjAxODU0IDQuOTUwNzUgNi43Njg2NiA1LjEzMjMxIDYuNTgyOTQgNC45OTczN0w2LjEzOTM5IDQuNjc1MTFDNi4wNTYzMyA0LjYxNDc3IDUuOTQzODcgNC42MTQ3NyA1Ljg2MDgxIDQuNjc1MTFMNS40MTcyNiA0Ljk5NzM3QzUuMjMxNTQgNS4xMzIzMSA0Ljk4MTY1IDQuOTUwNzUgNS4wNTI1OSA0LjczMjQzTDUuMjIyMDEgNC4yMTFDNS4yNTM3NCA0LjExMzM2IDUuMjE4OTggNC4wMDY0IDUuMTM1OTMgMy45NDYwNkw0LjY5MjM4IDMuNjIzOEM0LjUwNjY2IDMuNDg4ODYgNC42MDIxIDMuMTk1MTEgNC44MzE2NyAzLjE5NTExSDUuMzc5OTNDNS40ODI1OSAzLjE5NTExIDUuNTczNTggMy4xMjkgNS42MDUzIDMuMDMxMzZMNS43NzQ3MiAyLjUwOTk0QzUuODQ1NjYgMi4yOTE2MSA2LjE1NDU0IDIuMjkxNjEgNi4yMjU0OCAyLjUwOTk0WiIgZmlsbD0iI0ZGRURDQyIvPgo8L3N2Zz4K":o?"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuNjQ0NTQgMTIuMTI2MkMxLjU5ODQyIDEyLjEyNzkgMS41NTEyOSAxMi4xMjI3IDEuNTA0MzIgMTIuMTA5OUMxLjI1NzU3IDEyLjA0MjEgMS4xMTI0OSAxMS43ODcyIDEuMTgwMjIgMTEuNTQwM0wzLjUzMDE2IDIuOTU4N0MzLjU5NzkxIDIuNzEyMSAzLjg1MjIyIDIuNTY2NzQgNC4wOTk3MyAyLjYzNDZDNC4zNDY0NyAyLjcwMjM0IDQuNDkxNTUgMi45NTcyNyA0LjQyMzgyIDMuMjA0MTZMMi4wNzM4OCAxMS43ODU4QzIuMDE5MDIgMTEuOTg1NSAxLjg0MTIzIDEyLjExODggMS42NDQ1NCAxMi4xMjYyWiIgZmlsbD0iIzM2QkEzQiIvPgo8cGF0aCBkPSJNMS41NjMwNCAxMS4yNjM0QzEuNTQ3NjggMTEuMjYzOSAxLjUzMTk4IDExLjI2MjIgMS41MTYzMyAxMS4yNTc5QzEuNDM0MTQgMTEuMjM1NCAxLjM4NTgyIDExLjE1MDUgMS40MDgzOCAxMS4wNjgyTDMuNjU4MTMgMi45MTUwM0MzLjY4MDY5IDIuODMyODkgMy43NjU0MSAyLjc4NDQ3IDMuODQ3ODUgMi44MDcwN0MzLjkzMDA0IDIuODI5NjMgMy45NzgzNyAyLjkxNDU1IDMuOTU1OCAyLjk5Njc5TDEuNzA2MDUgMTEuMTVDMS42ODc3OCAxMS4yMTY1IDEuNjI4NTYgMTEuMjYwOSAxLjU2MzA0IDExLjI2MzRaIiBmaWxsPSIjQkNGQ0IxIiBmaWxsLW9wYWNpdHk9IjAuMSIvPgo8cGF0aCBkPSJNMTIuNTE5MyAxMi43OTMyTDEwLjcyNjEgMTMuMDIzNEM5LjM2MTczIDEzLjE5ODYgNy45NzM2MSAxMi43MjIyIDcuMDkzMzkgMTEuNjY1Mkw3LjA0Nzc5IDExLjYxMDRDNi4zMjg0MyAxMC43NDY2IDUuMzA5MzEgMTAuMTY1NCA0LjE4NjU2IDEwLjEwOTFMMi4zNjIzOSAxMC4wMTc2TDIuMzA0NjkgOS45NTk4OEw0LjIyOTY5IDMuMTg0NTdMNi4wOTMxMiAzLjI4MzY3QzcuMjIxNjkgMy4zNDM2OCA4LjI3Mjk3IDMuODc1NjIgOC45ODk4MSA0Ljc0OTM1QzkuODY4OTIgNS44MjA4NyAxMS4yMzc3IDYuMzY0NDUgMTIuNjEyNCA2LjE4Nzk4TDE0LjMzODIgNS44OTc2N0wxNC4zODY2IDUuOTYwMjNMMTIuNTE5MyAxMi43OTMyWiIgZmlsbD0iI0JDRkNCMSIgZmlsbC1vcGFjaXR5PSIwLjEiLz4KPHBhdGggZD0iTTEyLjQ2MTYgMTIuNzM1NkwxMC42Njg0IDEyLjk2NThDOS4zMDQwMyAxMy4xNDA5IDcuOTQ0NzYgMTIuNjA2OSA3LjA2NDU0IDExLjU0OTlMNy4wMTg5NCAxMS40OTUxQzYuMjk5NTggMTAuNjMxMiA1LjI1MTYxIDEwLjEwNzggNC4xMjg4NiAxMC4wNTE0TDIuMzA0NjkgOS45NTk5Nkw0LjE3MTk5IDMuMTI2OTVMNi4wMzU0MiAzLjIyNjA1QzcuMTYzOTkgMy4yODYwNyA4LjIxNTI4IDMuODE4IDguOTMyMTEgNC42OTE3NEM5LjgxMTIyIDUuNzYzMjYgMTEuMTggNi4zMDY4MyAxMi41NTQ3IDYuMTMwMzZMMTQuMzI4OSA1LjkwMjYxTDEyLjQ2MTYgMTIuNzM1NloiIGZpbGw9IiNCRUZGQkEiLz4KPHBhdGggZD0iTTEwLjQ4NDYgMTAuNzE2NEMxMC4wOTEzIDEwLjY4NTMgOS43MDIzOSAxMC42MDM4IDkuMzMzNjggMTAuNDU5NUM4LjgxMjM1IDEwLjI1NTIgOC4zNDIzNyA5LjkzNzIxIDcuOTQ4OTEgOS41NDA0Nkw4LjU4MTY5IDcuMjI1MDNDOC45NzYwNyA3LjYyMTkxIDkuNDQ2ODcgNy45Mzk4OSA5Ljk2OTE0IDguMTQzODhDMTAuMzM2OCA4LjI4NzUzIDEwLjcyNDIgOC4zNzM3NSAxMS4xMTYzIDguNDA0OTVMMTAuNDg0NiAxMC43MTY0Wk01LjY0NTA3IDcuOTM5MDJDNS4zNjg1OCA3Ljg2MjgzIDUuMDgzMjEgNy44MTQ2NCA0Ljc5Mjc4IDcuNzk5MThMMi45MzAxOCA3LjcwMDA0TDMuNTYzMTMgNS4zODM4Nkw1LjQyNzM5IDUuNDgzMDFDNS43MTczIDUuNDk4NCA2LjAwMjE1IDUuNTQ2NDkgNi4yNzgxNSA1LjYyMjUyTDUuNjQ1MDcgNy45MzkwMlpNOC45NDEzNyA0LjY4NjgyQzkuMDIxNjggNC43ODQ3MyA5LjEwODM1IDQuODc1NTMgOS4xOTY0OCA0Ljk2NDQ3TDkuMTkyMjUgNC45NjMzNUw4LjU3ODA2IDcuMjEwNzdDOC41MDI3OSA3LjEzNDU0IDguNDI1MzYgNy4wNjAzOSA4LjM1NjM0IDYuOTc4MTlMOC4zMjcwNCA2Ljk0Mjg0QzcuNzk3MzUgNi4yOTcyMiA3LjA4MDM2IDUuODM4IDYuMjg2OTYgNS42MTc4MUw2LjkwMzI5IDMuMzYyNTVDNy42OTYyMSAzLjU4MTkyIDguNDEwNjggNC4wMzk5OSA4Ljk0MTM3IDQuNjg2ODJaTTcuMDczNzggMTEuNTQ0OUw3LjAyODE5IDExLjQ5MDJDNi41MDUzNiAxMC44NjIzIDUuODA3ODYgMTAuNDE3MyA1LjAzNTMgMTAuMTk3OEw1LjY1MDA3IDcuOTQ4MjNDNi40NDIwNCA4LjE2Nzk1IDcuMTU3NzQgOC42MjYzNCA3LjY4NjUxIDkuMjcwODNMNy43MTE0NCA5LjMwMDk4QzcuNzgyODQgOS4zODYyOSA3Ljg2Mjc3IDkuNDYzNDcgNy45NDA4NiA5LjU0MjM5TDcuMzIxMDQgMTEuODEwNEM3LjIzNTkgMTEuNzI1MSA3LjE1MTczIDExLjYzODUgNy4wNzM3OCAxMS41NDQ5Wk0xMi40NzA5IDEyLjczMDdMMTAuNjc3NiAxMi45NjA5QzEwLjUwNjQgMTIuOTgyOSAxMC4zMzUxIDEyLjk5MzcgMTAuMTY1IDEyLjk5MzdDMTAuMDY3NCAxMi45OTM3IDkuOTcwODcgMTIuOTg0NyA5Ljg3NDEzIDEyLjk3NzdMMTAuNDg4OCAxMC43Mjg4QzEwLjU5MjkgMTAuNzM2OSAxMC42OTczIDEwLjc0MzMgMTAuODAxOCAxMC43NDMzQzEwLjk3MjMgMTAuNzQzMyAxMS4xNDI5IDEwLjczMjUgMTEuMzEyMyAxMC43MTA3TDEzLjA4NTEgMTAuNDgzMUwxMi40NzA5IDEyLjczMDdaTTEzLjcyMjEgOC4xNTIxOEwxMS45NDY0IDguMzgwMTJDMTEuNjc0MSA4LjQxNDg4IDExLjM5OTcgOC40MTQzIDExLjEyNyA4LjM5MzI5TDExLjc0MjUgNi4xNDEwOEMxMS44NDUyIDYuMTQ5IDExLjk0NzYgNi4xNTgyNSAxMi4wNTEyIDYuMTU4MjVDMTIuMjIxNSA2LjE1ODI1IDEyLjM5MjYgNi4xNDc0NCAxMi41NjM5IDYuMTI1NDRMMTQuMzM4MiA1Ljg5NzY5TDEzLjcyMjEgOC4xNTIxOFoiIGZpbGw9IiMzNkJBM0IiLz4KPC9zdmc+Cg==":"";return i("div",{class:{progress:!0,paused:n===g.Paused,grayed:n===g.Forfeited}},i("div",{class:{progress__point:!0,start:!0,hidden:n===g.Completed}},e.OrderNumber+1),i("div",{class:{progress__bar:!0,finished:n===g.Completed},style:{width:`${e.ProgressPercentage}%`}},N),i("div",{class:{progress__point:!0,end:!0,finished:n===g.Completed}},D?i("img",{class:"progress__icon",src:D}):e.OrderNumber+2))}get getCardButton(){if(this.isUserAuthorized){if(this.challenge.Status===g.Started)return i("button",{class:"card__button filled",disabled:this.actionLoading,onClick:()=>this.joinUnjoinProgress(!0)},r("start",this.language));if(this.challenge.Status===g.Paused)return i("button",{class:"card__button grayed",disabled:this.actionLoading,onClick:()=>this.joinUnjoinProgress(!0)},r("resume",this.language));if(this.challenge.Status===g.InProgress||this.challenge.Status===g.PendingLevelReward)return i("button",{class:"card__button grayed",disabled:this.actionLoading,onClick:()=>this.joinUnjoinProgress(!1)},r("pause",this.language))}return i("button",{class:"card__button"},r("viewDetails",this.language))}async joinUnjoinProgress(M){var e;const i=null===(e=this.challenge)||void 0===e?void 0:e.LevelProgresses.find((M=>M.ProgressStatus===a.InProgress));if(!this.checkAttrs()){const e=`${this.endpoint}/challenge/ChangeProgressStatus`,n=Object.assign(Object.assign({DomainId:this.domain},this.session&&{PlayerSessionId:this.session}),M?{ProgressToActivate:i.LevelId}:{ProgressToDeactivate:i.LevelId});return this.actionLoading=!0,fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}).then((M=>M.json())).finally((()=>this.actionLoading=!1))}}render(){var M,e,n,t;return i("div",{key:"3405a652d64b5a9d1bc2f43ff226abfefb359158",ref:M=>this.stylingContainer=M},i("div",{key:"a84228899e4845a36fa94b11b4e8d5b1fcbc0ae7",class:"card"},i("img",{key:"a4b6b6f8161f1184442b1e12c510254323b91e1a",class:`card__image ${this.isChallengeGrayed}`,src:null===(e=null===(M=this.challenge)||void 0===M?void 0:M.ChallengePresentation)||void 0===e?void 0:e.Url}),this.getCardBadge,i("div",{key:"7d24cf5cdec35ab541989308811c12d1d665c891",class:"card__content"},i("h1",{key:"b9e045fd05580d001be012903938102dbbc64128",class:"card__title"},null===(t=null===(n=this.challenge)||void 0===n?void 0:n.ChallengePresentation)||void 0===t?void 0:t.PresentationName),this.getChallengeProgress,this.infoItems.map(((M,e)=>this.renderInfoItem(M,e))),this.getCardButton)))}static get watchers(){return{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}}};z.style='.card {\n width: 308px;\n border-radius: 16px;\n border: 2px solid var(--emw--button-border-color, rgba(221, 255, 207, 0.1019607843));\n background-color: var(--emw--color-background, #141515);\n box-sizing: border-box;\n position: relative;\n}\n@container challenges-container (max-width: 576px) {\n .card {\n width: 100%;\n }\n}\n.card:hover {\n background: linear-gradient(90deg, rgb(0, 62, 92) 0%, rgb(17, 59, 33) 100%);\n cursor: pointer;\n}\n.card__image {\n width: 100%;\n height: 200px;\n border-radius: 16px 16px 0 0;\n}\n@container challenges-container (max-width: 576px) {\n .card__image {\n height: 224px;\n }\n}\n.card__image.grayed {\n opacity: 0.6;\n}\n.card__title {\n color: var(--emw--color-white, #FFFFFF);\n font-size: var(--emw--font-size-medium, 16px);\n margin: 0 0 10px;\n}\n.card__content {\n padding: 20px;\n}\n.card__button {\n margin-top: 20px;\n width: 100%;\n height: 34px;\n background: transparent;\n text-transform: uppercase;\n border-radius: var(--emw--button-border-radius, 99px);\n border: 2px solid var(--emw--button-border-color, #727672);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-bold, 700);\n color: var(--emw--color-secondary, #e9931e);\n}\n.card__button:hover {\n border-color: var(--emw--color-secondary, #e9931e);\n cursor: pointer;\n}\n.card__button.filled {\n background-color: var(--emw--button-background-primary-color, #18CE51);\n color: var(--emw--color-white, #FFFFFF);\n border-color: var(--emw--color-gray-300, #083B17);\n}\n.card__button.filled:hover {\n color: var(--emw--color-gray-300, #083B17);\n border-color: transparent;\n box-shadow: 0 0 4px 0 rgba(188, 252, 177, 0.2), 0 0 20px 0 rgba(0, 183, 79, 0.5);\n}\n.card__button.grayed {\n color: var(--emw--color-gray-50, #E2E2E2);\n}\n.card__button.grayed:hover {\n color: var(--emw--color-white, #FFFFFF);\n border-color: var(--emw--button-primary-border, #24B24E);\n}\n.card__button:hover {\n border-color: var(--emw--color-secondary, #e9931e);\n cursor: pointer;\n}\n.card__button:disabled, .card__button:disabled:hover {\n color: var(--emw--color-gray-50, #E2E2E2);\n cursor: not-allowed;\n border: 2px solid var(--emw--button-border-color, #727672);\n opacity: 0.7;\n}\n.card__badge {\n position: absolute;\n background: var(--emw--color-white, #FFFFFF);\n top: 6px;\n right: 6px;\n border-radius: 30px;\n padding: 2px 12px;\n line-height: 22px;\n font-weight: var(--emw--font-weight-medium, 500);\n font-size: var(--emw--font-size-x-small, 12px);\n box-shadow: 0 4px 4px 0 var(--emw--button-box-shadow-color, rgba(0, 0, 0, 0.25));\n backdrop-filter: blur(20px);\n box-sizing: border-box;\n}\n.card__badge span {\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.card__badge.expired {\n background: var(--emw--background-gray-color, rgba(250, 250, 250, 0.5019607843));\n border: 1px solid var(--emw--border-gray-color, #292C29);\n font-weight: 700;\n}\n.card__badge.completed {\n background: var(--emw--background-success-color, #C9F0D7);\n border: 1px solid var(--emw--border-success-color, #00B74F);\n color: var(--emw--color-gray-300, #083B17);\n font-weight: 700;\n}\n.card__badge.forfeited {\n background: var(--emw--background-errored-color, #FFE1DF);\n border: 1px solid var(--emw--border-errored-color, #D6421E);\n color: var(--emw--errored-color, #850606);\n font-weight: 700;\n}\n.card__badge.paused {\n background: var(--emw--background-warning-color, #F8E4AD);\n border: 1px solid var(--emw--border-warning-color, #EA9018);\n color: var(--emw--warning-color, #6D460A);\n font-weight: 700;\n}\n\n.info-item {\n line-height: 24px;\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n color: var(--emw--color-primary, #1dbf51);\n}\n@container challenges-container (min-width: 576px) {\n .info-item {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n vertical-align: bottom;\n }\n}\n.info-item.grayed {\n color: var(--emw--disabled-color, #727672);\n}\n.info-item__label {\n font-weight: var(--emw--font-weight-medium, 500);\n margin-right: 3px;\n color: var(--emw--color-gray-150, #C8D6CE);\n}\n.info-item__tooltip {\n position: absolute;\n line-height: 22px;\n padding: 8px 12px;\n border-radius: 8px;\n opacity: 1;\n z-index: 200;\n white-space: nowrap;\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n color: var(--emw--color-white, #FFFFFF);\n background-color: var(--emw--color-background-secondary, #1B1C2B);\n}\n.info-item__tooltip::before {\n content: "";\n position: absolute;\n top: -5px;\n left: 50%;\n transform: translateX(-50%);\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 6px solid var(--emw--color-background-secondary, #1B1C2B);\n width: 0;\n height: 0;\n z-index: 201;\n}\n\n.progress {\n background-color: var(--emw--progress-background, rgba(188, 252, 177, 0.1019607843));\n border-radius: 100px;\n height: 20px;\n margin-bottom: 10px;\n position: relative;\n align-content: center;\n padding: 0 2px;\n box-sizing: border-box;\n}\n.progress.paused {\n opacity: 0.5;\n}\n.progress.grayed {\n mix-blend-mode: luminosity;\n}\n.progress__placeholder {\n height: 20px;\n}\n.progress__icon {\n padding-top: 4px;\n}\n.progress__point {\n position: absolute;\n text-align: center;\n font-size: 12px;\n color: var(--emw--color-gray-150, #C8D6CE);\n font-weight: 700;\n line-height: 19px;\n top: 0;\n height: 19px;\n width: 19px;\n border-radius: 50%;\n}\n.progress__point.start {\n left: 0;\n border: 2px solid var(--emw--button-background-primary-color, #18CE51);\n background: linear-gradient(90deg, var(--emw--progress-active-level, #24AA4D) 0%, var(--emw--progress-active-level-secondary, #113F21) 100%);\n}\n.progress__point.end {\n right: 0;\n border: 2px solid var(--emw--dark-green, #1C8D56);\n background: var(--emw--color-gray-300, #083B17);\n opacity: 0.7;\n}\n.progress__point.finished {\n opacity: 1;\n}\n.progress__point.hidden {\n opacity: 0;\n}\n.progress__bar {\n border-radius: 73px;\n height: 16px;\n background: linear-gradient(90deg, var(--emw--secondary-green, #1E654F) 0%, var(--emw--dark-green, #1C8D56) 100%);\n text-align: end;\n color: var(--emw--color-gray-50, #E2E2E2);\n font-size: 11px;\n font-weight: 700;\n line-height: 16px;\n padding-right: 6px;\n box-sizing: border-box;\n}\n.progress__bar.finished {\n text-align: center;\n}';export{z as C}
@@ -1 +1 @@
1
- export{C as casino_challenge_card}from"./casino-challenge-card-1c0b899b.js";import"./index-d72835d2.js";
1
+ export{C as casino_challenge_card}from"./casino-challenge-card-f02ce133.js";import"./index-98abeec4.js";
@@ -1 +1 @@
1
- import{p as n,b as l}from"./index-d72835d2.js";export{s as setNonce}from"./index-d72835d2.js";import{g as e}from"./app-globals-0f993ce5.js";(()=>{const l=import.meta.url,e={};return""!==l&&(e.resourcesUrl=new URL(".",l).href),n(e)})().then((async n=>(await e(),l([["casino-challenge-card",[[1,"casino-challenge-card",{mbSource:[513,"mb-source"],clientStyling:[513,"client-styling"],clientStylingUrl:[513,"client-styling-url"],translationUrl:[513,"translation-url"],language:[513],challenge:[16],tooltipIndex:[32],timeLeft:[32]},null,{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}]]]],n))));
1
+ import{p as e,b as n}from"./index-98abeec4.js";export{s as setNonce}from"./index-98abeec4.js";import{g as l}from"./app-globals-0f993ce5.js";(()=>{const n=import.meta.url,l={};return""!==n&&(l.resourcesUrl=new URL(".",n).href),e(l)})().then((async e=>(await l(),n([["casino-challenge-card",[[1,"casino-challenge-card",{mbSource:[513,"mb-source"],clientStyling:[513,"client-styling"],clientStylingUrl:[513,"client-styling-url"],translationUrl:[513,"translation-url"],language:[513],endpoint:[513],domain:[513],session:[513],challenge:[16],isUserAuthorized:[516,"is-user-authorized"],tooltipIndex:[32],timeLeft:[32],error:[32],hasError:[32],actionLoading:[32]},null,{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}]]]],e))));
@@ -0,0 +1,2 @@
1
+ var e=Object.defineProperty,t=new WeakMap,n=e=>t.get(e),l=(e,n)=>t.set(n.t=e,n),o=(e,t)=>t in e,s=(e,t)=>(0,console.error)(e,t),r=new Map,i=new Map,c="slot-fb{display:contents}slot-fb[hidden]{display:none}",u="undefined"!=typeof window?window:{},a=u.document||{head:{}},f={l:0,o:"",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)},h=e=>Promise.resolve(e),d=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),m=!1,p=[],y=[],$=(e,t)=>n=>{e.push(n),m||(m=!0,t&&4&f.l?v(w):f.raf(w))},b=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){s(e)}e.length=0},w=()=>{b(p),b(y),(m=p.length>0)&&f.raf(w)},v=e=>h().then(e),g=$(y,!0),S={},k=e=>"object"==(e=typeof e)||"function"===e;function j(e){var t,n,l;return null!=(l=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?l:void 0}((t,n)=>{for(var l in n)e(t,l,{get:n[l],enumerable:!0})})({},{err:()=>C,map:()=>E,ok:()=>O,unwrap:()=>P,unwrapErr:()=>L});var O=e=>({isOk:!0,isErr:!1,value:e}),C=e=>({isOk:!1,isErr:!0,value:e});function E(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>O(e))):O(n)}if(e.isErr)return C(e.value);throw"should never get here"}var M,x,P=e=>{if(e.isOk)return e.value;throw e.value},L=e=>{if(e.isErr)return e.value;throw e.value},R=(e,t,...n)=>{let l=null,o=null,s=!1,r=!1;const i=[],c=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!k(l))&&(l+=""),s&&r?i[i.length-1].i+=l:i.push(s?T(null,l):l),r=s)};if(c(n),t){t.key&&(o=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=T(e,null);return u.u=t,i.length>0&&(u.h=i),u.m=o,u},T=(e,t)=>({l:0,p:e,i:t,$:null,h:null,u:null,m:null}),A={},N=(e,t,l)=>{const o=(e=>n(e).$hostElement$)(e);return{emit:e=>U(o,t,{bubbles:!!(4&l),composed:!!(2&l),cancelable:!!(1&l),detail:e})}},U=(e,t,n)=>{const l=f.ce(t,n);return e.dispatchEvent(l),l},W=new WeakMap,D=e=>"sc-"+e.v,F=(e,t,n,l,s,r)=>{if(n!==l){let i=o(e,t),c=t.toLowerCase();if("class"===t){const t=e.classList,o=q(n),s=q(l);t.remove(...o.filter((e=>e&&!s.includes(e)))),t.add(...s.filter((e=>e&&!o.includes(e))))}else if("style"===t){for(const t in n)l&&null!=l[t]||(t.includes("-")?e.style.removeProperty(t):e.style[t]="");for(const t in l)n&&l[t]===n[t]||(t.includes("-")?e.style.setProperty(t,l[t]):e.style[t]=l[t])}else if("key"===t);else if("ref"===t)l&&l(e);else if(i||"o"!==t[0]||"n"!==t[1]){const o=k(l);if((i||o&&null!==l)&&!s)try{if(e.tagName.includes("-"))e[t]=l;else{const o=null==l?"":l;"list"===t?i=!1:null!=n&&e[t]==o||(e[t]=o)}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!i||4&r||s)&&!o&&e.setAttribute(t,l=!0===l?"":l)}else if(t="-"===t[2]?t.slice(3):o(u,c)?c.slice(2):c[2]+t.slice(3),n||l){const o=t.endsWith(G);t=t.replace(V,""),n&&f.rel(e,t,n,o),l&&f.ael(e,t,l,o)}}},H=/\s/,q=e=>e?e.split(H):[],G="Capture",V=RegExp(G+"$"),_=(e,t,n)=>{const l=11===t.$.nodeType&&t.$.host?t.$.host:t.$,o=e&&e.u||S,s=t.u||S;for(const e of z(Object.keys(o)))e in s||F(l,e,o[e],void 0,n,t.l);for(const e of z(Object.keys(s)))F(l,e,o[e],s[e],n,t.l)};function z(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var B=!1,I=(e,t,n)=>{const l=t.h[n];let o,s,r=0;if(null!==l.i)o=l.$=a.createTextNode(l.i);else if(o=l.$=a.createElement(l.p),_(null,l,B),null!=M&&o["s-si"]!==M&&o.classList.add(o["s-si"]=M),l.h)for(r=0;r<l.h.length;++r)s=I(e,l,r),s&&o.appendChild(s);return o["s-hn"]=x,o},J=(e,t,n,l,o,s)=>{let r,i=e;for(i.shadowRoot&&i.tagName===x&&(i=i.shadowRoot);o<=s;++o)l[o]&&(r=I(null,n,o),r&&(l[o].$=r,Z(i,r,t)))},K=(e,t,n)=>{for(let l=t;l<=n;++l){const t=e[l];if(t){const e=t.$;Y(t),e&&e.remove()}}},Q=(e,t,n=!1)=>e.p===t.p&&(!!n||e.m===t.m),X=(e,t,n=!1)=>{const l=t.$=e.$,o=e.h,s=t.h,r=t.i;null===r?(_(e,t,B),null!==o&&null!==s?((e,t,n,l,o=!1)=>{let s,r,i=0,c=0,u=0,a=0,f=t.length-1,h=t[0],d=t[f],m=l.length-1,p=l[0],y=l[m];for(;i<=f&&c<=m;)if(null==h)h=t[++i];else if(null==d)d=t[--f];else if(null==p)p=l[++c];else if(null==y)y=l[--m];else if(Q(h,p,o))X(h,p,o),h=t[++i],p=l[++c];else if(Q(d,y,o))X(d,y,o),d=t[--f],y=l[--m];else if(Q(h,y,o))X(h,y,o),Z(e,h.$,d.$.nextSibling),h=t[++i],y=l[--m];else if(Q(d,p,o))X(d,p,o),Z(e,d.$,h.$),d=t[--f],p=l[++c];else{for(u=-1,a=i;a<=f;++a)if(t[a]&&null!==t[a].m&&t[a].m===p.m){u=a;break}u>=0?(r=t[u],r.p!==p.p?s=I(t&&t[c],n,u):(X(r,p,o),t[u]=void 0,s=r.$),p=l[++c]):(s=I(t&&t[c],n,c),p=l[++c]),s&&Z(h.$.parentNode,s,h.$)}i>f?J(e,null==l[m+1]?null:l[m+1].$,n,l,c,m):c>m&&K(t,i,f)})(l,o,t,s,n):null!==s?(null!==e.i&&(l.textContent=""),J(l,null,t,s,0,s.length-1)):null!==o&&K(o,0,o.length-1)):e.i!==r&&(l.data=r)},Y=e=>{e.u&&e.u.ref&&e.u.ref(null),e.h&&e.h.map(Y)},Z=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),ee=(e,t)=>{t&&!e.S&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.S=t)))},te=(e,t)=>{if(e.l|=16,!(4&e.l))return ee(e,e.k),g((()=>ne(e,t)));e.l|=512},ne=(e,t)=>{const n=e.t;if(!n)throw Error(`Can't render component <${e.$hostElement$.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return t&&(l=ue(n,"componentWillLoad")),le(l,(()=>se(e,n,t)))},le=(e,t)=>oe(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),oe=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,se=async(e,t,n)=>{var l;const o=e.$hostElement$,s=o["s-rc"];n&&(e=>{const t=e.j,n=e.$hostElement$,l=t.l,o=((e,t)=>{var n;const l=D(t),o=i.get(l);if(e=11===e.nodeType?e:a,o)if("string"==typeof o){let s,r=W.get(e=e.head||e);if(r||W.set(e,r=new Set),!r.has(l)){{s=a.createElement("style"),s.innerHTML=o;const t=null!=(n=f.O)?n:j(a);null!=t&&s.setAttribute("nonce",t),e.insertBefore(s,e.querySelector("link"))}4&t.l&&(s.innerHTML+=c),r&&r.add(l)}}else e.adoptedStyleSheets.includes(o)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,o]);return l})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);re(e,t,o,n),s&&(s.map((e=>e())),o["s-rc"]=void 0);{const t=null!=(l=o["s-p"])?l:[],n=()=>ie(e);0===t.length?n():(Promise.all(t).then(n),e.l|=4,t.length=0)}},re=(e,t,n,l)=>{try{t=t.render(),e.l&=-17,e.l|=2,((e,t,n=!1)=>{const l=e.$hostElement$,o=e.j,s=e.C||T(null,null),r=(e=>e&&e.p===A)(t)?t:R(null,null,t);if(x=l.tagName,o.M&&(r.u=r.u||{},o.M.map((([e,t])=>r.u[t]=l[e]))),n&&r.u)for(const e of Object.keys(r.u))l.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(r.u[e]=l[e]);r.p=null,r.l|=4,e.C=r,r.$=s.$=l.shadowRoot||l,M=l["s-sc"],X(s,r,n)})(e,t,l)}catch(t){s(t,e.$hostElement$)}return null},ie=e=>{const t=e.$hostElement$,n=e.t,l=e.k;64&e.l||(e.l|=64,ae(t),ue(n,"componentDidLoad"),e.P(t),l||ce()),e.S&&(e.S(),e.S=void 0),512&e.l&&v((()=>te(e,!1))),e.l&=-517},ce=()=>{ae(a.documentElement),v((()=>U(u,"appload",{detail:{namespace:"casino-challenge-card"}})))},ue=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){s(e)}},ae=e=>e.classList.add("hydrated"),fe=(e,t,l)=>{var o,r;const i=e.prototype;if(t.L||t.R||e.watchers){e.watchers&&!t.R&&(t.R=e.watchers);const c=Object.entries(null!=(o=t.L)?o:{});if(c.map((([e,[o]])=>{(31&o||2&l&&32&o)&&Object.defineProperty(i,e,{get(){return((e,t)=>n(this).T.get(t))(0,e)},set(l){((e,t,l,o)=>{const r=n(e);if(!r)throw Error(`Couldn't find host element for "${o.v}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const i=r.$hostElement$,c=r.T.get(t),u=r.l,a=r.t;if(l=((e,t)=>null==e||k(e)?e:4&t?"false"!==e&&(""===e||!!e):1&t?e+"":e)(l,o.L[t][0]),(!(8&u)||void 0===c)&&l!==c&&(!Number.isNaN(c)||!Number.isNaN(l))&&(r.T.set(t,l),a)){if(o.R&&128&u){const e=o.R[t];e&&e.map((e=>{try{a[e](l,c,t)}catch(e){s(e,i)}}))}2==(18&u)&&te(r,!1)}})(this,e,l,t)},configurable:!0,enumerable:!0})})),1&l){const l=new Map;i.attributeChangedCallback=function(e,o,s){f.jmp((()=>{var r;const c=l.get(e);if(this.hasOwnProperty(c))s=this[c],delete this[c];else{if(i.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==s)return;if(null==c){const l=n(this),i=null==l?void 0:l.l;if(i&&!(8&i)&&128&i&&s!==o){const n=l.t,i=null==(r=t.R)?void 0:r[e];null==i||i.forEach((t=>{null!=n[t]&&n[t].call(n,s,o,e)}))}return}}this[c]=(null!==s||"boolean"!=typeof this[c])&&s}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(r=t.R)?r:{}),...c.filter((([e,t])=>15&t[0])).map((([e,n])=>{var o;const s=n[1]||e;return l.set(s,e),512&n[0]&&(null==(o=t.M)||o.push([e,s])),s}))]))}}return e},he=e=>{ue(e,"connectedCallback")},de=e=>{ue(e,"disconnectedCallback")},me=(e,l={})=>{var o;const h=[],m=l.exclude||[],p=u.customElements,y=a.head,$=y.querySelector("meta[charset]"),b=a.createElement("style"),w=[];let v,g=!0;Object.assign(f,l),f.o=new URL(l.resourcesUrl||"./",a.baseURI).href;let S=!1;if(e.map((e=>{e[1].map((l=>{var o;const c={l:l[0],v:l[1],L:l[2],A:l[3]};4&c.l&&(S=!0),c.L=l[2],c.M=[],c.R=null!=(o=l[4])?o:{};const u=c.v,a=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,n)=>{const l={l:0,$hostElement$:e,j:n,T:new Map};l.N=new Promise((e=>l.P=e)),e["s-p"]=[],e["s-rc"]=[],t.set(e,l)})(e=this,c),1&c.l)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${c.v}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:"open"})}connectedCallback(){this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),v&&(clearTimeout(v),v=null),g?w.push(this):f.jmp((()=>(e=>{if(!(1&f.l)){const t=n(e),l=t.j,o=()=>{};if(1&t.l)(null==t?void 0:t.t)?he(t.t):(null==t?void 0:t.N)&&t.N.then((()=>he(t.t)));else{t.l|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){ee(t,t.k=n);break}}l.L&&Object.entries(l.L).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let l;if(!(32&t.l)){if(t.l|=32,n.U){const e=(e=>{const t=e.v.replace(/-/g,"_"),n=e.U;if(!n)return;const l=r.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(r.set(n,e),e[t])),s)
2
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n);if(e&&"then"in e){const t=()=>{};l=await e,t()}else l=e;if(!l)throw Error(`Constructor for "${n.v}#${t.W}" was not found`);l.isProxied||(n.R=l.watchers,fe(l,n,2),l.isProxied=!0);const o=()=>{};t.l|=8;try{new l(t)}catch(e){s(e)}t.l&=-9,t.l|=128,o(),he(t.t)}else l=e.constructor,customElements.whenDefined(e.localName).then((()=>t.l|=128));if(l&&l.style){let e;"string"==typeof l.style&&(e=l.style);const t=D(n);if(!i.has(t)){const l=()=>{};((e,t,n)=>{let l=i.get(e);d&&n?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,i.set(e,l)})(t,e,!!(1&n.l)),l()}}}const o=t.k,c=()=>te(t,!0);o&&o["s-rc"]?o["s-rc"].push(c):c()})(e,t,l)}o()}})(this)))}disconnectedCallback(){f.jmp((()=>(async()=>{if(!(1&f.l)){const e=n(this);(null==e?void 0:e.t)?de(e.t):(null==e?void 0:e.N)&&e.N.then((()=>de(e.t)))}})()))}componentOnReady(){return n(this).N}};c.U=e[0],m.includes(u)||p.get(u)||(h.push(u),p.define(u,fe(a,c,1)))}))})),h.length>0&&(S&&(b.textContent+=c),b.textContent+=h.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",b.innerHTML.length)){b.setAttribute("data-styles","");const e=null!=(o=f.O)?o:j(a);null!=e&&b.setAttribute("nonce",e),y.insertBefore(b,$?$.nextSibling:y.firstChild)}g=!1,w.length?w.map((e=>e.connectedCallback())):f.jmp((()=>v=setTimeout(ce,30)))},pe=e=>f.O=e;export{me as b,N as c,R as h,h as p,l as r,pe as s}
@@ -1 +1 @@
1
- export{C as CasinoChallengeCard}from"./casino-challenge-card-1c0b899b.js";import"./index-d72835d2.js";
1
+ export{C as CasinoChallengeCard}from"./casino-challenge-card-f02ce133.js";import"./index-98abeec4.js";
@@ -0,0 +1,505 @@
1
+ 'use strict';
2
+
3
+ const index = require('./index-c337b778.js');
4
+
5
+ const DEFAULT_LANGUAGE = 'en';
6
+ const SUPPORTED_LANGUAGES = ['ro', 'en', 'fr', 'ar', 'hr'];
7
+ const TRANSLATIONS = {
8
+ en: {
9
+ totalLevels: 'Total levels:',
10
+ level1: 'Level 1:',
11
+ get: 'Get:',
12
+ endsIn: 'Ends In',
13
+ expired: 'Expired',
14
+ viewDetails: 'View details',
15
+ placeBetsOf: 'Place bets of',
16
+ place: 'Place',
17
+ bet: 'bet',
18
+ bets: 'bets',
19
+ minBet: 'min bet',
20
+ forfeited: 'Forfeited',
21
+ finished: 'Finished',
22
+ suspended: 'Suspended',
23
+ start: 'Start',
24
+ resume: 'Resume',
25
+ pause: 'Pause'
26
+ },
27
+ ro: {
28
+ totalLevels: 'Niveluri totale:',
29
+ level1: 'Nivel 1:',
30
+ get: 'Obține:',
31
+ endsIn: 'Se termină în',
32
+ expired: 'Expirat',
33
+ viewDetails: 'Vezi detalii',
34
+ placeBetsOf: 'Plasează pariuri de',
35
+ place: 'Plasare',
36
+ bet: 'pariu',
37
+ bets: 'pariuri',
38
+ minBet: 'pariu minim',
39
+ forfeited: 'Pierdut',
40
+ finished: 'Terminat',
41
+ suspended: 'Suspendat',
42
+ start: 'Start',
43
+ resume: 'Reia',
44
+ pause: 'Pauză'
45
+ },
46
+ fr: {
47
+ totalLevels: 'Niveaux totaux :',
48
+ level1: 'Niveau 1 :',
49
+ get: 'Obtenir :',
50
+ endsIn: 'Se termine dans',
51
+ expired: 'Expiré',
52
+ viewDetails: 'Voir les détails',
53
+ placeBetsOf: 'Placez des paris de',
54
+ place: 'Placer',
55
+ bet: 'pari',
56
+ bets: 'paris',
57
+ minBet: 'mise minimale',
58
+ forfeited: 'Forfait',
59
+ finished: 'Terminé',
60
+ suspended: 'Suspendu',
61
+ start: 'Démarrer',
62
+ resume: 'Reprendre',
63
+ pause: 'Pause'
64
+ },
65
+ ar: {
66
+ totalLevels: 'إجمالي المستويات:',
67
+ level1: 'المستوى 1:',
68
+ get: 'احصل على:',
69
+ endsIn: 'ينتهي في',
70
+ expired: 'منتهي الصلاحية',
71
+ viewDetails: 'عرض التفاصيل',
72
+ placeBetsOf: 'قم بوضع رهانات بقيمة',
73
+ place: 'ضع',
74
+ bet: 'رهان',
75
+ bets: 'رهانات',
76
+ minBet: 'الحد الأدنى للرهان',
77
+ forfeited: 'خاسر',
78
+ finished: 'منتهي',
79
+ suspended: 'معلق',
80
+ start: 'ابدأ',
81
+ resume: 'استئناف',
82
+ pause: 'إيقاف مؤقت'
83
+ },
84
+ hr: {
85
+ totalLevels: 'Ukupno razina:',
86
+ level1: 'Razina 1:',
87
+ get: 'Dobiti:',
88
+ endsIn: 'Završava za',
89
+ expired: 'Isteklo',
90
+ viewDetails: 'Pogledaj detalje',
91
+ placeBetsOf: 'Postavite oklade od',
92
+ place: 'Postavi',
93
+ bet: 'kladnja',
94
+ bets: 'kladnje',
95
+ minBet: 'minimalna oklada',
96
+ forfeited: 'Oduzeto',
97
+ finished: 'Završeno',
98
+ suspended: 'Suspendirano',
99
+ start: 'Počni',
100
+ resume: 'Nastavi',
101
+ pause: 'Pauza'
102
+ }
103
+ };
104
+ const translate = (key, customLang) => {
105
+ const lang = customLang;
106
+ return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
107
+ };
108
+ const getTranslations = (data) => {
109
+ Object.keys(data).forEach((item) => {
110
+ for (let key in data[item]) {
111
+ TRANSLATIONS[item][key] = data[item][key];
112
+ }
113
+ });
114
+ };
115
+ const resolveTranslationUrl = async (translationUrl) => {
116
+ if (translationUrl) {
117
+ try {
118
+ const response = await fetch(translationUrl);
119
+ if (!response.ok) {
120
+ throw new Error(`HTTP error! status: ${response.status}`);
121
+ }
122
+ const translations = await response.json();
123
+ getTranslations(translations);
124
+ }
125
+ catch (error) {
126
+ console.error('Failed to fetch or parse translations from URL:', error);
127
+ }
128
+ }
129
+ };
130
+
131
+ var EChallengeLevelTargetType;
132
+ (function (EChallengeLevelTargetType) {
133
+ EChallengeLevelTargetType[EChallengeLevelTargetType["Accumulative"] = 0] = "Accumulative";
134
+ EChallengeLevelTargetType[EChallengeLevelTargetType["SingleBet"] = 1] = "SingleBet";
135
+ EChallengeLevelTargetType[EChallengeLevelTargetType["MultipleOneBetSize"] = 2] = "MultipleOneBetSize";
136
+ })(EChallengeLevelTargetType || (EChallengeLevelTargetType = {}));
137
+ var EChallengeRecurrenceType;
138
+ (function (EChallengeRecurrenceType) {
139
+ EChallengeRecurrenceType[EChallengeRecurrenceType["Single"] = 0] = "Single";
140
+ EChallengeRecurrenceType[EChallengeRecurrenceType["Daily"] = 1] = "Daily";
141
+ EChallengeRecurrenceType[EChallengeRecurrenceType["Weekly"] = 2] = "Weekly";
142
+ EChallengeRecurrenceType[EChallengeRecurrenceType["Monthly"] = 3] = "Monthly";
143
+ })(EChallengeRecurrenceType || (EChallengeRecurrenceType = {}));
144
+ var EChallengeRewardType;
145
+ (function (EChallengeRewardType) {
146
+ EChallengeRewardType[EChallengeRewardType["FreeSpins"] = 0] = "FreeSpins";
147
+ EChallengeRewardType[EChallengeRewardType["LuckyWheel"] = 1] = "LuckyWheel";
148
+ EChallengeRewardType[EChallengeRewardType["Leaderboard"] = 2] = "Leaderboard";
149
+ EChallengeRewardType[EChallengeRewardType["Challenge"] = 3] = "Challenge";
150
+ EChallengeRewardType[EChallengeRewardType["Custom"] = 4] = "Custom";
151
+ })(EChallengeRewardType || (EChallengeRewardType = {}));
152
+ var EChallengeProgressStatus;
153
+ (function (EChallengeProgressStatus) {
154
+ EChallengeProgressStatus[EChallengeProgressStatus["Closed"] = 0] = "Closed";
155
+ EChallengeProgressStatus[EChallengeProgressStatus["InProgress"] = 1] = "InProgress";
156
+ EChallengeProgressStatus[EChallengeProgressStatus["Fillup"] = 2] = "Fillup";
157
+ EChallengeProgressStatus[EChallengeProgressStatus["Completed"] = 3] = "Completed";
158
+ })(EChallengeProgressStatus || (EChallengeProgressStatus = {}));
159
+ var EChallengeStatus;
160
+ (function (EChallengeStatus) {
161
+ EChallengeStatus[EChallengeStatus["Started"] = 0] = "Started";
162
+ EChallengeStatus[EChallengeStatus["InProgress"] = 1] = "InProgress";
163
+ EChallengeStatus[EChallengeStatus["PendingLevelReward"] = 2] = "PendingLevelReward";
164
+ EChallengeStatus[EChallengeStatus["Completed"] = 3] = "Completed";
165
+ EChallengeStatus[EChallengeStatus["Expired"] = 4] = "Expired";
166
+ EChallengeStatus[EChallengeStatus["Forfeited"] = 5] = "Forfeited";
167
+ EChallengeStatus[EChallengeStatus["Awaiting"] = 6] = "Awaiting";
168
+ EChallengeStatus[EChallengeStatus["Paused"] = 7] = "Paused";
169
+ })(EChallengeStatus || (EChallengeStatus = {}));
170
+ const ChallengeStatusDictionary = [
171
+ 'started',
172
+ 'inProgress',
173
+ 'pendingLevelReward',
174
+ 'completed',
175
+ 'expired',
176
+ 'forfeited',
177
+ 'awaiting',
178
+ 'paused'
179
+ ];
180
+ var EChallengeTriggerType;
181
+ (function (EChallengeTriggerType) {
182
+ EChallengeTriggerType[EChallengeTriggerType["GameLaunch"] = 0] = "GameLaunch";
183
+ EChallengeTriggerType[EChallengeTriggerType["Reward"] = 1] = "Reward";
184
+ EChallengeTriggerType[EChallengeTriggerType["Manual"] = 2] = "Manual";
185
+ })(EChallengeTriggerType || (EChallengeTriggerType = {}));
186
+ var EChallengeValidityType;
187
+ (function (EChallengeValidityType) {
188
+ EChallengeValidityType[EChallengeValidityType["Period"] = 0] = "Period";
189
+ EChallengeValidityType[EChallengeValidityType["Date"] = 1] = "Date";
190
+ })(EChallengeValidityType || (EChallengeValidityType = {}));
191
+
192
+ function getTimeLeft(endTime) {
193
+ const now = new Date();
194
+ const end = new Date(endTime);
195
+ let diff = end.getTime() - now.getTime();
196
+ if (diff <= 0) {
197
+ return;
198
+ }
199
+ const days = Math.floor(diff / (1000 * 60 * 60 * 24));
200
+ diff -= days * (1000 * 60 * 60 * 24);
201
+ const hours = Math.floor(diff / (1000 * 60 * 60));
202
+ diff -= hours * (1000 * 60 * 60);
203
+ const minutes = Math.floor(diff / (1000 * 60));
204
+ diff -= minutes * (1000 * 60);
205
+ const seconds = Math.floor(diff / 1000);
206
+ const pad = (n) => n.toString().padStart(2, '0');
207
+ return `${pad(days)} : ${pad(hours)} : ${pad(minutes)} : ${pad(seconds)}`;
208
+ }
209
+
210
+ /**
211
+ * @name setClientStyling
212
+ * @description Method used to create and append to the passed element of the widget a style element with the content received
213
+ * @param {HTMLElement} stylingContainer The reference element of the widget
214
+ * @param {string} clientStyling The style content
215
+ */
216
+ function setClientStyling(stylingContainer, clientStyling) {
217
+ if (stylingContainer) {
218
+ const sheet = document.createElement('style');
219
+ sheet.innerHTML = clientStyling;
220
+ stylingContainer.appendChild(sheet);
221
+ }
222
+ }
223
+
224
+ /**
225
+ * @name setClientStylingURL
226
+ * @description Method used to create and append to the passed element of the widget a style element with the content fetched from a given URL
227
+ * @param {HTMLElement} stylingContainer The reference element of the widget
228
+ * @param {string} clientStylingUrl The URL of the style content
229
+ */
230
+ function setClientStylingURL(stylingContainer, clientStylingUrl) {
231
+ const url = new URL(clientStylingUrl);
232
+
233
+ fetch(url.href)
234
+ .then((res) => res.text())
235
+ .then((data) => {
236
+ const cssFile = document.createElement('style');
237
+ cssFile.innerHTML = data;
238
+ if (stylingContainer) {
239
+ stylingContainer.appendChild(cssFile);
240
+ }
241
+ })
242
+ .catch((err) => {
243
+ console.error('There was an error while trying to load client styling from URL', err);
244
+ });
245
+ }
246
+
247
+ /**
248
+ * @name setStreamLibrary
249
+ * @description Method used to create and append to the passed element of the widget a style element with content fetched from the MessageBus
250
+ * @param {HTMLElement} stylingContainer The highest element of the widget
251
+ * @param {string} domain The domain from where the content should be fetched (e.g. 'Casino.Style', 'App.Style', 'casino-footer.style', etc.)
252
+ * @param {ref} subscription A reference to a variable where the subscription should be saved for unsubscribing when no longer needed
253
+ */
254
+ function setStreamStyling(stylingContainer, domain, subscription) {
255
+ if (window.emMessageBus) {
256
+ const sheet = document.createElement('style');
257
+
258
+ window.emMessageBus.subscribe(domain, (data) => {
259
+ sheet.innerHTML = data;
260
+ if (stylingContainer) {
261
+ stylingContainer.appendChild(sheet);
262
+ }
263
+ });
264
+ }
265
+ }
266
+
267
+ const finishSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuNjQ0NTQgMTIuMTI2MkMxLjU5ODQyIDEyLjEyNzkgMS41NTEyOSAxMi4xMjI3IDEuNTA0MzIgMTIuMTA5OUMxLjI1NzU3IDEyLjA0MjEgMS4xMTI0OSAxMS43ODcyIDEuMTgwMjIgMTEuNTQwM0wzLjUzMDE2IDIuOTU4N0MzLjU5NzkxIDIuNzEyMSAzLjg1MjIyIDIuNTY2NzQgNC4wOTk3MyAyLjYzNDZDNC4zNDY0NyAyLjcwMjM0IDQuNDkxNTUgMi45NTcyNyA0LjQyMzgyIDMuMjA0MTZMMi4wNzM4OCAxMS43ODU4QzIuMDE5MDIgMTEuOTg1NSAxLjg0MTIzIDEyLjExODggMS42NDQ1NCAxMi4xMjYyWiIgZmlsbD0iIzM2QkEzQiIvPgo8cGF0aCBkPSJNMS41NjMwNCAxMS4yNjM0QzEuNTQ3NjggMTEuMjYzOSAxLjUzMTk4IDExLjI2MjIgMS41MTYzMyAxMS4yNTc5QzEuNDM0MTQgMTEuMjM1NCAxLjM4NTgyIDExLjE1MDUgMS40MDgzOCAxMS4wNjgyTDMuNjU4MTMgMi45MTUwM0MzLjY4MDY5IDIuODMyODkgMy43NjU0MSAyLjc4NDQ3IDMuODQ3ODUgMi44MDcwN0MzLjkzMDA0IDIuODI5NjMgMy45NzgzNyAyLjkxNDU1IDMuOTU1OCAyLjk5Njc5TDEuNzA2MDUgMTEuMTVDMS42ODc3OCAxMS4yMTY1IDEuNjI4NTYgMTEuMjYwOSAxLjU2MzA0IDExLjI2MzRaIiBmaWxsPSIjQkNGQ0IxIiBmaWxsLW9wYWNpdHk9IjAuMSIvPgo8cGF0aCBkPSJNMTIuNTE5MyAxMi43OTMyTDEwLjcyNjEgMTMuMDIzNEM5LjM2MTczIDEzLjE5ODYgNy45NzM2MSAxMi43MjIyIDcuMDkzMzkgMTEuNjY1Mkw3LjA0Nzc5IDExLjYxMDRDNi4zMjg0MyAxMC43NDY2IDUuMzA5MzEgMTAuMTY1NCA0LjE4NjU2IDEwLjEwOTFMMi4zNjIzOSAxMC4wMTc2TDIuMzA0NjkgOS45NTk4OEw0LjIyOTY5IDMuMTg0NTdMNi4wOTMxMiAzLjI4MzY3QzcuMjIxNjkgMy4zNDM2OCA4LjI3Mjk3IDMuODc1NjIgOC45ODk4MSA0Ljc0OTM1QzkuODY4OTIgNS44MjA4NyAxMS4yMzc3IDYuMzY0NDUgMTIuNjEyNCA2LjE4Nzk4TDE0LjMzODIgNS44OTc2N0wxNC4zODY2IDUuOTYwMjNMMTIuNTE5MyAxMi43OTMyWiIgZmlsbD0iI0JDRkNCMSIgZmlsbC1vcGFjaXR5PSIwLjEiLz4KPHBhdGggZD0iTTEyLjQ2MTYgMTIuNzM1NkwxMC42Njg0IDEyLjk2NThDOS4zMDQwMyAxMy4xNDA5IDcuOTQ0NzYgMTIuNjA2OSA3LjA2NDU0IDExLjU0OTlMNy4wMTg5NCAxMS40OTUxQzYuMjk5NTggMTAuNjMxMiA1LjI1MTYxIDEwLjEwNzggNC4xMjg4NiAxMC4wNTE0TDIuMzA0NjkgOS45NTk5Nkw0LjE3MTk5IDMuMTI2OTVMNi4wMzU0MiAzLjIyNjA1QzcuMTYzOTkgMy4yODYwNyA4LjIxNTI4IDMuODE4IDguOTMyMTEgNC42OTE3NEM5LjgxMTIyIDUuNzYzMjYgMTEuMTggNi4zMDY4MyAxMi41NTQ3IDYuMTMwMzZMMTQuMzI4OSA1LjkwMjYxTDEyLjQ2MTYgMTIuNzM1NloiIGZpbGw9IiNCRUZGQkEiLz4KPHBhdGggZD0iTTEwLjQ4NDYgMTAuNzE2NEMxMC4wOTEzIDEwLjY4NTMgOS43MDIzOSAxMC42MDM4IDkuMzMzNjggMTAuNDU5NUM4LjgxMjM1IDEwLjI1NTIgOC4zNDIzNyA5LjkzNzIxIDcuOTQ4OTEgOS41NDA0Nkw4LjU4MTY5IDcuMjI1MDNDOC45NzYwNyA3LjYyMTkxIDkuNDQ2ODcgNy45Mzk4OSA5Ljk2OTE0IDguMTQzODhDMTAuMzM2OCA4LjI4NzUzIDEwLjcyNDIgOC4zNzM3NSAxMS4xMTYzIDguNDA0OTVMMTAuNDg0NiAxMC43MTY0Wk01LjY0NTA3IDcuOTM5MDJDNS4zNjg1OCA3Ljg2MjgzIDUuMDgzMjEgNy44MTQ2NCA0Ljc5Mjc4IDcuNzk5MThMMi45MzAxOCA3LjcwMDA0TDMuNTYzMTMgNS4zODM4Nkw1LjQyNzM5IDUuNDgzMDFDNS43MTczIDUuNDk4NCA2LjAwMjE1IDUuNTQ2NDkgNi4yNzgxNSA1LjYyMjUyTDUuNjQ1MDcgNy45MzkwMlpNOC45NDEzNyA0LjY4NjgyQzkuMDIxNjggNC43ODQ3MyA5LjEwODM1IDQuODc1NTMgOS4xOTY0OCA0Ljk2NDQ3TDkuMTkyMjUgNC45NjMzNUw4LjU3ODA2IDcuMjEwNzdDOC41MDI3OSA3LjEzNDU0IDguNDI1MzYgNy4wNjAzOSA4LjM1NjM0IDYuOTc4MTlMOC4zMjcwNCA2Ljk0Mjg0QzcuNzk3MzUgNi4yOTcyMiA3LjA4MDM2IDUuODM4IDYuMjg2OTYgNS42MTc4MUw2LjkwMzI5IDMuMzYyNTVDNy42OTYyMSAzLjU4MTkyIDguNDEwNjggNC4wMzk5OSA4Ljk0MTM3IDQuNjg2ODJaTTcuMDczNzggMTEuNTQ0OUw3LjAyODE5IDExLjQ5MDJDNi41MDUzNiAxMC44NjIzIDUuODA3ODYgMTAuNDE3MyA1LjAzNTMgMTAuMTk3OEw1LjY1MDA3IDcuOTQ4MjNDNi40NDIwNCA4LjE2Nzk1IDcuMTU3NzQgOC42MjYzNCA3LjY4NjUxIDkuMjcwODNMNy43MTE0NCA5LjMwMDk4QzcuNzgyODQgOS4zODYyOSA3Ljg2Mjc3IDkuNDYzNDcgNy45NDA4NiA5LjU0MjM5TDcuMzIxMDQgMTEuODEwNEM3LjIzNTkgMTEuNzI1MSA3LjE1MTczIDExLjYzODUgNy4wNzM3OCAxMS41NDQ5Wk0xMi40NzA5IDEyLjczMDdMMTAuNjc3NiAxMi45NjA5QzEwLjUwNjQgMTIuOTgyOSAxMC4zMzUxIDEyLjk5MzcgMTAuMTY1IDEyLjk5MzdDMTAuMDY3NCAxMi45OTM3IDkuOTcwODcgMTIuOTg0NyA5Ljg3NDEzIDEyLjk3NzdMMTAuNDg4OCAxMC43Mjg4QzEwLjU5MjkgMTAuNzM2OSAxMC42OTczIDEwLjc0MzMgMTAuODAxOCAxMC43NDMzQzEwLjk3MjMgMTAuNzQzMyAxMS4xNDI5IDEwLjczMjUgMTEuMzEyMyAxMC43MTA3TDEzLjA4NTEgMTAuNDgzMUwxMi40NzA5IDEyLjczMDdaTTEzLjcyMjEgOC4xNTIxOEwxMS45NDY0IDguMzgwMTJDMTEuNjc0MSA4LjQxNDg4IDExLjM5OTcgOC40MTQzIDExLjEyNyA4LjM5MzI5TDExLjc0MjUgNi4xNDEwOEMxMS44NDUyIDYuMTQ5IDExLjk0NzYgNi4xNTgyNSAxMi4wNTEyIDYuMTU4MjVDMTIuMjIxNSA2LjE1ODI1IDEyLjM5MjYgNi4xNDc0NCAxMi41NjM5IDYuMTI1NDRMMTQuMzM4MiA1Ljg5NzY5TDEzLjcyMjEgOC4xNTIxOFoiIGZpbGw9IiMzNkJBM0IiLz4KPC9zdmc+Cg==';
268
+
269
+ const trophySvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTguNjI4NzQgMTAuMTI1VjExLjI2MzNDOC42Mjg3NCAxMS4yNjMzIDguMTQ0MTcgMTEuNzYzMiA1Ljk5OTkyIDExLjc2MzJDMy44NTU2NiAxMS43NjMyIDMuMzcxMDkgMTEuMjYzMyAzLjM3MTA5IDExLjI2MzNWMTAuMTI1SDguNjI4NzRaIiBmaWxsPSIjRTZBNDVFIi8+CjxwYXRoIGQ9Ik04LjYyODggMTAuMTI1VjExLjI2MzNDOC42Mjg4IDExLjI2MzMgOC4xNDQyMyAxMS43NjMyIDUuOTk5OTggMTEuNzYzMkM1LjI4MzMxIDExLjc2MzIgNC43NTIwNSAxMS43MDczIDQuMzYyMyAxMS42MzNDNi4zMTYxMiAxMS43NTk0IDguNjI4OCAxMC4xMjUgOC42Mjg4IDEwLjEyNVoiIGZpbGw9IiNEODkyNEUiLz4KPHBhdGggZD0iTTQuODg2OSA5LjU3NDcxQzMuOTkxNDEgOS42NzE1MyAzLjM3MTA5IDkuODgxNTYgMy4zNzEwOSAxMC4xMjUxQzMuMzcxMDkgMTAuNDYwNSA0LjU0ODA2IDEwLjczMjQgNS45OTk5MiAxMC43MzI0QzcuNDUxNzggMTAuNzMyNCA4LjYyODc0IDEwLjQ2MDUgOC42Mjg3NCAxMC4xMjUxQzguNjI4NzQgOS44ODE1OCA4LjAwODU0IDkuNjcxNTcgNy4xMTMyIDkuNTc0NzRMNC44ODY5IDkuNTc0NzFaIiBmaWxsPSIjRkZFRENDIi8+CjxwYXRoIGQ9Ik01LjQzMTA2IDcuMTE0MjZWOC4yNzk0NkM1LjQzMTA2IDkuMDMyNzYgNC45NjYzMyA5LjcwNzk2IDQuMjYyNyA5Ljk3Njk1QzQuMjYyNyA5Ljk3Njk1IDQuNjQ1NjcgMTAuMjgxOSA2LjAwMDIzIDEwLjI4MTlDNy4zNTQ3OSAxMC4yODE5IDcuNzM3NzYgOS45NzY5NSA3LjczNzc2IDkuOTc2OTVDNy4wMzQxMyA5LjcwNzk2IDYuNTY5MzkgOS4wMzI3NiA2LjU2OTM5IDguMjc5NDZWNy4xMTQyNkg1LjQzMTA2WiIgZmlsbD0iI0Y3RDE3RiIvPgo8cGF0aCBkPSJNMi45MTQwNiAwLjc4MzY5MUMyLjkxNDA2IDQuMzEyNjcgMy42MDEyIDcuMzQ4NzMgNS45OTk5NCA3LjM0ODczQzguMzk4NjcgNy4zNDg3MyA5LjA4NTgxIDQuMzEyNjcgOS4wODU4MSAwLjc4MzY5MUgyLjkxNDA2WiIgZmlsbD0iI0VBQjE2NiIvPgo8cGF0aCBkPSJNMi45NDQzNiAyLjAwMjc3SDEuMTU3MDlDMS4wNTkwNiAyLjAwMjc3IDAuOTg2NjMyIDIuMDkxNjcgMS4wMDcwNyAyLjE4NzU1QzEuMTQwODMgMi44MTUyIDEuNzEwNjUgNC44NTM2NCAzLjU0MDk3IDUuMzQ1NTlMMy44NTU3OCA2LjAxNTMzQzEuMjEwODYgNS4zNjYyOSAwLjUzMjQyNiAzLjEyNTYxIDAuMzU4NDA2IDIuMDIyMDVDMC4zMDY3NjEgMS42OTQ1NCAwLjU1Mzc2MyAxLjM5Nzk1IDAuODg1MzIxIDEuMzk3OTVIMi45MjE1MkwyLjk0NDM2IDIuMDAyNzdaIiBmaWxsPSIjRjdEMTdGIi8+CjxwYXRoIGQ9Ik05LjA1NTk0IDIuMDAyNzdIMTAuODQzMkMxMC45NDEyIDIuMDAyNzcgMTEuMDEzNyAyLjA5MTY3IDEwLjk5MzIgMi4xODc1NUMxMC44NTk1IDIuODE1MiAxMC4yODk3IDQuODUzNjQgOC40NTkzNCA1LjM0NTU5TDguMTQ0NTMgNi4wMTUzM0MxMC43ODk0IDUuMzY2MjkgMTEuNDY3OSAzLjEyNTYxIDExLjY0MTkgMi4wMjIwNUMxMS42OTM1IDEuNjk0NTQgMTEuNDQ2NSAxLjM5Nzk1IDExLjExNSAxLjM5Nzk1SDkuMDc4NzlMOS4wNTU5NCAyLjAwMjc3WiIgZmlsbD0iI0Y3RDE3RiIvPgo8cGF0aCBkPSJNNS45OTk5NCAxLjMyNjE3QzcuNzA0MjIgMS4zMjYxNyA5LjA4NTgxIDEuMDgyMzEgOS4wODU4MSAwLjc4MTQ5NUM5LjA4NTgxIDAuNDgwNjc3IDcuNzA0MjIgMC4yMzY4MTYgNS45OTk5NCAwLjIzNjgxNkM0LjI5NTY1IDAuMjM2ODE2IDIuOTE0MDYgMC40ODA2NzcgMi45MTQwNiAwLjc4MTQ5NUMyLjkxNDA2IDEuMDgyMzEgNC4yOTU2NSAxLjMyNjE3IDUuOTk5OTQgMS4zMjYxN1oiIGZpbGw9IiNFNkE0NUUiLz4KPHBhdGggZD0iTTguODIzNjYgMC43ODM2OTFDNy44OTgxOSA3LjAxNjg0IDQuNjE1NzcgNi41NzYxNyA0LjE5MDkyIDYuNDk4NThDNC42NDE1IDcuMDM2OCA1LjIzMzAxIDcuMzQ4NzIgNi4wMDA0MyA3LjM0ODcyQzguMzk5MTYgNy4zNDg3MiA5LjA4NjMgNC4zMTI2NyA5LjA4NjMgMC43ODM2OTFIOC44MjM2NloiIGZpbGw9IiNFNkE0NUUiLz4KPHBhdGggZD0iTTQuNjQyNCAwLjI5MzQ1N0MzLjYyMDA4IDAuMzgyMDYzIDIuOTE0MDYgMC41NjY3NDQgMi45MTQwNiAwLjc4MTM2NUMyLjkxNDA2IDEuMDAxOTQgMy42NTg3OSAxLjE5MTIxIDQuNzI3MTcgMS4yNzY3NUM0LjY3NTggMC45NTA3ODEgNC42NDY1MSAwLjYyMjIxOSA0LjY0MjQgMC4yOTM0NTdaIiBmaWxsPSIjRDg5MjRFIi8+CjxwYXRoIGQ9Ik02LjIyNTQ4IDIuNjAzNjlMNi4zOTQ5IDMuMTI1MTFDNi40MjY2MiAzLjIyMjc1IDYuNTE3NjEgMy4yODg4NiA2LjYyMDI3IDMuMjg4ODZINy4xNjg1M0M3LjM5ODA5IDMuMjg4ODYgNy40OTM1NCAzLjU4MjYxIDcuMzA3ODIgMy43MTc1NUw2Ljg2NDI3IDQuMDM5ODFDNi43ODEyMSA0LjEwMDE1IDYuNzQ2NDYgNC4yMDcxMSA2Ljc3ODE4IDQuMzA0NzVMNi45NDc2MSA0LjgyNjE4QzcuMDE4NTQgNS4wNDQ1IDYuNzY4NjYgNS4yMjYwNiA2LjU4Mjk0IDUuMDkxMTJMNi4xMzkzOSA0Ljc2ODg2QzYuMDU2MzMgNC43MDg1MiA1Ljk0Mzg3IDQuNzA4NTIgNS44NjA4MSA0Ljc2ODg2TDUuNDE3MjYgNS4wOTExMkM1LjIzMTU0IDUuMjI2MDYgNC45ODE2NSA1LjA0NDUgNS4wNTI1OSA0LjgyNjE4TDUuMjIyMDEgNC4zMDQ3NUM1LjI1Mzc0IDQuMjA3MTEgNS4yMTg5OCA0LjEwMDE1IDUuMTM1OTMgNC4wMzk4MUw0LjY5MjM4IDMuNzE3NTVDNC41MDY2NiAzLjU4MjYxIDQuNjAyMSAzLjI4ODg2IDQuODMxNjcgMy4yODg4Nkg1LjM3OTkzQzUuNDgyNTkgMy4yODg4NiA1LjU3MzU4IDMuMjIyNzUgNS42MDUzIDMuMTI1MTFMNS43NzQ3MiAyLjYwMzY5QzUuODQ1NjYgMi4zODUzNiA2LjE1NDU0IDIuMzg1MzYgNi4yMjU0OCAyLjYwMzY5WiIgZmlsbD0iI0Q4OTI0RSIvPgo8cGF0aCBkPSJNNi4yMjU0OCAyLjUwOTk0TDYuMzk0OSAzLjAzMTM2QzYuNDI2NjIgMy4xMjkgNi41MTc2MSAzLjE5NTExIDYuNjIwMjcgMy4xOTUxMUg3LjE2ODUzQzcuMzk4MDkgMy4xOTUxMSA3LjQ5MzU0IDMuNDg4ODYgNy4zMDc4MiAzLjYyMzhMNi44NjQyNyAzLjk0NjA2QzYuNzgxMjEgNC4wMDY0IDYuNzQ2NDYgNC4xMTMzNiA2Ljc3ODE4IDQuMjExTDYuOTQ3NjEgNC43MzI0M0M3LjAxODU0IDQuOTUwNzUgNi43Njg2NiA1LjEzMjMxIDYuNTgyOTQgNC45OTczN0w2LjEzOTM5IDQuNjc1MTFDNi4wNTYzMyA0LjYxNDc3IDUuOTQzODcgNC42MTQ3NyA1Ljg2MDgxIDQuNjc1MTFMNS40MTcyNiA0Ljk5NzM3QzUuMjMxNTQgNS4xMzIzMSA0Ljk4MTY1IDQuOTUwNzUgNS4wNTI1OSA0LjczMjQzTDUuMjIyMDEgNC4yMTFDNS4yNTM3NCA0LjExMzM2IDUuMjE4OTggNC4wMDY0IDUuMTM1OTMgMy45NDYwNkw0LjY5MjM4IDMuNjIzOEM0LjUwNjY2IDMuNDg4ODYgNC42MDIxIDMuMTk1MTEgNC44MzE2NyAzLjE5NTExSDUuMzc5OTNDNS40ODI1OSAzLjE5NTExIDUuNTczNTggMy4xMjkgNS42MDUzIDMuMDMxMzZMNS43NzQ3MiAyLjUwOTk0QzUuODQ1NjYgMi4yOTE2MSA2LjE1NDU0IDIuMjkxNjEgNi4yMjU0OCAyLjUwOTk0WiIgZmlsbD0iI0ZGRURDQyIvPgo8L3N2Zz4K';
270
+
271
+ const casinoChallengeCardCss = ".card {\n width: 308px;\n border-radius: 16px;\n border: 2px solid var(--emw--button-border-color, rgba(221, 255, 207, 0.1019607843));\n background-color: var(--emw--color-background, #141515);\n box-sizing: border-box;\n position: relative;\n}\n@container challenges-container (max-width: 576px) {\n .card {\n width: 100%;\n }\n}\n.card:hover {\n background: linear-gradient(90deg, rgb(0, 62, 92) 0%, rgb(17, 59, 33) 100%);\n cursor: pointer;\n}\n.card__image {\n width: 100%;\n height: 200px;\n border-radius: 16px 16px 0 0;\n}\n@container challenges-container (max-width: 576px) {\n .card__image {\n height: 224px;\n }\n}\n.card__image.grayed {\n opacity: 0.6;\n}\n.card__title {\n color: var(--emw--color-white, #FFFFFF);\n font-size: var(--emw--font-size-medium, 16px);\n margin: 0 0 10px;\n}\n.card__content {\n padding: 20px;\n}\n.card__button {\n margin-top: 20px;\n width: 100%;\n height: 34px;\n background: transparent;\n text-transform: uppercase;\n border-radius: var(--emw--button-border-radius, 99px);\n border: 2px solid var(--emw--button-border-color, #727672);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-bold, 700);\n color: var(--emw--color-secondary, #e9931e);\n}\n.card__button:hover {\n border-color: var(--emw--color-secondary, #e9931e);\n cursor: pointer;\n}\n.card__button.filled {\n background-color: var(--emw--button-background-primary-color, #18CE51);\n color: var(--emw--color-white, #FFFFFF);\n border-color: var(--emw--color-gray-300, #083B17);\n}\n.card__button.filled:hover {\n color: var(--emw--color-gray-300, #083B17);\n border-color: transparent;\n box-shadow: 0 0 4px 0 rgba(188, 252, 177, 0.2), 0 0 20px 0 rgba(0, 183, 79, 0.5);\n}\n.card__button.grayed {\n color: var(--emw--color-gray-50, #E2E2E2);\n}\n.card__button.grayed:hover {\n color: var(--emw--color-white, #FFFFFF);\n border-color: var(--emw--button-primary-border, #24B24E);\n}\n.card__button:hover {\n border-color: var(--emw--color-secondary, #e9931e);\n cursor: pointer;\n}\n.card__button:disabled, .card__button:disabled:hover {\n color: var(--emw--color-gray-50, #E2E2E2);\n cursor: not-allowed;\n border: 2px solid var(--emw--button-border-color, #727672);\n opacity: 0.7;\n}\n.card__badge {\n position: absolute;\n background: var(--emw--color-white, #FFFFFF);\n top: 6px;\n right: 6px;\n border-radius: 30px;\n padding: 2px 12px;\n line-height: 22px;\n font-weight: var(--emw--font-weight-medium, 500);\n font-size: var(--emw--font-size-x-small, 12px);\n box-shadow: 0 4px 4px 0 var(--emw--button-box-shadow-color, rgba(0, 0, 0, 0.25));\n backdrop-filter: blur(20px);\n box-sizing: border-box;\n}\n.card__badge span {\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.card__badge.expired {\n background: var(--emw--background-gray-color, rgba(250, 250, 250, 0.5019607843));\n border: 1px solid var(--emw--border-gray-color, #292C29);\n font-weight: 700;\n}\n.card__badge.completed {\n background: var(--emw--background-success-color, #C9F0D7);\n border: 1px solid var(--emw--border-success-color, #00B74F);\n color: var(--emw--color-gray-300, #083B17);\n font-weight: 700;\n}\n.card__badge.forfeited {\n background: var(--emw--background-errored-color, #FFE1DF);\n border: 1px solid var(--emw--border-errored-color, #D6421E);\n color: var(--emw--errored-color, #850606);\n font-weight: 700;\n}\n.card__badge.paused {\n background: var(--emw--background-warning-color, #F8E4AD);\n border: 1px solid var(--emw--border-warning-color, #EA9018);\n color: var(--emw--warning-color, #6D460A);\n font-weight: 700;\n}\n\n.info-item {\n line-height: 24px;\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n color: var(--emw--color-primary, #1dbf51);\n}\n@container challenges-container (min-width: 576px) {\n .info-item {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n vertical-align: bottom;\n }\n}\n.info-item.grayed {\n color: var(--emw--disabled-color, #727672);\n}\n.info-item__label {\n font-weight: var(--emw--font-weight-medium, 500);\n margin-right: 3px;\n color: var(--emw--color-gray-150, #C8D6CE);\n}\n.info-item__tooltip {\n position: absolute;\n line-height: 22px;\n padding: 8px 12px;\n border-radius: 8px;\n opacity: 1;\n z-index: 200;\n white-space: nowrap;\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n color: var(--emw--color-white, #FFFFFF);\n background-color: var(--emw--color-background-secondary, #1B1C2B);\n}\n.info-item__tooltip::before {\n content: \"\";\n position: absolute;\n top: -5px;\n left: 50%;\n transform: translateX(-50%);\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 6px solid var(--emw--color-background-secondary, #1B1C2B);\n width: 0;\n height: 0;\n z-index: 201;\n}\n\n.progress {\n background-color: var(--emw--progress-background, rgba(188, 252, 177, 0.1019607843));\n border-radius: 100px;\n height: 20px;\n margin-bottom: 10px;\n position: relative;\n align-content: center;\n padding: 0 2px;\n box-sizing: border-box;\n}\n.progress.paused {\n opacity: 0.5;\n}\n.progress.grayed {\n mix-blend-mode: luminosity;\n}\n.progress__placeholder {\n height: 20px;\n}\n.progress__icon {\n padding-top: 4px;\n}\n.progress__point {\n position: absolute;\n text-align: center;\n font-size: 12px;\n color: var(--emw--color-gray-150, #C8D6CE);\n font-weight: 700;\n line-height: 19px;\n top: 0;\n height: 19px;\n width: 19px;\n border-radius: 50%;\n}\n.progress__point.start {\n left: 0;\n border: 2px solid var(--emw--button-background-primary-color, #18CE51);\n background: linear-gradient(90deg, var(--emw--progress-active-level, #24AA4D) 0%, var(--emw--progress-active-level-secondary, #113F21) 100%);\n}\n.progress__point.end {\n right: 0;\n border: 2px solid var(--emw--dark-green, #1C8D56);\n background: var(--emw--color-gray-300, #083B17);\n opacity: 0.7;\n}\n.progress__point.finished {\n opacity: 1;\n}\n.progress__point.hidden {\n opacity: 0;\n}\n.progress__bar {\n border-radius: 73px;\n height: 16px;\n background: linear-gradient(90deg, var(--emw--secondary-green, #1E654F) 0%, var(--emw--dark-green, #1C8D56) 100%);\n text-align: end;\n color: var(--emw--color-gray-50, #E2E2E2);\n font-size: 11px;\n font-weight: 700;\n line-height: 16px;\n padding-right: 6px;\n box-sizing: border-box;\n}\n.progress__bar.finished {\n text-align: center;\n}";
272
+ const CasinoChallengeCardStyle0 = casinoChallengeCardCss;
273
+
274
+ const CasinoChallengeCard = class {
275
+ constructor(hostRef) {
276
+ index.registerInstance(this, hostRef);
277
+ this.timerExpired = index.createEvent(this, "timerExpired", 7);
278
+ this.calculateTargetValue = (level, currencySymbol) => {
279
+ var _a;
280
+ if (!level)
281
+ return '';
282
+ const minbet = ((_a = level.BetRange) === null || _a === void 0 ? void 0 : _a.MinBet)
283
+ ? `, ${translate('minBet', this.language)} ${currencySymbol + level.BetRange.MinBet}`
284
+ : '';
285
+ switch (level.LevelTargetType) {
286
+ case EChallengeLevelTargetType.Accumulative:
287
+ return `${translate('placeBetsOf', this.language)} ${currencySymbol + level.DisplayCurrencyTargetTurnover + minbet}`;
288
+ case EChallengeLevelTargetType.SingleBet:
289
+ return `${translate('place', this.language)} ${currencySymbol + level.TargetTurnover} ${translate('bet', this.language)}`;
290
+ case EChallengeLevelTargetType.MultipleOneBetSize:
291
+ return `${translate('place', this.language)} ${level.TargetBetCount} ${translate('bets', this.language) + minbet}`;
292
+ }
293
+ };
294
+ this.onMouseEnterHandler = (index, el) => {
295
+ if (el.scrollWidth > el.clientWidth) {
296
+ this.tooltipIndex = index;
297
+ }
298
+ };
299
+ this.onMouseLeaveHandler = () => {
300
+ this.tooltipIndex = null;
301
+ };
302
+ this.getBadgeContent = () => {
303
+ switch (this.challenge.Status) {
304
+ case EChallengeStatus.Expired:
305
+ return translate('expired', this.language);
306
+ case EChallengeStatus.Forfeited:
307
+ return translate('forfeited', this.language);
308
+ case EChallengeStatus.Completed:
309
+ return translate('finished', this.language);
310
+ case EChallengeStatus.Paused:
311
+ return translate('suspended', this.language);
312
+ default:
313
+ return this.timeLeft
314
+ ? [translate('endsIn', this.language), ' - ', index.h("span", null, this.timeLeft)]
315
+ : translate('expired', this.language);
316
+ }
317
+ };
318
+ this.checkAttrs = () => {
319
+ if (!this.endpoint) {
320
+ this.error = 'Endpoint is missing! Please provide a valid endpointURL.';
321
+ this.hasError = true;
322
+ console.error(this.error);
323
+ }
324
+ return this.hasError;
325
+ };
326
+ this.mbSource = undefined;
327
+ this.clientStyling = undefined;
328
+ this.clientStylingUrl = undefined;
329
+ this.translationUrl = '';
330
+ this.language = 'en';
331
+ this.endpoint = '';
332
+ this.domain = '';
333
+ this.session = '';
334
+ this.challenge = undefined;
335
+ this.isUserAuthorized = true;
336
+ this.tooltipIndex = null;
337
+ this.timeLeft = undefined;
338
+ this.error = '';
339
+ this.hasError = false;
340
+ this.actionLoading = false;
341
+ }
342
+ get infoItems() {
343
+ var _a, _b, _c, _d, _e;
344
+ const level = this.isUserAuthorized
345
+ ? (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.ProgressStatus === EChallengeProgressStatus.InProgress)
346
+ : (_b = this.challenge) === null || _b === void 0 ? void 0 : _b.LevelProgresses.find((x) => x.OrderNumber === 0);
347
+ if (level) {
348
+ const rewardValue = (_c = level.Rewards) === null || _c === void 0 ? void 0 : _c.slice(0, 2).map((r) => r.RewardDescription).join(' + ');
349
+ return [
350
+ {
351
+ lable: translate('totalLevels', this.language),
352
+ value: (_d = this.challenge.LevelProgresses) === null || _d === void 0 ? void 0 : _d.length
353
+ },
354
+ {
355
+ lable: translate('level1', this.language),
356
+ value: this.calculateTargetValue(level, (_e = this.challenge) === null || _e === void 0 ? void 0 : _e.CurrencySymbol)
357
+ },
358
+ {
359
+ lable: translate('get', this.language),
360
+ value: rewardValue
361
+ }
362
+ ];
363
+ }
364
+ return [];
365
+ }
366
+ handleClientStylingChange(newValue, oldValue) {
367
+ if (newValue != oldValue) {
368
+ setClientStyling(this.stylingContainer, this.clientStyling);
369
+ }
370
+ }
371
+ handleClientStylingUrlChange(newValue, oldValue) {
372
+ if (newValue != oldValue) {
373
+ setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
374
+ }
375
+ }
376
+ handleMbSourceChange(newValue, oldValue) {
377
+ if (newValue != oldValue) {
378
+ setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
379
+ }
380
+ }
381
+ connectedCallback() {
382
+ this.timerId = setInterval(() => {
383
+ this.updateTime();
384
+ }, 1000);
385
+ }
386
+ componentWillLoad() {
387
+ if (this.translationUrl) {
388
+ resolveTranslationUrl(this.translationUrl);
389
+ }
390
+ this.updateTime();
391
+ }
392
+ componentDidLoad() {
393
+ if (this.stylingContainer) {
394
+ if (this.mbSource)
395
+ setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
396
+ if (this.clientStyling)
397
+ setClientStyling(this.stylingContainer, this.clientStyling);
398
+ if (this.clientStylingUrl)
399
+ setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
400
+ }
401
+ }
402
+ disconnectedCallback() {
403
+ if (this.stylingSubscription) {
404
+ this.stylingSubscription.unsubscribe();
405
+ }
406
+ clearInterval(this.timerId);
407
+ }
408
+ updateTime() {
409
+ var _a;
410
+ this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ExpirationTime);
411
+ if (!this.timeLeft && this.timerExpired) {
412
+ clearInterval(this.timerId);
413
+ this.timerExpired.emit(this.challenge.Id);
414
+ }
415
+ }
416
+ renderInfoItem(item, index$1) {
417
+ return (index.h("div", { class: `info-item ${this.isChallengeGrayed}`, onMouseEnter: (e) => this.onMouseEnterHandler(index$1, e.currentTarget), onMouseLeave: this.onMouseLeaveHandler }, index.h("span", { class: "info-item__label" }, item.lable), item.value, this.tooltipIndex === index$1 && index.h("div", { class: "info-item__tooltip" }, item.value)));
418
+ }
419
+ get getCardBadge() {
420
+ return (index.h("div", { class: `card__badge ${ChallengeStatusDictionary[this.challenge.Status]}` }, this.getBadgeContent()));
421
+ }
422
+ get isChallengeGrayed() {
423
+ return [EChallengeStatus.Expired, EChallengeStatus.Forfeited, EChallengeStatus.Completed].includes(this.challenge.Status)
424
+ ? 'grayed'
425
+ : '';
426
+ }
427
+ get getChallengeProgress() {
428
+ var _a;
429
+ const currLevel = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.ProgressStatus === EChallengeProgressStatus.InProgress);
430
+ if (!this.isUserAuthorized || !currLevel)
431
+ return null;
432
+ const { Status, LevelProgresses } = this.challenge;
433
+ if (Status === EChallengeStatus.Expired || Status === EChallengeStatus.Started) {
434
+ return index.h("div", { class: "progress__placeholder" });
435
+ }
436
+ const barValue = Status === EChallengeStatus.Paused
437
+ ? translate('suspended', this.language)
438
+ : Status === EChallengeStatus.Completed
439
+ ? translate('finished', this.language)
440
+ : `${currLevel.ProgressPercentage}%`;
441
+ const isLastLevel = !LevelProgresses.some((x) => x.OrderNumber > currLevel.OrderNumber);
442
+ const secondImgSrc = Status === EChallengeStatus.Completed ? trophySvg : isLastLevel ? finishSvg : '';
443
+ return (index.h("div", { class: {
444
+ progress: true,
445
+ paused: Status === EChallengeStatus.Paused,
446
+ grayed: Status === EChallengeStatus.Forfeited
447
+ } }, index.h("div", { class: {
448
+ progress__point: true,
449
+ start: true,
450
+ hidden: Status === EChallengeStatus.Completed
451
+ } }, currLevel.OrderNumber + 1), index.h("div", { class: {
452
+ progress__bar: true,
453
+ finished: Status === EChallengeStatus.Completed
454
+ }, style: { width: `${currLevel.ProgressPercentage}%` } }, barValue), index.h("div", { class: {
455
+ progress__point: true,
456
+ end: true,
457
+ finished: Status === EChallengeStatus.Completed
458
+ } }, secondImgSrc ? index.h("img", { class: "progress__icon", src: secondImgSrc }) : currLevel.OrderNumber + 2)));
459
+ }
460
+ get getCardButton() {
461
+ if (this.isUserAuthorized) {
462
+ if (this.challenge.Status === EChallengeStatus.Started) {
463
+ return (index.h("button", { class: "card__button filled", disabled: this.actionLoading, onClick: () => this.joinUnjoinProgress(true) }, translate('start', this.language)));
464
+ }
465
+ if (this.challenge.Status === EChallengeStatus.Paused) {
466
+ return (index.h("button", { class: "card__button grayed", disabled: this.actionLoading, onClick: () => this.joinUnjoinProgress(true) }, translate('resume', this.language)));
467
+ }
468
+ if (this.challenge.Status === EChallengeStatus.InProgress ||
469
+ this.challenge.Status === EChallengeStatus.PendingLevelReward) {
470
+ return (index.h("button", { class: "card__button grayed", disabled: this.actionLoading, onClick: () => this.joinUnjoinProgress(false) }, translate('pause', this.language)));
471
+ }
472
+ }
473
+ return index.h("button", { class: "card__button" }, translate('viewDetails', this.language));
474
+ }
475
+ async joinUnjoinProgress(join) {
476
+ var _a;
477
+ const progress = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.ProgressStatus === EChallengeProgressStatus.InProgress);
478
+ if (!this.checkAttrs()) {
479
+ const url = `${this.endpoint}/challenge/ChangeProgressStatus`;
480
+ const body = Object.assign(Object.assign({ DomainId: this.domain }, (this.session && { PlayerSessionId: this.session })), (join ? { ProgressToActivate: progress.LevelId } : { ProgressToDeactivate: progress.LevelId }));
481
+ this.actionLoading = true;
482
+ return fetch(url, {
483
+ method: 'POST',
484
+ headers: {
485
+ 'Content-Type': 'application/json'
486
+ },
487
+ body: JSON.stringify(body)
488
+ })
489
+ .then((res) => res.json())
490
+ .finally(() => (this.actionLoading = false));
491
+ }
492
+ }
493
+ render() {
494
+ var _a, _b, _c, _d;
495
+ return (index.h("div", { key: '3405a652d64b5a9d1bc2f43ff226abfefb359158', ref: (el) => (this.stylingContainer = el) }, index.h("div", { key: 'a84228899e4845a36fa94b11b4e8d5b1fcbc0ae7', class: "card" }, index.h("img", { key: 'a4b6b6f8161f1184442b1e12c510254323b91e1a', class: `card__image ${this.isChallengeGrayed}`, src: (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengePresentation) === null || _b === void 0 ? void 0 : _b.Url }), this.getCardBadge, index.h("div", { key: '7d24cf5cdec35ab541989308811c12d1d665c891', class: "card__content" }, index.h("h1", { key: 'b9e045fd05580d001be012903938102dbbc64128', class: "card__title" }, (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.ChallengePresentation) === null || _d === void 0 ? void 0 : _d.PresentationName), this.getChallengeProgress, this.infoItems.map((x, index) => this.renderInfoItem(x, index)), this.getCardButton))));
496
+ }
497
+ static get watchers() { return {
498
+ "clientStyling": ["handleClientStylingChange"],
499
+ "clientStylingUrl": ["handleClientStylingUrlChange"],
500
+ "mbSource": ["handleMbSourceChange"]
501
+ }; }
502
+ };
503
+ CasinoChallengeCard.style = CasinoChallengeCardStyle0;
504
+
505
+ exports.CasinoChallengeCard = CasinoChallengeCard;