@everymatrix/casino-lobby 1.42.0 → 1.42.69

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 (165) hide show
  1. package/components/CasinoCalendar-BQx5-rlk.cjs +9 -0
  2. package/components/CasinoCalendar-CGBzMgQt.cjs +9 -0
  3. package/components/CasinoCalendar-C_GWg7fU.js +5215 -0
  4. package/components/CasinoCalendar-D8A7V_p_.js +5176 -0
  5. package/components/CasinoCalendar-T2eu_ijJ.js +5213 -0
  6. package/components/CasinoCalendar-wabXB62Y.js +5174 -0
  7. package/components/CasinoCalendarDailyDetails-BsuvGAH5.js +701 -0
  8. package/components/CasinoCalendarDailyDetails-CXJQEBiD.js +701 -0
  9. package/components/CasinoCalendarDailyDetails-DD9ivry_.js +701 -0
  10. package/components/CasinoCalendarDailyDetails-DuTGv4cR.cjs +1 -0
  11. package/components/CasinoCalendarDailyDetails-DxoETvny.cjs +1 -0
  12. package/components/CasinoCalendarDailyDetails-HgqSzjsm.js +701 -0
  13. package/components/CasinoCalendarDailyItem-9ZdOdWc1.js +315 -0
  14. package/components/CasinoCalendarDailyItem-BQH_cu-K.cjs +1 -0
  15. package/components/CasinoCalendarDailyItem-Cij4qSkW.js +315 -0
  16. package/components/CasinoCalendarDailyItem-DieqmO8j.js +315 -0
  17. package/components/CasinoCalendarDailyItem-DynzkhlT.js +315 -0
  18. package/components/CasinoCalendarDailyItem-W6jJ8Vef.cjs +1 -0
  19. package/components/CasinoCategoriesSlider-CCBzNNkz.cjs +1 -0
  20. package/components/CasinoCategoriesSlider-Dg6UQ05U.js +594 -0
  21. package/components/CasinoCategoriesSlider-DqNp_BOt.js +594 -0
  22. package/components/CasinoCategoriesSlider-GrF0HXC7.cjs +1 -0
  23. package/components/CasinoCategoriesSlider-_w_55gG7.js +594 -0
  24. package/components/CasinoCategoriesSlider-pHVM7RZL.js +594 -0
  25. package/components/CasinoCollectionsProviders-BIcovGJ8.js +646 -0
  26. package/components/CasinoCollectionsProviders-CH2GAKzC.cjs +1 -0
  27. package/components/CasinoCollectionsProviders-D45_hU-I.js +646 -0
  28. package/components/CasinoCollectionsProviders-DMj_7QBU.cjs +1 -0
  29. package/components/CasinoCollectionsProviders-DfgvvOqL.js +651 -0
  30. package/components/CasinoCollectionsProviders-N_n3oOYS.js +651 -0
  31. package/components/CasinoFavoritesSection-B0uLh581.js +426 -0
  32. package/components/CasinoFavoritesSection-BD3Pecym.cjs +1 -0
  33. package/components/CasinoFavoritesSection-BMVarhje.cjs +1 -0
  34. package/components/CasinoFavoritesSection-B_tSVGIY.js +426 -0
  35. package/components/CasinoFavoritesSection-Da-NSsar.js +426 -0
  36. package/components/CasinoFavoritesSection-Dm0HviHl.js +426 -0
  37. package/components/CasinoFilter-B9sKxzVS.js +620 -0
  38. package/components/CasinoFilter-CMVqOmbG.js +619 -0
  39. package/components/CasinoFilter-Cf00T9dk.js +620 -0
  40. package/components/CasinoFilter-D3HxH1PB.cjs +1 -0
  41. package/components/CasinoFilter-DD3HMkSy.js +619 -0
  42. package/components/CasinoFilter-c8_bvC4c.cjs +1 -0
  43. package/components/CasinoGamePage-BundiLLb.js +4266 -0
  44. package/components/CasinoGamePage-C10RyyZp.cjs +18 -0
  45. package/components/CasinoGamePage-CfbBY5CU.cjs +18 -0
  46. package/components/CasinoGamePage-DC-LoQTc.js +4266 -0
  47. package/components/CasinoGamePage-OZnVr_Bg.js +4287 -0
  48. package/components/CasinoGamePage-yVND0I7w.js +4287 -0
  49. package/components/CasinoGameThumbnail-B1NNWJ0K.js +1820 -0
  50. package/components/CasinoGameThumbnail-Bc66QenW.cjs +38 -0
  51. package/components/CasinoGameThumbnail-CIGOC4uM.js +1820 -0
  52. package/components/CasinoGameThumbnail-DA3jcFAi.js +1836 -0
  53. package/components/CasinoGameThumbnail-DT9ORm8q.js +1836 -0
  54. package/components/CasinoGameThumbnail-DcqwhTjb.cjs +38 -0
  55. package/components/CasinoGamesCategorySection-BNYOO745.cjs +1 -0
  56. package/components/CasinoGamesCategorySection-C78ehK4U.js +2991 -0
  57. package/components/CasinoGamesCategorySection-Cagm02Ih.js +3020 -0
  58. package/components/CasinoGamesCategorySection-DBr4EIfz.js +2991 -0
  59. package/components/CasinoGamesCategorySection-Kzwpz7w5.js +3020 -0
  60. package/components/CasinoGamesCategorySection-_vABwskz.cjs +1 -0
  61. package/components/CasinoJackpotBanner-5cCB-mh2.js +592 -0
  62. package/components/CasinoJackpotBanner-Agfg0mZ0.js +592 -0
  63. package/components/CasinoJackpotBanner-BAhiOMZp.cjs +1 -0
  64. package/components/CasinoJackpotBanner-D7ZMZfDV.cjs +1 -0
  65. package/components/CasinoJackpotBanner-DR-ZzHCR.js +596 -0
  66. package/components/CasinoJackpotBanner-QB6MSrF4.js +596 -0
  67. package/components/CasinoLastPlayedSection-BjhQKUSK.js +556 -0
  68. package/components/CasinoLastPlayedSection-BxzCwcL-.js +556 -0
  69. package/components/CasinoLastPlayedSection-D4vCeonE.js +556 -0
  70. package/components/CasinoLastPlayedSection-Dwe4Td9f.cjs +1 -0
  71. package/components/CasinoLastPlayedSection-XK5dzsj-.js +556 -0
  72. package/components/CasinoLastPlayedSection-v0aQnExT.cjs +1 -0
  73. package/components/CasinoLobby-AFKKESbR.cjs +1 -0
  74. package/components/CasinoLobby-CHvuexFs.js +2315 -0
  75. package/components/CasinoLobby-ClhYpfUU.js +2315 -0
  76. package/components/CasinoLobby-DALY2Dhs.cjs +1 -0
  77. package/components/CasinoLobby-hrKaH7qN.js +2315 -0
  78. package/components/CasinoLobby-ouSesgdC.js +2315 -0
  79. package/components/CasinoModal-BIVMlWQX.js +359 -0
  80. package/components/CasinoModal-BYKM2vRV.cjs +1 -0
  81. package/components/CasinoModal-C3wpERtX.js +359 -0
  82. package/components/CasinoModal-Cabai4o3.js +359 -0
  83. package/components/CasinoModal-DRyqJh1Q.cjs +1 -0
  84. package/components/CasinoModal-Dw_y4THL.js +359 -0
  85. package/components/CasinoMostPlayedSection-C3K0hu8_.js +583 -0
  86. package/components/CasinoMostPlayedSection-CJYMI9VB.js +583 -0
  87. package/components/CasinoMostPlayedSection-DJQuOa6_.js +583 -0
  88. package/components/CasinoMostPlayedSection-DmUpsWqs.cjs +1 -0
  89. package/components/CasinoMostPlayedSection-OUtCsU0t.cjs +1 -0
  90. package/components/CasinoMostPlayedSection-Y5er9Bjh.js +583 -0
  91. package/components/CasinoMyGames-BIxyEUtK.js +1306 -0
  92. package/components/CasinoMyGames-D5rJT74m.cjs +1 -0
  93. package/components/CasinoMyGames-DI1lwYc8.js +1305 -0
  94. package/components/CasinoMyGames-DTHVNaKn.cjs +1 -0
  95. package/components/CasinoMyGames-DwUV6CBn.js +1305 -0
  96. package/components/CasinoMyGames-ctBoKyAg.js +1306 -0
  97. package/components/CasinoPage-BGO7Qjz8.js +3535 -0
  98. package/components/CasinoPage-Bw9pVfhj.cjs +1 -0
  99. package/components/CasinoPage-Ccz2mt9L.js +3535 -0
  100. package/components/CasinoPage-D4SKFGBe.cjs +1 -0
  101. package/components/CasinoPage-DLYXRAgH.js +3538 -0
  102. package/components/CasinoPage-OtILzfbb.js +3538 -0
  103. package/components/CasinoRandomGame-CtZOIJcN.js +658 -0
  104. package/components/CasinoRandomGame-Cveyjhn1.js +642 -0
  105. package/components/CasinoRandomGame-DALiyns2.cjs +2 -0
  106. package/components/CasinoRandomGame-DVoXDVJK.cjs +2 -0
  107. package/components/CasinoRandomGame-DbeS8lnM.js +642 -0
  108. package/components/CasinoRandomGame-HLWP49DK.js +658 -0
  109. package/components/CasinoSearch-B8OpEZBN.cjs +1 -0
  110. package/components/CasinoSearch-BMZWS8yv.js +1058 -0
  111. package/components/CasinoSearch-BQe9Q-5N.js +1060 -0
  112. package/components/CasinoSearch-B_Yrv4Uo.cjs +1 -0
  113. package/components/CasinoSearch-CbqN_jyR.js +1058 -0
  114. package/components/CasinoSearch-D9U7Yh_K.js +1060 -0
  115. package/components/CasinoSlider-BOVT94iB.js +794 -0
  116. package/components/CasinoSlider-BSHGeAYd.js +788 -0
  117. package/components/CasinoSlider-BvS3IBvk.cjs +1 -0
  118. package/components/CasinoSlider-CF-wUwQR.cjs +1 -0
  119. package/components/CasinoSlider-CrHKe4Xk.js +803 -0
  120. package/components/CasinoSlider-Cxh3sOkP.js +797 -0
  121. package/components/CasinoSort-BOWrHLh_.js +420 -0
  122. package/components/CasinoSort-BwnNTnFA.js +420 -0
  123. package/components/CasinoSort-DTw1r10v.js +419 -0
  124. package/components/CasinoSort-DWtBvm9D.cjs +1 -0
  125. package/components/CasinoSort-LblMuLP4.js +419 -0
  126. package/components/CasinoSort-hnzXlXWX.cjs +1 -0
  127. package/components/CasinoWinners-C9izX5Hz.js +955 -0
  128. package/components/CasinoWinners-CO3x7y86.js +955 -0
  129. package/components/CasinoWinners-CZWuAxEs.js +953 -0
  130. package/components/CasinoWinners-CjaKY4pX.cjs +1 -0
  131. package/components/CasinoWinners-DOucg2Bq.js +953 -0
  132. package/components/CasinoWinners-xdJkyzy9.cjs +1 -0
  133. package/components/GeneralAnimationLoading-C4-n6eKC.cjs +1 -0
  134. package/components/GeneralAnimationLoading-CGGvPAzb.js +75 -0
  135. package/components/GeneralAnimationLoading-Ch_RgnSg.js +75 -0
  136. package/components/GeneralAnimationLoading-DBrwarIl.js +75 -0
  137. package/components/GeneralAnimationLoading-YY_Qislb.cjs +1 -0
  138. package/components/GeneralAnimationLoading-qKrL3K2W.js +75 -0
  139. package/es2015/casino-lobby.cjs +1 -0
  140. package/es2015/casino-lobby.js +16 -0
  141. package/esnext/casino-lobby.js +14 -0
  142. package/package.json +19 -34
  143. package/stencil/app-globals-0f993ce5-D-kw1sls.js +5 -0
  144. package/stencil/app-globals-0f993ce5-sCt45RkC.cjs +1 -0
  145. package/stencil/casino-play-random-game-CE7d8ftV.js +559 -0
  146. package/stencil/casino-play-random-game-JlSgoZ7I.js +577 -0
  147. package/stencil/casino-play-random-game-fmski7eY.cjs +371 -0
  148. package/stencil/index-bc02f5d1-CGWk9tpa.js +609 -0
  149. package/stencil/index-bc02f5d1-Cfiraoh4.js +625 -0
  150. package/stencil/index-bc02f5d1-zY9WEQOW.cjs +1 -0
  151. package/CHANGELOG.md +0 -39
  152. package/README.md +0 -0
  153. package/dist/casino-lobby.js +0 -33
  154. package/dist/casino-lobby.js.map +0 -1
  155. package/documentation.md +0 -176
  156. package/index.html +0 -50
  157. package/index.js +0 -1
  158. package/public/favicon.png +0 -0
  159. package/public/reset.css +0 -48
  160. package/rollup.config.js +0 -67
  161. package/src/CasinoLobby.svelte +0 -454
  162. package/src/i18n.js +0 -25
  163. package/src/index.ts +0 -4
  164. package/stories/CasinoLobby.stories.js +0 -13
  165. package/tsconfig.json +0 -6
