1app.addModule(function(){var scrollableFilters=function(){if(!document.querySelector('.filter__popular-scrollable')){return} 2head.js('/assets/vendor/flickity/flickity.js',function(){new Flickity('.filter__popular-scrollable',{accessibility:!0,adaptiveHeight:!1,autoPlay:!1,cellAlign:'left',cellSelector:undefined,contain:!0,draggable:'>1',dragThreshold:3,freeScroll:!1,friction:0.2,groupCells:!1,initialIndex:0,lazyLoad:!0,percentPosition:!0,prevNextButtons:!1,pageDots:!1,resize:!0,rightToLeft:!1,setGallerySize:!0,watchCSS:!1,wrapAround:!1})})};scrollableFilters();PubSub.subscribe('SCROLLABLE_FILTERS',scrollableFilters);var clickOnPageHandler=function(event){if(event.target.closest('.filter__popular--selected')){event.preventDefault();PubSub.publish('GET_SELECTED',{link:'http://citymix-web.xlab.by'+event.target.getAttribute('href'),currentFilter:event.target.dataset.filter})}};if(document.querySelector('.filter__popular-wrap')){document.querySelector('.filter__popular-wrap').addEventListener('click',clickOnPageHandler)}});app.addModule(function(){var vm;var data=document.querySelector('.filter__data');var toggleButton=document.querySelector('.search__tune');var dropdown;var ajax;if(!data){return} 3data=JSON.parse(data.innerHTML);vm=new Vue({data:{activeGroupIndex:null,groups:data.groups,resultUrl:data.resultUrl,resultText:data.resultText,issetSelected:!1,loading:!1,show:!1,more:!1,moreText:'ÐÑÑ'},mounted:function(){dropdown=app.tippyDropdown({element:this.$refs.filter__more,theme:'filter-more',trigger:'click',placement:'bottom-end',offset:[15,3],list:[],onSelect:function(item){vm.setGroupActive(parseInt(item.index),!0)}});var root=this.$refs.filter__groups;app.moreObserver({root:root,items:root.querySelectorAll('.filter__group'),onChange:function(hiddenItems){vm.more=!!hiddenItems.length;if(vm.more){var dropdownOptions=[];for(var i=0;i<hiddenItems.length;i++){dropdownOptions.push({index:hiddenItems[i].dataset.index,name:hiddenItems[i].dataset.text})} 4dropdown.set(dropdownOptions)}}});this.setGroupActive(0);window.addEventListener('resize',this.updateCursor.bind(this));this.issetSelected=this.getSelected().length},methods:{change:function(){vm.loading=!0;this.load()},load:app.throttleTimer(function(){if(ajax){ajax.abort()} 5ajax=app.fetch('/filter/getAvailForCity',{meta:{city:data.citySlug,category:data.categorySlug,filters:vm.getSelected()}});ajax.response(function(response){vm.loading=!1;if(!response.error){vm.groups=response.data.groups;vm.resultText=response.data.resultText;vm.resultUrl=response.data.resultUrl} 6vm.issetSelected=vm.getSelected().length})},500),setGroupActive:function(index,moreClicked){this.activeGroupIndex=index;this.moreText=moreClicked?this.groups[index].name:'ÐÑÑ';this.$nextTick(this.updateCursor.bind(this))},updateCursor:function(){var cursor=this.$refs.filter__cursor;var item=this.$refs.filter__more.classList.contains('filter__more--active')?this.$refs.filter__more:this.$refs.filter__group[this.activeGroupIndex];var cursorWidth=item.offsetWidth;try{var cursorOffset=item.offsetLeft-5;cursor.style.width=cursorWidth+'px';cursor.style.left=cursorOffset+'px'}catch(e){return}},reset:function(){var groups=this.groups;for(var i=0;i<groups.length;i++){var options=groups[i].options;for(var j=0;j<options.length;j++){if(options[j].selected){options[j].selected=0}}} 7this.change();if(document.querySelector('[data-url]')){var url=document.querySelector('[data-url]').dataset.url;app.ajax({url:url,data:{meta:{filters:[],page:"1",responseFormat:"json"}}}).response(function(resp){if(resp.data.buttons){document.querySelector('.filter__popular-scrollable').remove();var newButtons=document.createElement('div');newButtons.className='filter__popular-scrollable';newButtons.innerHTML=resp.data.buttons;document.querySelector('.filter__popular-wrap').appendChild(newButtons);PubSub.publish('SCROLLABLE_FILTERS');location.replace(resp.data.url)} 8if(document.querySelector('.companies__wrapper')){document.querySelector('.companies__wrapper').remove();var res=document.createElement('div');res.className='companies__wrapper';res.innerHTML=resp.data.html;document.querySelector('.layout').insertBefore(res,document.querySelector('.footer'));PubSub.publish('SHOW_MAP',{mapContainer:'companies__map',markers:JSON.parse(document.querySelector('.markers').innerHTML)});
8Array.from(document.querySelectorAll('.company')).forEach(function(elem){elem.addEventListener('mouseenter',function(event){PubSub.publish('SHOW_LEAFLET_POPUP',{id:event.target.dataset.id})})})}})} 9this.show=!1;this.issetSelected=!1},getSelected:function(){var selected=[];var groups=this.groups;for(var i=0;i<groups.length;i++){var options=groups[i].options;for(var j=0;j<options.length;j++){if(options[j].selected){selected.push(options[j].id)}}} 10return selected}},el:'#filter__component',template:'#filter__template'});toggleButton.addEventListener('click',function(){vm.show=!vm.show});PubSub.subscribe('GET_FILTERS',function(msg,args){args.f=vm.groups});PubSub.subscribe('GET_SELECTED',function(msg,args){var filters=vm.$options.methods.getSelected.call(vm);filters=filters.filter(function(filter){return filter!==parseInt(args.currentFilter)});app.fetch('/filter/getAvailForCity',{meta:{city:data.citySlug,category:data.categorySlug,filters:filters}}).response(function(response){vm.loading=!1;if(!response.error){vm.$data.groups=response.data.groups;vm.$data.resultText=response.data.resultText;vm.$data.resultUrl=response.data.resultUrl} 11vm.$data.issetSelected=vm.$options.methods.getSelected.call(vm).length;window.location.href=response.data.resultUrl})})})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.