@everymatrix/casino-challenges-overlay 0.16.1 → 0.16.2

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 (24) hide show
  1. package/dist/casino-challenges-overlay/casino-challenges-overlay-a5ae48f5.js +1 -0
  2. package/dist/casino-challenges-overlay/casino-challenges-overlay.esm.js +1 -1
  3. package/dist/casino-challenges-overlay/casino-challenges-overlay_2.entry.js +1 -1
  4. package/dist/casino-challenges-overlay/index-be60b13e.js +2 -0
  5. package/dist/casino-challenges-overlay/index.esm.js +1 -1
  6. package/dist/cjs/{casino-challenges-overlay-365b73b3.js → casino-challenges-overlay-68ec1eb8.js} +22 -10
  7. package/dist/cjs/casino-challenges-overlay.cjs.js +2 -2
  8. package/dist/cjs/casino-challenges-overlay_2.cjs.entry.js +132 -7
  9. package/dist/cjs/{index-3b105378.js → index-d610a063.js} +26 -3
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/collection/components/casino-challenges-overlay/casino-challenges-overlay.js +14 -8
  13. package/dist/collection/utils/locale.utils.js +10 -2
  14. package/dist/esm/{casino-challenges-overlay-5fcad42a.js → casino-challenges-overlay-a5ae48f5.js} +22 -10
  15. package/dist/esm/casino-challenges-overlay.js +3 -3
  16. package/dist/esm/casino-challenges-overlay_2.entry.js +133 -8
  17. package/dist/esm/{index-4cb6ae8e.js → index-be60b13e.js} +26 -3
  18. package/dist/esm/index.js +2 -2
  19. package/dist/esm/loader.js +3 -3
  20. package/dist/types/components/casino-challenges-overlay/casino-challenges-overlay.d.ts +3 -1
  21. package/dist/types/utils/types.d.ts +4 -0
  22. package/package.json +1 -1
  23. package/dist/casino-challenges-overlay/casino-challenges-overlay-5fcad42a.js +0 -1
  24. package/dist/casino-challenges-overlay/index-4cb6ae8e.js +0 -2
@@ -56,6 +56,8 @@ export class CasinoChallengesOverlay {
56
56
  this.modalReward = '';
57
57
  this.modalAddition = false;
58
58
  this.modalOrderNumber = 1;
59
+ this.modalIsFreeSpinsGranted = false;
60
+ this.modalBonusProgramGames = [];
59
61
  }
60
62
  handleClientStylingChange(newValue, oldValue) {
61
63
  if (newValue != oldValue) {
@@ -97,7 +99,7 @@ export class CasinoChallengesOverlay {
97
99
  }
98
100
  }
99
101
  handleEvent(e) {
100
- var _a, _b, _c, _d, _e, _f;
102
+ var _a, _b, _c, _d, _e, _f, _g, _h;
101
103
  if (!(e === null || e === void 0 ? void 0 : e.data) || typeof e.data !== 'object')
102
104
  return;
103
105
  const { type, data } = e.data;
@@ -160,7 +162,9 @@ export class CasinoChallengesOverlay {
160
162
  }
161
163
  this.modalOrderNumber = (level === null || level === void 0 ? void 0 : level.OrderNumber) + 1;
162
164
  this.modalReward = level === null || level === void 0 ? void 0 : level.CustomRewardMessage;
163
- this.modalAddition = (_d = level === null || level === void 0 ? void 0 : level.Rewards) === null || _d === void 0 ? void 0 : _d.some((x) => x.Type === EChallengeRewardType.Custom);
165
+ this.modalIsFreeSpinsGranted = (_d = level === null || level === void 0 ? void 0 : level.Rewards) === null || _d === void 0 ? void 0 : _d.some((x) => x.Type === EChallengeRewardType.FreeSpins);
166
+ this.modalAddition = (_e = level === null || level === void 0 ? void 0 : level.Rewards) === null || _e === void 0 ? void 0 : _e.some((x) => x.Type === EChallengeRewardType.Custom);
167
+ this.modalBonusProgramGames = ((_f = data === null || data === void 0 ? void 0 : data.BonusProgramGames) !== null && _f !== void 0 ? _f : []);
164
168
  }
165
169
  break;
166
170
  }
@@ -169,8 +173,8 @@ export class CasinoChallengesOverlay {
169
173
  break;
170
174
  }