@@ -0,0 +1,559 @@
1
+ import { b as c, p as h, r as p, h as t, g } from "./index-bc02f5d1-CGWk9tpa.js";
2
+ import { g as u } from "./app-globals-0f993ce5-D-kw1sls.js";
3
+ var f = () => {
4
+ const n = import.meta.url, e = {};
5
+ return n !== "" && (e.resourcesUrl = new URL(".", n).href), h(e);
6
+ };
7
+ f().then(async (n) => (await u(), c([["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)));
8
+ const w = () => {
9
+ let n = window.navigator.userAgent;
10
+ return n.toLowerCase().match(/android/i) ? "Android" : n.toLowerCase().match(/iphone/i) ? "iPhone" : n.toLowerCase().match(/ipad|ipod/i) ? "iPad" : "PC";
11
+ }, x = "en", r = {
12
+ en: {
13
+ error: "Error",
14
+ randomGameLoading: "Loading ...",
15
+ playRandomGame: "Play a random game",
16
+ playNowRandomGame: "Play now",
17
+ spinRandomGame: "Spin"
18
+ },
19
+ ro: {
20
+ error: "Error",
21
+ randomGameLoading: "Loading ...",
22
+ playRandomGame: "Play a random game",
23
+ playNowRandomGame: "Play now",
24
+ spinRandomGame: "Spin"
25
+ },
26
+ fr: {
27
+ error: "Error",
28
+ randomGameLoading: "Loading ...",
29
+ playRandomGame: "Play a random game",
30
+ playNowRandomGame: "Play now",
31
+ spinRandomGame: "Spin"
32
+ },
33
+ hr: {
34
+ error: "Greška",
35
+ randomGameLoading: "Učitavanje ...",
36
+ playRandomGame: "Igraj nasumičnu igru",
37
+ playNowRandomGame: "Igraj sada",
38
+ spinRandomGame: "Zavrti"
39
+ },
40
+ hu: {
41
+ error: "Error",
42
+ randomGameLoading: "Loading ...",
43
+ playRandomGame: "Play a random game",
44
+ playNowRandomGame: "Play now",
45
+ spinRandomGame: "Spin"
46
+ },
47
+ tr: {
48
+ error: "Hata",
49
+ randomGameLoading: "Yükleniyor...",
50
+ playRandomGame: "Rasgele bir oyun oyna",
51
+ playNowRandomGame: "Şimdi Oyna",
52
+ spinRandomGame: "DEĞİŞTİR"
53
+ }
54
+ }, l = (n) => new Promise((e) => {
55
+ fetch(n).then((i) => i.json()).then((i) => {
56
+ Object.keys(i).forEach((a) => {
57
+ r[a] || (r[a] = {});
58
+ for (let s in i[a])
59
+ r[a][s] = i[a][s];
60
+ }), e(!0);
61
+ });
62
+ }), o = (n, e) => {
63
+ const i = e;
64
+ return r[i !== void 0 && i in r ? i : x][n];
65
+ }, y = `:host {
66
+ display: block;
67
+ font-family: inherit;
68
+ -webkit-transform: translate3d(0, 0, 0);
69
+ transform: translate3d(0, 0, 0);
70
+ }
71
+
72
+ :host * {
73
+ -webkit-transform: translate3d(0, 0, 0);
74
+ transform: translate3d(0, 0, 0);
75
+ }
76
+
77
+ .RandomGameWrapper {
78
+ width: 100%;
79
+ height: var(--emw--size-4x-medium, 700px);
80
+ background: transparent;
81
+ position: relative;
82
+ overflow: hidden;
83
+ }
84
+
85
+ .GameContainerGradient {
86
+ position: absolute;
87
+ top: 10%;
88
+ left: -5px;
89
+ width: 100vw;
90
+ height: 80%;
91
+ 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%);
92
+ pointer-events: none;
93
+ z-index: 1;
94
+ filter: blur(10px);
95
+ }
96
+
97
+ .GamesContainer {
98
+ display: flex;
99
+ height: var(--emw--size-4x-medium, 600px);
100
+ flex-direction: row;
101
+ flex-wrap: nowrap;
102
+ justify-content: flex-start;
103
+ align-items: center;
104
+ align-content: flex-start;
105
+ gap: var(--emw--spacing-large, 20px);
106
+ }
107
+
108
+ .RandomGameCard {
109
+ position: relative;
110
+ width: var(--emw--size-3x-medium, 300px);
111
+ height: var(--emw--size-4x-medium, 420px);
112
+ border-radius: var(--emw--border-radius-large, 20px);
113
+ top: 8%;
114
+ filter: blur(5px);
115
+ }
116
+ .RandomGameCard .RandomGameVendor {
117
+ position: absolute;
118
+ font-size: var(--emw--font-size-x-small, 12px);
119
+ bottom: var(--emw--spacing-small-minus, 10px);
120
+ left: var(--emw--spacing-small-minus, 10px);
121
+ color: var(--emw--color-typography, #FFFFFF);
122
+ }
123
+
124
+ .TheRandomGame {
125
+ animation-name: ZoomFadeIn;
126
+ animation-duration: 0.5s;
127
+ animation-fill-mode: forwards;
128
+ -webkit-animation-name: ZoomFadeIn;
129
+ -webkit-animation-duration: 0.5s;
130
+ -webkit-animation-fill-mode: forwards;
131
+ opacity: 1;
132
+ cursor: pointer;
133
+ filter: blur(0);
134
+ }
135
+
136
+ .RandomGameImage {
137
+ width: inherit;
138
+ height: inherit;
139
+ object-fit: cover;
140
+ border-radius: var(--emw--border-radius-large, 20px);
141
+ }
142
+
143
+ .RandomGameDetails {
144
+ display: flex;
145
+ flex-direction: row;
146
+ justify-content: space-between;
147
+ align-items: center;
148
+ color: var(--emw--color-typography, #FFFFFF);
149
+ font-size: var(--emw--font-size-small, 14px);
150
+ width: 100%;
151
+ }
152
+ .RandomGameDetails .RandomGameTitle {
153
+ line-height: 18px;
154
+ }
155
+ .RandomGameDetails .RandomGameInfo {
156
+ border-radius: 50%;
157
+ width: var(--emw--spacing-medium, 16px);
158
+ height: var(--emw--spacing-medium, 16px);
159
+ font-size: var(--emw--font-size-x-small, 12px);
160
+ font-weight: var(--emw--font-weight-normal, 400);
161
+ border: solid 1px var(--emw--color-typography, #FFFFFF);
162
+ text-align: center;
163
+ margin: var(--emw--spacing-2x-small, 4px) 0;
164
+ line-height: 14px;
165
+ cursor: pointer;
166
+ }
167
+ .RandomGameDetails .RandomGamePlay {
168
+ background: var(--emw--color-primary, #4bd004);
169
+ color: var(--emw--color-typography, #FFFFFF);
170
+ border: none;
171
+ border-radius: var(--emw--border-radius-medium, 5px);
172
+ width: 200px;
173
+ height: 40px;
174
+ font-size: var(--emw--font-size-small, 14px);
175
+ cursor: pointer;
176
+ }
177
+
178
+ .ButtonWrapper {
179
+ position: absolute;
180
+ top: 50%;
181
+ left: 50%;
182
+ transform: translate(-50%, -50%);
183
+ z-index: 20;
184
+ }
185
+
186
+ .ButtonContainer {
187
+ display: flex;
188
+ flex-direction: column;
189
+ justify-content: center;
190
+ align-items: center;
191
+ gap: 10px;
192
+ width: 100%;
193
+ position: relative;
194
+ }
195
+
196
+ .ButtonIcon {
197
+ display: flex;
198
+ flex-direction: column;
199
+ justify-content: center;
200
+ align-items: center;
201
+ gap: var(--emw--spacing-2x-small, 5px);
202
+ }
203
+
204
+ .QustionMark {
205
+ position: absolute;
206
+ font-family: sans-serif;
207
+ font-size: 120px;
208
+ font-weight: 900;
209
+ color: color-mix(in srgb, var(--emw--color-primary, #22B04E) 80%, black 10%);
210
+ text-shadow: 0px 12px 0px color-mix(in srgb, var(--emw--casino-color-secondary, var(--emw--color-secondary, #eeac4a)), black 50%);
211
+ left: 50%;
212
+ top: -20%;
213
+ transform: translateX(-50%);
214
+ z-index: 10;
215
+ }
216
+
217
+ .HexagonMarkShadow {
218
+ width: 100px;
219
+ height: 115px;
220
+ display: flex;
221
+ justify-content: center;
222
+ align-items: center;
223
+ background: color-mix(in srgb, var(--emw--casino-color-secondary, var(--emw--color-secondary, #eeac4a)), black 70%);
224
+ clip-path: polygon(50% 0, 100% 30%, 100% 70%, 50% 100%, 0% 70%, 0% 30%);
225
+ }
226
+
227
+ .HexagonMark {
228
+ position: absolute;
229
+ width: var(--emw--size-medium, 90px);
230
+ height: 105px;
231
+ 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%);
232
+ clip-path: polygon(50% 0, 100% 30%, 100% 70%, 50% 100%, 0% 70%, 0% 30%);
233
+ }
234
+
235
+ .RandomButtons {
236
+ display: flex;
237
+ flex-direction: row;
238
+ justify-content: center;
239
+ align-items: center;
240
+ gap: var(--emw--spacing-2x-small, 5px);
241
+ width: 100%;
242
+ position: relative;
243
+ z-index: 10;
244
+ }
245
+
246
+ .RandomButton {
247
+ font-size: var(--emw--font-size-large, 20px);
248
+ text-transform: uppercase;
249
+ width: max-content;
250
+ border-radius: var(--emw--button-border-radius, 50px);
251
+ padding: var(--emw--spacing-large, 20px) var(--emw--spacing-2x-large, 40px);
252
+ border: solid 3px var(--emw--button-border-color, #063B17);
253
+ color: var(--emw--button-text-color, #FFFFFF);
254
+ opacity: 1;
255
+ animation: ButtonEffect 3s linear infinite;
256
+ 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));
257
+ background-size: 300% 100%;
258
+ cursor: pointer;
259
+ position: relative;
260
+ z-index: 10;
261
+ }
262
+ .RandomButton:hover {
263
+ opacity: 0.8;
264
+ }
265
+
266
+ .HideAnimation {
267
+ filter: blur(5px);
268
+ animation: AnimateButton 0.2s forwards;
269
+ }
270
+
271
+ .Flip {
272
+ animation-name: Flip, Blur;
273
+ animation-duration: 0.75s, 3s;
274
+ animation-iteration-count: infinite, 1;
275
+ -webkit-animation-name: Flip, Blur;
276
+ -webkit-animation-duration: 0.75s, 3s;
277
+ -webkit-animation-iteration-count: infinite, 1;
278
+ }
279
+
280
+ @keyframes ButtonEffect {
281
+ 0% {
282
+ background-position: 0% 50%;
283
+ }
284
+ 33% {
285
+ background-position: 100% 50%;
286
+ }
287
+ 66% {
288
+ background-position: 200% 50%;
289
+ }
290
+ 100% {
291
+ background-position: 300% 50%;
292
+ }
293
+ }
294
+ @keyframes ZoomFadeIn {
295
+ 0% {
296
+ transform: scale(0.2) translateY(0);
297
+ filter: blur(5px);
298
+ opacity: 0.3;
299
+ }
300
+ 50% {
301
+ transform: scale(1.1) translateY(-30px);
302
+ filter: blur(2px);
303
+ opacity: 0.7;
304
+ }
305
+ 100% {
306
+ transform: scale(1) translateY(-30px);
307
+ filter: blur(0px);
308
+ opacity: 1;
309
+ }
310
+ }
311
+ @keyframes AnimateButton {
312
+ 0% {
313
+ opacity: 0.7;
314
+ }
315
+ 50% {
316
+ opacity: 0.4;
317
+ }
318
+ 100% {
319
+ opacity: 0;
320
+ display: none;
321
+ }
322
+ }
323
+ @keyframes Flip {
324
+ 0% {
325
+ transform: rotateY(0deg);
326
+ }
327
+ 50% {
328
+ transform: rotateY(180deg);
329
+ }
330
+ 100% {
331
+ transform: rotateY(360deg);
332
+ }
333
+ }
334
+ @keyframes Blur {
335
+ 0% {
336
+ filter: blur(0);
337
+ }
338
+ 50% {
339
+ filter: blur(1px);
340
+ }
341
+ 100% {
342
+ filter: blur(3px);
343
+ }
344
+ }
345
+ @container (max-width: 475px) {
346
+ .GamesContainer {
347
+ height: inherit;
348
+ gap: var(--emw--spacing-2x-small, 5px);
349
+ }
350
+ .RandomGameWrapper {
351
+ width: 100%;
352
+ height: 300px;
353
+ overflow: hidden;
354
+ background: transparent;
355
+ position: relative;
356
+ }
357
+ .GameContainerGradient {
358
+ position: absolute;
359
+ top: 10%;
360
+ left: -5px;
361
+ width: 100vw;
362
+ height: 80%;
363
+ 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%);
364
+ pointer-events: none;
365
+ z-index: 1;
366
+ filter: blur(5px);
367
+ }
368
+ .RandomGameCard {
369
+ width: 100px;
370
+ height: 150px;
371
+ top: 0%;
372
+ border-radius: var(--emw--border-radius-medium, 4px);
373
+ filter: blur(5px);
374
+ }
375
+ .RandomGameImage {
376
+ width: 102px;
377
+ height: inherit;
378
+ top: 0%;
379
+ }
380
+ .RandomGameDetails {
381
+ font-size: 14px;
382
+ width: 100%;
383
+ }
384
+ .RandomGameDetails .RandomGameTitle {
385
+ line-height: 18px;
386
+ width: 75%;
387
+ }
388
+ .RandomGameDetails .RandomGameInfo {
389
+ border-radius: 50%;
390
+ width: 16px;
391
+ height: 16px;
392
+ font-size: var(--emw--font-size-x-small, 12px);
393
+ line-height: 14px;
394
+ }
395
+ .RandomGameDetails .RandomGamePlay {
396
+ background: var(--emw--color-primary, #52d004);
397
+ color: var(--emw--color-typography, #FFFFFF);
398
+ border: none;
399
+ border-radius: 5px;
400
+ width: 200px;
401
+ height: 40px;
402
+ font-size: 14px;
403
+ cursor: pointer;
404
+ }
405
+ .RandomGameCard .RandomGameVendor {
406
+ font-size: var(--emw--font-size-x-small, 12px);
407
+ bottom: 5px;
408
+ right: 5px;
409
+ }
410
+ .RandomButtons {
411
+ display: flex;
412
+ flex-direction: column;
413
+ justify-content: center;
414
+ align-items: center;
415
+ gap: 5px;
416
+ width: 100%;
417
+ }
418
+ .RandomButton {
419
+ font-size: var(--emw--font-size-x-small, 12px);
420
+ padding: 10px 15px;
421
+ border: solid 1px var(--emw--button-border-color, #063B17);
422
+ }
423
+ .QustionMark {
424
+ font-size: 100px;
425
+ font-weight: 700;
426
+ }
427
+ .HexagonMarkShadow {
428
+ width: 80px;
429
+ height: 95px;
430
+ }
431
+ .HexagonMark {
432
+ width: 70px;
433
+ height: 85px;
434
+ }
435
+ }`, G = y, b = class {
436
+ constructor(n) {
437
+ p(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) => {
438
+ let i = e.length, a;
439
+ for (; i !== 0; )
440
+ a = Math.floor(Math.random() * i), i--, [e[i], e[a]] = [e[a], e[i]];
441
+ return e;
442
+ }, this.setClientStyling = () => {
443
+ let e = document.createElement("style");
444
+ e.innerHTML = this.clientStyling, this.host.shadowRoot.prepend(e);
445
+ }, this.setClientStylingURL = () => {
446
+ let e = new URL(this.clientStylingUrl), i = document.createElement("style");
447
+ fetch(e.href).then((a) => a.text()).then((a) => {
448
+ i.innerHTML = a, this.clientStyling = a, setTimeout(() => {
449
+ this.host.shadowRoot.prepend(i);
450
+ }, 1);
451
+ });
452
+ };
453
+ }
454
+ watchEndpoint(n, e) {
455
+ n && n != e && this.endpoint && this.fetchGameList();
456
+ }
457
+ handleNewTranslations() {
458
+ this.isLoading = !0, l(this.translationUrl).then(() => {
459
+ this.isLoading = !1;
460
+ });
461
+ }
462
+ handleIsIconVisible() {
463
+ this.iconVisibility = this.iconVisible === "true";
464
+ }
465
+ connectedCallback() {
466
+ this.handleIsIconVisible();
467
+ }
468
+ componentWillLoad() {
469
+ if (this.translationUrl.length > 2 && l(this.translationUrl), this.endpoint && this.language && this.datasource)
470
+ return this.fetchGameList();
471
+ }
472
+ componentDidLoad() {
473
+ !this.limitStylingAppends && this.host && (this.clientStyling && this.setClientStyling(), this.clientStylingUrl && this.setClientStylingURL(), this.limitStylingAppends = !0);
474
+ }
475
+ fetchGameList() {
476
+ let n = new URL(`${this.endpoint}/v1/casino/games`);
477
+ return n.searchParams.append("platform", w()), 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, i) => {
478
+ this.isLoading = !0, fetch(n.href).then((a) => a.json()).then((a) => {
479
+ this.gamesToShow = this.setUpGames(a?.items), e(!0);
480
+ }).catch((a) => {
481
+ console.error(a), this.hasErrors = !0, i(a);
482
+ }).finally(() => {
483
+ this.isLoading = !1;
484
+ });
485
+ });
486
+ }
487
+ setUpGames(n) {
488
+ const e = this.shuffle(n).slice(0, 40);
489
+ return e.concat(e);
490
+ }
491
+ selectRandomGame() {
492
+ const n = this.gamesToShow.length / 2;
493
+ this.selectedGameIndex = Math.floor(Math.random() * (n - 3)), this.selectedGameIndex += n, this.selectedGameEl = this.gameContainer.children[this.selectedGameIndex];
494
+ }
495
+ playRandomGame() {
496
+ this.animateGames(), typeof gtag == "function" && gtag("event", "PlayRandomGame", {
497
+ context: "CasinoPlayRandomGame"
498
+ });
499
+ }
500
+ respin() {
501
+ this.animateGames(), typeof gtag == "function" && gtag("event", "RespinRandomGame", {
502
+ context: "CasinoPlayRandomGame"
503
+ });
504
+ }
505
+ animateGames() {
506
+ 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();
507
+ const n = window.getComputedStyle(this.gameContainer).getPropertyValue("gap"), e = parseInt(n, 10), i = this.selectedGameEl.offsetWidth, a = this.gameContainer.offsetWidth, s = (i + e) * this.selectedGameIndex + // Width of game cards up to the selected
508
+ i / 2 - // Additional half card width to center to the selected game
509
+ a / 2, m = [
510
+ { transform: "translateX(0px)", scale: 1 },
511
+ { scale: 0.75 },
512
+ { transform: `translateX(-${s}px)`, scale: 1 }
513
+ ], d = {
514
+ duration: 3e3,
515
+ easing: "cubic-bezier(0.5, 0, 0.5, 1.2)",
516
+ fill: "forwards"
517
+ };
518
+ this.animation = this.gameContainer.animate(m, d), this.animation.onfinish = () => {
519
+ this.animationDone = !0, this.selectedGameEl.classList.add("TheRandomGame"), this.selectedGame = this.gamesToShow[this.selectedGameIndex];
520
+ };
521
+ }
522
+ playGame() {
523
+ 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", {
524
+ context: "CasinoPlayRandomGame"
525
+ }));
526
+ }
527
+ showGameInfo() {
528
+ 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", {
529
+ context: "CasinoPlayRandomGame"
530
+ });
531
+ }
532
+ renderGameDetails() {
533
+ return t("div", { class: "RandomButtonsWrapper" }, t("div", { class: "RandomGameDetails" }, t("span", { class: "RandomGameTitle" }, this.selectedGame.name), t("span", { class: "RandomGameInfo", onClick: () => this.showGameInfo() }, "i")), t("div", { class: "RandomButtons" }, t("button", { class: "RandomButton On", onClick: () => this.respin() }, o("spinRandomGame", this.language)), !this.launchByGameCard && t("button", { class: "RandomButton On", onClick: () => this.playGame() }, o("playNowRandomGame", this.language))));
534
+ }
535
+ render() {
536
+ if (this.hasErrors)
537
+ return t("div", { class: "RandomGameError" }, t("div", { class: "Title" }, o("error", this.language)));
538
+ if (this.isLoading)
539
+ return t("div", { class: "RandomGameLoading" }, t("div", { class: "Title" }, o("randomGameLoading", this.language)));
540
+ if (!this.isLoading)
541
+ return t("div", { class: "RandomGameWrapper" }, t("div", { class: "GameContainerGradient" }), t("div", { class: "GamesContainer", ref: (n) => this.gameContainer = n }, this.gamesToShow && this.gamesToShow.map((n, e) => t("div", { class: "RandomGameCard", key: e, onClick: this.launchByGameCard === "true" ? () => this.playGame() : null }, t("div", { class: "RandomGameVendor" }, n.vendor.name), t("img", { class: "RandomGameImage", src: n.thumbnail, alt: n.name, title: n.name }), this.selectedGame && this.selectedGameIndex === e && this.renderGameDetails()))), t("div", { class: `ButtonWrapper ${this.animationDone ? "HideAnimation" : ""}` }, t("div", { class: "ButtonContainer" }, this.iconVisibility && t("div", { class: `ButtonIcon ${this.animationStarted ? "Flip" : ""}` }, t("div", { class: "QustionMark" }, "?"), t("div", { class: "HexagonMarkShadow" }), t("div", { class: "HexagonMark" })), !this.animationStarted && t("div", { class: `RandomButton ${this.animationStarted ? "HideAnimation" : ""}`, onClick: () => this.playRandomGame() }, o("playRandomGame", this.language)))));
542
+ }
543
+ get host() {
544
+ return g(this);
545
+ }
546
+ static get watchers() {
547
+ return {
548
+ endpoint: ["watchEndpoint"],
549
+ datasource: ["watchEndpoint"],
550
+ language: ["watchEndpoint"],
551
+ translationUrl: ["handleNewTranslations"],
552
+ iconVisible: ["handleIsIconVisible"]
553
+ };
554
+ }
555
+ };
556
+ b.style = G;
557
+ export {
558
+ b as casino_play_random_game
559
+ };