@everymatrix/casino-lobby 1.54.4 → 1.54.8

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 (81) hide show
  1. package/components/{CasinoCalendar-Ic3lq1UY.js → CasinoCalendar-B6zL0TaE.js} +506 -514
  2. package/components/CasinoCalendar-BMfA7KN3.cjs +9 -0
  3. package/components/CasinoCalendar-yoWAbEkY.js +5197 -0
  4. package/components/{CasinoCalendarDailyDetails-buDoufAV.js → CasinoCalendarDailyDetails-CHjjPOPl.js} +90 -90
  5. package/components/CasinoCalendarDailyDetails-CfDJdZRl.cjs +1 -0
  6. package/components/CasinoCalendarDailyDetails-D3u4HZe8.js +701 -0
  7. package/components/{CasinoCalendarDailyItem-koPRd703.js → CasinoCalendarDailyItem-C0cqN7uc.js} +46 -46
  8. package/components/CasinoCalendarDailyItem-CUUQD6LO.cjs +1 -0
  9. package/components/CasinoCalendarDailyItem-DMCRSt77.js +315 -0
  10. package/components/CasinoCategoriesSlider-BcJr5qw4.js +606 -0
  11. package/components/{CasinoCategoriesSlider-Bp9JHeM_.js → CasinoCategoriesSlider-ClyY2tVk.js} +29 -29
  12. package/components/CasinoCategoriesSlider-Du23Vwbe.cjs +1 -0
  13. package/components/CasinoCollectionsProviders-D_RrWmcu.js +664 -0
  14. package/components/{CasinoCollectionsProviders-CrpNb22N.js → CasinoCollectionsProviders-DfPQERZb.js} +58 -58
  15. package/components/CasinoCollectionsProviders-okanqqGb.cjs +1 -0
  16. package/components/CasinoFavoritesSection-6Sdpq5gN.cjs +1 -0
  17. package/components/CasinoFavoritesSection-B73CXUAy.js +439 -0
  18. package/components/{CasinoFavoritesSection-D_VjX8kh.js → CasinoFavoritesSection-Bueg3sTp.js} +16 -16
  19. package/components/CasinoFilter-CLgilXuM.js +634 -0
  20. package/components/{CasinoFilter-CYZHW74M.js → CasinoFilter-Ck2-RKNG.js} +55 -55
  21. package/components/CasinoFilter-d5NvPsIU.cjs +1 -0
  22. package/components/{CasinoGamePage-CCqWDOmI.js → CasinoGamePage-B9T32UnC.js} +769 -769
  23. package/components/CasinoGamePage-BvAh0DGO.js +4300 -0
  24. package/components/CasinoGamePage-C99GYj8V.cjs +18 -0
  25. package/components/{CasinoGameThumbnail-DuQXK0BS.js → CasinoGameThumbnail-Bl2lRTS5.js} +66 -66
  26. package/components/CasinoGameThumbnail-Cnth3w2v.js +1850 -0
  27. package/components/CasinoGameThumbnail-DFxPFhew.cjs +38 -0
  28. package/components/CasinoGamesCategorySection-Cy8ehDrS.cjs +1 -0
  29. package/components/{CasinoGamesCategorySection-B7unf50a.js → CasinoGamesCategorySection-DU23YHrX.js} +157 -157
  30. package/components/CasinoGamesCategorySection-Vx-6j2_y.js +3032 -0
  31. package/components/{CasinoJackpotBanner-CL7SMQDH.js → CasinoJackpotBanner-CwBo5Mul.js} +68 -68
  32. package/components/CasinoJackpotBanner-D8mirkf9.js +618 -0
  33. package/components/CasinoJackpotBanner-pF19c3bB.cjs +1 -0
  34. package/components/CasinoLastPlayedSection-CTeLaz5e.cjs +1 -0
  35. package/components/{CasinoLastPlayedSection-DtUKV7qS.js → CasinoLastPlayedSection-D2i1KYd6.js} +29 -29
  36. package/components/CasinoLastPlayedSection-DeHKMRjb.js +566 -0
  37. package/components/{CasinoLobby-Bhufm6di.js → CasinoLobby-DIuXNBMc.js} +49 -49
  38. package/components/CasinoLobby-DjqoKJ_Z.cjs +1 -0
  39. package/components/CasinoLobby-Ds8nok67.js +2337 -0
  40. package/components/{CasinoModal-z0xixUlG.js → CasinoModal-CdxckMSF.js} +69 -69
  41. package/components/CasinoModal-Cj4CFSu2.cjs +1 -0
  42. package/components/CasinoModal-_ukjEJqy.js +372 -0
  43. package/components/CasinoMostPlayedSection-BRG_Uq6C.cjs +1 -0
  44. package/components/{CasinoMostPlayedSection-DATKT5NZ.js → CasinoMostPlayedSection-BvIjl5pV.js} +32 -32
  45. package/components/CasinoMostPlayedSection-C9ey8EVj.js +583 -0
  46. package/components/CasinoMyGames-BH19YGDz.js +1318 -0
  47. package/components/{CasinoMyGames-CT8sf3p5.js → CasinoMyGames-CO15Aytm.js} +52 -52
  48. package/components/CasinoMyGames-DNs8c3Rb.cjs +1 -0
  49. package/components/CasinoPage-BEFfjziT.js +3550 -0
  50. package/components/{CasinoPage-CLrMZJtx.js → CasinoPage-DXue0b0t.js} +123 -123
  51. package/components/CasinoPage-sSUBPWhS.cjs +1 -0
  52. package/components/CasinoRandomGame-C57JuHHz.cjs +2 -0
  53. package/components/CasinoRandomGame-r6ZN573_.js +668 -0
  54. package/components/{CasinoRandomGame-efA8CEqy.js → CasinoRandomGame-z14CxLuC.js} +51 -51
  55. package/components/CasinoSearch-C5_rhVBG.js +1072 -0
  56. package/components/{CasinoSearch-DuPhm9II.js → CasinoSearch-Cbyb3s0J.js} +83 -83
  57. package/components/CasinoSearch-D1uEkiG3.cjs +1 -0
  58. package/components/CasinoSlider-C7bHIIsP.js +806 -0
  59. package/components/{CasinoSlider-BPqJIB5d.js → CasinoSlider-C90aPXd2.js} +78 -78
  60. package/components/CasinoSlider-D1u-7DmV.cjs +1 -0
  61. package/components/CasinoSort-5a6WYp-y.cjs +1 -0
  62. package/components/{CasinoSort-CBtcK7i0.js → CasinoSort-B9ucfWgD.js} +16 -16
  63. package/components/CasinoSort-DWu-WSlc.js +432 -0
  64. package/components/{CasinoWinners-Db2ivy-R.js → CasinoWinners-BFkE1Nu3.js} +62 -62
  65. package/components/CasinoWinners-D-KQ7v4o.cjs +1 -0
  66. package/components/CasinoWinners-fPZD2C86.js +971 -0
  67. package/components/{GeneralAnimationLoading-DiwFEyef.js → GeneralAnimationLoading-BCUksgAT.js} +8 -8
  68. package/components/GeneralAnimationLoading-BtZxU34J.cjs +1 -0
  69. package/components/GeneralAnimationLoading-DSCrLTeR.js +75 -0
  70. package/es2015/casino-lobby.cjs +1 -0
  71. package/es2015/casino-lobby.js +16 -0
  72. package/esnext/casino-lobby.js +1 -1
  73. package/package.json +4 -1
  74. package/stencil/app-globals-0f993ce5-sCt45RkC.cjs +1 -0
  75. package/stencil/casino-play-random-game-BKQH1Zx1.cjs +371 -0
  76. package/stencil/casino-play-random-game-BqK1nKDT.js +577 -0
  77. package/stencil/{casino-play-random-game-BrayzMrR.js → casino-play-random-game-pLVMnBV9.js} +1 -1
  78. package/stencil/index-f923e8d1-BWfXmHlD.js +645 -0
  79. package/stencil/index-f923e8d1-DEpJEd5d.cjs +1 -0
  80. package/stencil/index-f923e8d1-DkIbJRWP.js +629 -0
  81. package/stencil/index-47910d1c-CWwDm8i3.js +0 -623
