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