!function(e,t){for(var n in t)e[n]=t[n]}(window,function(e){function t(t){for(var n,r,a=t[0],i=t[1],c=0,l=[];c1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,r=t.settings,o=r.attributes,a=r.name,i=r.prefix,c=t.selector,l=i&&i.length?"".concat(i,"/").concat(a):a,s=".wp-block-".concat(l.replace("/","-")),u=n.querySelectorAll(s),p=!0,f=!1,d=void 0;try{for(var m,v=u[Symbol.iterator]();!(p=(m=v.next()).done);p=!0){var g=m.value;if("true"!==g.getAttribute("data-jetpack-block-initialized")){var y=this.extractAttributesFromContainer(g,o);Object(b.assign)(y,t.props);var k=this.extractChildrenFromContainer(g),j=Object(h.createElement)(e,y,k);Object(h.render)(j,c?g.querySelector(c):g),g.setAttribute("data-jetpack-block-initialized",!0)}}}catch(w){f=!0,d=w}finally{try{p||null==v.return||v.return()}finally{if(f)throw d}}}},{key:"extractAttributesFromContainer",value:function(e,t){var n={};for(var r in t){var o=t[r],a="data-"+Object(b.kebabCase)(r);if(n[r]=e.getAttribute(a),"boolean"===o.type&&(n[r]="false"!==n[r]&&!!n[r]),"array"===o.type||"object"===o.type)try{n[r]=JSON.parse(n[r])}catch(i){n[r]=null}}return n}},{key:"extractChildrenFromContainer",value:function(e){return u()(e.childNodes).map((function(e){for(var t={},n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n'}},{key:"render",value:function(){return null}}]),t}(y.Component));O.defaultProps={point:{},map:null,markerColor:"#000000",mapboxgl:null,onClick:function(){}};var x=O,C=function(e){function t(){var e,n;i()(this,t);for(var r=arguments.length,o=new Array(r),a=0;a-1?window.innerHeight:.8*window.innerHeight,i=Math.min(.75*o,a);r.style.height=i+"px"}n.resize(),e.setBoundsByMarkers()})),g()(m()(e),"updateZoom",(function(){var t=e.props.zoom,n=e.state.map;n.setZoom(t),n.updateZoom(t)})),g()(m()(e),"setBoundsByMarkers",(function(){var t=e.props,n=t.admin,r=t.onSetMapCenter,o=t.onSetZoom,a=t.points,i=t.zoom,c=e.state,l=c.map,s=c.activeMarker,u=c.mapboxgl,p=c.zoomControl,f=c.boundsSetProgrammatically;if(l&&(a.length&&n?l.dragPan.disable():l.dragPan.enable(),a.length&&!s)){var d=new u.LngLatBounds;if(a.forEach((function(e){d.extend([e.coordinates.longitude,e.coordinates.latitude])})),r(d.getCenter()),a.length>1){l.fitBounds(d,{padding:{top:80,bottom:80,left:40,right:40}}),e.setState({boundsSetProgrammatically:!0});try{l.removeControl(p)}catch(m){}}else{if(l.setCenter(d.getCenter()),f){l.setZoom(12),o(12)}else l.setZoom(parseInt(i,10));l.addControl(p),e.setState({boundsSetProgrammatically:!1})}}})),g()(m()(e),"scriptsLoaded",(function(){var t=e.props,n=t.mapCenter,r=t.points;e.setState({loaded:!0}),r.length,e.initMap(n)})),g()(m()(e),"googlePoint2Mapbox",(function(e){return e.hasOwnProperty("lat")&&e.hasOwnProperty("lng")?e:{lat:e.latitude||0,lng:e.longitude||0}})),e.state={map:null,fit_to_bounds:!1,loaded:!1,mapboxgl:null},e.mapRef=Object(y.createRef)(),e.debouncedSizeMap=Object(j.debounce)(e.sizeMap,250),e}return h()(t,e),l()(t,[{key:"render",value:function(){var e=this,t=this.props,n=t.points,r=t.admin,o=t.children,a=t.markerColor,i=this.state,c=i.map,l=i.activeMarker,s=i.mapboxgl,u=this.onMarkerClick,p=this.deleteActiveMarker,f=this.updateActiveMarker,d=Object(j.get)(l,"props.point")||{},m=d.title,b=d.caption,h=y.Children.map(o,(function(e){if("AddPoint"===Object(j.get)(e,"props.tagName"))return e})),v=c&&s&&n.map((function(e,t){return Object(y.createElement)(x,{key:t,point:e,index:t,map:c,mapboxgl:s,markerColor:a,onClick:u})})),g=s&&Object(y.createElement)(_,{activeMarker:l,map:c,mapboxgl:s,unsetActiveMarker:function(){return e.setState({activeMarker:null})}},l&&r&&Object(y.createElement)(y.Fragment,null,Object(y.createElement)(w.TextControl,{label:Object(k.__)("Marker Title","jetpack"),value:m,onChange:function(e){return f({title:e})}}),Object(y.createElement)(w.TextareaControl,{className:"wp-block-jetpack-map__marker-caption",label:Object(k.__)("Marker Caption","jetpack"),value:b,rows:"2",tag:"textarea",onChange:function(e){return f({caption:e})}}),Object(y.createElement)(w.Button,{onClick:p,className:"wp-block-jetpack-map__delete-btn"},Object(y.createElement)(w.Dashicon,{icon:"trash",size:"15"})," ",Object(k.__)("Delete Marker","jetpack"))),l&&!r&&Object(y.createElement)(y.Fragment,null,Object(y.createElement)("h3",null,m),Object(y.createElement)("p",null,b)));return Object(y.createElement)(y.Fragment,null,Object(y.createElement)("div",{className:"wp-block-jetpack-map__gm-container",ref:this.mapRef},v),g,h)}},{key:"componentDidMount",value:function(){this.props.apiKey&&this.loadMapLibraries()}},{key:"componentWillUnmount",value:function(){this.debouncedSizeMap.cancel()}},{key:"componentDidUpdate",value:function(e){var t=this.props,n=t.admin,r=t.apiKey,o=t.children,a=t.points,i=t.mapStyle,c=t.mapDetails,l=t.scrollToZoom,s=t.showFullscreenButton,u=this.state,p=u.map,f=u.fullscreenControl;r&&r.length>0&&r!==e.apiKey&&this.loadMapLibraries(),o!==e.children&&!1!==o&&this.clearCurrentMarker(),a!==e.points&&this.setBoundsByMarkers(),a.length!==e.points.length&&this.clearCurrentMarker(),i===e.mapStyle&&c===e.mapDetails||p.setStyle(this.getMapStyle()),l!==e.scrollToZoom&&(l?p.scrollZoom.enable():p.scrollZoom.disable()),s!==e.showFullscreenButton&&(s?(p.addControl(f),n&&f._fullscreenButton&&(f._fullscreenButton.disabled=!0)):p.removeControl(f))}},{key:"getMapStyle",value:function(){var e=this.props;return function(e,t){return{default:{details:"mapbox://styles/automattic/cjolkhmez0qdd2ro82dwog1in",no_details:"mapbox://styles/automattic/cjolkci3905d82soef4zlmkdo"},black_and_white:{details:"mapbox://styles/automattic/cjolkixvv0ty42spgt2k4j434",no_details:"mapbox://styles/automattic/cjolkgc540tvj2spgzzoq37k4"},satellite:{details:"mapbox://styles/mapbox/satellite-streets-v10",no_details:"mapbox://styles/mapbox/satellite-v9"},terrain:{details:"mapbox://styles/automattic/cjolkf8p405fh2soet2rdt96b",no_details:"mapbox://styles/automattic/cjolke6fz12ys2rpbpvgl12ha"}}[e][t?"details":"no_details"]}(e.mapStyle,e.mapDetails)}},{key:"getMapType",value:function(){switch(this.props.mapStyle){case"satellite":return"HYBRID";case"terrain":return"TERRAIN";case"black_and_white":default:return"ROADMAP"}}},{key:"loadMapLibraries",value:function(){var e=this,t=this.props.apiKey;Promise.all([n.e(23).then(n.t.bind(null,362,7)),n.e(23).then(n.t.bind(null,363,7))]).then((function(n){var r=o()(n,1)[0].default;r.accessToken=t,e.setState({mapboxgl:r},e.scriptsLoaded)}))}},{key:"initMap",value:function(e){var t=this,n=this.state.mapboxgl,r=this.props,o=r.zoom,a=r.onMapLoaded,i=r.onError,c=r.scrollToZoom,l=r.showFullscreenButton,s=r.admin,u=null;try{u=new n.Map({container:this.mapRef.current,style:this.getMapStyle(),center:this.googlePoint2Mapbox(e),zoom:parseInt(o,10),pitchWithRotate:!1,attributionControl:!1,dragRotate:!1})}catch(d){return void i("mapbox_error",d.message)}c||u.scrollZoom.disable();var p=new n.FullscreenControl;u.on("error",(function(e){i("mapbox_error",e.error.message)}));var f=new n.NavigationControl({showCompass:!1,showZoom:!0});u.on("zoomend",(function(){t.props.onSetZoom(u.getZoom())})),u.on("moveend",(function(){var e=t.props,n=e.onSetMapCenter;e.points.length<1&&n(u.getCenter())})),u.getCanvas().addEventListener("click",this.onMapClick),this.setState({map:u,zoomControl:f,fullscreenControl:p},(function(){t.debouncedSizeMap(),u.addControl(f),l&&(u.addControl(p),s&&p._fullscreenButton&&(p._fullscreenButton.disabled=!0)),t.mapRef.current.addEventListener("alignmentChanged",t.debouncedSizeMap),u.resize(),a(),t.setState({loaded:!0}),window.addEventListener("resize",t.debouncedSizeMap)}))}}]),t}(y.Component);M.defaultProps={points:[],mapStyle:"default",zoom:13,onSetZoom:function(){},onSetMapCenter:function(){},onMapLoaded:function(){},onMarkerClick:function(){},onError:function(){},markerColor:"red",apiKey:null,mapCenter:{}};t.a=M},95:function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},96:function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,o=!1,a=void 0;try{for(var i,c=e[Symbol.iterator]();!(r=(i=c.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(l){o=!0,a=l}finally{try{r||null==c.return||c.return()}finally{if(o)throw a}}return n}}},97:function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},98:function(e,t,n){var r=n(66);e.exports=function(e){if(Array.isArray(e))return r(e)}},99:function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}}}));