import{openBlock as o,createElementBlock as l,Fragment as _,createElementVNode as n,normalizeClass as u,toDisplayString as p,createCommentVNode as f,withDirectives as g,vModelText as w,vModelCheckbox as v,renderList as y,createTextVNode as b,vShow as I}from "/js/vue.esm-browser.js";(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))h(t);new MutationObserver(t=>{for(const r of t)if(r.type==="childList")for(const s of r.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&h(s)}).observe(document,{childList:!0,subtree:!0});function a(t){const r={};return t.integrity&&(r.integrity=t.integrity),t.referrerPolicy&&(r.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?r.credentials="include":t.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function h(t){if(t.ep)return;t.ep=!0;const r=a(t);fetch(t.href,r)}})();const C=(e,i)=>{const a=e.__vccOpts||e;for(const[h,t]of i)a[h]=t;return a},k={props:{app:null,version:"big",posLeft:null,posRight:null,posCenter:null},data(){return{search:"",rendering:0,isTourCentre:!1,isBeach:!1,isBig:!1,opened:!1,isLoadCalled:!1,loading:!0,bigAirports:!1,checkedAll:!1,prevGeo:[],itemsIds:[],items:[],itemsNoFit:[],itemsPopular:[],distanceFromAP:{},tourCentreItems:0,beachItems:0,bigItems:0,cityArrivalForm:window.app&&window.app.forms&&window.app.forms.cityArrival?window.app&&window.app.forms&&window.app.forms.cityArrival:this.app.forms&&this.app.forms.cityArrival?this.app.forms.cityArrival:null}},watch:{opened(e,i){this.search=""},isInitialized(e,i){},tourCentreItems(e,i){},beachItems(e,i){},bigItems(e,i){},checkedAll(e,i){},rendering(e,i){},loading(e,i){},itemsToRender(e,i){},isTourCentre(e,i){this.filterItems()},isBeach(e,i){this.filterItems()},isBig(e,i){this.filterItems()},"app.req.geo"(e,i){this.filterItems()},"app.req.avct"(e,i){this.filterItems()},"app.req.ctav"(e,i){this.filterItems()},"app.isGeoLoaded"(e,i){e&&(this.loading=!1,this.filterItems())},"app.getReqGeoRegions"(e,i){this.loading||this.filterItems()}},created:function(){let e=this;e.app.req.geo||(e.app.req.geo=[],e.filterItems()),setTimeout(function(){e.isInitialized||(e.isInitialized=!0)},5e3)},computed:{countryId:function(){return this.app.req.co},isEmpty:function(){return this.app.getReqGeoCities?this.app.getReqGeoCities.length<1:!0}},methods:{filterItems(){let e=this,i=e.search.trim().toLocaleLowerCase(),a=ReverseLocale.convertEnToRu(i),h=i.length>0,t=e.app.dictGeo.city;e.tourCentreItems=0,e.beachItems=0,e.bigItems=0;let r=e.app.getReqGeoRegions[0],s=e.app.req.ctav,m=e.app.req.avct;e.itemsIds=[],e.items=[],e.itemsNoFit=[],e.itemsPopular=[],e.cityArrivalForm&&(m&&e.cityArrivalForm.$.data.ctDict[m]&&(e.distanceFromAP=e.cityArrivalForm.$.data.ctDict[m].airport_geos),s&&e.cityArrivalForm.$.data.dict[s]&&(e.distanceFromAP=e.cityArrivalForm.$.data.dict[s].items));for(let c in t)if(t.hasOwnProperty(c)){if(h){if(i.length<5){if(t[c].nameIndex.indexOf(i)!==0&&t[c].nameIndex.indexOf(a)!==0)continue}else if(t[c].nameIndex.indexOf(i)<0&&t[c].nameIndex.indexOf(a)<0)continue}if(!(r>0&&(!e.app.relRegionCityIds[t[c].regionId]||r!==t[c].regionId))){if(s){let d=e.cityArrivalForm?e.cityArrivalForm.$.data.dict[s]:null;if(d&&(!d.items[t[c].id]||d.items[t[c].id]>=150)){e.itemsNoFit.push(t[c]);continue}}if(m&&e.cityArrivalForm&&e.cityArrivalForm.$.data.ctDict[m]){let d=e.cityArrivalForm.$.data.ctDict[m].airport_geos;if(d&&(!d[t[c].id]||d[t[c].id]>=150)){e.itemsNoFit.push(t[c]);continue}}if(t[c].isPopular&&e.itemsPopular.push(t[c]),e.isTourCentre&&!t[c].isTourCentre){e.itemsNoFit.push(t[c]);continue}if(t[c].isTourCentre&&e.tourCentreItems++,e.isBeach&&!t[c].isBeach){e.itemsNoFit.push(t[c]);continue}if(t[c].isBeach&&e.beachItems++,e.isBig&&!t[c].isBig){e.itemsNoFit.push(t[c]);continue}t[c].isBig&&e.bigItems++,e.itemsIds.push(t[c].id),e.items.push(t[c])}}e.tourCentreItems<1&&(e.isTourCentre=!1),e.beachItems<1&&(e.isBeach=!1),e.bigItems<1&&(e.isBig=!1),e.items.sort(function(c,d){return c.is_big&&!d.is_big?-1:!c.is_big&&d.is_big?1:c.name.localeCompare(d.name)}),e.itemsNoFit.sort(function(c,d){return c.is_big&&!d.is_big?-1:!c.is_big&&d.is_big?1:c.name.localeCompare(d.name)}),e.rendering++},searchItemsByText:invDebounce(function(){this.filterItems()},250),checkAllCity(e){let i=this;i.checkedAll?i.app.req.geo=[].concat(i.app.req.geo,i.itemsIds).unique():i.app.req.geo=i.app.req.geo.diffNotIn(i.app.getReqGeoCities).unique()},getLabel(){let e=this;return e.app.getReqGeoCities.length<1?"ВСЕ ВАРИАНТЫ":e.app.getReqGeoCities.length==1&&e.app.dictGeo.city[e.app.getReqGeoCities[0]]?e.app.dictGeo.city[e.app.getReqGeoCities[0]].name:"ВЫБРАНО "+e.app.getReqGeoCities.length},getLabelTi(){let e=this;return e.app.getReqGeoCities.length<1?"ГОРОДА И КУРОРТЫ":e.app.getReqGeoCities.length==1&&e.app.dictGeo.city[e.app.getReqGeoCities[0]]?e.app.dictGeo.city[e.app.getReqGeoCities[0]].name:"ГОРОДА - "+e.app.getReqGeoCities.length},getCountryNameGen(){return window.app&&window.app.forms&&window.app.forms.country?window.app.forms.country.getCountryNameGen():""},filteredRegion(){return window.app&&window.app.forms&&window.app.forms.region?window.app.forms.region.getSelectedGeoId():null},filteredRegionName(){return window.app.forms.region.getSelectedGeoName()},filteredCtav(){let e=this;if(!e.app.req.ctav||!e.cityArrivalForm||!e.cityArrivalForm.$.data.dict[e.app.req.ctav])return null;let i=e.cityArrivalForm.$.data.dict[e.app.req.ctav];return i.airport+" ("+i.airport_id+")"},filteredAvct(){let e=this;return!e.app.req.avct||!e.cityArrivalForm||!e.cityArrivalForm.$.data.ctDict[e.app.req.avct]?null:e.cityArrivalForm.$.data.ctDict[e.app.req.avct].name},open(){let e=this;e.prevGeo=e.app.req.geo,e.isInitialized=!0,e.opened=!0},apply(){this.opened=!1,this.search="",this.filterItems()},cancel(e){let i=this;i.app.req.geo=i.app.req.geo.diffNotIn(i.app.getReqGeoCities),i.checkedAll=!1,e&&(this.opened=!1,this.search="",this.filterItems())}}},q={class:"bth__inp-block"},F={key:0,class:"bth__inp"},A={key:1,class:"bth__inp"},x={class:"lsfw-filter__drop"},R={key:0,class:""},G={key:1,class:""},N={class:"bth__inp-block"},B={key:0,class:"bth__inp"},T={key:1,class:"bth__inp"},L={class:"lsfw-form-control"},P={class:"lsfw-form-control__head lsfw-form-control__head-flex"},O={class:"lsfw-form-control__body lsfw-form-control__countries p0"},z={key:0,class:"lsfw-form-control__tags"},V={class:"lsfw-form-control__filter"},D={class:"lsfw-form-control__search"},E={class:"lsfw-form-control__filter-row no-scrollbar"},S={key:0,class:"lsfw-cbx d-ib"},U=["disabled"],M={key:1,class:"lsfw-cbx d-ib"},K=["disabled"],j={key:2,class:"lsfw-cbx d-ib"},H=["disabled"],J={key:0,class:"lsfw-form-control__ul pb10 pt10 bold"},Q={class:"lsfw-form-control__ul-li"},W={class:"lsfw-cbx lsfw-cbx--green-check"},X={key:1,class:"lsfw-form-control__fill-line"},Y={key:2,class:"lsfw-form-control__fill-line pt5 pb5"},Z={key:0},$={key:1},ee={class:"lsfw-cbx lsfw-cbx--green-check"},te=["id","value"],ie=["for"],se={key:0,class:"pl10 grey666 fz11"},re={key:4,class:"lsfw-form-control__fill-line"},oe={class:"lsfw-cbx lsfw-cbx--red-checked grey"},le=["id","value"],ne=["for"],ce={key:0,class:"pl10 fz11"},ae={key:6,class:"lsfw-form-control__fill-line grey"},fe={class:"lsfw-form-control__footer bg-white white-bg"};function de(e,i,a,h,t,r){return o(),l(_,null,[a.version=="big"?(o(),l("div",{key:0,onClick:i[0]||(i[0]=s=>r.open()),class:"pointer relative"},[n("i",{class:u(["tour-selection-field__icon40 fas fa-city",{active:!r.isEmpty}])},null,2),n("div",q,[i[19]||(i[19]=n("span",{class:"bth__inp-lbl"},"Города и курорты",-1)),t.loading?(o(),l("span",F,"...")):(o(),l("span",A,p(r.getLabel()),1))])])):f("",!0),a.version=="small"?(o(),l("div",{key:1,onClick:i[1]||(i[1]=s=>t.opened=!0),class:"lsfw-filter__drop-wrap"},[n("div",x,[i[20]||(i[20]=n("i",{class:"fas fa-city mr5 hide-767"},null,-1)),t.loading?(o(),l("b",R,"Города и курорты")):(o(),l("b",G,p(r.getLabelTi()),1))])])):f("",!0),a.version=="small-ti"?(o(),l("div",{key:2,onClick:i[2]||(i[2]=s=>r.open()),class:"pointer relative"},[n("i",{class:u(["tour-selection-field__icon40 fas fa-city",{active:!r.isEmpty}])},null,2),n("div",N,[i[21]||(i[21]=n("span",{class:"bth__inp-lbl"},"Города и курорты",-1)),t.loading?(o(),l("span",B,"...")):(o(),l("span",T,p(r.getLabelTi()),1))])])):f("",!0),t.opened||e.isInitialized?g((o(),l("section",{key:3,class:u(["lsfw-form-control-wrap lsfw-form-control-countres",{"lsfw-anim-fade-in":t.opened,"lsfw-form-control-wrap--right":a.posRight,"lsfw-form-control-wrap--left":a.posLeft}])},[n("div",L,[n("div",P,[i[22]||(i[22]=n("div",{class:"lsfw-form-control__ttl"},"выберите город или курорт",-1)),n("i",{onClick:i[3]||(i[3]=s=>r.apply()),class:"lsfw-form-control__close-square fas fa-times-circle"})]),n("div",O,[r.filteredRegion()>0||r.filteredCtav()||r.filteredAvct()?(o(),l("div",z,[r.filteredRegion()>0?(o(),l("div",{key:0,onClick:i[4]||(i[4]=s=>a.app.req.geo=a.app.req.geo.diffNotIn([r.filteredRegion()]).unique()),class:"lsfw-form-control__tag"},p(r.filteredRegionName()),1)):f("",!0),r.filteredCtav()?(o(),l("div",{key:1,onClick:i[5]||(i[5]=s=>a.app.req.ctav=null),class:"lsfw-form-control__tag"},"Аэропорт - "+p(r.filteredCtav()),1)):f("",!0),r.filteredAvct()?(o(),l("div",{key:2,onClick:i[6]||(i[6]=s=>a.app.req.avct=null),class:"lsfw-form-control__tag"},"Город прилёта - "+p(r.filteredAvct()),1)):f("",!0)])):f("",!0),n("div",V,[n("div",D,[t.search.length>0?(o(),l("i",{key:0,onClick:i[7]||(i[7]=s=>{t.search="",r.searchItemsByText()}),class:"pointer lsfw-form-control__search-cross"})):f("",!0),g(n("input",{class:"red uppercase","onUpdate:modelValue":i[8]||(i[8]=s=>t.search=s),onKeyup:i[9]||(i[9]=s=>r.searchItemsByText()),type:"text",placeholder:"Введите название города или курорта"},null,544),[[w,t.search]])]),n("div",E,[t.tourCentreItems>0||t.beachItems>0||t.bigItems>0?(o(),l("div",S,[g(n("input",{"onUpdate:modelValue":i[10]||(i[10]=s=>t.isTourCentre=s),type:"checkbox",id:"citycenter",disabled:t.tourCentreItems<1},null,8,U),[[v,t.isTourCentre]]),n("label",{class:u(["fz14 bold",{grey:t.tourCentreItems<1}]),for:"citycenter"},"туристические города",2)])):f("",!0),t.tourCentreItems>0||t.beachItems>0||t.bigItems>0?(o(),l("div",M,[g(n("input",{"onUpdate:modelValue":i[11]||(i[11]=s=>t.isBeach=s),type:"checkbox",id:"resort-beach",disabled:t.beachItems<1},null,8,K),[[v,t.isBeach]]),n("label",{class:u(["fz14 bold",{grey:t.beachItems<1}]),for:"resort-beach"},"пляжные курорты",2)])):f("",!0),t.tourCentreItems>0||t.beachItems>0||t.bigItems>0?(o(),l("div",j,[g(n("input",{"onUpdate:modelValue":i[12]||(i[12]=s=>t.isBig=s),type:"checkbox",id:"resort-mega",disabled:t.bigItems<1},null,8,H),[[v,t.isBig]]),n("label",{class:u(["fz14 bold",{grey:t.bigItems<1}]),for:"resort-mega"},"крупные города",2)])):f("",!0)]),!t.search||!t.search.length?(o(),l("ul",J,[n("li",Q,[n("div",W,[g(n("input",{"onUpdate:modelValue":i[13]||(i[13]=s=>t.checkedAll=s),onChange:i[14]||(i[14]=s=>r.checkAllCity()),type:"checkbox",id:"rgeo-all"},null,544),[[v,t.checkedAll]]),i[23]||(i[23]=n("label",{for:"rgeo-all"},"выбрать все города",-1))])])])):f("",!0)]),t.search&&t.search.length>0?(o(),l("div",X," результаты поиска ")):f("",!0),!t.search||!t.search.length?(o(),l("div",Y,[r.filteredRegion()<1?(o(),l("span",Z,"города "+p(r.getCountryNameGen()),1)):(o(),l("span",$,"города в "+p(r.filteredRegionName()),1))])):f("",!0),t.items.length>0?(o(),l("ul",{key:3,class:u(["lsfw-form-control__ul pt10",{pb10:!t.search}])},[(o(!0),l(_,null,y(t.items,s=>(o(),l("li",{key:s.id,class:"lsfw-form-control__ul-li"},[n("div",ee,[g(n("input",{type:"checkbox",id:"lsfwgeo-ct-"+s.id,value:s.id,"onUpdate:modelValue":i[15]||(i[15]=m=>a.app.req.geo=m)},null,8,te),[[v,a.app.req.geo]]),n("label",{for:"lsfwgeo-ct-"+s.id},[b(p(s.name)+" ",1),t.distanceFromAP[s.id]?(o(),l("span",se,p(parseFloat(t.distanceFromAP[s.id]).toFixed(0))+" км",1)):f("",!0)],8,ie)])]))),128))],2)):f("",!0),(!t.search||!t.search.length)&&t.itemsNoFit.length>0?(o(),l("div",re,"города не соответствующие выбранным фильтрам")):f("",!0),t.itemsNoFit.length>0?(o(),l("ul",{key:5,class:u(["lsfw-form-control__ul pb10",{pt10:!t.search}])},[(o(!0),l(_,null,y(t.itemsNoFit,s=>(o(),l("li",{key:s.id,class:"lsfw-form-control__ul-li"},[n("div",oe,[g(n("input",{type:"checkbox",id:"lsfwgeo-ct-"+s.id,value:s.id,"onUpdate:modelValue":i[16]||(i[16]=m=>a.app.req.geo=m)},null,8,le),[[v,a.app.req.geo]]),n("label",{for:"lsfwgeo-ct-"+s.id},[b(p(s.name)+" ",1),t.distanceFromAP[s.id]?(o(),l("span",ce,p(parseFloat(t.distanceFromAP[s.id]).toFixed(0))+" км",1)):f("",!0)],8,ne)])]))),128))],2)):f("",!0),t.items.length==0&&t.itemsNoFit.length==0?(o(),l("div",ae,"По вашему запросу ничего не найдено")):f("",!0)]),n("div",fe,[n("button",{onClick:i[17]||(i[17]=s=>r.apply()),class:"lsfw-form-control__btn"},"сохранить выбор городов"),a.app.getReqGeoCities.length>0?(o(),l("button",{key:0,onClick:i[18]||(i[18]=s=>r.cancel()),class:"lsfw-form-control__btn lsfw-form-control__btn--grey"},"Сбросить")):f("",!0)])])],2)),[[I,t.opened]]):f("",!0)],64)}const pe=C(k,[["render",de]]);window.lsfw||(window.lsfw={});window.form3Geo=pe;
