PageSourceSearch

https://www.yitgroup.com/scripts/google-maps.d0a63587.js

js yitgroup.com collected 2026-10-01 12:16:35 UTC 28,154 bytes, 1 lines download raw bytes

1(self.webpackChunkyit_uid_framework=self.webpackChunkyit_uid_framework||[]).push([[246],{2564:(e,t,s)=>{"use strict";s.d(t,{GoogleMaps:()=>v,GoogleMapsLazyLoading:()=>k,bindMapServicesAutoload:()=>_,createMapPlaceholder:()=>b});var i=s(2283),o=s.n(i),a=s(7725);const r=new class{constructor(){return this.sources=[],this}add(e){const t=this.find(e);let s=0;return t?t.promise:(s=this.sources.push({url:e,promise:new Promise((t,s)=>this.load(e,t,s))}),this.sources[s-1].promise)}find(e){let t=null;return this.sources.map(s=>{s.url===e&&(t=s)}),t}load(e,t,s){let i;return e?document.querySelectorAll(`script[src*="${e}"]`).length?t():(i=document.createElement("script"),i.type="text/javascript",i.src=e,i.addEventListener("error",e=>{s(Error(`The script '${e.target.src}' is not accessible.`))}),i.addEventListener("load",()=>{t()}),void document.getElementsByTagName("head")[0].appendChild(i)):s(Error("The source argument must be a String."))}};var n=s(6146),l=s.n(n),c=s(1669),d=s.n(c),h=s(8221),p=s.n(h),m=s(1121);class g extends a.A{constructor(e,t,s){if(super(),!window.google.maps.places)return!1;this.element=e,this.gm=window.google.maps,this.map=t,this.options=s,this.markers={},this.places={},this.placesCenter=this.map.getCenter(),this.initialize()}initialize(){this.infoWindow=new this.gm.InfoWindow({maxWidth:280});const e=this.element.querySelectorAll("a,input[type=checkbox]");Array.prototype.map.call(e,e=>{const t=e.getAttribute("data-category");t&&e.addEventListener("INPUT"==e.nodeName?"change":"click",s=>{s.preventDefault(),this.toggleClass(e,"selected"),this.showCategory(t)})})}showCategory(e){if(this.markers[e])return void this.togglePlacesMarkers(e);this.markers[e]=[];const t=[],s=new this.gm.places.PlacesService(this.map);this.options.categories[e].map((i,o)=>{t[o]={location:this.placesCenter,radius:1e3,type:i},s.nearbySearch(t[o],(s,a,r)=>{a==this.gm.places.PlacesServiceStatus.OK&&(this.places[t[o][i]]=s,s.map(t=>this.createPlaceMarker(t,e)))})})}togglePlacesMarkers(e){if(this.markers[e].length){const t=this.element.querySelector(`[data-category="${e}"]`).classList.contains("selected");this.markers[e].map(e=>e.setVisible(t))}}createPlaceMarker(e,t){const s=`${document.querySelector("html").classList.contains("project-category-select")?"/assets/images/map-icons/category-select/":"/assets/images/map-icons/"}${this.categoriesToIcon(e.types,t)}.png`,i=new this.gm.Marker({map:this.map,position:e.geometry.location,icon:{url:s,scaledSize:new this.gm.Size(50,50)}});this.markers[t].push(i),this.gm.event.addListener(i,"click",t=>{this.infoWindow.setContent(`<strong>${e.name}</strong><p>${e.vicinity}</p>`),this.infoWindow.open(this.map,i)})}categoriesToIcon(e,t){let s;const i={school:"school",university:"school",hospital:"hospital",doctor:"hospital",dentist:"health",physiotherapist:"health",department_store:"shopping",convenience_store:"shopping",shopping_mall:"shopping",grocery_or_supermarket:"shopping",restaurant:"restaurant",meal_takeaway:"restaurant",cafe:"cafe",bar:"bar",taxi_stand:"car_service",train_station:"train_station",bus_station:"bus",subway_station:"train_station",museum:"museum",movie_theater:"movie_theater",library:"library",gym:"gym",spa:"beauty_salon",car_repair:"car_service",car_wash:"car_wash",gas_station:"gas_station",beauty_salon:"beauty_salon",park:"park",parking:"parking"};if(e[0]&&i[e[0]])return i[e[0]];if(e[1]&&i[e[1]])return i[e[1]];switch(t){case"education":s="school";break;case"shopping":s="shopping";break;case"health":s="hospital";break;case"places_to_eat":s="restaurant";break;case"transportation":s="bus";break;case"culture":s="museum";break;case"sport_relax":s="gym";break;case"car_services":s="car_service";break;case"other_services":s="other"}return s}}const u={API:"//maps.googleapis.com/maps/api/js",APIKey:"AIzaSyANra5vafwcq3txV1TPfVGhQTUY8SC0lRc",version:"quarterly",clientId:"gme-yitgroupit",libraries:"places",map:{center:{lat:0,lng:0},zoom:14,mapTypeControl:!1,draggable:!0,minZoom:3,maxZoom:19,gestureHandling:"cooperative",fullscreenControlOptions:{position:3}},customStyles:[{featureType:"all",elementType:"geometry",stylers:[{color:"#e8e8e8"}]},{featureType:"all",elementType:"labels.text.fill",stylers:[{color:"#757575"}]},{featureType:"all",elementType:"labels.text.stroke",stylers:[{color:"#ffffff"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#c9c9c9"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#9e9e9e"}]},{featureType:"landscape",elementType:"geometry",stylers:[{color:"#f5f5f5"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#ffffff"}]},{featureType:"road",elementType:"geometry.stroke",stylers:[{color:"#d6d6d6"}]},{featureType:"road.highway",elementType:"geometry",stylers:[{color:"#dadada"}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#eeeeee"}]},{featureType:"poi.park",elementType:"geometry",stylers:[{color:"#d4d4d4"}]},{featureType:"transit",elementType:"geometry",stylers:[{color:"#e0e0e0"}]}],pin:!1,loadMapText:"Show map",button:{text:"Open map and show services",target:!1},icons:{default:"/assets/images/pin_v2.png",active:"/assets/images/pin-on_v2.png",visited:"/assets/images/pin-visited_v2.png",secondary:"/assets/images/pin-secondary_v2.png"},categories:{education:["school","university"],shopping:["department_store","convenience_store","shopping_mall","grocery_or_supermarket"],health:["hospital","doctor","dentist"],places_to_eat:["restaurant","cafe","meal_takeaway","bar"],transportation:["taxi_stand","train_station","bus_station","subway_station","parking"],culture:["museum","movie_theater","library"],sport_relax:["gym","spa","park"],car_services:["car_repair","car_wash","gas_station"],other_services:["laundry","bank","hair_care","beauty_salon"]},clusterer:!1,clusterOptions:{styles:[{textColor:"#fff",url:"/assets/images/pin_v2.png",height:57,width:43,textSize:16,fontWeight:"bold",anchorText:[15,0],anchorIcon:[60,25]}],averageCenter:!0,maxZoom:18,calculator:e=>({text:e.length>99?"99+":e.length.toString(),index:1,title:""})}};class y{constructor(e,t,s){this.results=e,this.container=t,this.config={max_per_page:6,page:1},this.no_of_pages=Math.ceil(this.results.length/this.config.max_per_page),this.next=this.container.querySelector(".pagination__next"),this.prev=this.container.querySelector(".pagination__prev"),this.pagination=this.container.querySelector(".pagination__current"),this.content=this.container.querySelector(".pagination__results"),this.onUpdate=s,this.init()}init(){this.next.addEventListener("click",e=>{e.preventDefault(),this.pager("next")}),this.prev.addEventListener("click",e=>{e.preventDefault(),this.pager("prev")}),this.update()}pager(e){switch(e){case"next":this.config.page<this.no_of_pages&&++this.config.page;break;case"prev":this.config.page>1&&--this.config.page}this.update()}buildNav(){return`${this.config.page}/${this.no_of_pages}`}buildResults(){let e,t="";
1const s=(this.config.page-1)*this.config.max_per_page,i=s+this.config.max_per_page;for(e=s;e<i;e++)t+=void 0!==this.results[e]?`<li>${this.results[e]}</li>`:"";return t}update(){this.config.page==this.no_of_pages?this.next.classList.add("disabled"):this.next.classList.remove("disabled"),1==this.config.page?this.prev.classList.add("disabled"):this.prev.classList.remove("disabled"),this.pagination.innerHTML=this.buildNav(),this.content.innerHTML=this.buildResults(),this.onUpdate&&this.onUpdate()}}class f{constructor(e,t,s,i){if(!window.google.maps.places)return!1;this.element=e,this.gm=window.google.maps,this.map=t,this.route=s,this.mapId=i,this.initialize()}initialize(){const e=this.route;this.directionsService=new this.gm.DirectionsService,this.directionsRenderer=new this.gm.DirectionsRenderer({draggable:!1,map:this.map}),this.geocoder=new this.gm.Geocoder;var t=document.querySelector('.googledir[data-id="'+this.mapId+'"]');this.map.controls[this.gm.ControlPosition.TOP_LEFT].push(t),this.map.addListener("click",e=>{this.inputFocused&&this.geocoder.geocode({location:e.latLng},(e,t)=>{"OK"===t&&e[0]&&(this.dirStart.value=e[0].formatted_address,this.dirPlaceId=e[0].place_id,this.calculateAndDisplayRoute())})}),this.gm.event.addListenerOnce(this.map,"tilesloaded",()=>{setTimeout(()=>{if(this.dir=this.element.querySelector(".googledir"),this.dir){t.classList.add("googledir--visible"),this.dirResults=this.dir.querySelector(".googledir__result"),this.dirLink=this.dir.querySelector(".googledir__link"),this.dirStart=this.dir.querySelector(".googledir__start"),this.dirEnd=this.dir.querySelector(".googledir__end"),this.dirEnd.textContent=e.dest.title,this.dirBox=this.dir.querySelector(".googledir__resultbox"),this.dirIcons=this.dir.querySelectorAll(".icobtn"),this.dirLocation=this.dir.querySelector(".googledir__location"),this.dirClear=this.dir.querySelector(".googledir__clear"),this.dirCollapsible=this.dir.querySelector(".googledir__collapsible"),this.autocomplete=new this.gm.places.Autocomplete(this.dirStart),this.autocomplete.setFields(["place_id"]),this.autocomplete.bindTo("bounds",this.map),this.autocomplete.addListener("place_changed",()=>{const e=this.autocomplete.getPlace();e.place_id&&(this.dirPlaceId=e.place_id,this.calculateAndDisplayRoute())}),this.selectFirstOnEnter(this.dirStart),this.dirStart.addEventListener("keyup",e=>{""==this.dirStart.value?(this.dirLocation.classList.remove("hide"),this.dirClear.classList.add("hide")):(this.dirLocation.classList.add("hide"),this.dirClear.classList.remove("hide"))}),this.dirStart.addEventListener("focus",e=>{this.inputFocused=!0,this.map.setOptions({draggableCursor:"url(/assets/images/pin_hand_transparent.png), auto"})}),this.dirStart.addEventListener("blur",e=>{this.map.setOptions({draggableCursor:null}),setTimeout(()=>{this.inputFocused=!1},500)}),this.dirLocation.addEventListener("click",e=>{this.isSearchingLocation||(this.isSearchingLocation=!0,navigator.geolocation.getCurrentPosition(e=>{this.isSearchingLocation=!1;const t=new this.gm.LatLng(e.coords.latitude,e.coords.longitude);this.geocoder.geocode({location:t},(e,t)=>{"OK"===t&&e[0]&&(this.dirStart.value=e[0].formatted_address,this.dirPlaceId=e[0].place_id,this.calculateAndDisplayRoute())})},e=>{this.isSearchingLocation=!1}))}),this.dirClear.addEventListener("click",e=>{this.dirStart.value="",this.directionsRenderer.set("directions",null),this.dirLocation.classList.remove("hide"),this.dirClear.classList.add("hide"),this.dirResults.style.display="none",this.dirLink.style.display="none"});for(let e=0;e<this.dirIcons.length;e++)this.dirIcons[e].addEventListener("click",e=>{for(let t=0;t<this.dirIcons.length;t++)this.dirIcons[t].classList.remove("icobtn--selected"),this.dirIcons[t].setAttribute("aria-checked",!1);e.currentTarget.classList.add("icobtn--selected"),e.currentTarget.setAttribute("aria-checked",!0),this.calculateAndDisplayRoute()})}},1500)})}calculateAndDisplayRoute(){""==this.dirStart.value?(this.dirLocation.classList.remove("hide"),this.dirClear.classList.add("hide")):(this.dirLocation.classList.add("hide"),this.dirClear.classList.remove("hide"));const e=this.route.dest.lat+","+this.route.dest.lng,t=this.dir.querySelector(".icobtn--selected").dataset.value,s=new Map([["WALKING","w"],["TRANSIT","r"],["DRIVING","d"],["BICYCLING","b"]]);""!=this.dirStart.value&&this.dirPlaceId&&this.directionsService.route({origin:this.dirPlaceId?{placeId:this.dirPlaceId}:this.dirStart.value,destination:e,travelMode:t,unitSystem:window.google.maps.UnitSystem.METRIC},(i,o)=>
1{if(this.dirResults.style.display="block",this.dirCollapsible.style.maxHeight="100%","OK"===o){const o=i.routes[0].legs[0];this.dirResults.textContent=o.distance.text+", "+o.duration.text,this.dirLink.href="https://maps.google.com/maps?saddr="+encodeURI(this.dirStart.value)+"&daddr="+e+"&dirflg="+s.get(t),this.directionsRenderer.setDirections(i),this.dirLink.style.display="inline"}else this.dirLink.style.display="none",this.dirResults.textContent=this.route.textNotFound,this.directionsRenderer.set("directions",null)})}selectFirstOnEnter(e){const t=e.addEventListener?e.addEventListener:e.attachEvent;e.addEventListener=function(s,i){if("keydown"==s){const t=i;i=function(s){const i=$(".pac-item-selected").length>0;if(13==s.which&&!i){var o=$.Event("keydown",{keyCode:40,which:40});t.apply(e,[o])}t.apply(e,[s])}}t.apply(e,[s,i])}}}class w extends a.A{constructor(e,t){super(),d()(e).data("mapObject",this),this.element=this.setMapContainer(e),this.options=this.getOptions(e),this.gm=t,this.buttons=[],this.markers=[],this.markersSecondary=[],this.initialMarkers=[],this.isIos=document.querySelector("html").classList.contains("ios"),this.initialMarkers=[].concat(JSON.parse(e.getAttribute("data-map-center")||"[]"),JSON.parse(e.getAttribute("data-map-pins")||"[]")),this.mapId=e.getAttribute("data-id"),this.route=JSON.parse(e.getAttribute("data-route")||"[]"),this.addClass(e,"mapLoaded");let s=this.getElements("map-services-links",e);0==s.length&&(s=this.getElements("map-services-links",d()(e).parents(".map").get(0))),this.initialize(this.initialMarkers,s)}setMapContainer(e){const t=e.querySelectorAll(".map-container");return t.length?t[0]:e}getOptions(e){const t={},s=JSON.parse(e.getAttribute("data-map-center")||"{}"),i=JSON.parse(e.getAttribute("data-map-button")||"{}"),a=e.getAttribute("data-map-custom-iw")||!1,r=e.getAttribute("data-type")||!1,n=e.getAttribute("data-back")||"Back",l=parseInt(e.getAttribute("data-zoom"))||!1;o()(t,u);const c=!!l&&t.map.zoom+l;return o()(t,{pin:s.showPin||!1,button:i||!1,customInfoWindow:a,clusterer:e.hasAttribute("data-clusterer"),type:r,backText:n,forceZoom:c}),o()(t.map,{center:{lat:s.lat?s.lat:0,lng:s.lng?s.lng:0},zoom:c||t.map.zoom}),document.querySelector("html").classList.contains("project-category-select")&&(t.map.styles=u.customStyles,t.icons={default:"/assets/images/map-icons/category-select/pin_v2.png",active:"/assets/images/map-icons/category-select/pin-on_v2.png",visited:"/assets/images/map-icons/category-select/pin-visited_v2.png",secondary:"/assets/images/map-icons/category-select/pin-secondary_v2.png"}),"apartments"==r&&(t.map.maxZoom=t.clusterOptions.maxZoom,t.clusterer=!0),t}initialize(e,t){this.map=new this.gm.Map(this.element,this.options.map),this.infoWindow=new this.gm.InfoWindow;const s=this.route;if(s&&s.dest&&new f(this.element,this.map,s,this.mapId),this.options.clusterer){this.clusterer=new m.A(this.map,[],this.options.clusterOptions);const e=JSON.parse(JSON.stringify(this.options.clusterOptions));e.styles[0].url="/assets/images/pin-secondary_v2.png",this.clustererSecondary=new m.A(this.map,[],e),"apartments"==this.options.type&&(window.google.maps.event.addListener(this.clusterer,"click",e=>{this._onClickClusterer(e)}),window.google.maps.event.addListener(this.clustererSecondary,"click",e=>{this._onClickClusterer(e)}))}e.length&&(this.loadMarkers(e),this.options.forceZoom||this.fitBounds(this.markers),this.infoWindow.addListener("closeclick",e=>this.refreshMarkersState())),t.length&&(this.servicePlaces=t.map(e=>new g(e,this.map,this.options))),this.options.customInfoWindow&&this.gm.event.addListener(this.infoWindow,"domready",()=>{this.customInfoWindow()}),this.gm.event.addListener(this.map,"click",()=>{(this.markers.length||this.markersSecondary.length)&&(this.infoWindowTrigger("close"),this.infoWindow.close(),this.refreshMarkersState())})}_onClickClusterer(e){const t=e.getMarkers(),s={};for(let i=0;i<t.length;i++)t[i].projectId&&(s[t[i].projectId]=!0);1!=Object.keys(s).length&&this.map.getZoom()!=this.options.map.maxZoom||(this.infoWindow.setOptions({pixelOffset:new window.google.maps.Size(0,-60)}),this.infoWindow.setContent(this.apartmentsInfoWindow(t)),this.infoWindow.setPosition(e.getCenter()),this.infoWindow.open(this.map),new y(t.map(e=>e.singleItem),this.element.querySelector(".gm-style-iw"),()=>
1{this.element.querySelectorAll("[data-apartmentid]").forEach(e=>{e.addEventListener("click",e=>{e.preventDefault(),this.showApartmentMarker(e.currentTarget.getAttribute("data-apartmentid"))})})}))}toggleScrollwheel(){this.options.map.scrollwheel=!this.options.map.scrollwheel,this.map.setOptions({scrollwheel:this.options.map.scrollwheel})}resizeMap(e){const t=e||this.options.map.center;this.options.forceZoom?this.map.setCenter(t):this.markers?this.fitBounds(this.markers):this.map.setCenter(t),this.buttons.map(e=>e.onResize())}highlightMarker(e,t){if(this.markers.length)for(let s=0;s<this.markers.length;s++){const i=this.markers[s];if("force"==e||i.projectId==e)return this.map.setCenter(i.position),this.options.clusterer?this.map.setZoom(this.options.map.maxZoom):this.map.setZoom(this.options.map.zoom),void("apartments"==this.options.type?setTimeout(()=>{const e=this.clusterer.getClusters(),s=this.map.getCenter();for(let i=0;i<e.length;i++)if(s.equals(e[i].getCenter())&&e[i].getSize()>1)return new this.gm.event.trigger(e[i].clusterIcon_.div_,"click",e[i]),void(t&&setTimeout(()=>{this.showApartmentMarker(t)},200));new this.gm.event.trigger(i,"click")},200):setTimeout(()=>{new this.gm.event.trigger(i,"click")},500))}}showApartmentMarker(e){if(this.markers.length)for(let t=0;t<this.markers.length;t++)if(this.markers[t].apartmentId==e)return void this._createApartmentMarker(this.markers[t]);if(this.markersSecondary.length)for(let t=0;t<this.markersSecondary.length;t++)if(this.markersSecondary[t].apartmentId==e)return void this._createApartmentMarker(this.markersSecondary[t])}_createApartmentMarker(e){const t=this.element.querySelector(".gm-style-iw .force-overflow .force-overflow");if(t){t.firstChild.style.display="none";const s=document.createElement("div");s.className="single-apartment",s.innerHTML=`<div class="white"><a href="#" class="back-list">${this.options.backText}</a></div>${e.infoContent}`,t.insertBefore(s,t.firstChild),t.querySelector(".back-list").addEventListener("click",e=>{e.preventDefault(),t.removeChild(s),t.firstChild.style.display="block"})}}loadMarkers(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.infoWindow.close();const s=window.isMicrosite?{fontFamily:"Fontawesome",text:"",fontSize:"55px",color:"#25414d"}:"",i=window.isMicrosite?" ":t?this.options.icons.secondary:this.options.icons.default,o=t?this.markers.map(e=>e.projectId):[],a=t?this.markersSecondary:this.markers;e.map(e=>{if(e.showPin){const r={lat:parseFloat(e.lat),lng:parseFloat(e.lng)};if(t&&-1!==o.indexOf(e.projectId))return;if(r.lat>90||r.lng>180||r.lat<-90||r.lng<-180)return!1;const n=a.push(new this.gm.Marker({map:this.map,position:r,icon:i,title:e.title,projectId:e.projectId,apartmentId:e.apartmentId,infoContent:e.infoContent,singleItem:e.singleItem,projectInfo:e.projectInfo,label:s,secondary:t})),l=a[n-1],c=document.querySelector("html").classList.contains("project-category-select")&&document.querySelector("span[data-page-type='project']"),d=this.element.closest(".projects-map");!e.infoContent||c&&d||l.addListener("click",t=>{l.visited=!0,this.refreshMarkersState(),window.isMicrosite||l.setIcon(this.options.icons.active),this.infoWindowTrigger("close"),this.infoWindow.close(),"apartments"==this.options.type&&this.infoWindow.setOptions({pixelOffset:new window.google.maps.Size(0,0)}),this.infoWindow.setContent(e.infoContent);const s=void 0!==t&&!this.isIos;this.infoWindow.open({map:this.map,anchor:l,shouldFocus:s}),this.infoWindowTrigger("open")})}}),this.options.clusterer&&a.length&&(t?this.clustererSecondary.addMarkers(a):this.clusterer.addMarkers(a))}fitBounds(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(e.length){const t=new this.gm.LatLngBounds;e.map(e=>t.extend(e.getPosition())),this.map.setCenter(t.getCenter()),this.options.map.center=this.map.getCenter().toJSON(),this.map.fitBounds(t),this.map.panBy(0,-28.5),this.gm.event.addListenerOnce(this.map,"idle",()=>{this.options.forceZoom?this.map.setZoom(this.options.forceZoom):1===e.length?this.map.setZoom(this.options.map.zoom-1):this.map.getZoom()>=17&&this.map.setZoom(16)})}}clearMarkers(){this.options.clusterer&&(this.clustererSecondary.clearMarkers(),this.clusterer.clearMarkers()),[...this.markers,...this.markersSecondary].map(e=>e.setMap(null)),this.markers.length=0,this.markersSecondary.length=0}clearMarkersState(){this.markers.length&&(this.infoWindowTrigger("close"),this.infoWindow.close()),[...this.markers,...this.markersSecondary].map(e=>{e.visited=!1}),this.refreshMarkersState()}refreshMarkersState(){[...this.markers,...this.markersSecondary].map(e=>{window.isMicrosite||(e.visited?e.setIcon(this.options.icons.visited):e.setIcon(e.secondary?this.options.icons.secondary:this.options.icons.default))})}infoWindowTrigger(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(e.length){const t=document.getElementsByClassName("gm-style-iw");t.length&&this.triggerEvent(document,`infoWindow.${e}`,{detail:{infowindow:t[0].innerHTML.trim()}})}}customInfoWindow(){let e;this.infoWindow.setOptions({maxWidth:280});const t=this.element.getElementsByClassName("gm-style-iw");
1if(t.length>1){for(let a=0;a<t.length;a++)if(t[a].querySelector(".project-item")){e=t[a];break}}else e=this.element.getElementsByClassName("gm-style-iw")[0];const s=e.previousElementSibling;s&&(s.classList.add("force-width"),s.querySelector(":nth-child(2)").style.display="none",s.querySelector(":nth-child(4)")&&(s.querySelector(":nth-child(4)").style.display="none")),e.classList.add("gm-product-window"),e.classList.add("force-no-max-height"),e.style.boxShadow="0px 0px 10px 0 rgba(0, 0, 0, 0.25)",e.parentElement.style.pointerEvents="none";const i=[];if([].push.apply(i,e.children),i.map(e=>{e.style.display="block";const t=[];[].push.apply(t,e.children),t.map(e=>e.className+=" force-overflow")}),s){let e=[];e=s.querySelector(":nth-child(1)"),e.parentElement.removeChild(e),e=s.querySelector(":nth-child(2)"),e.parentElement.removeChild(e)}const o=this.element.getElementsByClassName("gm-style-iw-d");if(o[0].classList.add("force-overflow"),o[0].style="overflow: auto;",o[0].offsetHeight>100){this.element.getElementsByClassName("gm-ui-hover-effect")[0].style="border-radius: 50%;z-index:9999;background-color: #ffffff; display: block; border: 1px; margin: 1px; padding: 1px; position: absolute; top: -26px; right: -20px; width: 50px; height: 50px;"}}apartmentsInfoWindow(e){if(e.length&&this.apartmentListTemplate){const t=e[0].projectInfo;return t.count=e.length,this.apartmentListTemplate.render(t).trim()}}setApartmentListTemplate(e){this.apartmentListTemplate=e}reloadInitialMarkers(e){this.options=this.getOptions(e),this.initialMarkers=[].concat(JSON.parse(e.getAttribute("data-map-center")||"[]"),JSON.parse(e.getAttribute("data-map-pins")||"[]")),this.loadMarkers(this.initialMarkers)}toggleServiceCategory(e,t){if(!e||!this.servicePlaces||!this.servicePlaces.length)return!1;const s=this.servicePlaces.find(e=>e.element===t||t&&(t.contains(e.element)||e.element.contains(t)))||this.servicePlaces[0];if(!s)return!1;const i=s.element.querySelector(`[data-category="${e}"]`);return i&&s.toggleClass(i,"selected"),s.showCategory(e),!0}}class v{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.libraries=u.libraries?`&libraries=${u.libraries}`:"";const t=[];return[].push.apply(t,e),new Promise((e,s)=>this.load(e,s,t))}load(e,t,s){if(s.length){let i=[],o=u.APIKey;window.googleAPI&&(o=window.googleAPI);const a=window.googleAPI?`${u.API}?v=${u.version}&key=${o}${this.libraries}&language=${window.pageLang}&callback=Function.prototype`:`${u.API}?v=${u.version}&client=${u.clientId}${this.libraries}&language=${window.pageLang}&callback=Function.prototype`;r.add(a).then(()=>{window.google.maps?(s.map(e=>{i=i.concat(new w(e,window.google.maps))}),e(i)):t(Error("Google Maps script is not loaded."))}).catch(e=>{t(e)})}}}class k{constructor(){if(this.mapLoaded=!1,_(),d()(".googleMap").length)if("IntersectionObserver"in window){const e={rootMargin:"50px 0px",threshold:.01},t=new IntersectionObserver(this.onIntersection.bind(this),e);document.querySelectorAll(".googleMap:not(.observed)").forEach(e=>{e.classList.add("observed"),t.observe(e)})}else this.loadMapWhenVisible(),d()(window).on("scroll.lazymaps",p()(()=>{this.loadMapWhenVisible()},300))}loadMapWhenVisible(){const e=d()(".googleMap:not(.mapLoaded)");0==e.length&&d()(window).off("scroll.lazymaps"),e.each((e,t)=>{!t.mapLoaded&&l()(t)&&(t.mapLoaded=!0,this.handleMapElement(t))})}onIntersection(e,t){e.forEach(e=>{e.isIntersecting&&(t.unobserve(e.target),this.handleMapElement(e.target))})}handleMapElement(e){"auto"===e.getAttribute("data-load-mode")?this.loadInteractiveMap(e):b(e,()=>this.loadInteractiveMap(e))}loadInteractiveMap(e){new v([e]).catch(e=>{})}}function b(e,t){const s=e.querySelector(".map-container")||e;if(s.querySelector(".googleMap__placeholder"))return;"function"==typeof t&&d()(e).data("loadMapCallback",t);const i="embed"===e.getAttribute("data-load-mode"),o=document.createElement("div");o.className="googleMap__placeholder";const a=document.createElement("iframe");if(a.className="googleMap__embed",a.setAttribute("loading","lazy"),a.setAttribute("allowfullscreen",""),a.setAttribute("referrerpolicy","no-referrer-when-downgrade"),a.setAttribute("title","Google Maps"),a.src=function(e){const t=window.googleAPI||u.APIKey,s=JSON.parse(e.getAttribute("data-map-center")||"{}"),i=JSON.parse(e.getAttribute("data-map-pins")||"[]"),o=parseInt(e.getAttribute("data-zoom"),10)||0,a=u.map.zoom+o,r=window.pageLang||"en",n=`${s.lat||i[0]&&i[0].lat||0},${s.lng||i[0]&&i[0].lng||0}`;return document.querySelector("span[data-page-type='area']")||i.length>1?`https://www.google.com/maps/embed/v1/view?key=${t}&center=${encodeURIComponent(n)}&zoom=${a}&language=${r}`:`https://www.google.com/maps/embed/v1/place?key=${t}&q=${encodeURIComponent(n)}&zoom=${a}&language=${r}`}(e),o.appendChild(a),i)return void s.appendChild(o);const r=document.createElement("div");r.className="googleMap__overlay";const n=document.createElement("button");n.type="button",n.className="button-loadMap";const l=JSON.parse(e.getAttribute("data-translations")||"{}");n.textContent=l.showMap||u.loadMapText,r.appendChild(n),o.appendChild(r),s.appendChild(o),n.addEventListener("click",()=>{o.parentNode&&o.parentNode.removeChild(o),"function"==typeof t&&t()})}function _(){_.bound||(_.bound=!0,d()(document).on("click change",".map-services-links [data-category]",function(e){const t=this,s=t.closest(".map-services-links"),i=function(e){const t=e.closest(".googleMap, .projects-map, .map-overlay");if(t)return t;const s=e.closest(".map");if(s)return s.querySelector(".googleMap, .projects-map, .map-overlay");return null}(t);if(!i)return;if("embed"===i.getAttribute("data-load-mode"))return;if(d()(i).data("mapObject"))return;if(s&&d()(s).data("mapAutoloadStarted"))return;e.preventDefault(),e.stopImmediatePropagation(),s&&d()(s).data("mapAutoloadStarted",!0);const o=t.getAttribute("data-category"),a=i.querySelector(".googleMap__placeholder");a&&a.parentNode&&a.parentNode.removeChild(a);const r=d()(i).data("loadMapCallback");("function"==typeof r?Promise.resolve(r()):new v([i])).then(()=>(()=>{const e=d()(i).data("mapObject")||s&&d()(s.closest(".googleMap, .projects-map, .map-overlay")||i).data("mapObject");e&&"function"==typeof e.toggleServiceCategory&&e.toggleServiceCategory(o,s)?"INPUT"===t.nodeName&&("checkbox"===t.type||"radio"===t.type)&&(t.checked=!0):"INPUT"===t.nodeName?("checkbox"===t.type?t.checked=!t.checked:"radio"===t.type&&(t.checked=!0),t.dispatchEvent(new Event("change",{bubbles:!0}))):t.dispatchEvent(new Event("click",{bubbles:!0}))})()).catch(e=>{s&&d()(s).data("mapAutoloadStarted",!1)})}))}},6146:e=>{e.exports=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"function"==typeof jQuery&&e instanceof jQuery&&(e=e[0]);const s=e.getBoundingClientRect();return t?s.top>=0&&s.left>=0&&s.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&s.right<=(window.innerWidth||document.documentElement.clientWidth):s.top<=(window.innerHeight||document.documentElement.clientHeight)&&s.right>=0&&s.bottom>=0&&s.left<=(window.innerWidth||document.documentElement.clientWidth)}}}]);

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.