{"version":3,"file":"home.hubhome.min.js","names":["m","$","boundary","latlngbounds","mapIsInitialised","init","IntersectionObserver","entries","isIntersecting","loadMap","threshold","observe","document","querySelector","mapData","getData","mapElement","getElementById","css","width","google","maps","LatLngBounds","boundaryPoints","i","boundary_points","length","newBoundaryPoint","LatLng","push","extend","dropSites","j","drop_sites","newDropPoint","mapOptions","zoom","center","getCenter","mapTypeId","MapTypeId","TERRAIN","zoomControl","mapTypeControl","scaleControl","streetViewControl","rotateControl","fullscreenControl","scrollwheel","map","Map","setOptions","styles","featureType","stylers","visibility","fitBounds","setCenter","setZoom","Polygon","paths","strokeColor","strokeOpacity","strokeWeight","fillColor","fillOpacity","clickable","setMap","k","Marker","position","icon","ooooby","createGoogleMapsMarkerIcon","event","addDomListener","window","mapHeight","trigger","addListener","getZoom","jQuery","ready"],"sources":["home.hubhome.js"],"mappings":"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","ignoreList":[],"sourcesContent":["(function (m, $) {\n\n let boundary, latlngbounds;\n let mapDefaultZoom = 13;\n let mapIsInitialised = false;\n m.init = function () {\n let observer = new IntersectionObserver(function(entries) {\n if(entries[0].isIntersecting === true && !mapIsInitialised)\n m.loadMap();\n }, { threshold: [0.01] });\n\n observer.observe(document.querySelector(\".ux-map-section\"));\n };\n \n m.loadMap = function() {\n var mapData = m.getData(\"data-deliverymap\");\n var mapElement = document.getElementById(\"delivery-map\");\n $(mapElement).css(\"height\", $(mapElement).width() * 0.5);\n\n latlngbounds = new google.maps.LatLngBounds();\n\n var boundaryPoints = [];\n for (var i = 0; i < mapData.boundary_points.length; i++) {\n var newBoundaryPoint = new google.maps.LatLng(mapData.boundary_points[i][0], mapData.boundary_points[i][1]);\n boundaryPoints.push(newBoundaryPoint);\n latlngbounds.extend(newBoundaryPoint);\n }\n\n var dropSites = [];\n for (var j = 0; j < mapData.drop_sites.length; j++) {\n var newDropPoint = new google.maps.LatLng(mapData.drop_sites[j][0], mapData.drop_sites[j][1]);\n dropSites.push(newDropPoint);\n latlngbounds.extend(newDropPoint);\n }\n\n var styles = [\n {\n \"featureType\": \"landscape.man_made\",\n \"stylers\": [\n { \"visibility\": \"off\" }\n ]\n }, {\n \"featureType\": \"administrative.land_parcel\",\n \"stylers\": [\n { \"visibility\": \"off\" }\n ]\n }, {\n \"featureType\": \"poi.business\",\n \"stylers\": [\n { \"visibility\": \"off\" }\n ]\n }, {\n\n }\n ];\n\n var mapOptions = {\n zoom: mapDefaultZoom,\n center: latlngbounds.getCenter(),\n mapTypeId: google.maps.MapTypeId.TERRAIN,\n zoomControl: true,\n mapTypeControl: false,\n scaleControl: false,\n streetViewControl: false,\n rotateControl: false,\n fullscreenControl: false,\n scrollwheel: false\n };\n\n var map = new google.maps.Map(mapElement, mapOptions);\n map.setOptions({ styles: styles });\n if (boundaryPoints.length > 0 || dropSites.length > 1) {\n map.fitBounds(latlngbounds);\n } else {\n map.setCenter(latlngbounds.getCenter());\n map.setZoom(mapDefaultZoom);\n }\n\n if (boundaryPoints.length > 0) {\n boundary = new google.maps.Polygon({\n paths: boundaryPoints,\n strokeColor: \"#FF0000\",\n strokeOpacity: 0.8,\n strokeWeight: 2,\n fillColor: \"#FF0000\",\n fillOpacity: 0.35,\n clickable: false\n });\n\n boundary.setMap(map);\n }\n\n if (dropSites.length > 0) {\n for (var k = 0; k < mapData.drop_sites.length; k++) {\n new google.maps.Marker({\n position: dropSites[k],\n map: map,\n icon: ooooby.createGoogleMapsMarkerIcon(\"/Content/images/marker-ooooby-dark.png\")\n });\n }\n }\n\n google.maps.event.addDomListener(window, \"resize\", function () {\n var mapHeight = $(mapElement).width() * 0.5;\n if (mapHeight < 260)\n mapHeight = 260;\n $(mapElement).css(\"height\", mapHeight);\n google.maps.event.trigger(map, \"resize\");\n \n if (boundaryPoints.length > 0 || dropSites.length > 1) {\n map.fitBounds(latlngbounds);\n } else {\n map.setCenter(latlngbounds.getCenter());\n map.setZoom(mapDefaultZoom);\n }\n });\n\n google.maps.event.addListener(map, \"zoom_changed\", function () {\n if (map.getZoom() > 16) map.setZoom(16);\n });\n\n mapIsInitialised = true;\n };\n\n}(window.ooooby = window.ooooby || {}, jQuery));\n\n$(document).ready(function() {\n ooooby.init();\n});"]}