@everymatrix/casino-header-controller 1.12.0 → 1.12.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.
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@everymatrix/casino-header-controller",
|
3
|
-
"version": "1.12.
|
3
|
+
"version": "1.12.2",
|
4
4
|
"main": "dist/casino-header-controller.js",
|
5
5
|
"svelte": "src/index.ts",
|
6
6
|
"scripts": {
|
@@ -37,5 +37,5 @@
|
|
37
37
|
"publishConfig": {
|
38
38
|
"access": "public"
|
39
39
|
},
|
40
|
-
"gitHead": "
|
40
|
+
"gitHead": "22bb69e504862fb909bc5d21d62ba4178aaefe3d"
|
41
41
|
}
|
@@ -4,7 +4,7 @@
|
|
4
4
|
import { onMount } from "svelte";
|
5
5
|
import { isMobile, getDevice } from 'rvhelper';
|
6
6
|
import { _, addNewMessages, setLocale, setupI18n } from './i18n';
|
7
|
-
import {
|
7
|
+
import { TRANSLATIONS } from './translations';
|
8
8
|
|
9
9
|
import '@everymatrix/casino-slider';
|
10
10
|
import '@everymatrix/casino-hamburger-menu';
|
@@ -35,7 +35,8 @@
|
|
35
35
|
export let clientstyling:string = '';
|
36
36
|
export let clientstylingurl:string = '';
|
37
37
|
|
38
|
-
let
|
38
|
+
let primaryActiveIndex:string;
|
39
|
+
let secondaryActiveIndex:string;
|
39
40
|
let identity:string = "HeaderMenu";
|
40
41
|
let customStylingContainer:HTMLElement;
|
41
42
|
|
@@ -54,8 +55,8 @@
|
|
54
55
|
});
|
55
56
|
}
|
56
57
|
|
57
|
-
Object.keys(
|
58
|
-
addNewMessages(item,
|
58
|
+
Object.keys(TRANSLATIONS).forEach((item:any) => {
|
59
|
+
addNewMessages(item, TRANSLATIONS[item]);
|
59
60
|
});
|
60
61
|
|
61
62
|
const genericIcon:string = `<svg version="1.1" fill="#fff" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="width: 30px; color: #fff;" x="0px" y="0px"
|
@@ -226,15 +227,20 @@
|
|
226
227
|
})
|
227
228
|
}
|
228
229
|
|
229
|
-
const
|
230
|
-
|
230
|
+
const initializeMenu = ():void => {
|
231
|
+
primaryActiveIndex = setActiveIndex(activecategory, mainMenuArray);
|
232
|
+
secondaryActiveIndex = setActiveIndex(activecategory, secondaryMenuArray);
|
233
|
+
}
|
234
|
+
|
235
|
+
const setActiveIndex = (activecategory, menuList) => {
|
236
|
+
return menuList.find(item => {
|
231
237
|
if ( activecategory.indexOf('/sport') > -1 ) {
|
232
|
-
return item.path.indexOf(activecategory) > -1
|
238
|
+
return item.path.indexOf(activecategory) > -1;
|
233
239
|
} else {
|
234
240
|
//Opted for this solution so that when you go back from casino categories slider it will change the active index when its required from header too
|
235
|
-
return item.path.indexOf(activecategory.split('/')[1]) > -1
|
241
|
+
return item.path.split('/').indexOf(activecategory.split('/')[1]) > -1;
|
236
242
|
}
|
237
|
-
})?.id;
|
243
|
+
})?.id || -1;
|
238
244
|
}
|
239
245
|
|
240
246
|
const sendSliderData = ():void => {
|
@@ -243,7 +249,6 @@
|
|
243
249
|
|
244
250
|
const getHeaderMenusData = (url:any):Promise<any> => {
|
245
251
|
isLoading = true;
|
246
|
-
|
247
252
|
return new Promise((resolve, reject) => {
|
248
253
|
fetch(url)
|
249
254
|
.then((res: any) => res.json())
|
@@ -318,7 +323,7 @@
|
|
318
323
|
}
|
319
324
|
});
|
320
325
|
|
321
|
-
$: activecategory && !isLoading &&
|
326
|
+
$: activecategory && !isLoading && initializeMenu();
|
322
327
|
$: session && setSession();
|
323
328
|
$: lang && setActiveLanguage();
|
324
329
|
$: cmsendpoint && lang && languageslist && userroles && initialLoad();
|
@@ -360,7 +365,7 @@
|
|
360
365
|
<div class="HeaderTopActions" part="HeaderTopActions">
|
361
366
|
<div class="HeaderItemsMenu PrimaryMenu" part="HeaderItemsMenu PrimaryMenu">
|
362
367
|
<player-account-balance-modal {session} {userid} {endpoint} {lang} {clientstyling} {clientstylingurl} {customlocaleidentifier} {gmversion} {displaybalanceoption}/>
|
363
|
-
<div class="Item ItemDeposit" part="Item ItemDeposit" on:click={() => menuAction('deposit')}>{$_('
|
368
|
+
<div class="Item ItemDeposit" part="Item ItemDeposit" on:click={() => menuAction('deposit')}>{$_('deposit')}</div>
|
364
369
|
<div class="Item ItemAccount" part="Item ItemAccount" on:click={() => menuAction('myaccount')}>
|
365
370
|
<svg xmlns="http://www.w3.org/2000/svg" width="15" height="16.429" viewBox="0 0 15 16.429">
|
366
371
|
<defs>
|
@@ -400,7 +405,7 @@
|
|
400
405
|
use:sendSliderData
|
401
406
|
isprimarymenu=true
|
402
407
|
{actionevent}
|
403
|
-
activeindex={
|
408
|
+
activeindex={primaryActiveIndex}
|
404
409
|
{endpoint}
|
405
410
|
{lang}
|
406
411
|
location="headerMain"
|
@@ -413,7 +418,7 @@
|
|
413
418
|
<div class="HeaderTopActions" part="HeaderItemsMenu">
|
414
419
|
<div class="HeaderItemsMenu PrimaryMenu" part="HeaderItemsMenu PrimaryMenu">
|
415
420
|
<player-account-balance-modal {session} {userid} {endpoint} {lang} {clientstyling} {clientstylingurl} {customlocaleidentifier} {gmversion} {displaybalanceoption}/>
|
416
|
-
<div class="Item ItemDeposit" part="Item ItemDeposit" on:click={() => menuAction('deposit')}>{$_('
|
421
|
+
<div class="Item ItemDeposit" part="Item ItemDeposit" on:click={() => menuAction('deposit')}>{$_('deposit')}</div>
|
417
422
|
<div class="Item ItemAccount" part="Item ItemAccount" on:click={() => menuAction('myaccount')}>
|
418
423
|
<svg xmlns="http://www.w3.org/2000/svg" width="15" height="16.429" viewBox="0 0 15 16.429">
|
419
424
|
<defs>
|
@@ -440,7 +445,7 @@
|
|
440
445
|
<nav class="HeaderSecondaryNav" part="HeaderSecondaryNav">
|
441
446
|
<ul class="HeaderItemsMenuSecondary" part="HeaderItemsMenuSecondary">
|
442
447
|
{#each secondaryMenuArray as secondaryItem}
|
443
|
-
<li class="ItemSecondary" part="ItemSecondary">
|
448
|
+
<li class="ItemSecondary {secondaryActiveIndex?.toString().indexOf('$') > -1 ? (secondaryActiveIndex?.split("$").pop() == secondaryItem.id.split("$").pop() ? 'active': '') : (secondaryActiveIndex == secondaryItem.id ? 'active': '')}" part="ItemSecondary">
|
444
449
|
<button on:click={() => navigationTrigger(secondaryItem)}>{secondaryItem.label}</button>
|
445
450
|
</li>
|
446
451
|
{/each}
|
@@ -478,8 +483,8 @@
|
|
478
483
|
|
479
484
|
<div class="HeaderTopActions" part="HeaderTopActions">
|
480
485
|
<div class="HeaderItemsMenu" part="HeaderItemsMenu">
|
481
|
-
<div class="Item ItemLogin" part="Item ItemLogin" on:click={()=>menuAction('login')}>{$_('
|
482
|
-
<div class="Item ItemRegister" part="Item ItemRegister" on:click={()=>menuAction('register')}>{$_('
|
486
|
+
<div class="Item ItemLogin" part="Item ItemLogin" on:click={()=>menuAction('login')}>{$_('login')}</div>
|
487
|
+
<div class="Item ItemRegister" part="Item ItemRegister" on:click={()=>menuAction('register')}>{$_('register')}</div>
|
483
488
|
</div>
|
484
489
|
</div>
|
485
490
|
</div>
|
@@ -504,7 +509,7 @@
|
|
504
509
|
use:sendSliderData
|
505
510
|
isprimarymenu=true
|
506
511
|
{actionevent}
|
507
|
-
activeindex={
|
512
|
+
activeindex={primaryActiveIndex}
|
508
513
|
location="headerMain"
|
509
514
|
{endpoint}
|
510
515
|
{lang}
|
@@ -515,8 +520,8 @@
|
|
515
520
|
</nav>
|
516
521
|
<div class="HeaderTopActions" part="HeaderTopActions">
|
517
522
|
<div class="HeaderItemsMenu" part="HeaderItemsMenu">
|
518
|
-
<div class="Item ItemLogin" part="Item ItemLogin" tabindex="0" on:click={()=>menuAction('login')}>{$_('
|
519
|
-
<div class="Item ItemRegister" part="Item ItemRegister" tabindex="0" on:click={()=>menuAction('register')}>{$_('
|
523
|
+
<div class="Item ItemLogin" part="Item ItemLogin" tabindex="0" on:click={()=>menuAction('login')}>{$_('login')}</div>
|
524
|
+
<div class="Item ItemRegister" part="Item ItemRegister" tabindex="0" on:click={()=>menuAction('register')}>{$_('register')}</div>
|
520
525
|
<select bind:value={selectedLanguage} class="Item ItemLanguage" part="Item ItemLanguage" on:change={()=>menuAction('language')}>
|
521
526
|
{#each languagesArray as operatorLanguage}
|
522
527
|
<option value={operatorLanguage}>{operatorLanguage}</option>
|
@@ -528,7 +533,7 @@
|
|
528
533
|
<nav class="HeaderSecondaryNav" part="HeaderSecondaryNav">
|
529
534
|
<ul class="HeaderItemsMenuSecondary" part="HeaderItemsMenuSecondary">
|
530
535
|
{#each secondaryMenuArray as secondaryItem}
|
531
|
-
<li class="ItemSecondary" part="ItemSecondary">
|
536
|
+
<li class="ItemSecondary {secondaryActiveIndex?.toString().indexOf('$') > -1 ? (secondaryActiveIndex?.split("$").pop() == secondaryItem.id.split("$").pop() ? 'active': '') : (secondaryActiveIndex == secondaryItem.id ? 'active': '')}" part="ItemSecondary">
|
532
537
|
<button on:click={() => navigationTrigger(secondaryItem)}>{secondaryItem.label}</button>
|
533
538
|
</li>
|
534
539
|
{/each}
|
@@ -716,10 +721,13 @@
|
|
716
721
|
}
|
717
722
|
|
718
723
|
.HeaderItemsMenuSecondary .ItemSecondary {
|
724
|
+
width: auto;
|
725
|
+
height: 100%;
|
726
|
+
display: flex;
|
727
|
+
justify-content: center;
|
719
728
|
padding: 0 15px;
|
720
729
|
font-weight: 600;
|
721
730
|
transition-duration: 0.15s;
|
722
|
-
cursor: pointer;
|
723
731
|
|
724
732
|
button {
|
725
733
|
color: var(--emfe-w-color-white, #FFFFFF);
|
@@ -730,7 +738,6 @@
|
|
730
738
|
font-weight: 600;
|
731
739
|
text-transform: uppercase;
|
732
740
|
cursor: pointer;
|
733
|
-
|
734
741
|
&:hover {
|
735
742
|
color: var(--emfe-w-color-primary, #D0046C);
|
736
743
|
}
|
@@ -748,6 +755,9 @@
|
|
748
755
|
outline: none;
|
749
756
|
}
|
750
757
|
}
|
758
|
+
&.active {
|
759
|
+
background: var(--emfe-w-color-primary, #D0046C);
|
760
|
+
}
|
751
761
|
}
|
752
762
|
|
753
763
|
.HeaderSliderMobile {
|
package/src/translations.js
CHANGED
@@ -1,72 +1,44 @@
|
|
1
|
-
export const
|
2
|
-
en: {
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
},
|
8
|
-
fallbackSecondaryMenu: {
|
9
|
-
promotions: 'Promotions',
|
10
|
-
}
|
1
|
+
export const TRANSLATIONS = {
|
2
|
+
"en": {
|
3
|
+
"login": "Login",
|
4
|
+
"register": "Register",
|
5
|
+
"deposit": "Deposit",
|
6
|
+
"promotions": "Promotions"
|
11
7
|
},
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
},
|
18
|
-
fallbackSecondaryMenu: {
|
19
|
-
promotions: '促销活动',
|
20
|
-
}
|
8
|
+
"zh-hk": {
|
9
|
+
"login": "登錄",
|
10
|
+
"register": "登記",
|
11
|
+
"deposit": "訂金",
|
12
|
+
"promotions": "促销活动"
|
21
13
|
},
|
22
|
-
fr: {
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
},
|
28
|
-
fallbackSecondaryMenu: {
|
29
|
-
promotions: 'Promotions',
|
30
|
-
}
|
14
|
+
"fr": {
|
15
|
+
"login": "Connexion",
|
16
|
+
"register": "Enregistrer",
|
17
|
+
"deposit": "Dépôt",
|
18
|
+
"promotions": "Promotions"
|
31
19
|
},
|
32
|
-
tr: {
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
},
|
38
|
-
fallbackSecondaryMenu: {
|
39
|
-
promotions: 'Promosyonlar',
|
40
|
-
}
|
20
|
+
"tr": {
|
21
|
+
"login": "Giriş yapmak",
|
22
|
+
"register": "Kayıt olmak",
|
23
|
+
"deposit": "Depozito",
|
24
|
+
"promotions": "Promosyonlar"
|
41
25
|
},
|
42
|
-
ro: {
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
},
|
48
|
-
fallbackSecondaryMenu: {
|
49
|
-
promotions: 'Promotii',
|
50
|
-
}
|
26
|
+
"ro": {
|
27
|
+
"login": "Autentificare",
|
28
|
+
"register": "Inregistrare",
|
29
|
+
"deposit": "Depozit",
|
30
|
+
"promotions": "Promotii"
|
51
31
|
},
|
52
|
-
es: {
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
},
|
58
|
-
fallbackSecondaryMenu: {
|
59
|
-
promotions: 'Promociones',
|
60
|
-
}
|
32
|
+
"es": {
|
33
|
+
"login": "Iniciar sesión",
|
34
|
+
"register": "Regístrate",
|
35
|
+
"deposit": "Deposita",
|
36
|
+
"promotions": "Promociones"
|
61
37
|
},
|
62
|
-
pt: {
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
promotions: 'Promoções',
|
70
|
-
}
|
71
|
-
},
|
72
|
-
};
|
38
|
+
"pt": {
|
39
|
+
"login": "Entrar",
|
40
|
+
"register": "Registro",
|
41
|
+
"deposit": "Depósito",
|
42
|
+
"promotions": "Promoções"
|
43
|
+
}
|
44
|
+
}
|