171
175
  case 'ChangeChallengeProgressStatus': {
172
- const currentProgress = (_e = this.challenges) === null || _e === void 0 ? void 0 : _e.find((x) => (x === null || x === void 0 ? void 0 : x.ChallengeId) === this.activeChallenge);
173
- this.challenges = (_f = this.challenges) === null || _f === void 0 ? void 0 : _f.map((x) => {
176
+ const currentProgress = (_g = this.challenges) === null || _g === void 0 ? void 0 : _g.find((x) => (x === null || x === void 0 ? void 0 : x.ChallengeId) === this.activeChallenge);
177
+ this.challenges = (_h = this.challenges) === null || _h === void 0 ? void 0 : _h.map((x) => {
174
178
  if (this.isGrayed &&
175
179
  this.inProgressCount === 1 &&
176
180
  currentProgress &&
@@ -360,12 +364,12 @@ export class CasinoChallengesOverlay {
360
364
  render() {
361
365
  const currProgress = this.completedLevelId ? 100 : this.progress;
362
366
  const dot = this.getCapsuleDotPosition(currProgress);
363
- return (h("div", { key: '38bbfeb677b4aa5578c9cbed77e3dd9ad9001276', ref: (el) => (this.stylingContainer = el) }, this.inProgressCount > 0 && (h("div", { key: '1f0fec135cb8c66e3af4f49979c00c3769a8f984', class: "container", onClick: this.goToDetailsPage }, h("div", { key: 'a8403d958ce55ffd1bf12baba7be7fc5b4000363', class: `circle ${this.isGrayed ? 'grayed' : ''}`, style: {
367
+ return (h("div", { key: '578b688adf5cb2ba93d3ad308b4017b1bf29a253', ref: (el) => (this.stylingContainer = el) }, this.inProgressCount > 0 && (h("div", { key: 'cb12b7c2448d6c525d19f2201214985dfa2132e1', class: "container", onClick: this.goToDetailsPage }, h("div", { key: '6fc016894897f5a91affd12505c392ad640817db', class: `circle ${this.isGrayed ? 'grayed' : ''}`, style: {
364
368
  '--progress': `${currProgress}%`
365
- } }, h("img", { key: '1b9769ed6110040820e2369f3cc83d52910f992a', class: "circle__img", src: bgIcon }), h("div", { key: '7d746c75c4ad0b50d85b8b9201fa7832290b692e', class: "circle__content" }, h("span", { key: '3c934c740d8dfbe62172b268002fb0fe41197be2' }, Math.floor(currProgress), "%")), dot && (h("div", { key: 'e902c61da404c7493131bd75dbf7d17b4efc22cc', class: "dot", style: {
369
+ } }, h("img", { key: '711b6ea7623f5b5d846590d0da2a1efd62a2ed40', class: "circle__img", src: bgIcon }), h("div", { key: 'cd0c5323e4a7126a89e1f71d51f9c6712f4ac094', class: "circle__content" }, h("span", { key: '64239a08270a9e20c30491a4864e351e95b5a98d' }, Math.floor(currProgress), "%")), dot && (h("div", { key: 'faa72bad8f2d6b29f6cacf3f2ec35cf6be57ae4c', class: "dot", style: {
366
370
  left: `${dot.x}px`,
367
371
  top: `${dot.y}px`
368
- } }))), !this.isGrayed && h("div", { key: '65cf9461adc0008604f6ddb0c433ca42fa2df708', class: `badge ${this.isNew ? 'new' : ''}` }, this.renderBadgeContent()))), h("casino-challenges-overlay-modal", { key: '22571492a2f32d4bd7d99e2a6af9915904212213', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, errored: this.modalErrored, orderNumber: this.modalOrderNumber, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl })));
372
+ } }))), !this.isGrayed && h("div", { key: '9a0f734d46512ddca92c36219b42d6b5aa94e9cf', class: `badge ${this.isNew ? 'new' : ''}` }, this.renderBadgeContent()))), h("casino-challenges-overlay-modal", { key: '6f955e4eb9d582703558bbceea5a2e5c54535fd5', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, isFreeSpinsGranted: this.modalIsFreeSpinsGranted, bonusProgramGames: this.modalBonusProgramGames, errored: this.modalErrored, orderNumber: this.modalOrderNumber, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl })));
369
373
  }
370
374
  static get is() { return "casino-challenges-overlay"; }
371
375
  static get encapsulation() { return "shadow"; }
@@ -506,7 +510,9 @@ export class CasinoChallengesOverlay {
506
510
  "modalErrored": {},
507
511
  "modalReward": {},
508
512
  "modalAddition": {},
509
- "modalOrderNumber": {}
513
+ "modalOrderNumber": {},
514
+ "modalIsFreeSpinsGranted": {},
515
+ "modalBonusProgramGames": {}
510
516
  };
511
517
  }
512
518
  static get methods() {
@@ -12,7 +12,11 @@ export const TRANSLATIONS = {
12
12
  completed: 'has been completed!',
13
13
  youWon: 'You have won',
14
14
  physicalReward: 'for physical rewards please contact ',
15
- linkText: 'Customer Support'
15
+ linkText: 'Customer Support',
16
+ playNowOrLater: 'Play your free spins now or come back later.',
17
+ rewardInLobby: 'You can find your reward in the relevant section of the Lobby Widget.',
18
+ assistance: 'If you need any assistance, please contact',
19
+ useSpinsNow: 'Use spins now'
16
20
  },
17
21
  da: {
18
22
  new: 'ny',
@@ -26,7 +30,11 @@ export const TRANSLATIONS = {
26
30
  completed: 'er blevet gennemført!',
27
31
  youWon: 'Du har vundet',
28
32
  physicalReward: 'Ved fysiske præmier, venligst kontakt ',
29
- linkText: 'Kundeservice'
33
+ linkText: 'Kundeservice',
34
+ playNowOrLater: 'Brug dine freespins nu eller gem dem til senere.',
35
+ rewardInLobby: 'Du kan finde din belønning under ”Mine tilbud”',
36
+ assistance: 'Har du brug for hjælp? Kontakt venligst',
37
+ useSpinsNow: 'Brug dine spins nu'
30
38
  }
31
39
  };
32
40
  export const translate = (key, customLang) => {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-4cb6ae8e.js';
1
+ import { r as registerInstance, h } from './index-be60b13e.js';
2
2
 
3
3
  const StyleCacheKey = '__WIDGET_GLOBAL_STYLE_CACHE__';
4
4
 
@@ -138,7 +138,11 @@ const TRANSLATIONS = {
138
138
  completed: 'has been completed!',
139
139
  youWon: 'You have won',
140
140
  physicalReward: 'for physical rewards please contact ',
141
- linkText: 'Customer Support'
141
+ linkText: 'Customer Support',
142
+ playNowOrLater: 'Play your free spins now or come back later.',
143
+ rewardInLobby: 'You can find your reward in the relevant section of the Lobby Widget.',
144
+ assistance: 'If you need any assistance, please contact',
145
+ useSpinsNow: 'Use spins now'
142
146
  },
143
147
  da: {
144
148
  new: 'ny',
@@ -152,7 +156,11 @@ const TRANSLATIONS = {
152
156
  completed: 'er blevet gennemført!',
153
157
  youWon: 'Du har vundet',
154
158
  physicalReward: 'Ved fysiske præmier, venligst kontakt ',
155
- linkText: 'Kundeservice'
159
+ linkText: 'Kundeservice',
160
+ playNowOrLater: 'Brug dine freespins nu eller gem dem til senere.',
161
+ rewardInLobby: 'Du kan finde din belønning under ”Mine tilbud”',
162
+ assistance: 'Har du brug for hjælp? Kontakt venligst',
163
+ useSpinsNow: 'Brug dine spins nu'
156
164
  }
157
165
  };
158
166
  const translate = (key, customLang) => {
@@ -280,6 +288,8 @@ const CasinoChallengesOverlay = class {
280
288
  this.modalReward = '';
281
289
  this.modalAddition = false;
282
290
  this.modalOrderNumber = 1;
291
+ this.modalIsFreeSpinsGranted = false;
292
+ this.modalBonusProgramGames = [];
283
293
  }
284
294
  handleClientStylingChange(newValue, oldValue) {
285
295
  if (newValue != oldValue) {
@@ -321,7 +331,7 @@ const CasinoChallengesOverlay = class {
321
331
  }
322
332
  }
323
333
  handleEvent(e) {
324
- var _a, _b, _c, _d, _e, _f;
334
+ var _a, _b, _c, _d, _e, _f, _g, _h;
325
335
  if (!(e === null || e === void 0 ? void 0 : e.data) || typeof e.data !== 'object')
326
336
  return;
327
337
  const { type, data } = e.data;
@@ -384,7 +394,9 @@ const CasinoChallengesOverlay = class {
384
394
  }
385
395
  this.modalOrderNumber = (level === null || level === void 0 ? void 0 : level.OrderNumber) + 1;
386
396
  this.modalReward = level === null || level === void 0 ? void 0 : level.CustomRewardMessage;
387
- this.modalAddition = (_d = level === null || level === void 0 ? void 0 : level.Rewards) === null || _d === void 0 ? void 0 : _d.some((x) => x.Type === EChallengeRewardType.Custom);
397
+ this.modalIsFreeSpinsGranted = (_d = level === null || level === void 0 ? void 0 : level.Rewards) === null || _d === void 0 ? void 0 : _d.some((x) => x.Type === EChallengeRewardType.FreeSpins);
398
+ this.modalAddition = (_e = level === null || level === void 0 ? void 0 : level.Rewards) === null || _e === void 0 ? void 0 : _e.some((x) => x.Type === EChallengeRewardType.Custom);
399
+ this.modalBonusProgramGames = ((_f = data === null || data === void 0 ? void 0 : data.BonusProgramGames) !== null && _f !== void 0 ? _f : []);
388
400
  }
389
401
  break;
390
402
  }
@@ -393,8 +405,8 @@ const CasinoChallengesOverlay = class {
393
405
  break;
394
406
  }
395
407
  case 'ChangeChallengeProgressStatus': {
396
- const currentProgress = (_e = this.challenges) === null || _e === void 0 ? void 0 : _e.find((x) => (x === null || x === void 0 ? void 0 : x.ChallengeId) === this.activeChallenge);
397
- this.challenges = (_f = this.challenges) === null || _f === void 0 ? void 0 : _f.map((x) => {
408
+ const currentProgress = (_g = this.challenges) === null || _g === void 0 ? void 0 : _g.find((x) => (x === null || x === void 0 ? void 0 : x.ChallengeId) === this.activeChallenge);
409
+ this.challenges = (_h = this.challenges) === null || _h === void 0 ? void 0 : _h.map((x) => {
398
410
  if (this.isGrayed &&
399
411
  this.inProgressCount === 1 &&
400
412
  currentProgress &&
@@ -584,12 +596,12 @@ const CasinoChallengesOverlay = class {
584
596
  render() {
585
597
  const currProgress = this.completedLevelId ? 100 : this.progress;
586
598
  const dot = this.getCapsuleDotPosition(currProgress);
587
- return (h("div", { key: '38bbfeb677b4aa5578c9cbed77e3dd9ad9001276', ref: (el) => (this.stylingContainer = el) }, this.inProgressCount > 0 && (h("div", { key: '1f0fec135cb8c66e3af4f49979c00c3769a8f984', class: "container", onClick: this.goToDetailsPage }, h("div", { key: 'a8403d958ce55ffd1bf12baba7be7fc5b4000363', class: `circle ${this.isGrayed ? 'grayed' : ''}`, style: {
599
+ return (h("div", { key: '578b688adf5cb2ba93d3ad308b4017b1bf29a253', ref: (el) => (this.stylingContainer = el) }, this.inProgressCount > 0 && (h("div", { key: 'cb12b7c2448d6c525d19f2201214985dfa2132e1', class: "container", onClick: this.goToDetailsPage }, h("div", { key: '6fc016894897f5a91affd12505c392ad640817db', class: `circle ${this.isGrayed ? 'grayed' : ''}`, style: {
588
600
  '--progress': `${currProgress}%`
589
- } }, h("img", { key: '1b9769ed6110040820e2369f3cc83d52910f992a', class: "circle__img", src: bgIconSvg }), h("div", { key: '7d746c75c4ad0b50d85b8b9201fa7832290b692e', class: "circle__content" }, h("span", { key: '3c934c740d8dfbe62172b268002fb0fe41197be2' }, Math.floor(currProgress), "%")), dot && (h("div", { key: 'e902c61da404c7493131bd75dbf7d17b4efc22cc', class: "dot", style: {
601
+ } }, h("img", { key: '711b6ea7623f5b5d846590d0da2a1efd62a2ed40', class: "circle__img", src: bgIconSvg }), h("div", { key: 'cd0c5323e4a7126a89e1f71d51f9c6712f4ac094', class: "circle__content" }, h("span", { key: '64239a08270a9e20c30491a4864e351e95b5a98d' }, Math.floor(currProgress), "%")), dot && (h("div", { key: 'faa72bad8f2d6b29f6cacf3f2ec35cf6be57ae4c', class: "dot", style: {
590
602
  left: `${dot.x}px`,
591
603
  top: `${dot.y}px`
592
- } }))), !this.isGrayed && h("div", { key: '65cf9461adc0008604f6ddb0c433ca42fa2df708', class: `badge ${this.isNew ? 'new' : ''}` }, this.renderBadgeContent()))), h("casino-challenges-overlay-modal", { key: '22571492a2f32d4bd7d99e2a6af9915904212213', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, errored: this.modalErrored, orderNumber: this.modalOrderNumber, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl })));
604
+ } }))), !this.isGrayed && h("div", { key: '9a0f734d46512ddca92c36219b42d6b5aa94e9cf', class: `badge ${this.isNew ? 'new' : ''}` }, this.renderBadgeContent()))), h("casino-challenges-overlay-modal", { key: '6f955e4eb9d582703558bbceea5a2e5c54535fd5', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, isFreeSpinsGranted: this.modalIsFreeSpinsGranted, bonusProgramGames: this.modalBonusProgramGames, errored: this.modalErrored, orderNumber: this.modalOrderNumber, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl })));
593
605
  }
594
606
  static get watchers() { return {
595
607
  "clientStyling": ["handleClientStylingChange"],
@@ -1,5 +1,5 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-4cb6ae8e.js';
2
- export { s as setNonce } from './index-4cb6ae8e.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-be60b13e.js';
2
+ export { s as setNonce } from './index-be60b13e.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  /*
@@ -16,5 +16,5 @@ var patchBrowser = () => {
16
16
 
17
17
  patchBrowser().then(async (options) => {
18
18
  await globalScripts();
19
- return bootstrapLazy([["casino-challenges-overlay_2",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"progress":[32],"isGrayed":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"init":[64]},[[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}]]]], options);
19
+ return bootstrapLazy([["casino-challenges-overlay_2",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"progress":[32],"isGrayed":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"init":[64]},[[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"bonusProgramGames":[16],"currentIndex":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}]]]], options);
20
20
  });
@@ -1,6 +1,6 @@
1
- import { s as setClientStyling, a as setClientStylingURL, b as setStreamStyling } from './casino-challenges-overlay-5fcad42a.js';
2
- export { C as casino_challenges_overlay } from './casino-challenges-overlay-5fcad42a.js';
3
- import { r as registerInstance, h } from './index-4cb6ae8e.js';
1
+ import { s as setClientStyling, a as setClientStylingURL, b as setStreamStyling } from './casino-challenges-overlay-a5ae48f5.js';
2
+ export { C as casino_challenges_overlay } from './casino-challenges-overlay-a5ae48f5.js';
3
+ import { r as registerInstance, h } from './index-be60b13e.js';
4
4
 
5
5
  const giftboxSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMyIgdmlld0JveD0iMCAwIDIyIDIzIiBmaWxsPSJub25lIj4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuNDY0MjkgMi41QzcuMjE0NDIgMi41IDYuOTcxMDYgMi42MDA5IDYuNzg4NzggMi43ODY0OUM2LjYwNTkgMi45NzI3IDYuNTAwMDEgMy4yMjkwMyA2LjUwMDAxIDMuNUM2LjUwMDAxIDMuNzcwOTcgNi42MDU5IDQuMDI3MyA2Ljc4ODc4IDQuMjEzNTFDNi45NzEwNiA0LjM5OTEgNy4yMTQ0MiA0LjUgNy40NjQyOSA0LjVIOS42MzQyNUM5LjU2MTg3IDQuMzI4NjUgOS40Nzg1NyA0LjE1MTE2IDkuMzgzNTYgMy45NzUyN0M4Ljg5NzY5IDMuMDc1ODEgOC4yNzM5OCAyLjUgNy40NjQyOSAyLjVaTTEwIDYuNVY5LjVMMi42MDAwMSA5LjVDMi4zMDM0OCA5LjUgMi4xNDEyMiA5LjQ5OTIyIDIuMDI0NjQgOS40ODk3QzIuMDIgOS40ODkzMiAyLjAxNTYgOS40ODg5MyAyLjAxMTQ1IDkuNDg4NTVDMi4wMTEwNyA5LjQ4NDQgMi4wMTA2OSA5LjQ4MDAxIDIuMDEwMzEgOS40NzUzN0MyLjAwMDc4IDkuMzU4NzggMi4wMDAwMSA5LjE5NjUzIDIuMDAwMDEgOC45VjcuMUMyLjAwMDAxIDYuODAzNDcgMi4wMDA3OCA2LjY0MTIyIDIuMDEwMzEgNi41MjQ2M0MyLjAxMDY5IDYuNTE5OTkgMi4wMTEwNyA2LjUxNTYgMi4wMTE0NSA2LjUxMTQ1QzIuMDE1NiA2LjUxMTA3IDIuMDIgNi41MTA2OCAyLjAyNDY0IDYuNTEwM0MyLjE0MTIyIDYuNTAwNzggMi4zMDM0OCA2LjUgMi42MDAwMSA2LjVIMTBaTTQuNjY5NTMgNC41QzQuNTU4MjIgNC4xODEzMyA0LjUwMDAxIDMuODQzMzkgNC41MDAwMSAzLjVDNC41MDAwMSAyLjcxMDExIDQuODA4MDIgMS45NDkwMiA1LjM2MTg4IDEuMzg1MDhDNS45MTYzNSAwLjgyMDUzMSA2LjY3MjI0IDAuNSA3LjQ2NDI5IDAuNUM5LjI1OSAwLjUgMTAuMzcyNSAxLjcxODQ1IDExIDIuNzcyMjNDMTEuNjI3NSAxLjcxODQ1IDEyLjc0MSAwLjUgMTQuNTM1NyAwLjVDMTUuMzI3OCAwLjUgMTYuMDgzNyAwLjgyMDUzMSAxNi42MzgxIDEuMzg1MDhDMTcuMTkyIDEuOTQ5MDIgMTcuNSAyLjcxMDExIDE3LjUgMy41QzE3LjUgMy44NDMzOSAxNy40NDE4IDQuMTgxMzMgMTcuMzMwNSA0LjVMMTkuNDMxOSA0LjVDMTkuNjg0MyA0LjQ5OTk3IDE5LjkzMDEgNC40OTk5NCAyMC4xMzgyIDQuNTE2OTVDMjAuMzY2OCA0LjUzNTYyIDIwLjYzNjYgNC41Nzk2OSAyMC45MDggNC43MTc5OUMyMS4yODQzIDQuOTA5NzMgMjEuNTkwMyA1LjIxNTcgMjEuNzgyIDUuNTkyMDJDMjEuOTIwMyA1Ljg2MzQ0IDIxLjk2NDQgNi4xMzMxOCAyMS45ODMxIDYuMzYxNzdDMjIuMDAwMSA2LjU2OTkyIDIyIDYuODE1NzEgMjIgNy4wNjgwOFY4LjkzMTkyQzIyIDkuMTg0MjkgMjIuMDAwMSA5LjQzMDA4IDIxLjk4MzEgOS42MzgyM0MyMS45NjQ0IDkuODY2ODIgMjEuOTIwMyAxMC4xMzY2IDIxLjc4MiAxMC40MDhDMjEuNTkwMyAxMC43ODQzIDIxLjI4NDMgMTEuMDkwMyAyMC45MDggMTEuMjgyQzIwLjYzNjYgMTEuNDIwMyAyMC4zNjY4IDExLjQ2NDQgMjAuMTM4MiAxMS40ODMxQzIwLjA5MzggMTEuNDg2NyAyMC4wNDc2IDExLjQ4OTUgMjAgMTEuNDkxOFYxOC4zMzg2QzIwIDE4Ljg2NTcgMjAgMTkuMzIwNSAxOS45Njk0IDE5LjY5NUMxOS45MzcxIDIwLjA5MDQgMTkuODY1OCAyMC40ODM2IDE5LjY3MyAyMC44NjJDMTkuMzg1NCAyMS40MjY1IDE4LjkyNjUgMjEuODg1NCAxOC4zNjIgMjIuMTczQzE3Ljk4MzYgMjIuMzY1OCAxNy41OTA0IDIyLjQzNzEgMTcuMTk1IDIyLjQ2OTRDMTYuODIwNSAyMi41IDE2LjM2NTcgMjIuNSAxNS44Mzg2IDIyLjVIMTEuMDAxNEgxMUwxMC45OTg2IDIyLjVINi4xNjE0NEM1LjYzNDMgMjIuNSA1LjE3OTU0IDIyLjUgNC44MDQ5OCAyMi40Njk0QzQuNDA5NjMgMjIuNDM3MSA0LjAxNjQxIDIyLjM2NTggMy42MzgwMyAyMi4xNzNDMy4wNzM1NSAyMS44ODU0IDIuNjE0NiAyMS40MjY1IDIuMzI2OTkgMjAuODYyQzIuMTM0MTkgMjAuNDgzNiAyLjA2Mjg4IDIwLjA5MDQgMi4wMzA1NyAxOS42OTVDMS45OTk5NyAxOS4zMjA1IDEuOTk5OTkgMTguODY1NyAyIDE4LjMzODVMMi4wMDAwMSAxMS40OTE4QzEuOTUyNDEgMTEuNDg5NSAxLjkwNjI0IDExLjQ4NjcgMS44NjE3OCAxMS40ODMxQzEuNjMzMTggMTEuNDY0NCAxLjM2MzQ1IDExLjQyMDMgMS4wOTIwMiAxMS4yODJDMC43MTU3MDEgMTEuMDkwMyAwLjQwOTczOSAxMC43ODQzIDAuMjE3OTkyIDEwLjQwOEMwLjA3OTY5NDcgMTAuMTM2NiAwLjAzNTYyNzEgOS44NjY4MiAwLjAxNjk1MDQgOS42MzgyM0MtNS42ODYxZS0wNSA5LjQzMDA3IC0yLjc0MTYxZS0wNSA5LjE4NDI4IDIuNTA1NDRlLTA2IDguOTMxOUw1LjI0NzI2ZS0wNiA3LjFDNS4yNDcyNmUtMDYgNy4wODkzNiAzLjkzNTk1ZS0wNiA3LjA3ODcyIDIuNjI0NjVlLTA2IDcuMDY4MUMtMi43Mjk2OWUtMDUgNi44MTU3MiAtNS42NzQxOGUtMDUgNi41Njk5MyAwLjAxNjk1MDUgNi4zNjE3N0MwLjAzNTYyNzQgNi4xMzMxOCAwLjA3OTY5NSA1Ljg2MzQ0IDAuMjE3OTkyIDUuNTkyMDJDMC40MDk3MzkgNS4yMTU2OSAwLjcxNTcgNC45MDk3MyAxLjA5MjAyIDQuNzE3OTlDMS4zNjM0NSA0LjU3OTY5IDEuNjMzMTggNC41MzU2MiAxLjg2MTc4IDQuNTE2OTVDMi4wNjk5MyA0LjQ5OTk0IDIuMzE1NzMgNC40OTk5NyAyLjU2ODExIDQuNUMyLjU3ODczIDQuNSAyLjU4OTM2IDQuNSAyLjYwMDAxIDQuNUg0LjY2OTUzWk00LjAwMDAxIDExLjVWMTguM0M0LjAwMDAxIDE4Ljg3NjYgNC4wMDA3OCAxOS4yNDg4IDQuMDIzOTMgMTkuNTMyMkM0LjA0NjEzIDE5LjgwMzggNC4wODM4MSAxOS45MDQ1IDQuMTA5IDE5Ljk1NEM0LjIwNDg3IDIwLjE0MjEgNC4zNTc4NSAyMC4yOTUxIDQuNTQ2MDEgMjAuMzkxQzQuNTk1NDYgMjAuNDE2MiA0LjY5NjE4IDIwLjQ1MzkgNC45Njc4NCAyMC40NzYxQzUuMjUxMTggMjAuNDk5MiA1LjYyMzQ1IDIwLjUgNi4yMDAwMSAyMC41SDEwVjExLjVINC4wMDAwMVpNMTIgMTEuNVYyMC41SDE1LjhDMTYuMzc2NiAyMC41IDE2Ljc0ODggMjAuNDk5MiAxNy4wMzIyIDIwLjQ3NjFDMTcuMzAzOCAyMC40NTM5IDE3LjQwNDYgMjAuNDE2MiAxNy40NTQgMjAuMzkxQzE3LjY0MjIgMjAuMjk1MSAxNy43OTUxIDIwLjE0MjIgMTcuODkxIDE5Ljk1NEMxNy45MTYyIDE5LjkwNDUgMTcuOTUzOSAxOS44MDM4IDE3Ljk3NjEgMTkuNTMyMkMxNy45OTkyIDE5LjI0ODggMTggMTguODc2NiAxOCAxOC4zVjExLjVIMTJaTTE5LjQgOS41QzE5LjY5NjUgOS41IDE5Ljg1ODggOS40OTkyMiAxOS45NzU0IDkuNDg5N0MxOS45OCA5LjQ4OTMyIDE5Ljk4NDQgOS40ODg5MyAxOS45ODg2IDkuNDg4NTRDMTkuOTg4OSA5LjQ4NDQgMTkuOTg5MyA5LjQ4MDAxIDE5Ljk4OTcgOS40NzUzN0MxOS45OTkyIDkuMzU4NzggMjAgOS4xOTY1MyAyMCA4LjlWNy4xQzIwIDYuODAzNDcgMTkuOTk5MiA2LjY0MTIyIDE5Ljk4OTcgNi41MjQ2M0MxOS45ODkzIDYuNTE5OTkgMTkuOTg4OSA2LjUxNTYgMTkuOTg4NSA2LjUxMTQ1QzE5Ljk4NDQgNi41MTEwNyAxOS45OCA2LjUxMDY4IDE5Ljk3NTQgNi41MTAzQzE5Ljg1ODggNi41MDA3OCAxOS42OTY1IDYuNSAxOS40IDYuNUgxMlY5LjVIMTkuNFpNMTQuNTM1NyA0LjVDMTQuNzg1NiA0LjUgMTUuMDI4OSA0LjM5OTEgMTUuMjExMiA0LjIxMzUxQzE1LjM5NDEgNC4wMjczIDE1LjUgMy43NzA5NyAxNS41IDMuNUMxNS41IDMuMjI5MDMgMTUuMzk0MSAyLjk3MjcgMTUuMjExMiAyLjc4NjQ5QzE1LjAyODkgMi42MDA5IDE0Ljc4NTYgMi41IDE0LjUzNTcgMi41QzEzLjcyNiAyLjUgMTMuMTAyMyAzLjA3NTgxIDEyLjYxNjUgMy45NzUyN0MxMi41MjE0IDQuMTUxMTYgMTIuNDM4MSA0LjMyODY1IDEyLjM2NTggNC41SDE0LjUzNTdaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfMjA1MV80MzkpIi8+CiAgPGRlZnM+CiAgICA8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfMjA1MV80MzkiIHgxPSIwIiB5MT0iMTEuNSIgeDI9IjIyIiB5Mj0iMTEuNSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMUU2NTRGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFDOEQ1NiIvPgogICAgPC9saW5lYXJHcmFkaWVudD4KICA8L2RlZnM+Cjwvc3ZnPgo=';
6
6
 
@@ -16,7 +16,11 @@ const TRANSLATIONS = {
16
16
  completed: 'has been completed!',
17
17
  youWon: 'You have won',
18
18
  physicalReward: 'for physical rewards please contact ',
19
- linkText: 'Customer Support'
19
+ linkText: 'Customer Support',
20
+ playNowOrLater: 'Play your free spins now or come back later.',
21
+ rewardInLobby: 'You can find your reward in the relevant section of the Lobby Widget.',
22
+ assistance: 'If you need any assistance, please contact',
23
+ useSpinsNow: 'Use spins now'
20
24
  },
21
25
  da: {
22
26
  congrats: 'Tillykke!',
@@ -28,7 +32,11 @@ const TRANSLATIONS = {
28
32
  completed: 'er blevet gennemført!',
29
33
  youWon: 'Du har vundet',
30
34
  physicalReward: 'Ved fysiske præmier, venligst kontakt ',
31
- linkText: 'Kundeservice'
35
+ linkText: 'Kundeservice',
36
+ playNowOrLater: 'Brug dine freespins nu eller gem dem til senere.',
37
+ rewardInLobby: 'Du kan finde din belønning under ”Mine tilbud”',
38
+ assistance: 'Har du brug for hjælp? Kontakt venligst',
39
+ useSpinsNow: 'Brug dine spins nu'
32
40
  }
33
41
  };
34
42
  const translate = (key, customLang) => {
@@ -61,12 +69,87 @@ const resolveTranslationUrl = async (translationUrl) => {
61
69
  }
62
70
  };
63
71
 
64
- const casinoChallengesOverlayModalCss = ":host{display:block;font-family:inherit}*{box-sizing:border-box;margin:0;padding:0}button{border:none;background:none;cursor:pointer;touch-action:manipulation}button:focus{outline:none}.ModalOverlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0);justify-content:center;align-items:center;z-index:1}.ModalOverlay.Open{display:flex}.ModalContent{display:flex;flex-direction:column;align-items:center;position:relative;background:linear-gradient(90deg, var(--emw--color-background, #003E5C) 0.05%, var(--emw--color-background-secondary, #113B21) 87.69%);padding:26px;border-radius:26px;border:2px solid var(--emw--color-primary-variant, #1E654F);width:450px;max-width:90%;text-align:center;max-height:90dvh;min-height:100px;font-family:\"Roboto\", sans-serif}.InnerContainer{border-radius:20px;background:#F9F8F8;padding:25px;width:100%}.ImageWrapper{margin-bottom:6px}.ModalHeader{color:var(--emw--color-typography, #212529);text-align:center;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:16px;font-style:normal;font-weight:700;line-height:normal;text-transform:uppercase;letter-spacing:1px}.ModalSubtitle{color:var(--emw--color-gray-300, #212529);text-align:center;font-size:var(--emw--font-size-small, 14px);font-style:normal;font-weight:400;margin:16px 0 10px;line-height:22px}.ModalErrorMessage{color:var(--emw--color-typography, #212529);font-size:var(--emw--font-size-medium, 16px);line-height:24px;margin:10px 0 10px}.ModalReward{background:linear-gradient(90deg, var(--emw--color-primary, #24AA4D) 0%, var(--emw--color-background-secondary, #113F21) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:14px;font-style:normal;font-weight:700;margin-bottom:10px}.ModalAddition{color:var(--emw--color-gray-100, #727672);text-align:center;font-family:var(--emw--button-typography, \"Roboto\", sans-serif);font-size:var(--emw--font-size-x-small, 12px);font-style:normal;font-weight:400;height:39px;align-content:center}.ModalAddition span{background:linear-gradient(90deg, var(--emw--color-primary, #24AA4D) 0%, var(--emw--color-background-secondary, #113F21) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:12px;font-style:normal;font-weight:700;line-height:15px;text-decoration:none;margin-left:8px;position:relative}.ModalAddition span::after{content:\"\";position:absolute;left:0;bottom:0;height:1px;width:100%;background:linear-gradient(90deg, var(--emw--color-primary, #24AA4D) 0%, var(--emw--color-background-secondary, #113F21) 100%)}.ModalAction{border-radius:var(--emw--button-border-radius, 99px);border:2px solid var(--emw--button-border-color, #083B17);background:linear-gradient(90deg, var(--emw--color-primary, #24AA4D) 0%, var(--emw--color-background-secondary, #113F21) 100%);padding:9px 20px;margin-top:10px;text-transform:uppercase;color:var(--emw--button-text-color, #FFF);text-align:center;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:12px;font-style:normal;font-weight:700;letter-spacing:1px;line-height:1}";
72
+ const isMobile = () => {
73
+ let userAgent = window.navigator.userAgent;
74
+ return !!(userAgent.toLowerCase().match(/android/i) ||
75
+ userAgent.toLowerCase().match(/blackberry|bb/i) ||
76
+ userAgent.toLowerCase().match(/iphone|ipad|ipod/i) ||
77
+ userAgent.toLowerCase().match(/windows phone|windows mobile|iemobile|wpdesktop/i));
78
+ };
79
+
80
+ const casinoChallengesOverlayModalCss = ":host{display:block;font-family:inherit}*{box-sizing:border-box;margin:0;padding:0}button{border:none;background:none;cursor:pointer;touch-action:manipulation}button:focus{outline:none}.ModalOverlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0);justify-content:center;align-items:center;z-index:1}.ModalOverlay.Open{display:flex}.ModalContent{display:flex;flex-direction:column;align-items:center;position:relative;background:linear-gradient(90deg, var(--emw--color-background, #003e5c) 0.05%, var(--emw--color-background-secondary, #113b21) 87.69%);padding:60px;border-radius:26px;border:2px solid var(--emw--color-primary-variant, #1e654f);width:540px;max-width:90%;text-align:center;max-height:90dvh;min-height:100px;font-family:\"Roboto\", sans-serif}.InnerContainer{border-radius:20px;background:#f9f8f8;padding:40px 50px;width:100%;display:flex;flex-direction:column;align-items:center}.ImageWrapper{margin-bottom:10px}.ModalHeader{color:var(--emw--color-typography, #212529);text-align:center;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:var(--emw--font-size-medium, 16px);font-weight:var(--emw--font-weight-bold, 700);line-height:normal;text-transform:uppercase;letter-spacing:1px}.ModalSubtitle{color:var(--emw--color-gray-300, #212529);text-align:center;font-size:var(--emw--font-size-medium, 16px);font-weight:var(--emw--font-weigh-normal, 400);margin-top:10px;line-height:24px;width:316px}.ModalErrorMessage{color:var(--emw--color-typography, #212529);font-size:var(--emw--font-size-medium, 16px);line-height:24px;margin:10px 0}.ModalReward{background:linear-gradient(90deg, var(--emw--color-primary, #24aa4d) 0%, var(--emw--color-background-secondary, #113f21) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:var(--emw--font-size-medium, 16px);font-weight:var(--emw--font-weight-bold, 700)}.ModalAddition{color:var(--emw--color-gray-100, #727672);text-align:center;font-family:var(--emw--button-typography, \"Roboto\", sans-serif);font-size:var(--emw--font-size-medium, 16px);font-style:normal;font-weight:400;align-content:center;margin-top:10px;line-height:24px}.ModalAddition span{background:linear-gradient(90deg, var(--emw--color-primary, #24aa4d) 0%, var(--emw--color-background-secondary, #113f21) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-style:normal;font-weight:700;line-height:15px;text-decoration:none;position:relative}.ModalAddition span::after{content:\"\";position:absolute;left:0;bottom:0;height:1px;width:100%;background:linear-gradient(90deg, var(--emw--color-primary, #24aa4d) 0%, var(--emw--color-background-secondary, #113f21) 100%)}.ModalAction{border-radius:var(--emw--button-border-radius, 99px);border:2px solid var(--emw--button-border-color, #083b17);background:linear-gradient(90deg, var(--emw--color-primary, #24aa4d) 0%, var(--emw--color-background-secondary, #113f21) 100%);padding:9px 20px;margin-top:24px;text-transform:uppercase;color:var(--emw--button-text-color, #fff);text-align:center;font-family:var(--emw--button-typography, \"PF BeauSans Pro\", sans-serif);font-size:var(--emw--font-size-small, 14px);font-weight:var(--emw--font-weight-bold, 700);min-width:100px}.ModalSliderWrapper{margin-top:24px;position:relative;overflow:hidden;width:316px;justify-self:center}.ModalSlider{display:flex;transition:transform 0.3s ease;cursor:pointer;touch-action:pan-y}.ModalSlider:active{cursor:grabbing}.ModalSlide{min-width:100%;flex-shrink:0;position:relative;display:flex;justify-content:center}.ModalSlide .ModalSlideSpins{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);border-radius:99px;width:188px;height:48px;text-transform:uppercase;font-size:var(--emw--font-size-small, 14px);font-weight:var(--emw--font-weight-bold, 700);color:var(--emw--color-white, white);align-content:center;background:var(--emw--use-spins-button-bg, linear-gradient(180deg, #ea9018 0%, #e0a84e 100%))}.ModalSlide .ModalSlideSpins svg{margin-left:8px}.ModalSlide .ModalSlideImageWrapper{position:relative;width:244px;height:144px;border-radius:12px;overflow:hidden}.ModalSlide .ModalSlideImageWrapper img{width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-drag:none}.ModalSlide .ModalSlideImageWrapper::after{content:\"\";position:absolute;inset:0;background:var(--emw--color-black-shadow, rgba(0, 0, 0, 0.5019607843))}.prev,.next{position:absolute;top:42%;transform:translateY(-50%);stroke:white;width:22px;height:22px;border-radius:50%;border:2px solid var(--emw--button-border-color, #083b17);background:var(--emw--slider-arrow-primary-bg, linear-gradient(90deg, #24aa4d 0%, #113f21 100%));display:flex;align-items:center;justify-content:center}.prev.disabled,.next.disabled{stroke:var(--emw--color-gray-100, #727672);background:var(--emw--ingame-color-black40, rgba(0, 0, 0, 0.4));border-color:var(--emw--color-gray-100, #727672)}.prev{left:2px}.next{right:2px}.ModalSliderDots{display:flex;justify-content:center;margin-top:10px}.ModalSliderDot{width:8px;height:8px;border-radius:50%;background:var(--emw--color-gray-50, #e2e2e2);margin:8px;cursor:pointer}.ModalSliderDot.active{background:var(--emw--border-success-color, #00b74f)}.Mobile .ModalContent{padding:26px}.Mobile .InnerContainer{padding:25px}.Mobile .ImageWrapper{margin-bottom:6px}.Mobile .ModalHeader{margin-bottom:16px}.Mobile .ModalAddition{margin-top:8px}.Mobile .ModalAction,.Mobile .ModalSliderWrapper{margin-top:20px}.Mobile .ModalSliderWrapper{width:230px;justify-self:center}.Mobile .ModalSliderWrapper .prev,.Mobile .ModalSliderWrapper .next{display:none}.Mobile .ModalSliderWrapper .ModalSlideImageWrapper{width:220px;height:125px}.Mobile .ModalSliderWrapper .ModalSlideSpins{width:154px;height:34px;font-size:var(--emw--font-size-x-small, 12px)}.Mobile .ModalSliderWrapper .ModalSliderDot{margin:8px 4px}.Mobile .ModalSubtitle{width:220px}";
65
81
  const CasinoChallengesOverlayModalStyle0 = casinoChallengesOverlayModalCss;
66
82
 
67
83
  const CasinoChallengesOverlayModal = class {
68
84
  constructor(hostRef) {
69
85
  registerInstance(this, hostRef);
86
+ this.startX = 0;
87
+ this.currentTranslate = 0;
88
+ this.prevTranslate = 0;
89
+ this.isDragging = false;
90
+ this.moved = false;
91
+ this.threshold = 50;
92
+ this.onPointerDown = (e) => {
93
+ var _a;
94
+ this.isDragging = true;
95
+ this.moved = false;
96
+ this.startX = e.clientX;
97
+ (_a = this.sliderContainer) === null || _a === void 0 ? void 0 : _a.setPointerCapture(e.pointerId);
98
+ };
99
+ this.onPointerMove = (e) => {
100
+ if (!this.isDragging)
101
+ return;
102
+ const diff = e.clientX - this.startX;
103
+ if (Math.abs(diff) > 5) {
104
+ this.moved = true;
105
+ }
106
+ this.currentTranslate = this.prevTranslate + diff;
107
+ this.setSliderPosition(this.currentTranslate);
108
+ };
109
+ this.onPointerUp = (e) => {
110
+ var _a;
111
+ if (!this.isDragging)
112
+ return;
113
+ this.isDragging = false;
114
+ (_a = this.sliderContainer) === null || _a === void 0 ? void 0 : _a.releasePointerCapture(e.pointerId);
115
+ const movedBy = this.currentTranslate - this.prevTranslate;
116
+ if (movedBy < -this.threshold)
117
+ this.next();
118
+ else if (movedBy > this.threshold)
119
+ this.prev();
120
+ else
121
+ this.setPositionByIndex();
122
+ };
123
+ this.next = () => {
124
+ if (!this.bonusProgramGames.length)
125
+ return;
126
+ if (this.currentIndex === this.bonusProgramGames.length - 1) {
127
+ this.setPositionByIndex();
128
+ return;
129
+ }
130
+ this.currentIndex = (this.currentIndex + 1) % this.bonusProgramGames.length;
131
+ this.setPositionByIndex();
132
+ };
133
+ this.prev = () => {
134
+ if (!this.bonusProgramGames.length)
135
+ return;
136
+ if (this.currentIndex === 0) {
137
+ this.setPositionByIndex();
138
+ return;
139
+ }
140
+ this.currentIndex = (this.currentIndex - 1 + this.bonusProgramGames.length) % this.bonusProgramGames.length;
141
+ this.setPositionByIndex();
142
+ };
143
+ this.onSlideClick = (gameSlug) => {
144
+ if (this.moved)
145
+ return;
146
+ if (gameSlug) {
147
+ window.postMessage({
148
+ type: 'ChallengeInGameRedirect',
149
+ data: { Slug: gameSlug }
150
+ }, window.location.href);
151
+ }
152
+ };
70
153
  this.mbSource = undefined;
71
154
  this.clientStyling = undefined;
72
155
  this.clientStylingUrl = undefined;
@@ -78,6 +161,9 @@ const CasinoChallengesOverlayModal = class {
78
161
  this.handleClick = () => { };
79
162
  this.errored = false;
80
163
  this.orderNumber = 0;
164
+ this.isFreeSpinsGranted = false;
165
+ this.bonusProgramGames = [];
166
+ this.currentIndex = 0;
81
167
  }
82
168
  handleClientStylingChange(newValue, oldValue) {
83
169
  if (newValue != oldValue) {
@@ -94,6 +180,12 @@ const CasinoChallengesOverlayModal = class {
94
180
  setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`, this.stylingSubscription);
95
181
  }
96
182
  }
183
+ handleBonusProgramGameChange(newValue) {
184
+ if (this.currentIndex >= newValue.length) {
185
+ this.currentIndex = 0;
186
+ this.setPositionByIndex();
187
+ }
188
+ }
97
189
  componentWillLoad() {
98
190
  if (this.translationUrl) {
99
191
  resolveTranslationUrl(this.translationUrl);
@@ -108,17 +200,50 @@ const CasinoChallengesOverlayModal = class {
108
200
  if (this.clientStylingUrl)
109
201
  setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
110
202
  }
203
+ this.setPositionByIndex();
111
204
  }
112
205
  disconnectedCallback() {
113
206
  this.stylingSubscription && this.stylingSubscription.unsubscribe();
114
207
  }
208
+ setSliderPosition(value) {
209
+ if (this.bonusProgramGames.length < 2)
210
+ return;
211
+ if (this.sliderContainer) {
212
+ this.sliderContainer.style.transform = `translateX(${value}px)`;
213
+ }
214
+ }
215
+ setPositionByIndex() {
216
+ var _a;
217
+ const width = ((_a = this.sliderContainer) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
218
+ this.currentTranslate = -this.currentIndex * width;
219
+ this.prevTranslate = this.currentTranslate;
220
+ this.setSliderPosition(this.currentTranslate);
221
+ }
115
222
  render() {
116
- return (h("div", { key: '6c704266619b5ad109ec6289d65fd6a26f827951', ref: (el) => (this.stylingContainer = el), class: `ModalOverlay ${this.isOpen && 'Open'}` }, h("div", { key: '65b800fd71f65afa246804ff35116bc0f2a6ff6b', class: "ModalWinAnimation" }), h("div", { key: '51df6e0c7d487762f0da0c874805c1e34a520fc2', class: "ModalContent GradientBorder" }, h("div", { key: 'ac9b44635eb8cb1fda4d1a4549c42c5e7055fc18', class: "InnerContainer" }, !this.errored && (h("div", { key: '7b5e93f30b1cb40af1d8f621f13d1e18bb1a06b6', class: "ImageWrapper" }, h("img", { key: '4e7867d129678e327ffc12d1da93b31bef4bc3b8', src: giftboxSvg, alt: "gift-box-icon" }))), h("h1", { key: '05782d9c5b5f905bd726dfbd8a32b51b7993e6c8', class: "ModalHeader" }, translate(this.errored ? 'errorTitle' : 'congrats', this.language)), this.errored ? (h("div", { class: "ModalErrorMessage" }, translate('errorSubTitle', this.language))) : (h("div", { class: "ModalSubtitle" }, `${translate('level', this.language)} ${this.orderNumber} ${translate('completed', this.language)}`, h("div", null, translate('youWon', this.language)), h("div", { class: "ModalReward" }, this.reward))), this.addition && (h("div", { key: '62617e0e83f280c03a51f347d5b4fa487ce327c8', class: "ModalAddition" }, h("div", { key: 'c2aa358edd22cc8fd710fd0e68ae83641652d329' }, translate('physicalReward', this.language)), h("span", { key: '1d116c9906d98b828628a4404988fc33103e9fb2' }, translate('linkText', this.language)))), h("button", { key: '432cad82cd0590ae5c2939a33ba7f52dd4ad31e4', class: "ModalAction", onClick: this.handleClick }, this.errored ? translate('errorBtnText', this.language) : translate('continue', this.language))))));
223
+ var _a;
224
+ return (h("div", { key: 'a069be23593a04f768fcca1b86094d3af8e58ca3', ref: (el) => (this.stylingContainer = el), class: {
225
+ ModalOverlay: true,
226
+ Mobile: isMobile() || window.innerWidth <= 768,
227
+ Open: this.isOpen
228
+ } }, h("div", { key: 'f41925c7697a9cd1c3da2f61c4e3a0673bd5728b', class: "ModalWinAnimation" }), h("div", { key: '9fac97b95cc682790d5e925fc40782ae71b9f54c', class: "ModalContent GradientBorder" }, h("div", { key: '14683c5830b0317dd11d064a6a88a69f4805d250', class: "InnerContainer" }, !this.errored && (h("div", { key: '2b7091ea3619423d41d98440d7800d95ec92a1bc', class: "ImageWrapper" }, h("img", { key: 'd23cfe79a0e7a2e138c0bb1e9894cc7534e5c173', src: giftboxSvg, alt: "gift-box-icon" }))), h("h1", { key: 'f95fbb76d703c28c45c568a0163df747dd269556', class: "ModalHeader" }, translate(this.errored ? 'errorTitle' : 'congrats', this.language)), this.errored ? (h("div", { class: "ModalErrorMessage" }, translate('errorSubTitle', this.language))) : (h("div", { class: "ModalSubtitle" }, `${translate('level', this.language)} ${this.orderNumber} ${translate('completed', this.language)}`, h("div", null, translate('youWon', this.language)), h("div", { class: "ModalReward" }, this.reward), this.isFreeSpinsGranted && (h("div", { class: "ModalAddition" }, translate('playNowOrLater', this.language))), h("div", { class: "ModalAddition" }, translate('rewardInLobby', this.language)))), this.addition && (h("div", { key: '201e5f0d4b3e04797c0478429dcd3c22dd30a4d3', class: "ModalAddition" }, h("div", { key: 'ef793ed69b572f4a9654f55cae0a71dd66af0ad6' }, translate('physicalReward', this.language)), h("span", { key: '131e4d36dc54d3682469a61c7196f0e379efe42f' }, translate('linkText', this.language)))), h("button", { key: 'bca6bc399277288d0ca2d9bd453eef6f6c9793e2', class: "ModalAction", onClick: this.handleClick }, this.errored ? translate('errorBtnText', this.language) : translate('continue', this.language)), this.isFreeSpinsGranted && ((_a = this.bonusProgramGames) === null || _a === void 0 ? void 0 : _a.length) > 0 && (h("div", { key: '13b921d1ff411987b9045950b1676e22b52481ab', class: "ModalSliderWrapper" }, h("div", { key: 'b48c9553aec2d709cede91d67b678aa545ed03a2', class: "ModalSlider", ref: (el) => (this.sliderContainer = el), onPointerDown: this.onPointerDown, onPointerMove: this.onPointerMove, onPointerUp: this.onPointerUp, onPointerLeave: this.onPointerUp }, this.bonusProgramGames.map((item) => (h("div", { class: "ModalSlide", key: item.GameSlug, onClick: () => this.onSlideClick(item.GameSlug) }, h("div", { class: "ModalSlideImageWrapper" }, h("img", { src: item.Thumbnail, alt: "" })), h("div", { class: "ModalSlideSpins" }, translate('useSpinsNow', this.language), h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "6", height: "10", viewBox: "0 0 6 10", fill: "none" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M0.195262 0.195262C0.455612 -0.0650874 0.877722 -0.0650874 1.13807 0.195262L5.13807 4.19526C5.39842 4.45561 5.39842 4.87772 5.13807 5.13807L1.13807 9.13807C0.877722 9.39842 0.455612 9.39842 0.195262 9.13807C-0.0650874 8.87772 -0.0650874 8.45561 0.195262 8.19526L3.72386 4.66667L0.195262 1.13807C-0.0650874 0.877722 -0.0650874 0.455612 0.195262 0.195262Z", fill: "white" }))))))), this.bonusProgramGames.length > 1 && (h("div", { key: '5878e9df2ba211fbe330d959c89278d611b0d501' }, h("button", { key: '25008b1e3500bdde9b1cf9285640ca342e8490a7', class: {
229
+ prev: true,
230
+ disabled: this.currentIndex === 0
231
+ }, onClick: this.prev }, h("svg", { key: '2433588c5615f8b788022f8859a98f9d16504e84', xmlns: "http://www.w3.org/2000/svg", width: "6", height: "10", viewBox: "0 0 6 10", fill: "none" }, h("path", { key: '14d34bf5a6538e458b7c18bb481f6a5b7c2f55bf', d: "M5 1L1 5L5 9", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))), h("button", { key: '63be7d730151f3741802f415ec3c9e66508b78e7', class: {
232
+ next: true,
233
+ disabled: this.currentIndex === this.bonusProgramGames.length - 1
234
+ }, onClick: this.next }, h("svg", { key: '52f1005fe412de34c71060974688874e5bf45a47', xmlns: "http://www.w3.org/2000/svg", width: "6", height: "10", viewBox: "0 0 6 10", fill: "none" }, h("path", { key: '1af4edf8dc717f54d5735d34ec27de8313918e0d', d: "M1 1L5 5L1 9", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))), h("div", { key: '13201c67ba3cb6a1215fb41f5a6fe3ae60864bdd', class: "ModalSliderDots" }, this.bonusProgramGames.map((_, i) => (h("span", { class: {
235
+ ModalSliderDot: true,
236
+ active: i === this.currentIndex
237
+ }, onClick: () => {
238
+ this.currentIndex = i;
239
+ this.setPositionByIndex();
240
+ } }))))))))))));
117
241
  }
118
242
  static get watchers() { return {
119
243
  "clientStyling": ["handleClientStylingChange"],
120
244
  "clientStylingUrl": ["handleClientStylingUrlChange"],
121
- "mbSource": ["handleMbSourceChange"]
245
+ "mbSource": ["handleMbSourceChange"],
246
+ "bonusProgramGames": ["handleBonusProgramGameChange"]
122
247
  }; }
123
248
  };
124
249
  CasinoChallengesOverlayModal.style = CasinoChallengesOverlayModalStyle0;
@@ -1,5 +1,5 @@
1
1
  const NAMESPACE = 'casino-challenges-overlay';
2
- const BUILD = /* casino-challenges-overlay */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
2
+ const BUILD = /* casino-challenges-overlay */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
3
3
 
4
4
  /*
5
5
  Stencil Client Platform v4.19.2 | MIT Licensed | https://stenciljs.com
@@ -150,6 +150,8 @@ var writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);
150
150
 
151
151
  // src/utils/constants.ts
152
152
  var EMPTY_OBJ = {};
153
+ var SVG_NS = "http://www.w3.org/2000/svg";
154
+ var HTML_NS = "http://www.w3.org/1999/xhtml";
153
155
 
154
156
  // src/utils/helpers.ts
155
157
  var isDef = (v) => v != null;
@@ -505,9 +507,16 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
505
507
  if (newVNode2.$text$ !== null) {
506
508
  elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);
507
509
  } else {
508
- elm = newVNode2.$elm$ = doc.createElement(
510
+ if (!isSvgMode) {
511
+ isSvgMode = newVNode2.$tag$ === "svg";
512
+ }
513
+ elm = newVNode2.$elm$ = doc.createElementNS(
514
+ isSvgMode ? SVG_NS : HTML_NS,
509
515
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
510
- );
516
+ ) ;
517
+ if (isSvgMode && newVNode2.$tag$ === "foreignObject") {
518
+ isSvgMode = false;
519
+ }
511
520
  {
512
521
  updateElement(null, newVNode2, isSvgMode);
513
522
  }
@@ -522,6 +531,13 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
522
531
  }
523
532
  }
524
533
  }
534
+ {
535
+ if (newVNode2.$tag$ === "svg") {
536
+ isSvgMode = false;
537
+ } else if (elm.tagName === "foreignObject") {
538
+ isSvgMode = true;
539
+ }
540
+ }
525
541
  }
526
542
  elm["s-hn"] = hostTagName;
527
543
  return elm;
@@ -651,8 +667,12 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
651
667
  const elm = newVNode2.$elm$ = oldVNode.$elm$;
652
668
  const oldChildren = oldVNode.$children$;
653
669
  const newChildren = newVNode2.$children$;
670
+ const tag = newVNode2.$tag$;
654
671
  const text = newVNode2.$text$;
655
672
  if (text === null) {
673
+ {
674
+ isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
675
+ }
656
676
  {
657
677
  {
658
678
  updateElement(oldVNode, newVNode2, isSvgMode);
@@ -668,6 +688,9 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
668
688
  } else if (oldChildren !== null) {
669
689
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
670
690
  }
691
+ if (isSvgMode && tag === "svg") {
692
+ isSvgMode = false;
693
+ }
671
694
  } else if (oldVNode.$text$ !== text) {
672
695
  elm.data = text;
673
696
  }
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { C as CasinoChallengesOverlay } from './casino-challenges-overlay-5fcad42a.js';
2
- import './index-4cb6ae8e.js';
1
+ export { C as CasinoChallengesOverlay } from './casino-challenges-overlay-a5ae48f5.js';
2
+ import './index-be60b13e.js';
@@ -1,11 +1,11 @@
1
- import { b as bootstrapLazy } from './index-4cb6ae8e.js';
2
- export { s as setNonce } from './index-4cb6ae8e.js';
1
+ import { b as bootstrapLazy } from './index-be60b13e.js';
2
+ export { s as setNonce } from './index-be60b13e.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  const defineCustomElements = async (win, options) => {
6
6
  if (typeof window === 'undefined') return undefined;
7
7
  await globalScripts();
8
- return bootstrapLazy([["casino-challenges-overlay_2",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"progress":[32],"isGrayed":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"init":[64]},[[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}]]]], options);
8
+ return bootstrapLazy([["casino-challenges-overlay_2",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"progress":[32],"isGrayed":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"init":[64]},[[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"bonusProgramGames":[16],"currentIndex":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}]]]], options);
9
9
  };
10
10
 
11
11
  export { defineCustomElements };
@@ -1,4 +1,4 @@
1
- import { IChallenge, IStatusEvent, IUpdateEventData } from '../../utils/types';
1
+ import { IBonusProgramGame, IChallenge, IStatusEvent, IUpdateEventData } from '../../utils/types';
2
2
  import "../../../../../../dist/packages/stencil/casino-challenges-overlay-modal/dist/types/index";
3
3
  export declare class CasinoChallengesOverlay {
4
4
  /**
@@ -39,6 +39,8 @@ export declare class CasinoChallengesOverlay {
39
39
  modalReward: string;
40
40
  modalAddition: boolean;
41
41
  modalOrderNumber: number;
42
+ modalIsFreeSpinsGranted: boolean;
43
+ modalBonusProgramGames: IBonusProgramGame[];
42
44
  private stylingContainer;
43
45
  private stylingSubscription;
44
46
  private intervalId;
@@ -111,3 +111,7 @@ export interface IUpdateEventData {
111
111
  Status: EChallengeProgressStatus;
112
112
  Levels: ILevelProgress[];
113
113
  }
114
+ export interface IBonusProgramGame {
115
+ GameSlug: string;
116
+ Thumbnail: string;
117
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@everymatrix/casino-challenges-overlay",
3
- "version": "0.16.1",
3
+ "version": "0.16.2",
4
4
  "main": "./dist/index.cjs.js",
5
5
  "module": "./dist/index.js",
6
6
  "es2015": "./dist/esm/index.mjs",