@@ -0,0 +1,577 @@
1
+ var p = (n, e, a) => new Promise((t, o) => {
2
+ var m = (r) => {
3
+ try {
4
+ c(a.next(r));
5
+ } catch (h) {
6
+ o(h);
7
+ }
8
+ }, d = (r) => {
9
+ try {
10
+ c(a.throw(r));
11
+ } catch (h) {
12
+ o(h);
13
+ }
14
+ }, c = (r) => r.done ? t(r.value) : Promise.resolve(r.value).then(m, d);
15
+ c((a = a.apply(n, e)).next());
16
+ });
17
+ import { b as u, p as f, r as w, h as i, g as x } from "./index-f923e8d1-BWfXmHlD.js";
18
+ import { g as y } from "./app-globals-0f993ce5-D-kw1sls.js";
19
+ var G = () => {
20
+ const n = import.meta.url, e = {};
21
+ return n !== "" && (e.resourcesUrl = new URL(".", n).href), f(e);
22
+ };
23
+ G().then((n) => p(void 0, null, function* () {
24
+ return yield y(), u([["casino-play-random-game", [[1, "casino-play-random-game", { endpoint: [513], datasource: [513], language: [513], specificCategory: [513, "specific-category"], iconVisible: [513, "icon-visible"], iconVisibleOnAnim: [513, "icon-visible-on-anim"], launchByGameCard: [513, "launch-by-game-card"], clientStyling: [513, "client-styling"], clientStylingUrl: [513, "client-styling-url"], translationUrl: [513, "translation-url"], hasErrors: [32], limitStylingAppends: [32], isLoading: [32], gamesToShow: [32], selectedGame: [32], animationDone: [32], animationStarted: [32] }, null, { endpoint: ["watchEndpoint"], datasource: ["watchEndpoint"], language: ["watchEndpoint"], translationUrl: ["handleNewTranslations"], iconVisible: ["handleIsIconVisible"] }]]]], n);
25
+ }));
26
+ const b = () => {
27
+ let n = window.navigator.userAgent;
28
+ return n.toLowerCase().match(/android/i) ? "Android" : n.toLowerCase().match(/iphone/i) ? "iPhone" : n.toLowerCase().match(/ipad|ipod/i) ? "iPad" : "PC";
29
+ }, v = "en", l = {
30
+ en: {
31
+ error: "Error",
32
+ randomGameLoading: "Loading ...",
33
+ playRandomGame: "Play a random game",
34
+ playNowRandomGame: "Play now",
35
+ spinRandomGame: "Spin"
36
+ },
37
+ ro: {
38
+ error: "Error",
39
+ randomGameLoading: "Loading ...",
40
+ playRandomGame: "Play a random game",
41
+ playNowRandomGame: "Play now",
42
+ spinRandomGame: "Spin"
43
+ },
44
+ fr: {
45
+ error: "Error",
46
+ randomGameLoading: "Loading ...",
47
+ playRandomGame: "Play a random game",
48
+ playNowRandomGame: "Play now",
49
+ spinRandomGame: "Spin"
50
+ },
51
+ hr: {
52
+ error: "Greška",
53
+ randomGameLoading: "Učitavanje ...",
54
+ playRandomGame: "Igraj nasumičnu igru",
55
+ playNowRandomGame: "Igraj sada",
56
+ spinRandomGame: "Zavrti"
57
+ },
58
+ hu: {
59
+ error: "Error",
60
+ randomGameLoading: "Loading ...",
61
+ playRandomGame: "Play a random game",
62
+ playNowRandomGame: "Play now",
63
+ spinRandomGame: "Spin"
64
+ },
65
+ tr: {
66
+ error: "Hata",
67
+ randomGameLoading: "Yükleniyor...",
68
+ playRandomGame: "Rasgele bir oyun oyna",
69
+ playNowRandomGame: "Şimdi Oyna",
70
+ spinRandomGame: "DEĞİŞTİR"
71
+ }
72
+ }, g = (n) => new Promise((e) => {
73
+ fetch(n).then((a) => a.json()).then((a) => {
74
+ Object.keys(a).forEach((t) => {
75
+ l[t] || (l[t] = {});
76
+ for (let o in a[t])
77
+ l[t][o] = a[t][o];
78
+ }), e(!0);
79
+ });
80
+ }), s = (n, e) => {
81
+ const a = e;
82
+ return l[a !== void 0 && a in l ? a : v][n];
83
+ }, R = `:host {
84
+ display: block;
85
+ font-family: inherit;
86
+ -webkit-transform: translate3d(0, 0, 0);
87
+ transform: translate3d(0, 0, 0);
88
+ }
89
+
90
+ :host * {
91
+ -webkit-transform: translate3d(0, 0, 0);
92
+ transform: translate3d(0, 0, 0);
93
+ }
94
+
95
+ .RandomGameWrapper {
96
+ width: 100%;
97
+ height: var(--emw--size-4x-medium, 700px);
98
+ background: transparent;
99
+ position: relative;
100
+ overflow: hidden;
101
+ }
102
+
103
+ .GameContainerGradient {
104
+ position: absolute;
105
+ top: 10%;
106
+ left: -5px;
107
+ width: 100vw;
108
+ height: 80%;
109
+ background: linear-gradient(90deg, var(--emw--color-background, rgba(0, 0, 0, 0.9)) 0%, rgba(14, 21, 17, 0.5) 25%, rgba(14, 21, 17, 0) 50%, rgba(14, 21, 16, 0.5) 75%, var(--emw--color-background, rgba(10, 0, 0, 0.9)) 100%);
110
+ pointer-events: none;
111
+ z-index: 1;
112
+ filter: blur(10px);
113
+ }
114
+
115
+ .GamesContainer {
116
+ display: flex;
117
+ height: var(--emw--size-4x-medium, 600px);
118
+ flex-direction: row;
119
+ flex-wrap: nowrap;
120
+ justify-content: flex-start;
121
+ align-items: center;
122
+ align-content: flex-start;
123
+ gap: var(--emw--spacing-large, 20px);
124
+ }
125
+
126
+ .RandomGameCard {
127
+ position: relative;
128
+ width: var(--emw--size-3x-medium, 300px);
129
+ height: var(--emw--size-4x-medium, 420px);
130
+ border-radius: var(--emw--border-radius-large, 20px);
131
+ top: 8%;
132
+ filter: blur(5px);
133
+ }
134
+ .RandomGameCard .RandomGameVendor {
135
+ position: absolute;
136
+ font-size: var(--emw--font-size-x-small, 12px);
137
+ bottom: var(--emw--spacing-small-minus, 10px);
138
+ left: var(--emw--spacing-small-minus, 10px);
139
+ color: var(--emw--color-typography, #FFFFFF);
140
+ }
141
+
142
+ .TheRandomGame {
143
+ animation-name: ZoomFadeIn;
144
+ animation-duration: 0.5s;
145
+ animation-fill-mode: forwards;
146
+ -webkit-animation-name: ZoomFadeIn;
147
+ -webkit-animation-duration: 0.5s;
148
+ -webkit-animation-fill-mode: forwards;
149
+ opacity: 1;
150
+ cursor: pointer;
151
+ filter: blur(0);
152
+ }
153
+
154
+ .RandomGameImage {
155
+ width: inherit;
156
+ height: inherit;
157
+ object-fit: cover;
158
+ border-radius: var(--emw--border-radius-large, 20px);
159
+ }
160
+
161
+ .RandomGameDetails {
162
+ display: flex;
163
+ flex-direction: row;
164
+ justify-content: space-between;
165
+ align-items: center;
166
+ color: var(--emw--color-typography, #FFFFFF);
167
+ font-size: var(--emw--font-size-small, 14px);
168
+ width: 100%;
169
+ }
170
+ .RandomGameDetails .RandomGameTitle {
171
+ line-height: 18px;
172
+ }
173
+ .RandomGameDetails .RandomGameInfo {
174
+ border-radius: 50%;
175
+ width: var(--emw--spacing-medium, 16px);
176
+ height: var(--emw--spacing-medium, 16px);
177
+ font-size: var(--emw--font-size-x-small, 12px);
178
+ font-weight: var(--emw--font-weight-normal, 400);
179
+ border: solid 1px var(--emw--color-typography, #FFFFFF);
180
+ text-align: center;
181
+ margin: var(--emw--spacing-2x-small, 4px) 0;
182
+ line-height: 14px;
183
+ cursor: pointer;
184
+ }
185
+ .RandomGameDetails .RandomGamePlay {
186
+ background: var(--emw--color-primary, #4bd004);
187
+ color: var(--emw--color-typography, #FFFFFF);
188
+ border: none;
189
+ border-radius: var(--emw--border-radius-medium, 5px);
190
+ width: 200px;
191
+ height: 40px;
192
+ font-size: var(--emw--font-size-small, 14px);
193
+ cursor: pointer;
194
+ }
195
+
196
+ .ButtonWrapper {
197
+ position: absolute;
198
+ top: 50%;
199
+ left: 50%;
200
+ transform: translate(-50%, -50%);
201
+ z-index: 20;
202
+ }
203
+
204
+ .ButtonContainer {
205
+ display: flex;
206
+ flex-direction: column;
207
+ justify-content: center;
208
+ align-items: center;
209
+ gap: 10px;
210
+ width: 100%;
211
+ position: relative;
212
+ }
213
+
214
+ .ButtonIcon {
215
+ display: flex;
216
+ flex-direction: column;
217
+ justify-content: center;
218
+ align-items: center;
219
+ gap: var(--emw--spacing-2x-small, 5px);
220
+ }
221
+
222
+ .QustionMark {
223
+ position: absolute;
224
+ font-family: sans-serif;
225
+ font-size: 120px;
226
+ font-weight: 900;
227
+ color: color-mix(in srgb, var(--emw--color-primary, #22B04E) 80%, black 10%);
228
+ text-shadow: 0px 12px 0px color-mix(in srgb, var(--emw--casino-color-secondary, var(--emw--color-secondary, #eeac4a)), black 50%);
229
+ left: 50%;
230
+ top: -20%;
231
+ transform: translateX(-50%);
232
+ z-index: 10;
233
+ }
234
+
235
+ .HexagonMarkShadow {
236
+ width: 100px;
237
+ height: 115px;
238
+ display: flex;
239
+ justify-content: center;
240
+ align-items: center;
241
+ background: color-mix(in srgb, var(--emw--casino-color-secondary, var(--emw--color-secondary, #eeac4a)), black 70%);
242
+ clip-path: polygon(50% 0, 100% 30%, 100% 70%, 50% 100%, 0% 70%, 0% 30%);
243
+ }
244
+
245
+ .HexagonMark {
246
+ position: absolute;
247
+ width: var(--emw--size-medium, 90px);
248
+ height: 105px;
249
+ background: linear-gradient(to bottom, color-mix(in srgb, var(--emw--casino-color-secondary, var(--emw--color-secondary, #eeac4a)), black 20%) 0%, var(--emw--categories-color-secondary, var(--emw--color-secondary, #eeac4a)) 100%);
250
+ clip-path: polygon(50% 0, 100% 30%, 100% 70%, 50% 100%, 0% 70%, 0% 30%);
251
+ }
252
+
253
+ .RandomButtons {
254
+ display: flex;
255
+ flex-direction: row;
256
+ justify-content: center;
257
+ align-items: center;
258
+ gap: var(--emw--spacing-2x-small, 5px);
259
+ width: 100%;
260
+ position: relative;
261
+ z-index: 10;
262
+ }
263
+
264
+ .RandomButton {
265
+ font-size: var(--emw--font-size-large, 20px);
266
+ text-transform: uppercase;
267
+ width: max-content;
268
+ border-radius: var(--emw--button-border-radius, 50px);
269
+ padding: var(--emw--spacing-large, 20px) var(--emw--spacing-2x-large, 40px);
270
+ border: solid 3px var(--emw--button-border-color, #063B17);
271
+ color: var(--emw--button-text-color, #FFFFFF);
272
+ opacity: 1;
273
+ animation: ButtonEffect 3s linear infinite;
274
+ background-image: linear-gradient(to right, var(--emw--color-primary, #22B04E), color-mix(in srgb, var(--emw--color-primary, #22B04E), black 30%), var(--emw--color-primary, #22B04E));
275
+ background-size: 300% 100%;
276
+ cursor: pointer;
277
+ position: relative;
278
+ z-index: 10;
279
+ }
280
+ .RandomButton:hover {
281
+ opacity: 0.8;
282
+ }
283
+
284
+ .HideAnimation {
285
+ filter: blur(5px);
286
+ animation: AnimateButton 0.2s forwards;
287
+ }
288
+
289
+ .Flip {
290
+ animation-name: Flip, Blur;
291
+ animation-duration: 0.75s, 3s;
292
+ animation-iteration-count: infinite, 1;
293
+ -webkit-animation-name: Flip, Blur;
294
+ -webkit-animation-duration: 0.75s, 3s;
295
+ -webkit-animation-iteration-count: infinite, 1;
296
+ }
297
+
298
+ @keyframes ButtonEffect {
299
+ 0% {
300
+ background-position: 0% 50%;
301
+ }
302
+ 33% {
303
+ background-position: 100% 50%;
304
+ }
305
+ 66% {
306
+ background-position: 200% 50%;
307
+ }
308
+ 100% {
309
+ background-position: 300% 50%;
310
+ }
311
+ }
312
+ @keyframes ZoomFadeIn {
313
+ 0% {
314
+ transform: scale(0.2) translateY(0);
315
+ filter: blur(5px);
316
+ opacity: 0.3;
317
+ }
318
+ 50% {
319
+ transform: scale(1.1) translateY(-30px);
320
+ filter: blur(2px);
321
+ opacity: 0.7;
322
+ }
323
+ 100% {
324
+ transform: scale(1) translateY(-30px);
325
+ filter: blur(0px);
326
+ opacity: 1;
327
+ }
328
+ }
329
+ @keyframes AnimateButton {
330
+ 0% {
331
+ opacity: 0.7;
332
+ }
333
+ 50% {
334
+ opacity: 0.4;
335
+ }
336
+ 100% {
337
+ opacity: 0;
338
+ display: none;
339
+ }
340
+ }
341
+ @keyframes Flip {
342
+ 0% {
343
+ transform: rotateY(0deg);
344
+ }
345
+ 50% {
346
+ transform: rotateY(180deg);
347
+ }
348
+ 100% {
349
+ transform: rotateY(360deg);
350
+ }
351
+ }
352
+ @keyframes Blur {
353
+ 0% {
354
+ filter: blur(0);
355
+ }
356
+ 50% {
357
+ filter: blur(1px);
358
+ }
359
+ 100% {
360
+ filter: blur(3px);
361
+ }
362
+ }
363
+ @container (max-width: 475px) {
364
+ .GamesContainer {
365
+ height: inherit;
366
+ gap: var(--emw--spacing-2x-small, 5px);
367
+ }
368
+ .RandomGameWrapper {
369
+ width: 100%;
370
+ height: 300px;
371
+ overflow: hidden;
372
+ background: transparent;
373
+ position: relative;
374
+ }
375
+ .GameContainerGradient {
376
+ position: absolute;
377
+ top: 10%;
378
+ left: -5px;
379
+ width: 100vw;
380
+ height: 80%;
381
+ background: linear-gradient(90deg, var(--emw--color-background, rgba(0, 0, 0, 0.9)) 0%, rgba(14, 21, 17, 0.2) 25%, rgba(14, 21, 17, 0) 50%, rgba(14, 21, 16, 0.2) 75%, var(--emw--color-background, rgba(10, 0, 0, 0.9)) 100%);
382
+ pointer-events: none;
383
+ z-index: 1;
384
+ filter: blur(5px);
385
+ }
386
+ .RandomGameCard {
387
+ width: 100px;
388
+ height: 150px;
389
+ top: 0%;
390
+ border-radius: var(--emw--border-radius-medium, 4px);
391
+ filter: blur(5px);
392
+ }
393
+ .RandomGameImage {
394
+ width: 102px;
395
+ height: inherit;
396
+ top: 0%;
397
+ }
398
+ .RandomGameDetails {
399
+ font-size: 14px;
400
+ width: 100%;
401
+ }
402
+ .RandomGameDetails .RandomGameTitle {
403
+ line-height: 18px;
404
+ width: 75%;
405
+ }
406
+ .RandomGameDetails .RandomGameInfo {
407
+ border-radius: 50%;
408
+ width: 16px;
409
+ height: 16px;
410
+ font-size: var(--emw--font-size-x-small, 12px);
411
+ line-height: 14px;
412
+ }
413
+ .RandomGameDetails .RandomGamePlay {
414
+ background: var(--emw--color-primary, #52d004);
415
+ color: var(--emw--color-typography, #FFFFFF);
416
+ border: none;
417
+ border-radius: 5px;
418
+ width: 200px;
419
+ height: 40px;
420
+ font-size: 14px;
421
+ cursor: pointer;
422
+ }
423
+ .RandomGameCard .RandomGameVendor {
424
+ font-size: var(--emw--font-size-x-small, 12px);
425
+ bottom: 5px;
426
+ right: 5px;
427
+ }
428
+ .RandomButtons {
429
+ display: flex;
430
+ flex-direction: column;
431
+ justify-content: center;
432
+ align-items: center;
433
+ gap: 5px;
434
+ width: 100%;
435
+ }
436
+ .RandomButton {
437
+ font-size: var(--emw--font-size-x-small, 12px);
438
+ padding: 10px 15px;
439
+ border: solid 1px var(--emw--button-border-color, #063B17);
440
+ }
441
+ .QustionMark {
442
+ font-size: 100px;
443
+ font-weight: 700;
444
+ }
445
+ .HexagonMarkShadow {
446
+ width: 80px;
447
+ height: 95px;
448
+ }
449
+ .HexagonMark {
450
+ width: 70px;
451
+ height: 85px;
452
+ }
453
+ }`, k = R, C = class {
454
+ constructor(n) {
455
+ w(this, n), this.language = "en", this.specificCategory = "", this.iconVisible = "", this.iconVisibleOnAnim = "", this.launchByGameCard = "", this.clientStyling = "", this.clientStylingUrl = "", this.translationUrl = "", this.hasErrors = !1, this.limitStylingAppends = !1, this.isLoading = !0, this.selectedGame = null, this.animationDone = !1, this.animationStarted = !1, this.animation = null, this.selectedGameIndex = null, this.selectedGameEl = null, this.iconVisibility = null, this.shuffle = (e) => {
456
+ let a = e.length, t;
457
+ for (; a !== 0; )
458
+ t = Math.floor(Math.random() * a), a--, [e[a], e[t]] = [e[t], e[a]];
459
+ return e;
460
+ }, this.setClientStyling = () => {
461
+ let e = document.createElement("style");
462
+ e.innerHTML = this.clientStyling, this.host.shadowRoot.prepend(e);
463
+ }, this.setClientStylingURL = () => {
464
+ let e = new URL(this.clientStylingUrl), a = document.createElement("style");
465
+ fetch(e.href).then((t) => t.text()).then((t) => {
466
+ a.innerHTML = t, this.clientStyling = t, setTimeout(() => {
467
+ this.host.shadowRoot.prepend(a);
468
+ }, 1);
469
+ });
470
+ };
471
+ }
472
+ watchEndpoint(n, e) {
473
+ n && n != e && this.endpoint && this.fetchGameList();
474
+ }
475
+ handleNewTranslations() {
476
+ this.isLoading = !0, g(this.translationUrl).then(() => {
477
+ this.isLoading = !1;
478
+ });
479
+ }
480
+ handleIsIconVisible() {
481
+ this.iconVisibility = this.iconVisible === "true";
482
+ }
483
+ connectedCallback() {
484
+ this.handleIsIconVisible();
485
+ }
486
+ componentWillLoad() {
487
+ if (this.translationUrl.length > 2 && g(this.translationUrl), this.endpoint && this.language && this.datasource)
488
+ return this.fetchGameList();
489
+ }
490
+ componentDidLoad() {
491
+ !this.limitStylingAppends && this.host && (this.clientStyling && this.setClientStyling(), this.clientStylingUrl && this.setClientStylingURL(), this.limitStylingAppends = !0);
492
+ }
493
+ fetchGameList() {
494
+ let n = new URL(`${this.endpoint}/v1/casino/games`);
495
+ return n.searchParams.append("platform", b()), n.searchParams.append("datasource", this.datasource), n.searchParams.append("fields", "gId,id,href,thumbnail,name,vendor,launchUrl,subVendor"), n.searchParams.append("expand", "vendor"), n.searchParams.append("pagination", "offset=0,limit=423"), n.searchParams.append("language", this.language), this.specificCategory && n.searchParams.append("filter", `categories(id=${this.specificCategory})`), new Promise((e, a) => {
496
+ this.isLoading = !0, fetch(n.href).then((t) => t.json()).then((t) => {
497
+ this.gamesToShow = this.setUpGames(t == null ? void 0 : t.items), e(!0);
498
+ }).catch((t) => {
499
+ console.error(t), this.hasErrors = !0, a(t);
500
+ }).finally(() => {
501
+ this.isLoading = !1;
502
+ });
503
+ });
504
+ }
505
+ setUpGames(n) {
506
+ const e = this.shuffle(n).slice(0, 40);
507
+ return e.concat(e);
508
+ }
509
+ selectRandomGame() {
510
+ const n = this.gamesToShow.length / 2;
511
+ this.selectedGameIndex = Math.floor(Math.random() * (n - 3)), this.selectedGameIndex += n, this.selectedGameEl = this.gameContainer.children[this.selectedGameIndex];
512
+ }
513
+ playRandomGame() {
514
+ this.animateGames(), typeof gtag == "function" && gtag("event", "PlayRandomGame", {
515
+ context: "CasinoPlayRandomGame"
516
+ });
517
+ }
518
+ respin() {
519
+ this.animateGames(), typeof gtag == "function" && gtag("event", "RespinRandomGame", {
520
+ context: "CasinoPlayRandomGame"
521
+ });
522
+ }
523
+ animateGames() {
524
+ this.iconVisibility = this.iconVisibleOnAnim === "true", this.animationStarted = !0, this.animationDone = !1, this.animation && this.animation.cancel(), this.selectedGameEl && (this.selectedGameEl.classList.remove("TheRandomGame"), this.selectedGame = null, this.selectedGameIndex = null), this.selectRandomGame();
525
+ const n = window.getComputedStyle(this.gameContainer).getPropertyValue("gap"), e = parseInt(n, 10), a = this.selectedGameEl.offsetWidth, t = this.gameContainer.offsetWidth, o = (a + e) * this.selectedGameIndex + // Width of game cards up to the selected
526
+ a / 2 - // Additional half card width to center to the selected game
527
+ t / 2, m = [
528
+ { transform: "translateX(0px)", scale: 1 },
529
+ { scale: 0.75 },
530
+ { transform: `translateX(-${o}px)`, scale: 1 }
531
+ ], d = {
532
+ duration: 3e3,
533
+ easing: "cubic-bezier(0.5, 0, 0.5, 1.2)",
534
+ fill: "forwards"
535
+ };
536
+ this.animation = this.gameContainer.animate(m, d), this.animation.onfinish = () => {
537
+ this.animationDone = !0, this.selectedGameEl.classList.add("TheRandomGame"), this.selectedGame = this.gamesToShow[this.selectedGameIndex];
538
+ };
539
+ }
540
+ playGame() {
541
+ this.selectedGame && (window.postMessage({ type: "PlayRandomGame", gameId: this.selectedGame.id, launchUrl: this.selectedGame.launchUrl, gameName: this.selectedGame.name, subVendor: this.selectedGame.subVendor }, window.location.href), typeof gtag == "function" && gtag("event", "OpenRandomGame", {
542
+ context: "CasinoPlayRandomGame"
543
+ }));
544
+ }
545
+ showGameInfo() {
546
+ window.postMessage({ type: "InfoRandomGame", gameId: this.selectedGame.id, launchUrl: this.selectedGame.launchUrl, gameName: this.selectedGame.name, subVendor: this.selectedGame.subVendor }, window.location.href), typeof gtag == "function" && gtag("event", "OpenRandomGameInfo", {
547
+ context: "CasinoPlayRandomGame"
548
+ });
549
+ }
550
+ renderGameDetails() {
551
+ return i("div", { class: "RandomButtonsWrapper" }, i("div", { class: "RandomGameDetails" }, i("span", { class: "RandomGameTitle" }, this.selectedGame.name), i("span", { class: "RandomGameInfo", onClick: () => this.showGameInfo() }, "i")), i("div", { class: "RandomButtons" }, i("button", { class: "RandomButton On", onClick: () => this.respin() }, s("spinRandomGame", this.language)), !this.launchByGameCard && i("button", { class: "RandomButton On", onClick: () => this.playGame() }, s("playNowRandomGame", this.language))));
552
+ }
553
+ render() {
554
+ if (this.hasErrors)
555
+ return i("div", { class: "RandomGameError" }, i("div", { class: "Title" }, s("error", this.language)));
556
+ if (this.isLoading)
557
+ return i("div", { class: "RandomGameLoading" }, i("div", { class: "Title" }, s("randomGameLoading", this.language)));
558
+ if (!this.isLoading)
559
+ return i("div", { class: "RandomGameWrapper" }, i("div", { class: "GameContainerGradient" }), i("div", { class: "GamesContainer", ref: (n) => this.gameContainer = n }, this.gamesToShow && this.gamesToShow.map((n, e) => i("div", { class: "RandomGameCard", key: e, onClick: this.launchByGameCard === "true" ? () => this.playGame() : null }, i("div", { class: "RandomGameVendor" }, n.vendor.name), i("img", { class: "RandomGameImage", src: n.thumbnail, alt: n.name, title: n.name }), this.selectedGame && this.selectedGameIndex === e && this.renderGameDetails()))), i("div", { class: `ButtonWrapper ${this.animationDone ? "HideAnimation" : ""}` }, i("div", { class: "ButtonContainer" }, this.iconVisibility && i("div", { class: `ButtonIcon ${this.animationStarted ? "Flip" : ""}` }, i("div", { class: "QustionMark" }, "?"), i("div", { class: "HexagonMarkShadow" }), i("div", { class: "HexagonMark" })), !this.animationStarted && i("div", { class: `RandomButton ${this.animationStarted ? "HideAnimation" : ""}`, onClick: () => this.playRandomGame() }, s("playRandomGame", this.language)))));
560
+ }
561
+ get host() {
562
+ return x(this);
563
+ }
564
+ static get watchers() {
565
+ return {
566
+ endpoint: ["watchEndpoint"],
567
+ datasource: ["watchEndpoint"],
568
+ language: ["watchEndpoint"],
569
+ translationUrl: ["handleNewTranslations"],
570
+ iconVisible: ["handleIsIconVisible"]
571
+ };
572
+ }
573
+ };
574
+ C.style = k;
575
+ export {
576
+ C as casino_play_random_game
577
+ };
@@ -1,4 +1,4 @@
1
- import { b as c, p as h, r as p, h as t, g } from "./index-47910d1c-CWwDm8i3.js";
1
+ import { b as c, p as h, r as p, h as t, g } from "./index-f923e8d1-DkIbJRWP.js";
2
2
  import { g as u } from "./app-globals-0f993ce5-D-kw1sls.js";
3
3
  var f = () => {
4
4
  const n = import.meta.url, e = {};