@everymatrix/casino-challenge-card 0.1.1 → 1.77.3
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.
- package/dist/casino-challenge-card/casino-challenge-card-3bea297c.js +1 -0
- package/dist/casino-challenge-card/casino-challenge-card.entry.js +1 -1
- package/dist/casino-challenge-card/index.esm.js +1 -1
- package/dist/cjs/{casino-challenge-card-c10f3b5d.js → casino-challenge-card-db07db21.js} +90 -32
- package/dist/cjs/casino-challenge-card.cjs.entry.js +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/collection/components/casino-challenge-card/casino-challenge-card.js +40 -27
- package/dist/collection/utils/locale.utils.js +10 -5
- package/dist/esm/{casino-challenge-card-cf383ea4.js → casino-challenge-card-3bea297c.js} +90 -32
- package/dist/esm/casino-challenge-card.entry.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/types/components/casino-challenge-card/casino-challenge-card.d.ts +1 -1
- package/dist/types/utils/types.d.ts +43 -61
- package/package.json +1 -1
- package/dist/casino-challenge-card/casino-challenge-card-cf383ea4.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,h as t}from"./index-fae081c3.js";const n=["ro","en","fr","ar","hr"],i={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"},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"},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"},ar:{totalLevels:"إجمالي المستويات:",level1:"المستوى 1:",get:"احصل على:",endsIn:"ينتهي في",expired:"منتهي الصلاحية",viewDetails:"عرض التفاصيل",placeBetsOf:"قم بوضع رهانات بقيمة",place:"ضع",bet:"رهان",bets:"رهانات",minBet:"الحد الأدنى للرهان"},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"}},a=(e,t)=>{const a=t;return i[void 0!==a&&n.includes(a)?a:"en"][e]};var o,r,l,s,d,c;function h(e,t){if(e){const n=document.createElement("style");n.innerHTML=t,e.appendChild(n)}}function p(e,t){const n=new URL(t);fetch(n.href).then((e=>e.text())).then((t=>{const n=document.createElement("style");n.innerHTML=t,e&&e.appendChild(n)})).catch((e=>{console.error("There was an error while trying to load client styling from URL",e)}))}function v(e,t){if(window.emMessageBus){const n=document.createElement("style");window.emMessageBus.subscribe(t,(t=>{n.innerHTML=t,e&&e.appendChild(n)}))}}!function(e){e[e.Accumulative=0]="Accumulative",e[e.SingleBet=1]="SingleBet",e[e.MultipleOneBetSize=2]="MultipleOneBetSize"}(o||(o={})),function(e){e[e.Single=0]="Single",e[e.Daily=1]="Daily",e[e.Weekly=2]="Weekly",e[e.Monthly=3]="Monthly"}(r||(r={})),function(e){e[e.FreeSpins=0]="FreeSpins",e[e.LuckyWheel=1]="LuckyWheel",e[e.Leaderboard=2]="Leaderboard",e[e.Challenge=3]="Challenge",e[e.Custom=4]="Custom"}(l||(l={})),function(e){e[e.Setup=0]="Setup",e[e.Active=1]="Active",e[e.Paused=2]="Paused",e[e.Closed=3]="Closed",e[e.Deleted=4]="Deleted"}(s||(s={})),function(e){e[e.GameLaunch=0]="GameLaunch",e[e.Reward=1]="Reward",e[e.Manual=2]="Manual"}(d||(d={})),function(e){e[e.Period=0]="Period",e[e.Date=1]="Date"}(c||(c={}));const u=class{constructor(t){e(this,t),this.calculateTargetValue=(e,t)=>{var n;if(!e)return"";const i=(null===(n=e.BetRange)||void 0===n?void 0:n.MinBet)?`, ${a("minBet",this.language)} ${t+e.BetRange.MinBet}`:"";switch(e.LevelTargetType){case o.Accumulative:return`${a("placeBetsOf",this.language)} ${t+e.DisplayCurrencyTargetTurnover+i}`;case o.SingleBet:return`${a("place",this.language)} ${t+e.TargetTurnover} ${a("bet",this.language)}`;case o.MultipleOneBetSize:return`${a("place",this.language)} ${e.TargetBetCount} ${a("bets",this.language)+i}`}},this.onMouseEnterHandler=(e,t)=>{t.scrollWidth>t.clientWidth&&(this.tooltipIndex=e)},this.onMouseLeaveHandler=()=>{this.tooltipIndex=null},this.mbSource=void 0,this.clientStyling=void 0,this.clientStylingUrl=void 0,this.translationUrl="",this.language="en",this.challenge=void 0,this.tooltipIndex=null,this.timeLeft=void 0}get infoItems(){var e,t,n,i;const o=null===(e=this.challenge)||void 0===e?void 0:e.LevelProgresses.find((e=>0===e.OrderNumber));if(o){const e=null===(t=o.Rewards)||void 0===t?void 0:t.slice(0,2).map((e=>e.RewardDescription)).join(" + ");return[{lable:a("totalLevels",this.language),value:null===(n=this.challenge.LevelProgresses)||void 0===n?void 0:n.length},{lable:a("level1",this.language),value:this.calculateTargetValue(o,null===(i=this.challenge)||void 0===i?void 0:i.CurrencySymbol)},{lable:a("get",this.language),value:e}]}return[]}handleClientStylingChange(e,t){e!=t&&h(this.stylingContainer,this.clientStyling)}handleClientStylingUrlChange(e,t){e!=t&&p(this.stylingContainer,this.clientStylingUrl)}handleMbSourceChange(e,t){e!=t&&v(this.stylingContainer,`${this.mbSource}.Style`)}connectedCallback(){this.timerId=setInterval((()=>{this.updateTime()}),1e3)}componentWillLoad(){this.translationUrl&&(async e=>{if(e)try{const n=await fetch(e);if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);const a=await n.json();t=a,Object.keys(t).forEach((e=>{for(let n in t[e])i[e][n]=t[e][n]}))}catch(e){console.error("Failed to fetch or parse translations from URL:",e)}var t})(this.translationUrl),this.updateTime()}componentDidLoad(){this.stylingContainer&&(this.mbSource&&v(this.stylingContainer,`${this.mbSource}.Style`),this.clientStyling&&h(this.stylingContainer,this.clientStyling),this.clientStylingUrl&&p(this.stylingContainer,this.clientStylingUrl))}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe(),clearInterval(this.timerId)}updateTime(){var e;this.timeLeft=function(e){const t=new Date;let n=new Date(e).getTime()-t.getTime();if(n<=0)return;const i=Math.floor(n/864e5);n-=864e5*i;const a=Math.floor(n/36e5);n-=36e5*a;const o=Math.floor(n/6e4);n-=6e4*o;const r=Math.floor(n/1e3),l=e=>e.toString().padStart(2,"0");return`${l(i)} : ${l(a)} : ${l(o)} : ${l(r)}`}(null===(e=this.challenge)||void 0===e?void 0:e.ExpirationTime)}renderInfoItem(e,n){return t("div",{class:"info-item",onMouseEnter:e=>this.onMouseEnterHandler(n,e.currentTarget),onMouseLeave:this.onMouseLeaveHandler},t("span",{class:"info-item__label"},e.lable),e.value,this.tooltipIndex===n&&t("div",{class:"info-item__tooltip"},e.value))}renderCardBadge(){return t("div",{class:"card__badge"},this.timeLeft?[a("endsIn",this.language)," - ",t("span",null,this.timeLeft)]:a("expired",this.language))}render(){var e,n,i,o;return t("div",{key:"7850e9e8d1e03657399dcf310fa45dc8ce22e331",ref:e=>this.stylingContainer=e},t("div",{key:"19ffacd7740531cc92296f13763f4b918d682501",class:"card"},t("img",{key:"2f62d4103601c176182a2959943bf2508ba0fa94",class:"card__image",src:null===(n=null===(e=this.challenge)||void 0===e?void 0:e.ChallengePresentation)||void 0===n?void 0:n.Url}),this.renderCardBadge(),t("div",{key:"8b250b1329890bcc600cdcbf5064bca28988393f",class:"card__content"},t("h1",{key:"de11a9bda74d8e6a0c445fbb0dd54fc5442230a5",class:"card__title"},null===(o=null===(i=this.challenge)||void 0===i?void 0:i.ChallengePresentation)||void 0===o?void 0:o.PresentationName),this.infoItems.map(((e,t)=>this.renderInfoItem(e,t))),t("button",{key:"f9d554499a8810224817ce0dcf51c2326e74ad8c",class:"card__button"},a("viewDetails",this.language)))))}static get watchers(){return{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}}};u.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 challenge-list (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 challenge-list (max-width: 576px) {\n .card__image {\n height: 224px;\n }\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__badge {\n position: absolute;\n background: white;\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 rgba(0, 0, 0, 0.25);\n backdrop-filter: blur(20px);\n}\n.card__badge span {\n font-weight: var(--emw--font-weight-bold, 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 challenge-list (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__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}';export{u as C}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{C as casino_challenge_card}from"./casino-challenge-card-
|
|
1
|
+
export{C as casino_challenge_card}from"./casino-challenge-card-3bea297c.js";import"./index-fae081c3.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{C as CasinoChallengeCard}from"./casino-challenge-card-
|
|
1
|
+
export{C as CasinoChallengeCard}from"./casino-challenge-card-3bea297c.js";import"./index-fae081c3.js";
|
|
@@ -15,7 +15,8 @@ const TRANSLATIONS = {
|
|
|
15
15
|
placeBetsOf: 'Place bets of',
|
|
16
16
|
place: 'Place',
|
|
17
17
|
bet: 'bet',
|
|
18
|
-
bets: 'bets'
|
|
18
|
+
bets: 'bets',
|
|
19
|
+
minBet: 'min bet'
|
|
19
20
|
},
|
|
20
21
|
ro: {
|
|
21
22
|
totalLevels: 'Niveluri totale:',
|
|
@@ -27,7 +28,8 @@ const TRANSLATIONS = {
|
|
|
27
28
|
placeBetsOf: 'Plasează pariuri de',
|
|
28
29
|
place: 'Plasare',
|
|
29
30
|
bet: 'pariu',
|
|
30
|
-
bets: 'pariuri'
|
|
31
|
+
bets: 'pariuri',
|
|
32
|
+
minBet: 'pariu minim'
|
|
31
33
|
},
|
|
32
34
|
fr: {
|
|
33
35
|
totalLevels: 'Niveaux totaux :',
|
|
@@ -39,7 +41,8 @@ const TRANSLATIONS = {
|
|
|
39
41
|
placeBetsOf: 'Placez des paris de',
|
|
40
42
|
place: 'Placer',
|
|
41
43
|
bet: 'pari',
|
|
42
|
-
bets: 'paris'
|
|
44
|
+
bets: 'paris',
|
|
45
|
+
minBet: 'mise minimale'
|
|
43
46
|
},
|
|
44
47
|
ar: {
|
|
45
48
|
totalLevels: 'إجمالي المستويات:',
|
|
@@ -51,7 +54,8 @@ const TRANSLATIONS = {
|
|
|
51
54
|
placeBetsOf: 'قم بوضع رهانات بقيمة',
|
|
52
55
|
place: 'ضع',
|
|
53
56
|
bet: 'رهان',
|
|
54
|
-
bets: 'رهانات'
|
|
57
|
+
bets: 'رهانات',
|
|
58
|
+
minBet: 'الحد الأدنى للرهان'
|
|
55
59
|
},
|
|
56
60
|
hr: {
|
|
57
61
|
totalLevels: 'Ukupno razina:',
|
|
@@ -63,7 +67,8 @@ const TRANSLATIONS = {
|
|
|
63
67
|
placeBetsOf: 'Postavite oklade od',
|
|
64
68
|
place: 'Postavi',
|
|
65
69
|
bet: 'kladnja',
|
|
66
|
-
bets: 'kladnje'
|
|
70
|
+
bets: 'kladnje',
|
|
71
|
+
minBet: 'minimalna oklada'
|
|
67
72
|
}
|
|
68
73
|
};
|
|
69
74
|
const translate = (key, customLang) => {
|
|
@@ -93,6 +98,47 @@ const resolveTranslationUrl = async (translationUrl) => {
|
|
|
93
98
|
}
|
|
94
99
|
};
|
|
95
100
|
|
|
101
|
+
var EChallengeLevelTargetType;
|
|
102
|
+
(function (EChallengeLevelTargetType) {
|
|
103
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["Accumulative"] = 0] = "Accumulative";
|
|
104
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["SingleBet"] = 1] = "SingleBet";
|
|
105
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["MultipleOneBetSize"] = 2] = "MultipleOneBetSize";
|
|
106
|
+
})(EChallengeLevelTargetType || (EChallengeLevelTargetType = {}));
|
|
107
|
+
var EChallengeRecurrenceType;
|
|
108
|
+
(function (EChallengeRecurrenceType) {
|
|
109
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Single"] = 0] = "Single";
|
|
110
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Daily"] = 1] = "Daily";
|
|
111
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Weekly"] = 2] = "Weekly";
|
|
112
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Monthly"] = 3] = "Monthly";
|
|
113
|
+
})(EChallengeRecurrenceType || (EChallengeRecurrenceType = {}));
|
|
114
|
+
var EChallengeRewardType;
|
|
115
|
+
(function (EChallengeRewardType) {
|
|
116
|
+
EChallengeRewardType[EChallengeRewardType["FreeSpins"] = 0] = "FreeSpins";
|
|
117
|
+
EChallengeRewardType[EChallengeRewardType["LuckyWheel"] = 1] = "LuckyWheel";
|
|
118
|
+
EChallengeRewardType[EChallengeRewardType["Leaderboard"] = 2] = "Leaderboard";
|
|
119
|
+
EChallengeRewardType[EChallengeRewardType["Challenge"] = 3] = "Challenge";
|
|
120
|
+
EChallengeRewardType[EChallengeRewardType["Custom"] = 4] = "Custom";
|
|
121
|
+
})(EChallengeRewardType || (EChallengeRewardType = {}));
|
|
122
|
+
var EChallengeStatus;
|
|
123
|
+
(function (EChallengeStatus) {
|
|
124
|
+
EChallengeStatus[EChallengeStatus["Setup"] = 0] = "Setup";
|
|
125
|
+
EChallengeStatus[EChallengeStatus["Active"] = 1] = "Active";
|
|
126
|
+
EChallengeStatus[EChallengeStatus["Paused"] = 2] = "Paused";
|
|
127
|
+
EChallengeStatus[EChallengeStatus["Closed"] = 3] = "Closed";
|
|
128
|
+
EChallengeStatus[EChallengeStatus["Deleted"] = 4] = "Deleted";
|
|
129
|
+
})(EChallengeStatus || (EChallengeStatus = {}));
|
|
130
|
+
var EChallengeTriggerType;
|
|
131
|
+
(function (EChallengeTriggerType) {
|
|
132
|
+
EChallengeTriggerType[EChallengeTriggerType["GameLaunch"] = 0] = "GameLaunch";
|
|
133
|
+
EChallengeTriggerType[EChallengeTriggerType["Reward"] = 1] = "Reward";
|
|
134
|
+
EChallengeTriggerType[EChallengeTriggerType["Manual"] = 2] = "Manual";
|
|
135
|
+
})(EChallengeTriggerType || (EChallengeTriggerType = {}));
|
|
136
|
+
var EChallengeValidityType;
|
|
137
|
+
(function (EChallengeValidityType) {
|
|
138
|
+
EChallengeValidityType[EChallengeValidityType["Period"] = 0] = "Period";
|
|
139
|
+
EChallengeValidityType[EChallengeValidityType["Date"] = 1] = "Date";
|
|
140
|
+
})(EChallengeValidityType || (EChallengeValidityType = {}));
|
|
141
|
+
|
|
96
142
|
function getTimeLeft(endTime) {
|
|
97
143
|
const now = new Date();
|
|
98
144
|
const end = new Date(endTime);
|
|
@@ -174,7 +220,22 @@ const CasinoChallengeCardStyle0 = casinoChallengeCardCss;
|
|
|
174
220
|
const CasinoChallengeCard = class {
|
|
175
221
|
constructor(hostRef) {
|
|
176
222
|
index.registerInstance(this, hostRef);
|
|
177
|
-
this.
|
|
223
|
+
this.calculateTargetValue = (level, currencySymbol) => {
|
|
224
|
+
var _a;
|
|
225
|
+
if (!level)
|
|
226
|
+
return '';
|
|
227
|
+
const minbet = ((_a = level.BetRange) === null || _a === void 0 ? void 0 : _a.MinBet)
|
|
228
|
+
? `, ${translate('minBet', this.language)} ${currencySymbol + level.BetRange.MinBet}`
|
|
229
|
+
: '';
|
|
230
|
+
switch (level.LevelTargetType) {
|
|
231
|
+
case EChallengeLevelTargetType.Accumulative:
|
|
232
|
+
return `${translate('placeBetsOf', this.language)} ${currencySymbol + level.DisplayCurrencyTargetTurnover + minbet}`;
|
|
233
|
+
case EChallengeLevelTargetType.SingleBet:
|
|
234
|
+
return `${translate('place', this.language)} ${currencySymbol + level.TargetTurnover} ${translate('bet', this.language)}`;
|
|
235
|
+
case EChallengeLevelTargetType.MultipleOneBetSize:
|
|
236
|
+
return `${translate('place', this.language)} ${level.TargetBetCount} ${translate('bets', this.language) + minbet}`;
|
|
237
|
+
}
|
|
238
|
+
};
|
|
178
239
|
this.onMouseEnterHandler = (index, el) => {
|
|
179
240
|
if (el.scrollWidth > el.clientWidth) {
|
|
180
241
|
this.tooltipIndex = index;
|
|
@@ -193,28 +254,26 @@ const CasinoChallengeCard = class {
|
|
|
193
254
|
this.timeLeft = undefined;
|
|
194
255
|
}
|
|
195
256
|
get infoItems() {
|
|
196
|
-
|
|
197
|
-
const
|
|
198
|
-
|
|
199
|
-
?
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
}
|
|
217
|
-
];
|
|
257
|
+
var _a, _b, _c, _d;
|
|
258
|
+
const level1 = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.OrderNumber === 0);
|
|
259
|
+
if (level1) {
|
|
260
|
+
const rewardValue = (_b = level1.Rewards) === null || _b === void 0 ? void 0 : _b.slice(0, 2).map((r) => r.RewardDescription).join(' + ');
|
|
261
|
+
return [
|
|
262
|
+
{
|
|
263
|
+
lable: translate('totalLevels', this.language),
|
|
264
|
+
value: (_c = this.challenge.LevelProgresses) === null || _c === void 0 ? void 0 : _c.length
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
lable: translate('level1', this.language),
|
|
268
|
+
value: this.calculateTargetValue(level1, (_d = this.challenge) === null || _d === void 0 ? void 0 : _d.CurrencySymbol)
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
lable: translate('get', this.language),
|
|
272
|
+
value: rewardValue
|
|
273
|
+
}
|
|
274
|
+
];
|
|
275
|
+
}
|
|
276
|
+
return [];
|
|
218
277
|
}
|
|
219
278
|
handleClientStylingChange(newValue, oldValue) {
|
|
220
279
|
if (newValue != oldValue) {
|
|
@@ -260,7 +319,7 @@ const CasinoChallengeCard = class {
|
|
|
260
319
|
}
|
|
261
320
|
updateTime() {
|
|
262
321
|
var _a;
|
|
263
|
-
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.
|
|
322
|
+
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ExpirationTime);
|
|
264
323
|
}
|
|
265
324
|
renderInfoItem(item, index$1) {
|
|
266
325
|
return (index.h("div", { class: "info-item", 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)));
|
|
@@ -271,9 +330,8 @@ const CasinoChallengeCard = class {
|
|
|
271
330
|
: translate('expired', this.language)));
|
|
272
331
|
}
|
|
273
332
|
render() {
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
this.challenge.ChallengePresentations[this.defaultLanguage].PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), index.h("button", { key: 'b53707ce7881cbf16321e3d3728a0e769af6589a', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
333
|
+
var _a, _b, _c, _d;
|
|
334
|
+
return (index.h("div", { key: '7850e9e8d1e03657399dcf310fa45dc8ce22e331', ref: (el) => (this.stylingContainer = el) }, index.h("div", { key: '19ffacd7740531cc92296f13763f4b918d682501', class: "card" }, index.h("img", { key: '2f62d4103601c176182a2959943bf2508ba0fa94', class: "card__image", src: (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengePresentation) === null || _b === void 0 ? void 0 : _b.Url }), this.renderCardBadge(), index.h("div", { key: '8b250b1329890bcc600cdcbf5064bca28988393f', class: "card__content" }, index.h("h1", { key: 'de11a9bda74d8e6a0c445fbb0dd54fc5442230a5', class: "card__title" }, (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.ChallengePresentation) === null || _d === void 0 ? void 0 : _d.PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), index.h("button", { key: 'f9d554499a8810224817ce0dcf51c2326e74ad8c', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
277
335
|
}
|
|
278
336
|
static get watchers() { return {
|
|
279
337
|
"clientStyling": ["handleClientStylingChange"],
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,10 +1,26 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
import { resolveTranslationUrl, translate } from "../../utils/locale.utils";
|
|
3
|
+
import { EChallengeLevelTargetType } from "../../utils/types";
|
|
3
4
|
import { getTimeLeft } from "../../utils/utils";
|
|
4
5
|
import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
|
|
5
6
|
export class CasinoChallengeCard {
|
|
6
7
|
constructor() {
|
|
7
|
-
this.
|
|
8
|
+
this.calculateTargetValue = (level, currencySymbol) => {
|
|
9
|
+
var _a;
|
|
10
|
+
if (!level)
|
|
11
|
+
return '';
|
|
12
|
+
const minbet = ((_a = level.BetRange) === null || _a === void 0 ? void 0 : _a.MinBet)
|
|
13
|
+
? `, ${translate('minBet', this.language)} ${currencySymbol + level.BetRange.MinBet}`
|
|
14
|
+
: '';
|
|
15
|
+
switch (level.LevelTargetType) {
|
|
16
|
+
case EChallengeLevelTargetType.Accumulative:
|
|
17
|
+
return `${translate('placeBetsOf', this.language)} ${currencySymbol + level.DisplayCurrencyTargetTurnover + minbet}`;
|
|
18
|
+
case EChallengeLevelTargetType.SingleBet:
|
|
19
|
+
return `${translate('place', this.language)} ${currencySymbol + level.TargetTurnover} ${translate('bet', this.language)}`;
|
|
20
|
+
case EChallengeLevelTargetType.MultipleOneBetSize:
|
|
21
|
+
return `${translate('place', this.language)} ${level.TargetBetCount} ${translate('bets', this.language) + minbet}`;
|
|
22
|
+
}
|
|
23
|
+
};
|
|
8
24
|
this.onMouseEnterHandler = (index, el) => {
|
|
9
25
|
if (el.scrollWidth > el.clientWidth) {
|
|
10
26
|
this.tooltipIndex = index;
|
|
@@ -23,28 +39,26 @@ export class CasinoChallengeCard {
|
|
|
23
39
|
this.timeLeft = undefined;
|
|
24
40
|
}
|
|
25
41
|
get infoItems() {
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
?
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
];
|
|
42
|
+
var _a, _b, _c, _d;
|
|
43
|
+
const level1 = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.OrderNumber === 0);
|
|
44
|
+
if (level1) {
|
|
45
|
+
const rewardValue = (_b = level1.Rewards) === null || _b === void 0 ? void 0 : _b.slice(0, 2).map((r) => r.RewardDescription).join(' + ');
|
|
46
|
+
return [
|
|
47
|
+
{
|
|
48
|
+
lable: translate('totalLevels', this.language),
|
|
49
|
+
value: (_c = this.challenge.LevelProgresses) === null || _c === void 0 ? void 0 : _c.length
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
lable: translate('level1', this.language),
|
|
53
|
+
value: this.calculateTargetValue(level1, (_d = this.challenge) === null || _d === void 0 ? void 0 : _d.CurrencySymbol)
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
lable: translate('get', this.language),
|
|
57
|
+
value: rewardValue
|
|
58
|
+
}
|
|
59
|
+
];
|
|
60
|
+
}
|
|
61
|
+
return [];
|
|
48
62
|
}
|
|
49
63
|
handleClientStylingChange(newValue, oldValue) {
|
|
50
64
|
if (newValue != oldValue) {
|
|
@@ -90,7 +104,7 @@ export class CasinoChallengeCard {
|
|
|
90
104
|
}
|
|
91
105
|
updateTime() {
|
|
92
106
|
var _a;
|
|
93
|
-
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.
|
|
107
|
+
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ExpirationTime);
|
|
94
108
|
}
|
|
95
109
|
renderInfoItem(item, index) {
|
|
96
110
|
return (h("div", { class: "info-item", onMouseEnter: (e) => this.onMouseEnterHandler(index, e.currentTarget), onMouseLeave: this.onMouseLeaveHandler }, h("span", { class: "info-item__label" }, item.lable), item.value, this.tooltipIndex === index && h("div", { class: "info-item__tooltip" }, item.value)));
|
|
@@ -101,9 +115,8 @@ export class CasinoChallengeCard {
|
|
|
101
115
|
: translate('expired', this.language)));
|
|
102
116
|
}
|
|
103
117
|
render() {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
this.challenge.ChallengePresentations[this.defaultLanguage].PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), h("button", { key: 'b53707ce7881cbf16321e3d3728a0e769af6589a', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
118
|
+
var _a, _b, _c, _d;
|
|
119
|
+
return (h("div", { key: '7850e9e8d1e03657399dcf310fa45dc8ce22e331', ref: (el) => (this.stylingContainer = el) }, h("div", { key: '19ffacd7740531cc92296f13763f4b918d682501', class: "card" }, h("img", { key: '2f62d4103601c176182a2959943bf2508ba0fa94', class: "card__image", src: (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengePresentation) === null || _b === void 0 ? void 0 : _b.Url }), this.renderCardBadge(), h("div", { key: '8b250b1329890bcc600cdcbf5064bca28988393f', class: "card__content" }, h("h1", { key: 'de11a9bda74d8e6a0c445fbb0dd54fc5442230a5', class: "card__title" }, (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.ChallengePresentation) === null || _d === void 0 ? void 0 : _d.PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), h("button", { key: 'f9d554499a8810224817ce0dcf51c2326e74ad8c', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
107
120
|
}
|
|
108
121
|
static get is() { return "casino-challenge-card"; }
|
|
109
122
|
static get encapsulation() { return "shadow"; }
|
|
@@ -11,7 +11,8 @@ const TRANSLATIONS = {
|
|
|
11
11
|
placeBetsOf: 'Place bets of',
|
|
12
12
|
place: 'Place',
|
|
13
13
|
bet: 'bet',
|
|
14
|
-
bets: 'bets'
|
|
14
|
+
bets: 'bets',
|
|
15
|
+
minBet: 'min bet'
|
|
15
16
|
},
|
|
16
17
|
ro: {
|
|
17
18
|
totalLevels: 'Niveluri totale:',
|
|
@@ -23,7 +24,8 @@ const TRANSLATIONS = {
|
|
|
23
24
|
placeBetsOf: 'Plasează pariuri de',
|
|
24
25
|
place: 'Plasare',
|
|
25
26
|
bet: 'pariu',
|
|
26
|
-
bets: 'pariuri'
|
|
27
|
+
bets: 'pariuri',
|
|
28
|
+
minBet: 'pariu minim'
|
|
27
29
|
},
|
|
28
30
|
fr: {
|
|
29
31
|
totalLevels: 'Niveaux totaux :',
|
|
@@ -35,7 +37,8 @@ const TRANSLATIONS = {
|
|
|
35
37
|
placeBetsOf: 'Placez des paris de',
|
|
36
38
|
place: 'Placer',
|
|
37
39
|
bet: 'pari',
|
|
38
|
-
bets: 'paris'
|
|
40
|
+
bets: 'paris',
|
|
41
|
+
minBet: 'mise minimale'
|
|
39
42
|
},
|
|
40
43
|
ar: {
|
|
41
44
|
totalLevels: 'إجمالي المستويات:',
|
|
@@ -47,7 +50,8 @@ const TRANSLATIONS = {
|
|
|
47
50
|
placeBetsOf: 'قم بوضع رهانات بقيمة',
|
|
48
51
|
place: 'ضع',
|
|
49
52
|
bet: 'رهان',
|
|
50
|
-
bets: 'رهانات'
|
|
53
|
+
bets: 'رهانات',
|
|
54
|
+
minBet: 'الحد الأدنى للرهان'
|
|
51
55
|
},
|
|
52
56
|
hr: {
|
|
53
57
|
totalLevels: 'Ukupno razina:',
|
|
@@ -59,7 +63,8 @@ const TRANSLATIONS = {
|
|
|
59
63
|
placeBetsOf: 'Postavite oklade od',
|
|
60
64
|
place: 'Postavi',
|
|
61
65
|
bet: 'kladnja',
|
|
62
|
-
bets: 'kladnje'
|
|
66
|
+
bets: 'kladnje',
|
|
67
|
+
minBet: 'minimalna oklada'
|
|
63
68
|
}
|
|
64
69
|
};
|
|
65
70
|
export const translate = (key, customLang) => {
|
|
@@ -13,7 +13,8 @@ const TRANSLATIONS = {
|
|
|
13
13
|
placeBetsOf: 'Place bets of',
|
|
14
14
|
place: 'Place',
|
|
15
15
|
bet: 'bet',
|
|
16
|
-
bets: 'bets'
|
|
16
|
+
bets: 'bets',
|
|
17
|
+
minBet: 'min bet'
|
|
17
18
|
},
|
|
18
19
|
ro: {
|
|
19
20
|
totalLevels: 'Niveluri totale:',
|
|
@@ -25,7 +26,8 @@ const TRANSLATIONS = {
|
|
|
25
26
|
placeBetsOf: 'Plasează pariuri de',
|
|
26
27
|
place: 'Plasare',
|
|
27
28
|
bet: 'pariu',
|
|
28
|
-
bets: 'pariuri'
|
|
29
|
+
bets: 'pariuri',
|
|
30
|
+
minBet: 'pariu minim'
|
|
29
31
|
},
|
|
30
32
|
fr: {
|
|
31
33
|
totalLevels: 'Niveaux totaux :',
|
|
@@ -37,7 +39,8 @@ const TRANSLATIONS = {
|
|
|
37
39
|
placeBetsOf: 'Placez des paris de',
|
|
38
40
|
place: 'Placer',
|
|
39
41
|
bet: 'pari',
|
|
40
|
-
bets: 'paris'
|
|
42
|
+
bets: 'paris',
|
|
43
|
+
minBet: 'mise minimale'
|
|
41
44
|
},
|
|
42
45
|
ar: {
|
|
43
46
|
totalLevels: 'إجمالي المستويات:',
|
|
@@ -49,7 +52,8 @@ const TRANSLATIONS = {
|
|
|
49
52
|
placeBetsOf: 'قم بوضع رهانات بقيمة',
|
|
50
53
|
place: 'ضع',
|
|
51
54
|
bet: 'رهان',
|
|
52
|
-
bets: 'رهانات'
|
|
55
|
+
bets: 'رهانات',
|
|
56
|
+
minBet: 'الحد الأدنى للرهان'
|
|
53
57
|
},
|
|
54
58
|
hr: {
|
|
55
59
|
totalLevels: 'Ukupno razina:',
|
|
@@ -61,7 +65,8 @@ const TRANSLATIONS = {
|
|
|
61
65
|
placeBetsOf: 'Postavite oklade od',
|
|
62
66
|
place: 'Postavi',
|
|
63
67
|
bet: 'kladnja',
|
|
64
|
-
bets: 'kladnje'
|
|
68
|
+
bets: 'kladnje',
|
|
69
|
+
minBet: 'minimalna oklada'
|
|
65
70
|
}
|
|
66
71
|
};
|
|
67
72
|
const translate = (key, customLang) => {
|
|
@@ -91,6 +96,47 @@ const resolveTranslationUrl = async (translationUrl) => {
|
|
|
91
96
|
}
|
|
92
97
|
};
|
|
93
98
|
|
|
99
|
+
var EChallengeLevelTargetType;
|
|
100
|
+
(function (EChallengeLevelTargetType) {
|
|
101
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["Accumulative"] = 0] = "Accumulative";
|
|
102
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["SingleBet"] = 1] = "SingleBet";
|
|
103
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["MultipleOneBetSize"] = 2] = "MultipleOneBetSize";
|
|
104
|
+
})(EChallengeLevelTargetType || (EChallengeLevelTargetType = {}));
|
|
105
|
+
var EChallengeRecurrenceType;
|
|
106
|
+
(function (EChallengeRecurrenceType) {
|
|
107
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Single"] = 0] = "Single";
|
|
108
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Daily"] = 1] = "Daily";
|
|
109
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Weekly"] = 2] = "Weekly";
|
|
110
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Monthly"] = 3] = "Monthly";
|
|
111
|
+
})(EChallengeRecurrenceType || (EChallengeRecurrenceType = {}));
|
|
112
|
+
var EChallengeRewardType;
|
|
113
|
+
(function (EChallengeRewardType) {
|
|
114
|
+
EChallengeRewardType[EChallengeRewardType["FreeSpins"] = 0] = "FreeSpins";
|
|
115
|
+
EChallengeRewardType[EChallengeRewardType["LuckyWheel"] = 1] = "LuckyWheel";
|
|
116
|
+
EChallengeRewardType[EChallengeRewardType["Leaderboard"] = 2] = "Leaderboard";
|
|
117
|
+
EChallengeRewardType[EChallengeRewardType["Challenge"] = 3] = "Challenge";
|
|
118
|
+
EChallengeRewardType[EChallengeRewardType["Custom"] = 4] = "Custom";
|
|
119
|
+
})(EChallengeRewardType || (EChallengeRewardType = {}));
|
|
120
|
+
var EChallengeStatus;
|
|
121
|
+
(function (EChallengeStatus) {
|
|
122
|
+
EChallengeStatus[EChallengeStatus["Setup"] = 0] = "Setup";
|
|
123
|
+
EChallengeStatus[EChallengeStatus["Active"] = 1] = "Active";
|
|
124
|
+
EChallengeStatus[EChallengeStatus["Paused"] = 2] = "Paused";
|
|
125
|
+
EChallengeStatus[EChallengeStatus["Closed"] = 3] = "Closed";
|
|
126
|
+
EChallengeStatus[EChallengeStatus["Deleted"] = 4] = "Deleted";
|
|
127
|
+
})(EChallengeStatus || (EChallengeStatus = {}));
|
|
128
|
+
var EChallengeTriggerType;
|
|
129
|
+
(function (EChallengeTriggerType) {
|
|
130
|
+
EChallengeTriggerType[EChallengeTriggerType["GameLaunch"] = 0] = "GameLaunch";
|
|
131
|
+
EChallengeTriggerType[EChallengeTriggerType["Reward"] = 1] = "Reward";
|
|
132
|
+
EChallengeTriggerType[EChallengeTriggerType["Manual"] = 2] = "Manual";
|
|
133
|
+
})(EChallengeTriggerType || (EChallengeTriggerType = {}));
|
|
134
|
+
var EChallengeValidityType;
|
|
135
|
+
(function (EChallengeValidityType) {
|
|
136
|
+
EChallengeValidityType[EChallengeValidityType["Period"] = 0] = "Period";
|
|
137
|
+
EChallengeValidityType[EChallengeValidityType["Date"] = 1] = "Date";
|
|
138
|
+
})(EChallengeValidityType || (EChallengeValidityType = {}));
|
|
139
|
+
|
|
94
140
|
function getTimeLeft(endTime) {
|
|
95
141
|
const now = new Date();
|
|
96
142
|
const end = new Date(endTime);
|
|
@@ -172,7 +218,22 @@ const CasinoChallengeCardStyle0 = casinoChallengeCardCss;
|
|
|
172
218
|
const CasinoChallengeCard = class {
|
|
173
219
|
constructor(hostRef) {
|
|
174
220
|
registerInstance(this, hostRef);
|
|
175
|
-
this.
|
|
221
|
+
this.calculateTargetValue = (level, currencySymbol) => {
|
|
222
|
+
var _a;
|
|
223
|
+
if (!level)
|
|
224
|
+
return '';
|
|
225
|
+
const minbet = ((_a = level.BetRange) === null || _a === void 0 ? void 0 : _a.MinBet)
|
|
226
|
+
? `, ${translate('minBet', this.language)} ${currencySymbol + level.BetRange.MinBet}`
|
|
227
|
+
: '';
|
|
228
|
+
switch (level.LevelTargetType) {
|
|
229
|
+
case EChallengeLevelTargetType.Accumulative:
|
|
230
|
+
return `${translate('placeBetsOf', this.language)} ${currencySymbol + level.DisplayCurrencyTargetTurnover + minbet}`;
|
|
231
|
+
case EChallengeLevelTargetType.SingleBet:
|
|
232
|
+
return `${translate('place', this.language)} ${currencySymbol + level.TargetTurnover} ${translate('bet', this.language)}`;
|
|
233
|
+
case EChallengeLevelTargetType.MultipleOneBetSize:
|
|
234
|
+
return `${translate('place', this.language)} ${level.TargetBetCount} ${translate('bets', this.language) + minbet}`;
|
|
235
|
+
}
|
|
236
|
+
};
|
|
176
237
|
this.onMouseEnterHandler = (index, el) => {
|
|
177
238
|
if (el.scrollWidth > el.clientWidth) {
|
|
178
239
|
this.tooltipIndex = index;
|
|
@@ -191,28 +252,26 @@ const CasinoChallengeCard = class {
|
|
|
191
252
|
this.timeLeft = undefined;
|
|
192
253
|
}
|
|
193
254
|
get infoItems() {
|
|
194
|
-
|
|
195
|
-
const
|
|
196
|
-
|
|
197
|
-
?
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
];
|
|
255
|
+
var _a, _b, _c, _d;
|
|
256
|
+
const level1 = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses.find((x) => x.OrderNumber === 0);
|
|
257
|
+
if (level1) {
|
|
258
|
+
const rewardValue = (_b = level1.Rewards) === null || _b === void 0 ? void 0 : _b.slice(0, 2).map((r) => r.RewardDescription).join(' + ');
|
|
259
|
+
return [
|
|
260
|
+
{
|
|
261
|
+
lable: translate('totalLevels', this.language),
|
|
262
|
+
value: (_c = this.challenge.LevelProgresses) === null || _c === void 0 ? void 0 : _c.length
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
lable: translate('level1', this.language),
|
|
266
|
+
value: this.calculateTargetValue(level1, (_d = this.challenge) === null || _d === void 0 ? void 0 : _d.CurrencySymbol)
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
lable: translate('get', this.language),
|
|
270
|
+
value: rewardValue
|
|
271
|
+
}
|
|
272
|
+
];
|
|
273
|
+
}
|
|
274
|
+
return [];
|
|
216
275
|
}
|
|
217
276
|
handleClientStylingChange(newValue, oldValue) {
|
|
218
277
|
if (newValue != oldValue) {
|
|
@@ -258,7 +317,7 @@ const CasinoChallengeCard = class {
|
|
|
258
317
|
}
|
|
259
318
|
updateTime() {
|
|
260
319
|
var _a;
|
|
261
|
-
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.
|
|
320
|
+
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ExpirationTime);
|
|
262
321
|
}
|
|
263
322
|
renderInfoItem(item, index) {
|
|
264
323
|
return (h("div", { class: "info-item", onMouseEnter: (e) => this.onMouseEnterHandler(index, e.currentTarget), onMouseLeave: this.onMouseLeaveHandler }, h("span", { class: "info-item__label" }, item.lable), item.value, this.tooltipIndex === index && h("div", { class: "info-item__tooltip" }, item.value)));
|
|
@@ -269,9 +328,8 @@ const CasinoChallengeCard = class {
|
|
|
269
328
|
: translate('expired', this.language)));
|
|
270
329
|
}
|
|
271
330
|
render() {
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
this.challenge.ChallengePresentations[this.defaultLanguage].PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), h("button", { key: 'b53707ce7881cbf16321e3d3728a0e769af6589a', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
331
|
+
var _a, _b, _c, _d;
|
|
332
|
+
return (h("div", { key: '7850e9e8d1e03657399dcf310fa45dc8ce22e331', ref: (el) => (this.stylingContainer = el) }, h("div", { key: '19ffacd7740531cc92296f13763f4b918d682501', class: "card" }, h("img", { key: '2f62d4103601c176182a2959943bf2508ba0fa94', class: "card__image", src: (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengePresentation) === null || _b === void 0 ? void 0 : _b.Url }), this.renderCardBadge(), h("div", { key: '8b250b1329890bcc600cdcbf5064bca28988393f', class: "card__content" }, h("h1", { key: 'de11a9bda74d8e6a0c445fbb0dd54fc5442230a5', class: "card__title" }, (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.ChallengePresentation) === null || _d === void 0 ? void 0 : _d.PresentationName), this.infoItems.map((x, index) => this.renderInfoItem(x, index)), h("button", { key: 'f9d554499a8810224817ce0dcf51c2326e74ad8c', class: "card__button" }, translate('viewDetails', this.language))))));
|
|
275
333
|
}
|
|
276
334
|
static get watchers() { return {
|
|
277
335
|
"clientStyling": ["handleClientStylingChange"],
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { C as casino_challenge_card } from './casino-challenge-card-
|
|
1
|
+
export { C as casino_challenge_card } from './casino-challenge-card-3bea297c.js';
|
|
2
2
|
import './index-fae081c3.js';
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { C as CasinoChallengeCard } from './casino-challenge-card-
|
|
1
|
+
export { C as CasinoChallengeCard } from './casino-challenge-card-3bea297c.js';
|
|
2
2
|
import './index-fae081c3.js';
|
|
@@ -26,7 +26,6 @@ export declare class CasinoChallengeCard {
|
|
|
26
26
|
challenge: IChallenge;
|
|
27
27
|
tooltipIndex: number;
|
|
28
28
|
timeLeft: string;
|
|
29
|
-
private readonly defaultLanguage;
|
|
30
29
|
private stylingContainer;
|
|
31
30
|
private stylingSubscription;
|
|
32
31
|
private timerId;
|
|
@@ -38,6 +37,7 @@ export declare class CasinoChallengeCard {
|
|
|
38
37
|
componentWillLoad(): void;
|
|
39
38
|
componentDidLoad(): void;
|
|
40
39
|
disconnectedCallback(): void;
|
|
40
|
+
private calculateTargetValue;
|
|
41
41
|
private updateTime;
|
|
42
42
|
private onMouseEnterHandler;
|
|
43
43
|
private onMouseLeaveHandler;
|
|
@@ -39,86 +39,68 @@ export declare enum EChallengeValidityType {
|
|
|
39
39
|
export type ChallengeRecurrenceTypeName = 'Single' | 'Daily' | 'Weekly' | 'Monthly';
|
|
40
40
|
export type ChallengeStatusName = 'Draft' | 'Enabled' | 'Paused' | 'Closed' | 'Deleted';
|
|
41
41
|
export type ChallengeTriggerName = 'GameLaunch' | 'Reward';
|
|
42
|
-
export interface IChallengeLevel {
|
|
43
|
-
Name: string;
|
|
44
|
-
Id?: number;
|
|
45
|
-
OrderNumber: number;
|
|
46
|
-
Target: IChallengeLevelTarget;
|
|
47
|
-
CustomRewardMessage: Record<string, string>;
|
|
48
|
-
Rewards: Array<IChallengeLevelReward>;
|
|
49
|
-
Targets?: string | null;
|
|
50
|
-
}
|
|
51
42
|
export interface IChallengeLevelReward {
|
|
52
43
|
Type: EChallengeRewardType;
|
|
53
44
|
RewardId: number;
|
|
54
45
|
RewardDescription?: string;
|
|
55
46
|
BonusCode?: string | null;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
TargetType: number;
|
|
59
|
-
Turnover: number;
|
|
60
|
-
BetCount: number;
|
|
61
|
-
LevelContributionPercent: number;
|
|
62
|
-
BetRange?: Record<string, IChallengeBetRange>;
|
|
47
|
+
LoyaltyEngineRewardType: number;
|
|
48
|
+
RewardAmount: number;
|
|
63
49
|
}
|
|
64
50
|
export interface IChallengePresentation {
|
|
51
|
+
TriggerPopupMessage: string;
|
|
52
|
+
TooltipMessage: string;
|
|
53
|
+
BannerUrl: string;
|
|
65
54
|
PresentationName: string;
|
|
66
|
-
Description
|
|
67
|
-
Url
|
|
68
|
-
TriggerPopupMessage?: string;
|
|
69
|
-
TooltipMessage?: string;
|
|
55
|
+
Description: string;
|
|
56
|
+
Url: string;
|
|
70
57
|
}
|
|
71
58
|
export interface ITriggerPeriods {
|
|
72
59
|
DayOfWeek: number;
|
|
73
60
|
StartTime: string;
|
|
74
61
|
EndTime: string;
|
|
75
62
|
}
|
|
76
|
-
export interface IChallengeRecurrence {
|
|
77
|
-
Type: EChallengeRecurrenceType;
|
|
78
|
-
RecurrenceTypeName: ChallengeRecurrenceTypeName;
|
|
79
|
-
MaxParticipationPerPlayer: number;
|
|
80
|
-
TriggerPeriods: ITriggerPeriods[] | null;
|
|
81
|
-
}
|
|
82
|
-
export interface IChallengeValidity {
|
|
83
|
-
Type: number;
|
|
84
|
-
Days: number | null;
|
|
85
|
-
Hours: number;
|
|
86
|
-
Minutes: number;
|
|
87
|
-
ExpirationTime: string;
|
|
88
|
-
}
|
|
89
63
|
export interface IChallengeBetRange {
|
|
90
64
|
MinBet: number;
|
|
91
65
|
MaxBet: number;
|
|
92
66
|
MaxContributionAmount: number;
|
|
93
67
|
}
|
|
68
|
+
export interface IGame {
|
|
69
|
+
GameId: string;
|
|
70
|
+
GameName: string;
|
|
71
|
+
GameIcon: string;
|
|
72
|
+
GameSlug: string;
|
|
73
|
+
CasinoGameId: number;
|
|
74
|
+
}
|
|
75
|
+
export interface ILevelProgress {
|
|
76
|
+
DisplayCurrencyCurrentTurnover: number;
|
|
77
|
+
DisplayCurrencyTargetTurnover: number;
|
|
78
|
+
CustomRewardMessage: string;
|
|
79
|
+
LevelId: string;
|
|
80
|
+
OrderNumber: number;
|
|
81
|
+
LevelTargetType: EChallengeLevelTargetType;
|
|
82
|
+
CurrentTurnover: number;
|
|
83
|
+
TargetTurnover: number;
|
|
84
|
+
LevelContributionPercent: number;
|
|
85
|
+
CurrentBetCount: number;
|
|
86
|
+
TargetBetCount: number;
|
|
87
|
+
Rewards: IChallengeLevelReward[];
|
|
88
|
+
ProgressPercentage: number;
|
|
89
|
+
ProgressStatus: number;
|
|
90
|
+
CompleteTime: string;
|
|
91
|
+
BetRange: IChallengeBetRange;
|
|
92
|
+
}
|
|
94
93
|
export interface IChallenge {
|
|
95
|
-
Status:
|
|
96
|
-
|
|
97
|
-
Name: string;
|
|
98
|
-
ChallengePresentations?: Record<string, IChallengePresentation>;
|
|
99
|
-
Ins: string;
|
|
100
|
-
Upd: string;
|
|
101
|
-
StartTime: string;
|
|
102
|
-
ChallengeEndTime: string;
|
|
103
|
-
Validity: IChallengeValidity;
|
|
104
|
-
Recurrence: IChallengeRecurrence;
|
|
105
|
-
SystemCurrency: string;
|
|
106
|
-
AllowedCurrencies: string[] | null;
|
|
107
|
-
Trigger: EChallengeTriggerType;
|
|
108
|
-
TriggerName: ChallengeTriggerName;
|
|
109
|
-
ChallengeLevels: Array<IChallengeLevel>;
|
|
110
|
-
GameCodes: Array<string>;
|
|
111
|
-
IncludedUserIds?: Array<string>;
|
|
112
|
-
ExcludedUserIds?: Array<string>;
|
|
113
|
-
AllowedCountries?: Array<string>;
|
|
114
|
-
DeniedCountries?: Array<string>;
|
|
115
|
-
IncludedUserIdRange?: Array<Record<string, number>>;
|
|
116
|
-
ExcludedUserIdRange?: Array<Record<string, number>>;
|
|
117
|
-
IsPendingTrigger: boolean;
|
|
118
|
-
Id: number;
|
|
94
|
+
Status: number;
|
|
95
|
+
ChallengePresentation: IChallengePresentation;
|
|
119
96
|
DomainId: number;
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
97
|
+
Id: string;
|
|
98
|
+
ChallengeId: string;
|
|
99
|
+
CurrencySymbol: string;
|
|
100
|
+
ExpirationTime: string;
|
|
101
|
+
IsNew: boolean;
|
|
102
|
+
TotalGamesCount: number;
|
|
103
|
+
IncludeAllGames: boolean;
|
|
104
|
+
Games: IGame[];
|
|
105
|
+
LevelProgresses: ILevelProgress[];
|
|
124
106
|
}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e,h as t}from"./index-fae081c3.js";const n=["ro","en","fr","ar","hr"],i={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"},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"},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"},ar:{totalLevels:"إجمالي المستويات:",level1:"المستوى 1:",get:"احصل على:",endsIn:"ينتهي في",expired:"منتهي الصلاحية",viewDetails:"عرض التفاصيل",placeBetsOf:"قم بوضع رهانات بقيمة",place:"ضع",bet:"رهان",bets:"رهانات"},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"}},a=(e,t)=>{const a=t;return i[void 0!==a&&n.includes(a)?a:"en"][e]};function o(e,t){if(e){const n=document.createElement("style");n.innerHTML=t,e.appendChild(n)}}function r(e,t){const n=new URL(t);fetch(n.href).then((e=>e.text())).then((t=>{const n=document.createElement("style");n.innerHTML=t,e&&e.appendChild(n)})).catch((e=>{console.error("There was an error while trying to load client styling from URL",e)}))}function s(e,t){if(window.emMessageBus){const n=document.createElement("style");window.emMessageBus.subscribe(t,(t=>{n.innerHTML=t,e&&e.appendChild(n)}))}}const l=class{constructor(t){e(this,t),this.defaultLanguage="en",this.onMouseEnterHandler=(e,t)=>{t.scrollWidth>t.clientWidth&&(this.tooltipIndex=e)},this.onMouseLeaveHandler=()=>{this.tooltipIndex=null},this.mbSource=void 0,this.clientStyling=void 0,this.clientStylingUrl=void 0,this.translationUrl="",this.language="en",this.challenge=void 0,this.tooltipIndex=null,this.timeLeft=void 0}get infoItems(){const e=this.challenge.ChallengeLevels[0],t=e.Target,n=0===t.TargetType?`${a("placeBetsOf",this.language)} ${t.Turnover}`:1===t.TargetType?`${a("place",this.language)} ${t.Turnover} ${a("bet",this.language)}`:`${a("place",this.language)} ${t.BetCount} ${a("bets",this.language)}`,i=e.Rewards.map((e=>e.RewardDescription)).join(" + ");return[{lable:a("totalLevels",this.language),value:this.challenge.ChallengeLevels.length},{lable:a("level1",this.language),value:n},{lable:a("get",this.language),value:i}]}handleClientStylingChange(e,t){e!=t&&o(this.stylingContainer,this.clientStyling)}handleClientStylingUrlChange(e,t){e!=t&&r(this.stylingContainer,this.clientStylingUrl)}handleMbSourceChange(e,t){e!=t&&s(this.stylingContainer,`${this.mbSource}.Style`)}connectedCallback(){this.timerId=setInterval((()=>{this.updateTime()}),1e3)}componentWillLoad(){this.translationUrl&&(async e=>{if(e)try{const n=await fetch(e);if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);const a=await n.json();t=a,Object.keys(t).forEach((e=>{for(let n in t[e])i[e][n]=t[e][n]}))}catch(e){console.error("Failed to fetch or parse translations from URL:",e)}var t})(this.translationUrl),this.updateTime()}componentDidLoad(){this.stylingContainer&&(this.mbSource&&s(this.stylingContainer,`${this.mbSource}.Style`),this.clientStyling&&o(this.stylingContainer,this.clientStyling),this.clientStylingUrl&&r(this.stylingContainer,this.clientStylingUrl))}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe(),clearInterval(this.timerId)}updateTime(){var e;this.timeLeft=function(e){const t=new Date;let n=new Date(e).getTime()-t.getTime();if(n<=0)return;const i=Math.floor(n/864e5);n-=864e5*i;const a=Math.floor(n/36e5);n-=36e5*a;const o=Math.floor(n/6e4);n-=6e4*o;const r=Math.floor(n/1e3),s=e=>e.toString().padStart(2,"0");return`${s(i)} : ${s(a)} : ${s(o)} : ${s(r)}`}(null===(e=this.challenge)||void 0===e?void 0:e.ChallengeEndTime)}renderInfoItem(e,n){return t("div",{class:"info-item",onMouseEnter:e=>this.onMouseEnterHandler(n,e.currentTarget),onMouseLeave:this.onMouseLeaveHandler},t("span",{class:"info-item__label"},e.lable),e.value,this.tooltipIndex===n&&t("div",{class:"info-item__tooltip"},e.value))}renderCardBadge(){return t("div",{class:"card__badge"},this.timeLeft?[a("endsIn",this.language)," - ",t("span",null,this.timeLeft)]:a("expired",this.language))}render(){return t("div",{key:"ddbd3e0d20b4d75ed70120798c45d7c03715b7df",ref:e=>this.stylingContainer=e},t("div",{key:"3ca0c4b6ad25b4f60077b894bf73c9686f67a677",class:"card"},t("img",{key:"1712546c27e75e04bde5832c521038bfd418e57f",class:"card__image",src:this.challenge.ChallengePresentations[this.language].Url||this.challenge.ChallengePresentations[this.defaultLanguage].Url}),this.renderCardBadge(),t("div",{key:"238041db616391c2594bef46778649b8b6282097",class:"card__content"},t("h1",{key:"d377b99c7758460df8b1a6e8e39059959347430f",class:"card__title"},this.challenge.ChallengePresentations[this.language].PresentationName||this.challenge.ChallengePresentations[this.defaultLanguage].PresentationName),this.infoItems.map(((e,t)=>this.renderInfoItem(e,t))),t("button",{key:"b53707ce7881cbf16321e3d3728a0e769af6589a",class:"card__button"},a("viewDetails",this.language)))))}static get watchers(){return{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}}};l.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 challenge-list (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 challenge-list (max-width: 576px) {\n .card__image {\n height: 224px;\n }\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__badge {\n position: absolute;\n background: white;\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 rgba(0, 0, 0, 0.25);\n backdrop-filter: blur(20px);\n}\n.card__badge span {\n font-weight: var(--emw--font-weight-bold, 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 challenge-list (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__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}';export{l as C}
|