@everymatrix/casino-header-controller 0.0.213 → 0.0.217

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/index.html CHANGED
@@ -26,8 +26,8 @@
26
26
  cmsendpoint="https://widgets.everymatrix.com/apijson"
27
27
  lang="en"
28
28
  showbanner="true"
29
- session="8910603d-1ff3-4127-9e09-7435b5a393b6"
30
- userid="3685503"
29
+ session=""
30
+ userid=""
31
31
  profileurl='bla'
32
32
  endpoint="https://demo-api.stage.norway.everymatrix.com/v1"
33
33
  bannermatrix="https://bannermatrix-stage.everymatrix.com"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@everymatrix/casino-header-controller",
3
- "version": "0.0.213",
3
+ "version": "0.0.217",
4
4
  "main": "dist/casino-header-controller.js",
5
5
  "svelte": "src/index.ts",
6
6
  "scripts": {
@@ -38,5 +38,5 @@
38
38
  "publishConfig": {
39
39
  "access": "public"
40
40
  },
41
- "gitHead": "0b49e65f747ec6eaac6ca9d4a4e7ee9702980bfc"
41
+ "gitHead": "eece4cbb47122ec254298d89beb7fdb184124cdc"
42
42
  }
@@ -1,7 +1,9 @@
1
1
  <svelte:options tag={null}/>
2
- <script lang="typescript">
2
+ <script lang="ts">
3
3
  import {onMount} from "svelte";
4
4
  import {isMobile} from 'rvhelper';
5
+ import { _, addNewMessages, setLocale, setupI18n } from './i18n';
6
+ import { CasinoHeaderController } from './translations';
5
7
 
6
8
  import '@everymatrix/casino-slider';
7
9
  import '@everymatrix/casino-hamburger-menu';
@@ -15,12 +17,19 @@
15
17
  export let cmsendpoint:string = '';
16
18
  export let cmsenv:string = 'stage';
17
19
  export let lang:string = '';
20
+ export let languageslist:string = 'en, ro';
18
21
  export let identity:string = '';
19
22
 
20
23
  export let operatorid:string = '';
21
24
  export let pagetag:string = '';
22
25
  export let positiontag:string = '';
23
26
 
