var _DEFAULT_PRIORITY=3;var EPriorities;(function(EPriorities){EPriorities[EPriorities["phone"]=0]="phone";EPriorities[EPriorities["anchor"]=1]="anchor";EPriorities[EPriorities["label"]=2]="label";EPriorities[EPriorities["group"]=3]="group";EPriorities[EPriorities["eguide"]=4]="eguide";EPriorities[EPriorities["expert"]=5]="expert";EPriorities[EPriorities["offer"]=6]="offer";EPriorities[EPriorities["offerlist"]=7]="offerlist";EPriorities[EPriorities["language"]=8]="language";EPriorities[EPriorities["currency"]=9]="currency";EPriorities[EPriorities["basket"]=10]="basket";EPriorities[EPriorities["social"]=11]="social";})(EPriorities||(EPriorities={}));var MobileHeader=(function(){function MobileHeader(){var _this=this;this.state=false;this.items=[];this.socials=[];this.existingKeys=[];this.menu=$('#mobile-menu-popup');this.toHideWhenMenuOpens=$('main, footer');$(document).ready(function(){$('.mobile-header-navigation').click(function(){_this.clearList();_this.createItemsList();_this.toHideWhenMenuOpens.css('display','');$('body').css('overflow-y',_this.state===false?'hidden':'');_this.menu.slideToggle(300,function(){if(_this.state===false){_this.toHideWhenMenuOpens.css('display','none');} _this.state=!_this.state;});$('.mobile-header').toggleClass('mobile-header-fixed');$('.mobile-header-navigation .show-menu, .mobile-header-navigation .hide-menu').toggle();});_this.menu.on('click','li.mobile-menu-sub-menu',function(_event){_this.clearList();_this.createItemsList(_this.getExistingItem($(_event.currentTarget).attr('data-mobile-menu-group-id')));});_this.menu.on('click','li.mobile-menu-popup-heading',function(_event){_this.clearList();_this.createItemsList();});_this.menu.on('click','li.mobile-menu-basket',function(){$('body').find('.btn-cart').trigger('click');$('.mobile-header-navigation').trigger('click');});_this.gatherItems();_this.sortItems();_this.createSocials();});} MobileHeader.prototype.addItem=function(_data,_group){if(_group===void 0){_group=null;} var keyUniqueRequired=true;switch(_data.type){case'phone':if(_data.value.split('')[0]!=='+'){console.warn('Phone '+_data.value+' has no dialing code provided');} break;case'anchor':break;case'label':break;case'group':keyUniqueRequired=false;break;case'language':break;case'currency':break;case'eguide':break;case'expert':break;case'offer':break;case'offerlist':break;case'basket':break;case'social':break;default:{console.error('Undefined mobile menu option type: '+_data.type);return;}} if(_data.value!==''&&(this.existingKeys.indexOf(_data.value)===-1||false===keyUniqueRequired)){this.existingKeys.push(_data.value);if(_group){_group.items.push(_data);} else if(_data.type==='social'){this.socials.push(_data);} else{this.items.push(_data);}}};MobileHeader.prototype.gatherItems=function(_menuSection,_context){var _this=this;if(_menuSection===void 0){_menuSection=null;} if(_context===void 0){_context=null;} var items=_context?_context.find('.mobile-menu-item'):$('header :not(.mobile-menu-item[data-mobile-menu-item-type=group]) .mobile-menu-item');items.each(function(_,_elem){var $elem=$(_elem);var type=$elem.attr('data-mobile-menu-item-type');var text=$elem.text().trim();var value=text;var icon='fa-circle';var _outOfFlowMenuSection=null;if($elem.is('a')){value=_elem.getAttribute("href");} if($elem.find('a').length!==0){value=$elem.find('a').attr("href");} if($elem.attr('data-mobile-menu-item-value')!==void 0){value=$elem.attr('data-mobile-menu-item-value');} if($elem.attr('data-mobile-menu-item-icon')){icon=$elem.attr('data-mobile-menu-item-icon');} if($elem.attr('data-mobile-menu-item-text')){text=$elem.attr('data-mobile-menu-item-text');} var content={type:type,text:text,value:value,icon:icon,priority:_DEFAULT_PRIORITY};if(type==='offerlist'){_outOfFlowMenuSection=_this.getExistingItem('offerlist');if(!_outOfFlowMenuSection){_outOfFlowMenuSection={type:'offerlist',text:translations.mobileMenuOfferList,value:'offerlist',icon:icon,items:[],priority:EPriorities.offerlist,};_this.addItem(_outOfFlowMenuSection);} content.type='anchor';} else if(type==='offer'){_outOfFlowMenuSection=_this.getExistingItem('offer');if(!_outOfFlowMenuSection){_outOfFlowMenuSection={type:'offer',text:translations.mobileMenuOffer,value:'offer',icon:icon,items:[],priority:EPriorities.offer,};_this.addItem(_outOfFlowMenuSection);} content.type='anchor';} else if(type==='eguide'){_outOfFlowMenuSection=_this.getExistingItem('eguide');if(!_outOfFlowMenuSection){_outOfFlowMenuSection={type:'eguide',text:'eguide',value:'eguide',icon:icon,items:[],priority:EPriorities.eguide,};_this.addItem(_outOfFlowMenuSection);} content.type='anchor';} else if(type==='expert'){_outOfFlowMenuSection=_this.getExistingItem('expert');if(!_outOfFlowMenuSection){_outOfFlowMenuSection={type:'expert',text:'expert',value:'expert',icon:icon,items:[],priority:EPriorities.expert,};_this.addItem(_outOfFlowMenuSection);} content.type='anchor';} else if(type==='group'){var existingGroup=_this.getExistingItem(value);if(existingGroup){content=existingGroup;} else{content.items=[];} _this.gatherItems(content,$elem);if(content.items.length===0){return;}} else if(type==='language'){content.items=[];$elem.find('.lang-in-hamburger option').each(function(_,_option){var $option=$(_option);content.items.push({type:'anchor',text:$option.text().trim(),value:$option.val(),icon:'fa-circle',priority:EPriorities.language,});});} else if(type==='currency'){content.items=[];$elem.parent().find('.curr-in-hamburger option').each(function(_,_option){var $option=$(_option);content.items.push({type:'anchor',text:$option.text().trim(),value:$option.val(),icon:'fa-circle',priority:EPriorities.currency,});});} content.priority=EPriorities[content.type];_this.addItem(content,_outOfFlowMenuSection||_menuSection);});};MobileHeader.prototype.getExistingItem=function(_searchedValue){if(this.existingKeys.indexOf(_searchedValue)!==-1){for(var _i=0,_c=this.items;_i<_c.length;_i++){var item=_c[_i];if(item.value===_searchedValue){return item;} if(item.type==='group'){for(var _d=0,_e=item.items;_d<_e.length;_d++){var item2=_e[_d];if(item2.value===_searchedValue){return item2;}}}}} return null;};MobileHeader.prototype.createItemsList=function(_group){if(_group===void 0){_group=null;} var items=_group===null?this.items:_group.items;if(items.length===0){return;} if(_group!==null){this.appendItemToMenu({type:'heading',text:_group.text,value:_group.value,icon:_group.icon});} for(var _i=0,items_1=items;_i');switch(_item.type){case'phone':case'anchor':li.append($('',{href:_item.value}).append($('',{class:'fa '+_item.icon}),$('',{text:_item.text})));break;case'group':case'eguide':case'offer':case'offerlist':case'expert':case'language':case'currency':var minItemsToMakeGroup=_item.type==='language'||_item.type==='currency'?1:0;li.append($('',{class:'fa '+_item.icon}));if(_item.items&&_item.items.length>minItemsToMakeGroup){li.addClass('mobile-menu-sub-menu').attr('data-mobile-menu-group-id',_item.value);li.append($('',{text:_item.text})).append($('',{class:'fa fa-chevron-down'}));} else{li.append($('',{text:_item.text}));} break;case'heading':li.append($('',{class:'fa fa-solid '+_item.icon}));li.addClass('mobile-menu-popup-heading');li.append($('',{text:_item.text})).append($('',{class:'fa fa-chevron-left'}));break;case'basket':li.addClass('mobile-menu-basket');li.append($('',{class:'fa '+_item.icon}));li.append($('',{text:_item.text+(': '+(localStorage.getItem('EasyCart')?JSON.parse(localStorage.getItem('EasyCart')).length:'0'))}));break;default:{li.append($('',{class:'fa '+_item.icon}));li.append($('',{text:_item.text}));}} this.menu.find('ul').append(li);};MobileHeader.prototype.appendSocialToMenu=function(_item){var div=$('
',{class:'menu-tab'});div.append($('',{href:_item.value,text:_item.text}).append($('',{class:'fa-2x fa '+_item.icon})));$('.mobile-popup-socials').append(div);};MobileHeader.prototype.sortItems=function(_items){if(_items===void 0){_items=null;} if(null===_items){_items=this.items;} _items.sort(this.compareItems.bind(this));};MobileHeader.prototype.compareItems=function(_a,_b){return _a.priority-_b.priority;};return MobileHeader;}());var mobileHeader=new MobileHeader();