@everymatrix/casino-hamburger-menu 0.0.233 → 0.0.237

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-hamburger-menu",
3
- "version": "0.0.233",
3
+ "version": "0.0.237",
4
4
  "main": "dist/casino-hamburger-menu.js",
5
5
  "svelte": "src/index.ts",
6
6
  "scripts": {
@@ -36,5 +36,5 @@
36
36
  "publishConfig": {
37
37
  "access": "public"
38
38
  },
39
- "gitHead": "d7554673f55c9c428a1cf82bdecf5f2da81e373d"
39
+ "gitHead": "2e75c5dd54e711bed0fc8b8282d8aa284725cfcf"
40
40
  }
@@ -10,18 +10,21 @@
10
10
  export let language:String = '';
11
11
  export let menuitemsurl:string = '';
12
12
  export let lang:string = '';
13
+ export let activecategory:string = '';
13
14
 
14
15
  let modalElement:any;
15
16
  // let isLoggedIn:Boolean = false;
16
17
  let mobileView:Boolean = false;
17
18
  let userAgent:String = window.navigator.userAgent;
18
19
  let HamburgerMenuItems:Array<Object> = [];
19
- let activeMenuItemId:string = '';
20
+ let HamburgerMenuData:any;
21
+ let activeMenuItemId:any = '';
20
22
  let activeMenuItemChildren:Array<Object> = [];
21
23
  let modalIsOpen:boolean = false;
22
24
  let menuIsFixed:boolean = false;
23
25
  let show:boolean = false;
24
26
  let duration:Number = 350;
27
+ let isLoading:boolean = true;
25
28
 
26
29
 
27
30
  let languagesArray = [{code: 'EN'}, {code: 'TR'}, {code: 'RO'}];
@@ -63,23 +66,40 @@
63
66
  activeMenuItemChildren = children ? children : [];
64
67
  }
65
68
 
69
+ const setActiveIndex = ():void => {
70
+ let activeMenu:any = HamburgerMenuItems.filter((item:any) => item.path == activecategory);
71
+ if (activeMenu.length > 0) {
72
+ changeMenu(activeMenu[0].id, activeMenu[0].children);
73
+ }
74
+ }
75
+
66
76
  const getHamburgerMenuData = (url:string) => {
67
77
  return new Promise((resolve, reject) => {
68
- fetch(url)
69
- .then((res:any) => { return res.json(); })
70
- .then((data:any) => {
71
- HamburgerMenuItems = data;
72
- // initially, select the first main menu item
73
- if(HamburgerMenuItems.length) {
74
- changeMenu(HamburgerMenuItems[0].id, HamburgerMenuItems[0].children);
75
- }
78
+ if(HamburgerMenuData) {
79
+ resolve(HamburgerMenuData);
80
+ } else {
81
+ fetch(url)
82
+ .then((res: any) => {
83
+ return res.json();
84
+ })
85
+ .then((data: any) => {
86
+ HamburgerMenuItems = data;
87
+ // initially, select the first main menu item
88
+ if (HamburgerMenuItems.length) {
89
+ changeMenu(HamburgerMenuItems[0].id, HamburgerMenuItems[0].children);
90
+ }
76
91
 
77
- resolve(data);
78
- }, (err:any) => {
79
- console.error(err);
80
- reject(err);
81
- });
82
- });
92
+ isLoading = false;
93
+
94
+ HamburgerMenuData = data;
95
+
96
+ resolve(data);
97
+ }, (err: any) => {
98
+ console.error(err);
99
+ reject(err);
100
+ });
101
+ }
102
+ });
83
103
  }
84
104
 
85
105
  const sendLangChange = () => {
@@ -101,6 +121,7 @@
101
121
  });
102
122
 
103
123
  $: lang && initialLoad();
124
+ $: activecategory && !isLoading && setActiveIndex();
104
125
  </script>
105
126
 
106
127
  {#if show === true}