27
+ // setupI18n({ withLocale: 'tr', translations: {}});
28
+
29
+ Object.keys(CasinoHeaderController).forEach((item:any) => {
30
+ addNewMessages(item, CasinoHeaderController[item]);
31
+ });
32
+
24
33
  const genericIcon = `<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"
25
34
  viewBox="0 0 384.971 384.971" style="enable-background:new 0 0 384.971 384.971;" xml:space="preserve">
26
35
  <path style="color: #fff" d="M180.455,360.91H24.061V24.061h156.394c6.641,0,12.03-5.39,12.03-12.03s-5.39-12.03-12.03-12.03H12.03
@@ -33,7 +42,6 @@
33
42
 
34
43
  let mainMenuArray = [];
35
44
  let secondaryMenuArray = [];
36
- let languagesArray = [{code: 'EN'}, {code: 'TR'}, {code: 'RO'}];
37
45
  let selectedLanguage = '';
38
46
  let hamburgerURL: any;
39
47
  let headerURL: any;
@@ -46,6 +54,7 @@
46
54
  let sessionID: string = '';
47
55
  let loginActive: boolean = true;
48
56
  let language: string = '';
57
+ let languagesArray: Array<string> = [];
49
58
  // use for medium devices styling, if necessary
50
59
  // const mediaQuery = window.matchMedia('(min-width: 768px)');
51
60
  let hamburgerMenuActive: boolean = false;
@@ -59,12 +68,12 @@
59
68
  switch (data) {
60
69
  case 'login':
61
70
  loginActive = true;
62
- window.postMessage({type: 'OpenLoginRegisterModal', login: loginActive}, window.location.href);
71
+ window.postMessage({type: 'OpenLoginRegisterModal', transition: 'Login' }, window.location.href);
63
72
  break;
64
73
 
65
74
  case 'register':
66
75
  loginActive = false;
67
- window.postMessage({type: 'OpenLoginRegisterModal', login: loginActive}, window.location.href);
76
+ window.postMessage({type: 'OpenLoginRegisterModal', transition: 'Register'}, window.location.href);
68
77
  break;
69
78
 
70
79
  case 'lobby':
@@ -147,7 +156,14 @@
147
156
  }
148
157
 
149
158
  const initialLoad = () => {
159
+ // split operator provided languages string into string array
160
+ languagesArray = languageslist.split(',');
161
+ languagesArray.forEach((languageItem:string, index:number) => {
162
+ languagesArray[index] = languageItem.toUpperCase();
163
+ })
164
+
150
165
  selectedLanguage = lang.toUpperCase();
166
+ setLocale(lang);
151
167
 
152
168
  createCMSUrls();
153
169
 
@@ -255,7 +271,7 @@
255
271
  <div class="HeaderTopActions">
256
272
  <div class="HeaderItemsMenu PrimaryMenu">
257
273
  <player-account-balance-modal {session} {userid} {endpoint} {lang}/>
258
- <div class="Item ItemDeposit" on:click={() => menuAction('deposit')}>Deposit</div>
274
+ <div class="Item ItemDeposit" on:click={() => menuAction('deposit')}>{$_('headerItem.deposit')}</div>
259
275
  <div class="Item ItemAccount" on:click={() => menuAction('myaccount')}>
260
276
  <svg xmlns="http://www.w3.org/2000/svg" width="15" height="16.429" viewBox="0 0 15 16.429">
261
277
  <defs>
@@ -272,8 +288,8 @@
272
288
  </svg>
273
289
  </div>
274
290
  <select bind:value={selectedLanguage} class="Item ItemLanguage" on:change={()=>menuAction('language')}>
275
- {#each languagesArray as lang}
276
- <option value={lang.code}>{lang.code}</option>
291
+ {#each languagesArray as operatorLanguage}
292
+ <option value={operatorLanguage}>{operatorLanguage}</option>
277
293
  {/each}
278
294
  </select>
279
295
  </div>
@@ -314,8 +330,8 @@
314
330
 
315
331
  <div class="HeaderTopActions">
316
332
  <div class="HeaderItemsMenu">
317
- <div class="Item ItemLogin" on:click={()=>menuAction('login')}>Login</div>
318
- <div class="Item ItemRegister" on:click={()=>menuAction('register')}>Register</div>
333
+ <div class="Item ItemLogin" on:click={()=>menuAction('login')}>{$_('headerItem.login')}</div>
334
+ <div class="Item ItemRegister" on:click={()=>menuAction('register')}>{$_('headerItem.register')}</div>
319
335
  </div>
320
336
  </div>
321
337
  </div>
@@ -335,11 +351,11 @@
335
351
  </nav>
336
352
  <div class="HeaderTopActions">
337
353
  <div class="HeaderItemsMenu">
338
- <div class="Item ItemLogin" on:click={()=>menuAction('login')}>Login</div>
339
- <div class="Item ItemRegister" on:click={()=>menuAction('register')}>Register</div>
354
+ <div class="Item ItemLogin" on:click={()=>menuAction('login')}>{$_('headerItem.login')}</div>
355
+ <div class="Item ItemRegister" on:click={()=>menuAction('register')}>{$_('headerItem.register')}</div>
340
356
  <select bind:value={selectedLanguage} class="Item ItemLanguage" on:change={()=>menuAction('language')}>
341
- {#each languagesArray as lang}
342
- <option value={lang.code}>{lang.code}</option>
357
+ {#each languagesArray as operatorLanguage}
358
+ <option value={operatorLanguage}>{operatorLanguage}</option>
343
359
  {/each}
344
360
  </select>
345
361
  </div>
package/src/i18n.js ADDED
@@ -0,0 +1,27 @@
1
+ import {
2
+ dictionary,
3
+ locale,
4
+ addMessages,
5
+ _
6
+ } from 'svelte-i18n';
7
+
8
+ function setupI18n({ withLocale: _locale, translations }) {
9
+ locale.subscribe((data) => {
10
+ if (data == null) {
11
+ dictionary.set(translations);
12
+ locale.set(_locale);
13
+ }
14
+ }); // maybe we will need this to make sure that the i18n is set up only once
15
+ /*dictionary.set(translations);
16
+ locale.set(_locale);*/
17
+ }
18
+
19
+ function addNewMessages(lang, dict) {
20
+ addMessages(lang, dict);
21
+ }
22
+
23
+ function setLocale(_locale) {
24
+ locale.set(_locale);
25
+ }
26
+
27
+ export { _, setupI18n, addNewMessages, setLocale };
@@ -0,0 +1,23 @@
1
+ export const CasinoHeaderController = {
2
+ en: {
3
+ headerItem: {
4
+ login: 'Login',
5
+ register: 'Register',
6
+ deposit: 'Deposit',
7
+ }
8
+ },
9
+ tr: {
10
+ headerItem: {
11
+ login: 'Giriş yapmak',
12
+ register: 'Kayıt olmak',
13
+ deposit: 'Depozito',
14
+ }
15
+ },
16
+ ro: {
17
+ headerItem: {
18
+ login: 'Autentificare',
19
+ register: 'Inregistreaza-te',
20
+ deposit: 'Depozit',
21
+ }
22
+ },
23
+ };