2 lines
172 KiB
JavaScript
2 lines
172 KiB
JavaScript
/*! For license information please see 9658.b9b9e8f1.chunk.js.LICENSE.txt */
|
|
"use strict";(self.webpackChunkmantis_material_react=self.webpackChunkmantis_material_react||[]).push([[9658],{44758:function(e,t,n){n.d(t,{Z:function(){return P}});var o=n(4942),i=n(63366),s=n(87462),r=n(47313),a=n(83061),l=n(21921),u=n(17551),c=n(97423),p=n(81171),d=n(46417),g=(0,p.Z)((0,d.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),h=(0,p.Z)((0,d.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),f=(0,p.Z)((0,d.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox"),m=n(91615),v=n(77342),y=n(17592),b=n(77430),L=n(32298);function k(e){return(0,L.Z)("MuiCheckbox",e)}var C=(0,b.Z)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),w=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],M=(0,y.ZP)(c.Z,{shouldForwardProp:function(e){return(0,y.FO)(e)||"classes"===e},name:"MuiCheckbox",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.indeterminate&&t.indeterminate,"default"!==n.color&&t["color".concat((0,m.Z)(n.color))]]}})((function(e){var t,n=e.theme,i=e.ownerState;return(0,s.Z)({color:(n.vars||n).palette.text.secondary},!i.disableRipple&&{"&:hover":{backgroundColor:n.vars?"rgba(".concat("default"===i.color?n.vars.palette.action.activeChannel:n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,u.Fq)("default"===i.color?n.palette.action.active:n.palette[i.color].main,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==i.color&&(t={},(0,o.Z)(t,"&.".concat(C.checked,", &.").concat(C.indeterminate),{color:(n.vars||n).palette[i.color].main}),(0,o.Z)(t,"&.".concat(C.disabled),{color:(n.vars||n).palette.action.disabled}),t))})),E=(0,d.jsx)(h,{}),x=(0,d.jsx)(g,{}),Z=(0,d.jsx)(f,{}),P=r.forwardRef((function(e,t){var n,o,u=(0,v.Z)({props:e,name:"MuiCheckbox"}),c=u.checkedIcon,p=void 0===c?E:c,g=u.color,h=void 0===g?"primary":g,f=u.icon,y=void 0===f?x:f,b=u.indeterminate,L=void 0!==b&&b,C=u.indeterminateIcon,P=void 0===C?Z:C,S=u.inputProps,O=u.size,D=void 0===O?"medium":O,j=u.className,I=(0,i.Z)(u,w),B=L?P:y,R=L?P:p,z=(0,s.Z)({},u,{color:h,indeterminate:L,size:D}),T=function(e){var t=e.classes,n=e.indeterminate,o=e.color,i={root:["root",n&&"indeterminate","color".concat((0,m.Z)(o))]},r=(0,l.Z)(i,k,t);return(0,s.Z)({},t,r)}(z);return(0,d.jsx)(M,(0,s.Z)({type:"checkbox",inputProps:(0,s.Z)({"data-indeterminate":L},S),icon:r.cloneElement(B,{fontSize:null!=(n=B.props.fontSize)?n:D}),checkedIcon:r.cloneElement(R,{fontSize:null!=(o=R.props.fontSize)?o:D}),ownerState:z,ref:t,className:(0,a.Z)(T.root,j)},I,{classes:T}))}))},85281:function(e,t,n){n.d(t,{Z:function(){return j}});var o=n(30168),i=n(63366),s=n(87462),r=n(47313),a=n(83061),l=n(21921),u=n(30686),c=n(91615),p=n(77342),d=n(17592),g=n(77430),h=n(32298);function f(e){return(0,h.Z)("MuiCircularProgress",e)}(0,g.Z)("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);var m,v,y,b,L,k,C,w,M=n(46417),E=["className","color","disableShrink","size","style","thickness","value","variant"],x=44,Z=(0,u.F4)(L||(L=m||(m=(0,o.Z)(["\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n"])))),P=(0,u.F4)(k||(k=v||(v=(0,o.Z)(["\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n"])))),S=(0,d.ZP)("span",{name:"MuiCircularProgress",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t[n.variant],t["color".concat((0,c.Z)(n.color))]]}})((function(e){var t=e.ownerState,n=e.theme;return(0,s.Z)({display:"inline-block"},"determinate"===t.variant&&{transition:n.transitions.create("transform")},"inherit"!==t.color&&{color:(n.vars||n).palette[t.color].main})}),(function(e){return"indeterminate"===e.ownerState.variant&&(0,u.iv)(C||(C=y||(y=(0,o.Z)(["\n animation: "," 1.4s linear infinite;\n "]))),Z)})),O=(0,d.ZP)("svg",{name:"MuiCircularProgress",slot:"Svg",overridesResolver:function(e,t){return t.svg}})({display:"block"}),D=(0,d.ZP)("circle",{name:"MuiCircularProgress",slot:"Circle",overridesResolver:function(e,t){var n=e.ownerState;return[t.circle,t["circle".concat((0,c.Z)(n.variant))],n.disableShrink&&t.circleDisableShrink]}})((function(e){var t=e.ownerState,n=e.theme;return(0,s.Z)({stroke:"currentColor"},"determinate"===t.variant&&{transition:n.transitions.create("stroke-dashoffset")},"indeterminate"===t.variant&&{strokeDasharray:"80px, 200px",strokeDashoffset:0})}),(function(e){var t=e.ownerState;return"indeterminate"===t.variant&&!t.disableShrink&&(0,u.iv)(w||(w=b||(b=(0,o.Z)(["\n animation: "," 1.4s ease-in-out infinite;\n "]))),P)})),j=r.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiCircularProgress"}),o=n.className,r=n.color,u=void 0===r?"primary":r,d=n.disableShrink,g=void 0!==d&&d,h=n.size,m=void 0===h?40:h,v=n.style,y=n.thickness,b=void 0===y?3.6:y,L=n.value,k=void 0===L?0:L,C=n.variant,w=void 0===C?"indeterminate":C,Z=(0,i.Z)(n,E),P=(0,s.Z)({},n,{color:u,disableShrink:g,size:m,thickness:b,value:k,variant:w}),j=function(e){var t=e.classes,n=e.variant,o=e.color,i=e.disableShrink,s={root:["root",n,"color".concat((0,c.Z)(o))],svg:["svg"],circle:["circle","circle".concat((0,c.Z)(n)),i&&"circleDisableShrink"]};return(0,l.Z)(s,f,t)}(P),I={},B={},R={};if("determinate"===w){var z=2*Math.PI*((x-b)/2);I.strokeDasharray=z.toFixed(3),R["aria-valuenow"]=Math.round(k),I.strokeDashoffset="".concat(((100-k)/100*z).toFixed(3),"px"),B.transform="rotate(-90deg)"}return(0,M.jsx)(S,(0,s.Z)({className:(0,a.Z)(j.root,o),style:(0,s.Z)({width:m,height:m},B,v),ownerState:P,ref:t,role:"progressbar"},R,Z,{children:(0,M.jsx)(O,{className:j.svg,ownerState:P,viewBox:"".concat(22," ").concat(22," ").concat(x," ").concat(x),children:(0,M.jsx)(D,{className:j.circle,style:I,ownerState:P,cx:x,cy:x,r:(x-b)/2,fill:"none",strokeWidth:b})})}))}))},84488:function(e,t,n){n.d(t,{Z:function(){return D}});var o=n(30168),i=n(63366),s=n(87462),r=n(47313),a=n(83061),l=n(30686),u=n(21921);function c(e){return String(e).match(/[\d.\-+]*\s*(.*)/)[1]||""}function p(e){return parseFloat(e)}var d=n(17551),g=n(17592),h=n(77342),f=n(77430),m=n(32298);function v(e){return(0,m.Z)("MuiSkeleton",e)}(0,f.Z)("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);var y,b,L,k,C,w,M,E,x=n(46417),Z=["animation","className","component","height","style","variant","width"],P=(0,l.F4)(C||(C=y||(y=(0,o.Z)(["\n 0% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.4;\n }\n\n 100% {\n opacity: 1;\n }\n"])))),S=(0,l.F4)(w||(w=b||(b=(0,o.Z)(["\n 0% {\n transform: translateX(-100%);\n }\n\n 50% {\n /* +0.5s of delay between each loop */\n transform: translateX(100%);\n }\n\n 100% {\n transform: translateX(100%);\n }\n"])))),O=(0,g.ZP)("span",{name:"MuiSkeleton",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t[n.variant],!1!==n.animation&&t[n.animation],n.hasChildren&&t.withChildren,n.hasChildren&&!n.width&&t.fitContent,n.hasChildren&&!n.height&&t.heightAuto]}})((function(e){var t=e.theme,n=e.ownerState,o=c(t.shape.borderRadius)||"px",i=p(t.shape.borderRadius);return(0,s.Z)({display:"block",backgroundColor:t.vars?t.vars.palette.Skeleton.bg:(0,d.Fq)(t.palette.text.primary,"light"===t.palette.mode?.11:.13),height:"1.2em"},"text"===n.variant&&{marginTop:0,marginBottom:0,height:"auto",transformOrigin:"0 55%",transform:"scale(1, 0.60)",borderRadius:"".concat(i).concat(o,"/").concat(Math.round(i/.6*10)/10).concat(o),"&:empty:before":{content:'"\\00a0"'}},"circular"===n.variant&&{borderRadius:"50%"},"rounded"===n.variant&&{borderRadius:(t.vars||t).shape.borderRadius},n.hasChildren&&{"& > *":{visibility:"hidden"}},n.hasChildren&&!n.width&&{maxWidth:"fit-content"},n.hasChildren&&!n.height&&{height:"auto"})}),(function(e){return"pulse"===e.ownerState.animation&&(0,l.iv)(M||(M=L||(L=(0,o.Z)(["\n animation: "," 1.5s ease-in-out 0.5s infinite;\n "]))),P)}),(function(e){var t=e.ownerState,n=e.theme;return"wave"===t.animation&&(0,l.iv)(E||(E=k||(k=(0,o.Z)(["\n position: relative;\n overflow: hidden;\n\n /* Fix bug in Safari https://bugs.webkit.org/show_bug.cgi?id=68196 */\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n\n &::after {\n animation: "," 1.6s linear 0.5s infinite;\n background: linear-gradient(\n 90deg,\n transparent,\n ",",\n transparent\n );\n content: '';\n position: absolute;\n transform: translateX(-100%); /* Avoid flash during server-side hydration */\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n }\n "]))),S,(n.vars||n).palette.action.hover)})),D=r.forwardRef((function(e,t){var n=(0,h.Z)({props:e,name:"MuiSkeleton"}),o=n.animation,r=void 0===o?"pulse":o,l=n.className,c=n.component,p=void 0===c?"span":c,d=n.height,g=n.style,f=n.variant,m=void 0===f?"text":f,y=n.width,b=(0,i.Z)(n,Z),L=(0,s.Z)({},n,{animation:r,component:p,variant:m,hasChildren:Boolean(b.children)}),k=function(e){var t=e.classes,n=e.variant,o=e.animation,i=e.hasChildren,s=e.width,r=e.height,a={root:["root",n,o,i&&"withChildren",i&&!s&&"fitContent",i&&!r&&"heightAuto"]};return(0,u.Z)(a,v,t)}(L);return(0,x.jsx)(O,(0,s.Z)({as:p,ref:t,className:(0,a.Z)(k.root,l),ownerState:L},b,{style:(0,s.Z)({width:y,height:d},g)}))}))},97423:function(e,t,n){n.d(t,{Z:function(){return k}});var o=n(29439),i=n(63366),s=n(87462),r=n(47313),a=n(83061),l=n(21921),u=n(91615),c=n(17592),p=n(53800),d=n(99008),g=n(38743),h=n(77430),f=n(32298);function m(e){return(0,f.Z)("PrivateSwitchBase",e)}(0,h.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var v=n(46417),y=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],b=(0,c.ZP)(g.Z)((function(e){var t=e.ownerState;return(0,s.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),L=(0,c.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),k=r.forwardRef((function(e,t){var n=e.autoFocus,r=e.checked,c=e.checkedIcon,g=e.className,h=e.defaultChecked,f=e.disabled,k=e.disableFocusRipple,C=void 0!==k&&k,w=e.edge,M=void 0!==w&&w,E=e.icon,x=e.id,Z=e.inputProps,P=e.inputRef,S=e.name,O=e.onBlur,D=e.onChange,j=e.onFocus,I=e.readOnly,B=e.required,R=void 0!==B&&B,z=e.tabIndex,T=e.type,_=e.value,U=(0,i.Z)(e,y),A=(0,p.Z)({controlled:r,default:Boolean(h),name:"SwitchBase",state:"checked"}),V=(0,o.Z)(A,2),N=V[0],W=V[1],H=(0,d.Z)(),F=f;H&&"undefined"===typeof F&&(F=H.disabled);var G="checkbox"===T||"radio"===T,Y=(0,s.Z)({},e,{checked:N,disabled:F,disableFocusRipple:C,edge:M}),q=function(e){var t=e.classes,n=e.checked,o=e.disabled,i=e.edge,s={root:["root",n&&"checked",o&&"disabled",i&&"edge".concat((0,u.Z)(i))],input:["input"]};return(0,l.Z)(s,m,t)}(Y);return(0,v.jsxs)(b,(0,s.Z)({component:"span",className:(0,a.Z)(q.root,g),centerRipple:!0,focusRipple:!C,disabled:F,tabIndex:null,role:void 0,onFocus:function(e){j&&j(e),H&&H.onFocus&&H.onFocus(e)},onBlur:function(e){O&&O(e),H&&H.onBlur&&H.onBlur(e)},ownerState:Y,ref:t},U,{children:[(0,v.jsx)(L,(0,s.Z)({autoFocus:n,checked:r,defaultChecked:h,className:q.input,disabled:F,id:G?x:void 0,name:S,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;W(t),D&&D(e,t)}},readOnly:I,ref:P,required:R,ownerState:Y,tabIndex:z,type:T},"checkbox"===T&&void 0===_?{}:{value:_},Z)),N?c:E]}))}))},37753:function(e,t,n){n.d(t,{Jx:function(){return pe},LM:function(){return G},b6:function(){return O},xT:function(){return sn}});var o,i,s=n(37762),r=n(93433),a=n(74165),l=n(15671),u=n(43144),c=n(97326),p=n(60136),d=n(27277),g=n(29439),h=n(46417),f=n(47313),m=n(1168);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function y(e){var t=function(e,t){if("object"!=v(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!=v(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==v(t)?t:t+""}function b(e,t,n){return(t=y(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var k=L(i?o:(i=1,o=function(e,t,n,o,i,s,r,a){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,o,i,s,r,a],c=0;(l=new Error(t.replace(/%s/g,(function(){return u[c++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}})),C=(0,f.createContext)(null);function w(e,t,n,o){var i,s,r={};return i=e,s=function(e,i){var s=n[i];s!==t[i]&&(r[i]=s,e(o,s))},Object.keys(i).forEach((function(e){return s(i[e],e)})),r}function M(e,t,n){var o,i,s,r=(o=n,i=function(n,o,i){return"function"===typeof e[i]&&n.push(google.maps.event.addListener(t,o,e[i])),n},s=[],Object.keys(o).reduce((function(e,t){return i(e,o[t],t)}),s));return r}function E(e){google.maps.event.removeListener(e)}function x(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e.forEach(E)}function Z(e){var t=e.updaterMap,n=e.eventMap,o=e.prevProps,i=e.nextProps,s=e.instance,r=M(i,s,n);return w(t,o,i,s),r}var P={onDblClick:"dblclick",onDragEnd:"dragend",onDragStart:"dragstart",onMapTypeIdChanged:"maptypeid_changed",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseDown:"mousedown",onMouseUp:"mouseup",onRightClick:"rightclick",onTilesLoaded:"tilesloaded",onBoundsChanged:"bounds_changed",onCenterChanged:"center_changed",onClick:"click",onDrag:"drag",onHeadingChanged:"heading_changed",onIdle:"idle",onProjectionChanged:"projection_changed",onResize:"resize",onTiltChanged:"tilt_changed",onZoomChanged:"zoom_changed"},S={extraMapTypes:function(e,t){t.forEach((function(t,n){e.mapTypes.set(String(n),t)}))},center:function(e,t){e.setCenter(t)},clickableIcons:function(e,t){e.setClickableIcons(t)},heading:function(e,t){e.setHeading(t)},mapTypeId:function(e,t){e.setMapTypeId(t)},options:function(e,t){e.setOptions(t)},streetView:function(e,t){e.setStreetView(t)},tilt:function(e,t){e.setTilt(t)},zoom:function(e,t){e.setZoom(t)}};(0,f.memo)((function(e){var t=e.children,n=e.options,o=e.id,i=e.mapContainerStyle,s=e.mapContainerClassName,r=e.center,a=e.onClick,l=e.onDblClick,u=e.onDrag,c=e.onDragEnd,p=e.onDragStart,d=e.onMouseMove,m=e.onMouseOut,v=e.onMouseOver,y=e.onMouseDown,b=e.onMouseUp,L=e.onRightClick,k=e.onCenterChanged,w=e.onLoad,M=e.onUnmount,E=(0,f.useState)(null),x=(0,g.Z)(E,2),Z=x[0],P=x[1],S=(0,f.useRef)(null),O=(0,f.useState)(null),D=(0,g.Z)(O,2),j=D[0],I=D[1],B=(0,f.useState)(null),R=(0,g.Z)(B,2),z=R[0],T=R[1],_=(0,f.useState)(null),U=(0,g.Z)(_,2),A=U[0],V=U[1],N=(0,f.useState)(null),W=(0,g.Z)(N,2),H=W[0],F=W[1],G=(0,f.useState)(null),Y=(0,g.Z)(G,2),q=Y[0],K=Y[1],X=(0,f.useState)(null),J=(0,g.Z)(X,2),$=J[0],Q=J[1],ee=(0,f.useState)(null),te=(0,g.Z)(ee,2),ne=te[0],oe=te[1],ie=(0,f.useState)(null),se=(0,g.Z)(ie,2),re=se[0],ae=se[1],le=(0,f.useState)(null),ue=(0,g.Z)(le,2),ce=ue[0],pe=ue[1],de=(0,f.useState)(null),ge=(0,g.Z)(de,2),he=ge[0],fe=ge[1],me=(0,f.useState)(null),ve=(0,g.Z)(me,2),ye=ve[0],be=ve[1],Le=(0,f.useState)(null),ke=(0,g.Z)(Le,2),Ce=ke[0],we=ke[1];return(0,f.useEffect)((function(){n&&null!==Z&&Z.setOptions(n)}),[Z,n]),(0,f.useEffect)((function(){null!==Z&&"undefined"!==typeof r&&Z.setCenter(r)}),[Z,r]),(0,f.useEffect)((function(){Z&&l&&(null!==z&&google.maps.event.removeListener(z),T(google.maps.event.addListener(Z,"dblclick",l)))}),[l]),(0,f.useEffect)((function(){Z&&c&&(null!==A&&google.maps.event.removeListener(A),V(google.maps.event.addListener(Z,"dragend",c)))}),[c]),(0,f.useEffect)((function(){Z&&p&&(null!==H&&google.maps.event.removeListener(H),F(google.maps.event.addListener(Z,"dragstart",p)))}),[p]),(0,f.useEffect)((function(){Z&&y&&(null!==q&&google.maps.event.removeListener(q),K(google.maps.event.addListener(Z,"mousedown",y)))}),[y]),(0,f.useEffect)((function(){Z&&d&&(null!==$&&google.maps.event.removeListener($),Q(google.maps.event.addListener(Z,"mousemove",d)))}),[d]),(0,f.useEffect)((function(){Z&&m&&(null!==ne&&google.maps.event.removeListener(ne),oe(google.maps.event.addListener(Z,"mouseout",m)))}),[m]),(0,f.useEffect)((function(){Z&&v&&(null!==re&&google.maps.event.removeListener(re),ae(google.maps.event.addListener(Z,"mouseover",v)))}),[v]),(0,f.useEffect)((function(){Z&&b&&(null!==ce&&google.maps.event.removeListener(ce),pe(google.maps.event.addListener(Z,"mouseup",b)))}),[b]),(0,f.useEffect)((function(){Z&&L&&(null!==he&&google.maps.event.removeListener(he),fe(google.maps.event.addListener(Z,"rightclick",L)))}),[L]),(0,f.useEffect)((function(){Z&&a&&(null!==ye&&google.maps.event.removeListener(ye),be(google.maps.event.addListener(Z,"click",a)))}),[a]),(0,f.useEffect)((function(){Z&&u&&(null!==Ce&&google.maps.event.removeListener(Ce),we(google.maps.event.addListener(Z,"drag",u)))}),[u]),(0,f.useEffect)((function(){Z&&k&&(null!==j&&google.maps.event.removeListener(j),I(google.maps.event.addListener(Z,"center_changed",k)))}),[a]),(0,f.useEffect)((function(){var e=null===S.current?null:new google.maps.Map(S.current,n);return P(e),null!==e&&w&&w(e),function(){null!==e&&M&&M(e)}}),[]),(0,h.jsx)("div",{id:o,ref:S,style:i,className:s,children:(0,h.jsx)(C.Provider,{value:Z,children:null!==Z?t:null})})}));var O=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"state",{map:null}),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"mapRef",null),b((0,c.Z)(e),"getInstance",(function(){return null===e.mapRef?null:new google.maps.Map(e.mapRef,e.props.options)})),b((0,c.Z)(e),"panTo",(function(t){var n=e.getInstance();n&&n.panTo(t)})),b((0,c.Z)(e),"setMapCallback",(function(){null!==e.state.map&&e.props.onLoad&&e.props.onLoad(e.state.map)})),b((0,c.Z)(e),"getRef",(function(t){e.mapRef=t})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=this.getInstance();this.registeredEvents=Z({updaterMap:S,eventMap:P,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{map:e}}),this.setMapCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.map&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:S,eventMap:P,prevProps:e,nextProps:this.props,instance:this.state.map}))}},{key:"componentWillUnmount",value:function(){null!==this.state.map&&(this.props.onUnmount&&this.props.onUnmount(this.state.map),x(this.registeredEvents))}},{key:"render",value:function(){return(0,h.jsx)("div",{id:this.props.id,ref:this.getRef,style:this.props.mapContainerStyle,className:this.props.mapContainerClassName,children:(0,h.jsx)(C.Provider,{value:this.state.map,children:null!==this.state.map?this.props.children:null})})}}]),n}(f.PureComponent);function D(e,t,n,o,i,s,r){try{var a=e[s](r),l=a.value}catch(e){return void n(e)}a.done?t(l):Promise.resolve(l).then(o,i)}function j(e){return function(){var t=this,n=arguments;return new Promise((function(o,i){var s=e.apply(t,n);function r(e){D(s,o,i,r,a,"next",e)}function a(e){D(s,o,i,r,a,"throw",e)}r(void 0)}))}}function I(e){var t=e.googleMapsApiKey,n=e.googleMapsClientId,o=e.version,i=void 0===o?"weekly":o,s=e.language,r=e.region,a=e.libraries,l=e.channel,u=e.mapIds,c=e.authReferrerPolicy,p=e.apiUrl,d=void 0===p?"https://maps.googleapis.com":p,g=[];return k(t&&n||!(t&&n),"You need to specify either googleMapsApiKey or googleMapsClientId for @react-google-maps/api load script to work. You cannot use both at the same time."),t?g.push("key=".concat(t)):n&&g.push("client=".concat(n)),i&&g.push("v=".concat(i)),s&&g.push("language=".concat(s)),r&&g.push("region=".concat(r)),a&&a.length&&g.push("libraries=".concat(a.sort().join(","))),l&&g.push("channel=".concat(l)),u&&u.length&&g.push("map_ids=".concat(u.join(","))),c&&g.push("auth_referrer_policy=".concat(c)),g.push("loading=async"),g.push("callback=initMap"),"".concat(d,"/maps/api/js?").concat(g.join("&"))}var B="undefined"!==typeof document;function R(e){var t=e.url,n=e.id,o=e.nonce;return B?new Promise((function(e,i){var s=document.getElementById(n),r=window;if(s){var a=s.getAttribute("data-state");if(s.src===t&&"error"!==a){if("ready"===a)return e(n);var l=r.initMap,u=s.onerror;return r.initMap=function(){l&&l(),e(n)},void(s.onerror=function(e){u&&u(e),i(e)})}s.remove()}var c=document.createElement("script");c.type="text/javascript",c.src=t,c.id=n,c.async=!0,c.nonce=o||"",c.onerror=function(e){c.setAttribute("data-state","error"),i(e)},r.initMap=function(){c.setAttribute("data-state","ready"),e(n)},document.head.appendChild(c)})).catch((function(e){throw console.error("injectScript error: ",e),e})):Promise.reject(new Error("document is undefined"))}function z(e){var t=e.href;return!(!t||0!==t.indexOf("https://fonts.googleapis.com/css?family=Roboto")&&0!==t.indexOf("https://fonts.googleapis.com/css?family=Google+Sans+Text"))||("style"===e.tagName.toLowerCase()&&e.styleSheet&&e.styleSheet.cssText&&0===e.styleSheet.cssText.replace("\r\n","").indexOf(".gm-style")?(e.styleSheet.cssText="",!0):"style"===e.tagName.toLowerCase()&&e.innerHTML&&0===e.innerHTML.replace("\r\n","").indexOf(".gm-style")?(e.innerHTML="",!0):"style"===e.tagName.toLowerCase()&&!e.styleSheet&&!e.innerHTML)}function T(){var e=document.getElementsByTagName("head")[0];if(e){var t=e.insertBefore.bind(e);e.insertBefore=function(n,o){return z(n)||Reflect.apply(t,e,[n,o]),n};var n=e.appendChild.bind(e);e.appendChild=function(t){return z(t)||Reflect.apply(n,e,[t]),t}}}var _=!1;function U(){return(0,h.jsx)("div",{children:"Loading..."})}var A,V={id:"script-loader",version:"weekly"},N=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"check",null),b((0,c.Z)(e),"state",{loaded:!1}),b((0,c.Z)(e),"cleanupCallback",(function(){delete window.google.maps,e.injectScript()})),b((0,c.Z)(e),"isCleaningUp",j((0,a.Z)().mark((function e(){var t;return(0,a.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=function(e){if(_){if(B)var t=window.setInterval((function(){_||(window.clearInterval(t),e())}),1)}else e()},e.abrupt("return",new Promise(t));case 2:case"end":return e.stop()}}),e)})))),b((0,c.Z)(e),"cleanup",(function(){_=!0;var t=document.getElementById(e.props.id);t&&t.parentNode&&t.parentNode.removeChild(t),Array.prototype.slice.call(document.getElementsByTagName("script")).filter((function(e){return"string"===typeof e.src&&e.src.includes("maps.googleapis")})).forEach((function(e){e.parentNode&&e.parentNode.removeChild(e)})),Array.prototype.slice.call(document.getElementsByTagName("link")).filter((function(e){return"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans"===e.href})).forEach((function(e){e.parentNode&&e.parentNode.removeChild(e)})),Array.prototype.slice.call(document.getElementsByTagName("style")).filter((function(e){return void 0!==e.innerText&&e.innerText.length>0&&e.innerText.includes(".gm-")})).forEach((function(e){e.parentNode&&e.parentNode.removeChild(e)}))})),b((0,c.Z)(e),"injectScript",(function(){e.props.preventGoogleFontsLoading&&T(),k(!!e.props.id,'LoadScript requires "id" prop to be a string: %s',e.props.id),R({id:e.props.id,nonce:e.props.nonce,url:I(e.props)}).then((function(){e.props.onLoad&&e.props.onLoad(),e.setState((function(){return{loaded:!0}}))})).catch((function(t){e.props.onError&&e.props.onError(t),console.error("\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (".concat(e.props.googleMapsApiKey||"-",") or Client ID (").concat(e.props.googleMapsClientId||"-",") to <LoadScript />\n Otherwise it is a Network issue.\n "))}))})),b((0,c.Z)(e),"getRef",(function(t){e.check=t})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){if(B){if(window.google&&window.google.maps&&!_)return void console.error("google api is already presented");this.isCleaningUp().then(this.injectScript).catch((function(e){console.error("Error at injecting script after cleaning up: ",e)}))}}},{key:"componentDidUpdate",value:function(e){this.props.libraries!==e.libraries&&console.warn("Performance warning! LoadScript has been reloaded unintentionally! You should not pass `libraries` prop as new array. Please keep an array of libraries as static class property for Components and PureComponents, or just a const variable outside of component, or somewhere in config files or ENV variables"),B&&e.language!==this.props.language&&(this.cleanup(),this.setState((function(){return{loaded:!1}}),this.cleanupCallback))}},{key:"componentWillUnmount",value:function(){var e=this;if(B){this.cleanup();window.setTimeout((function(){e.check||(delete window.google,_=!1)}),1),this.props.onUnmount&&this.props.onUnmount()}}},{key:"render",value:function(){return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("div",{ref:this.getRef}),this.state.loaded?this.props.children:this.props.loadingElement||(0,h.jsx)(U,{})]})}}]),n}(f.PureComponent);function W(e,t){if(null==e)return{};var n,o,i=function(e,t){if(null==e)return{};var n={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(t.includes(o))continue;n[o]=e[o]}return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)n=s[o],t.includes(n)||{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}b(N,"defaultProps",V);var H=["loadingElement","onLoad","onError","onUnmount","children"],F=(0,h.jsx)(U,{});var G=(0,f.memo)((function(e){var t=e.loadingElement,n=e.onLoad,o=e.onError,i=e.onUnmount,s=e.children,r=function(e){var t=e.id,n=void 0===t?V.id:t,o=e.version,i=void 0===o?V.version:o,s=e.nonce,r=e.googleMapsApiKey,a=e.googleMapsClientId,l=e.language,u=e.region,c=e.libraries,p=e.preventGoogleFontsLoading,d=e.channel,h=e.mapIds,m=e.authReferrerPolicy,v=e.apiUrl,y=void 0===v?"https://maps.googleapis.com":v,b=(0,f.useRef)(!1),L=(0,f.useState)(!1),C=(0,g.Z)(L,2),w=C[0],M=C[1],E=(0,f.useState)(void 0),x=(0,g.Z)(E,2),Z=x[0],P=x[1];(0,f.useEffect)((function(){return b.current=!0,function(){b.current=!1}}),[]),(0,f.useEffect)((function(){B&&p&&T()}),[p]),(0,f.useEffect)((function(){w&&k(!!window.google,"useLoadScript was marked as loaded, but window.google is not present. Something went wrong.")}),[w]);var S=I({version:i,googleMapsApiKey:r,googleMapsClientId:a,language:l,region:u,libraries:c,channel:d,mapIds:h,authReferrerPolicy:m,apiUrl:y});(0,f.useEffect)((function(){function e(){b.current&&(M(!0),A=S)}B&&(window.google&&window.google.maps&&A===S?e():R({id:n,url:S,nonce:s}).then(e).catch((function(e){b.current&&P(e),console.warn("\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (".concat(r||"-",") or Client ID (").concat(a||"-",")\n Otherwise it is a Network issue.\n ")),console.error(e)})))}),[n,S,s]);var O=(0,f.useRef)(void 0);return(0,f.useEffect)((function(){O.current&&c!==O.current&&console.warn("Performance warning! LoadScript has been reloaded unintentionally! You should not pass `libraries` prop as new array. Please keep an array of libraries as static class property for Components and PureComponents, or just a const variable outside of component, or somewhere in config files or ENV variables"),O.current=c}),[c]),{isLoaded:w,loadError:Z,url:S}}(W(e,H)),a=r.isLoaded,l=r.loadError;return(0,f.useEffect)((function(){a&&"function"===typeof n&&n()}),[a,n]),(0,f.useEffect)((function(){l&&"function"===typeof o&&o(l)}),[l,o]),(0,f.useEffect)((function(){return function(){i&&i()}}),[i]),a?s:t||F}));"function"===typeof SuppressedError&&SuppressedError;var Y;!function(e){e[e.INITIALIZED=0]="INITIALIZED",e[e.LOADING=1]="LOADING",e[e.SUCCESS=2]="SUCCESS",e[e.FAILURE=3]="FAILURE"}(Y||(Y={}));function q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function K(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?q(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):q(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var X={},J={options:function(e,t){e.setOptions(t)}};(0,f.memo)((function(e){var t=e.options,n=e.onLoad,o=e.onUnmount,i=(0,f.useContext)(C),s=(0,f.useState)(null),r=(0,g.Z)(s,2),a=r[0],l=r[1];return(0,f.useEffect)((function(){null!==a&&a.setMap(i)}),[i]),(0,f.useEffect)((function(){t&&null!==a&&a.setOptions(t)}),[a,t]),(0,f.useEffect)((function(){var e=new google.maps.TrafficLayer(K(K({},t),{},{map:i}));return l(e),n&&n(e),function(){null!==a&&(o&&o(a),a.setMap(null))}}),[]),null}));var $=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"state",{trafficLayer:null}),b((0,c.Z)(e),"setTrafficLayerCallback",(function(){null!==e.state.trafficLayer&&e.props.onLoad&&e.props.onLoad(e.state.trafficLayer)})),b((0,c.Z)(e),"registeredEvents",[]),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.TrafficLayer(K(K({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:J,eventMap:X,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{trafficLayer:e}}),this.setTrafficLayerCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.trafficLayer&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:J,eventMap:X,prevProps:e,nextProps:this.props,instance:this.state.trafficLayer}))}},{key:"componentWillUnmount",value:function(){null!==this.state.trafficLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.trafficLayer),x(this.registeredEvents),this.state.trafficLayer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b($,"contextType",C);(0,f.memo)((function(e){var t=e.onLoad,n=e.onUnmount,o=(0,f.useContext)(C),i=(0,f.useState)(null),s=(0,g.Z)(i,2),r=s[0],a=s[1];return(0,f.useEffect)((function(){null!==r&&r.setMap(o)}),[o]),(0,f.useEffect)((function(){var e=new google.maps.BicyclingLayer;return a(e),e.setMap(o),t&&t(e),function(){null!==e&&(n&&n(e),e.setMap(null))}}),[]),null}));var Q=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"state",{bicyclingLayer:null}),b((0,c.Z)(e),"setBicyclingLayerCallback",(function(){null!==e.state.bicyclingLayer&&(e.state.bicyclingLayer.setMap(e.context),e.props.onLoad&&e.props.onLoad(e.state.bicyclingLayer))})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.BicyclingLayer;this.setState((function(){return{bicyclingLayer:e}}),this.setBicyclingLayerCallback)}},{key:"componentWillUnmount",value:function(){null!==this.state.bicyclingLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.bicyclingLayer),this.state.bicyclingLayer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b(Q,"contextType",C);(0,f.memo)((function(e){var t=e.onLoad,n=e.onUnmount,o=(0,f.useContext)(C),i=(0,f.useState)(null),s=(0,g.Z)(i,2),r=s[0],a=s[1];return(0,f.useEffect)((function(){null!==r&&r.setMap(o)}),[o]),(0,f.useEffect)((function(){var e=new google.maps.TransitLayer;return a(e),e.setMap(o),t&&t(e),function(){null!==r&&(n&&n(r),r.setMap(null))}}),[]),null}));var ee=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"state",{transitLayer:null}),b((0,c.Z)(e),"setTransitLayerCallback",(function(){null!==e.state.transitLayer&&(e.state.transitLayer.setMap(e.context),e.props.onLoad&&e.props.onLoad(e.state.transitLayer))})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.TransitLayer;this.setState((function(){return{transitLayer:e}}),this.setTransitLayerCallback)}},{key:"componentWillUnmount",value:function(){null!==this.state.transitLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.transitLayer),this.state.transitLayer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?te(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(ee,"contextType",C);var oe={onCircleComplete:"circlecomplete",onMarkerComplete:"markercomplete",onOverlayComplete:"overlaycomplete",onPolygonComplete:"polygoncomplete",onPolylineComplete:"polylinecomplete",onRectangleComplete:"rectanglecomplete"},ie={drawingMode:function(e,t){e.setDrawingMode(t)},options:function(e,t){e.setOptions(t)}};(0,f.memo)((function(e){var t=e.options,n=e.drawingMode,o=e.onCircleComplete,i=e.onMarkerComplete,s=e.onOverlayComplete,r=e.onPolygonComplete,a=e.onPolylineComplete,l=e.onRectangleComplete,u=e.onLoad,c=e.onUnmount,p=(0,f.useContext)(C),d=(0,f.useState)(null),h=(0,g.Z)(d,2),m=h[0],v=h[1],y=(0,f.useState)(null),b=(0,g.Z)(y,2),L=b[0],w=b[1],M=(0,f.useState)(null),E=(0,g.Z)(M,2),x=E[0],Z=E[1],P=(0,f.useState)(null),S=(0,g.Z)(P,2),O=S[0],D=S[1],j=(0,f.useState)(null),I=(0,g.Z)(j,2),B=I[0],R=I[1],z=(0,f.useState)(null),T=(0,g.Z)(z,2),_=T[0],U=T[1],A=(0,f.useState)(null),V=(0,g.Z)(A,2),N=V[0],W=V[1];return(0,f.useEffect)((function(){null!==m&&m.setMap(p)}),[p]),(0,f.useEffect)((function(){t&&null!==m&&m.setOptions(t)}),[m,t]),(0,f.useEffect)((function(){null!==m&&m.setDrawingMode(null!==n&&void 0!==n?n:null)}),[m,n]),(0,f.useEffect)((function(){m&&o&&(null!==L&&google.maps.event.removeListener(L),w(google.maps.event.addListener(m,"circlecomplete",o)))}),[m,o]),(0,f.useEffect)((function(){m&&i&&(null!==x&&google.maps.event.removeListener(x),Z(google.maps.event.addListener(m,"markercomplete",i)))}),[m,i]),(0,f.useEffect)((function(){m&&s&&(null!==O&&google.maps.event.removeListener(O),D(google.maps.event.addListener(m,"overlaycomplete",s)))}),[m,s]),(0,f.useEffect)((function(){m&&r&&(null!==B&&google.maps.event.removeListener(B),R(google.maps.event.addListener(m,"polygoncomplete",r)))}),[m,r]),(0,f.useEffect)((function(){m&&a&&(null!==_&&google.maps.event.removeListener(_),U(google.maps.event.addListener(m,"polylinecomplete",a)))}),[m,a]),(0,f.useEffect)((function(){m&&l&&(null!==N&&google.maps.event.removeListener(N),W(google.maps.event.addListener(m,"rectanglecomplete",l)))}),[m,l]),(0,f.useEffect)((function(){k(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing);var e=new google.maps.drawing.DrawingManager(ne(ne({},t),{},{map:p}));return n&&e.setDrawingMode(n),o&&w(google.maps.event.addListener(e,"circlecomplete",o)),i&&Z(google.maps.event.addListener(e,"markercomplete",i)),s&&D(google.maps.event.addListener(e,"overlaycomplete",s)),r&&R(google.maps.event.addListener(e,"polygoncomplete",r)),a&&U(google.maps.event.addListener(e,"polylinecomplete",a)),l&&W(google.maps.event.addListener(e,"rectanglecomplete",l)),v(e),u&&u(e),function(){null!==m&&(L&&google.maps.event.removeListener(L),x&&google.maps.event.removeListener(x),O&&google.maps.event.removeListener(O),B&&google.maps.event.removeListener(B),_&&google.maps.event.removeListener(_),N&&google.maps.event.removeListener(N),c&&c(m),m.setMap(null))}}),[]),null}));var se=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(e){var o;return(0,l.Z)(this,n),o=t.call(this,e),b((0,c.Z)(o),"registeredEvents",[]),b((0,c.Z)(o),"state",{drawingManager:null}),b((0,c.Z)(o),"setDrawingManagerCallback",(function(){null!==o.state.drawingManager&&o.props.onLoad&&o.props.onLoad(o.state.drawingManager)})),k(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing),o}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.drawing.DrawingManager(ne(ne({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:ie,eventMap:oe,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{drawingManager:e}}),this.setDrawingManagerCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.drawingManager&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:ie,eventMap:oe,prevProps:e,nextProps:this.props,instance:this.state.drawingManager}))}},{key:"componentWillUnmount",value:function(){null!==this.state.drawingManager&&(this.props.onUnmount&&this.props.onUnmount(this.state.drawingManager),x(this.registeredEvents),this.state.drawingManager.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function re(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ae(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?re(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):re(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(se,"contextType",C);var le={onAnimationChanged:"animation_changed",onClick:"click",onClickableChanged:"clickable_changed",onCursorChanged:"cursor_changed",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDraggableChanged:"draggable_changed",onDragStart:"dragstart",onFlatChanged:"flat_changed",onIconChanged:"icon_changed",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onPositionChanged:"position_changed",onRightClick:"rightclick",onShapeChanged:"shape_changed",onTitleChanged:"title_changed",onVisibleChanged:"visible_changed",onZindexChanged:"zindex_changed"},ue={animation:function(e,t){e.setAnimation(t)},clickable:function(e,t){e.setClickable(t)},cursor:function(e,t){e.setCursor(t)},draggable:function(e,t){e.setDraggable(t)},icon:function(e,t){e.setIcon(t)},label:function(e,t){e.setLabel(t)},map:function(e,t){e.setMap(t)},opacity:function(e,t){e.setOpacity(t)},options:function(e,t){e.setOptions(t)},position:function(e,t){e.setPosition(t)},shape:function(e,t){e.setShape(t)},title:function(e,t){e.setTitle(t)},visible:function(e,t){e.setVisible(t)},zIndex:function(e,t){e.setZIndex(t)}},ce={};(0,f.memo)((function(e){var t=e.position,n=e.options,o=e.clusterer,i=e.noClustererRedraw,s=e.children,r=e.draggable,a=e.visible,l=e.animation,u=e.clickable,c=e.cursor,p=e.icon,d=e.label,m=e.opacity,v=e.shape,y=e.title,b=e.zIndex,L=e.onClick,k=e.onDblClick,w=e.onDrag,M=e.onDragEnd,E=e.onDragStart,x=e.onMouseOut,Z=e.onMouseOver,P=e.onMouseUp,S=e.onMouseDown,O=e.onRightClick,D=e.onClickableChanged,j=e.onCursorChanged,I=e.onAnimationChanged,B=e.onDraggableChanged,R=e.onFlatChanged,z=e.onIconChanged,T=e.onPositionChanged,_=e.onShapeChanged,U=e.onTitleChanged,A=e.onVisibleChanged,V=e.onZindexChanged,N=e.onLoad,W=e.onUnmount,H=(0,f.useContext)(C),F=(0,f.useState)(null),G=(0,g.Z)(F,2),Y=G[0],q=G[1],K=(0,f.useState)(null),X=(0,g.Z)(K,2),J=X[0],$=X[1],Q=(0,f.useState)(null),ee=(0,g.Z)(Q,2),te=ee[0],ne=ee[1],oe=(0,f.useState)(null),ie=(0,g.Z)(oe,2),se=ie[0],re=ie[1],le=(0,f.useState)(null),ue=(0,g.Z)(le,2),pe=ue[0],de=ue[1],ge=(0,f.useState)(null),he=(0,g.Z)(ge,2),fe=he[0],me=he[1],ve=(0,f.useState)(null),ye=(0,g.Z)(ve,2),be=ye[0],Le=ye[1],ke=(0,f.useState)(null),Ce=(0,g.Z)(ke,2),we=Ce[0],Me=Ce[1],Ee=(0,f.useState)(null),xe=(0,g.Z)(Ee,2),Ze=xe[0],Pe=xe[1],Se=(0,f.useState)(null),Oe=(0,g.Z)(Se,2),De=Oe[0],je=Oe[1],Ie=(0,f.useState)(null),Be=(0,g.Z)(Ie,2),Re=Be[0],ze=Be[1],Te=(0,f.useState)(null),_e=(0,g.Z)(Te,2),Ue=_e[0],Ae=_e[1],Ve=(0,f.useState)(null),Ne=(0,g.Z)(Ve,2),We=Ne[0],He=Ne[1],Fe=(0,f.useState)(null),Ge=(0,g.Z)(Fe,2),Ye=Ge[0],qe=Ge[1],Ke=(0,f.useState)(null),Xe=(0,g.Z)(Ke,2),Je=Xe[0],$e=Xe[1],Qe=(0,f.useState)(null),et=(0,g.Z)(Qe,2),tt=et[0],nt=et[1],ot=(0,f.useState)(null),it=(0,g.Z)(ot,2),st=it[0],rt=it[1],at=(0,f.useState)(null),lt=(0,g.Z)(at,2),ut=lt[0],ct=lt[1],pt=(0,f.useState)(null),dt=(0,g.Z)(pt,2),gt=dt[0],ht=dt[1],ft=(0,f.useState)(null),mt=(0,g.Z)(ft,2),vt=mt[0],yt=mt[1],bt=(0,f.useState)(null),Lt=(0,g.Z)(bt,2),kt=Lt[0],Ct=Lt[1],wt=(0,f.useState)(null),Mt=(0,g.Z)(wt,2),Et=Mt[0],xt=Mt[1];(0,f.useEffect)((function(){null!==Y&&Y.setMap(H)}),[H]),(0,f.useEffect)((function(){"undefined"!==typeof n&&null!==Y&&Y.setOptions(n)}),[Y,n]),(0,f.useEffect)((function(){"undefined"!==typeof r&&null!==Y&&Y.setDraggable(r)}),[Y,r]),(0,f.useEffect)((function(){t&&null!==Y&&Y.setPosition(t)}),[Y,t]),(0,f.useEffect)((function(){"undefined"!==typeof a&&null!==Y&&Y.setVisible(a)}),[Y,a]),(0,f.useEffect)((function(){null===Y||void 0===Y||Y.setAnimation(l)}),[Y,l]),(0,f.useEffect)((function(){Y&&void 0!==u&&Y.setClickable(u)}),[Y,u]),(0,f.useEffect)((function(){Y&&void 0!==c&&Y.setCursor(c)}),[Y,c]),(0,f.useEffect)((function(){Y&&void 0!==p&&Y.setIcon(p)}),[Y,p]),(0,f.useEffect)((function(){Y&&void 0!==d&&Y.setLabel(d)}),[Y,d]),(0,f.useEffect)((function(){Y&&void 0!==m&&Y.setOpacity(m)}),[Y,m]),(0,f.useEffect)((function(){Y&&void 0!==v&&Y.setShape(v)}),[Y,v]),(0,f.useEffect)((function(){Y&&void 0!==y&&Y.setTitle(y)}),[Y,y]),(0,f.useEffect)((function(){Y&&void 0!==b&&Y.setZIndex(b)}),[Y,b]),(0,f.useEffect)((function(){Y&&k&&(null!==J&&google.maps.event.removeListener(J),$(google.maps.event.addListener(Y,"dblclick",k)))}),[k]),(0,f.useEffect)((function(){Y&&M&&(null!==te&&google.maps.event.removeListener(te),ne(google.maps.event.addListener(Y,"dragend",M)))}),[M]),(0,f.useEffect)((function(){Y&&E&&(null!==se&&google.maps.event.removeListener(se),re(google.maps.event.addListener(Y,"dragstart",E)))}),[E]),(0,f.useEffect)((function(){Y&&S&&(null!==pe&&google.maps.event.removeListener(pe),de(google.maps.event.addListener(Y,"mousedown",S)))}),[S]),(0,f.useEffect)((function(){Y&&x&&(null!==fe&&google.maps.event.removeListener(fe),me(google.maps.event.addListener(Y,"mouseout",x)))}),[x]),(0,f.useEffect)((function(){Y&&Z&&(null!==be&&google.maps.event.removeListener(be),Le(google.maps.event.addListener(Y,"mouseover",Z)))}),[Z]),(0,f.useEffect)((function(){Y&&P&&(null!==we&&google.maps.event.removeListener(we),Me(google.maps.event.addListener(Y,"mouseup",P)))}),[P]),(0,f.useEffect)((function(){Y&&O&&(null!==Ze&&google.maps.event.removeListener(Ze),Pe(google.maps.event.addListener(Y,"rightclick",O)))}),[O]),(0,f.useEffect)((function(){Y&&L&&(null!==De&&google.maps.event.removeListener(De),je(google.maps.event.addListener(Y,"click",L)))}),[L]),(0,f.useEffect)((function(){Y&&w&&(null!==Re&&google.maps.event.removeListener(Re),ze(google.maps.event.addListener(Y,"drag",w)))}),[w]),(0,f.useEffect)((function(){Y&&D&&(null!==Ue&&google.maps.event.removeListener(Ue),Ae(google.maps.event.addListener(Y,"clickable_changed",D)))}),[D]),(0,f.useEffect)((function(){Y&&j&&(null!==We&&google.maps.event.removeListener(We),He(google.maps.event.addListener(Y,"cursor_changed",j)))}),[j]),(0,f.useEffect)((function(){Y&&I&&(null!==Ye&&google.maps.event.removeListener(Ye),qe(google.maps.event.addListener(Y,"animation_changed",I)))}),[I]),(0,f.useEffect)((function(){Y&&B&&(null!==Je&&google.maps.event.removeListener(Je),$e(google.maps.event.addListener(Y,"draggable_changed",B)))}),[B]),(0,f.useEffect)((function(){Y&&R&&(null!==tt&&google.maps.event.removeListener(tt),nt(google.maps.event.addListener(Y,"flat_changed",R)))}),[R]),(0,f.useEffect)((function(){Y&&z&&(null!==st&&google.maps.event.removeListener(st),rt(google.maps.event.addListener(Y,"icon_changed",z)))}),[z]),(0,f.useEffect)((function(){Y&&T&&(null!==ut&&google.maps.event.removeListener(ut),ct(google.maps.event.addListener(Y,"position_changed",T)))}),[T]),(0,f.useEffect)((function(){Y&&_&&(null!==gt&&google.maps.event.removeListener(gt),ht(google.maps.event.addListener(Y,"shape_changed",_)))}),[_]),(0,f.useEffect)((function(){Y&&U&&(null!==vt&&google.maps.event.removeListener(vt),yt(google.maps.event.addListener(Y,"title_changed",U)))}),[U]),(0,f.useEffect)((function(){Y&&A&&(null!==kt&&google.maps.event.removeListener(kt),Ct(google.maps.event.addListener(Y,"visible_changed",A)))}),[A]),(0,f.useEffect)((function(){Y&&V&&(null!==Et&&google.maps.event.removeListener(Et),xt(google.maps.event.addListener(Y,"zindex_changed",V)))}),[V]),(0,f.useEffect)((function(){var e=ae(ae(ae({},n||ce),o?ce:{map:H}),{},{position:t}),s=new google.maps.Marker(e);return o?o.addMarker(s,!!i):s.setMap(H),t&&s.setPosition(t),"undefined"!==typeof a&&s.setVisible(a),"undefined"!==typeof r&&s.setDraggable(r),"undefined"!==typeof u&&s.setClickable(u),"string"===typeof c&&s.setCursor(c),p&&s.setIcon(p),"undefined"!==typeof d&&s.setLabel(d),"undefined"!==typeof m&&s.setOpacity(m),v&&s.setShape(v),"string"===typeof y&&s.setTitle(y),"number"===typeof b&&s.setZIndex(b),k&&$(google.maps.event.addListener(s,"dblclick",k)),M&&ne(google.maps.event.addListener(s,"dragend",M)),E&&re(google.maps.event.addListener(s,"dragstart",E)),S&&de(google.maps.event.addListener(s,"mousedown",S)),x&&me(google.maps.event.addListener(s,"mouseout",x)),Z&&Le(google.maps.event.addListener(s,"mouseover",Z)),P&&Me(google.maps.event.addListener(s,"mouseup",P)),O&&Pe(google.maps.event.addListener(s,"rightclick",O)),L&&je(google.maps.event.addListener(s,"click",L)),w&&ze(google.maps.event.addListener(s,"drag",w)),D&&Ae(google.maps.event.addListener(s,"clickable_changed",D)),j&&He(google.maps.event.addListener(s,"cursor_changed",j)),I&&qe(google.maps.event.addListener(s,"animation_changed",I)),B&&$e(google.maps.event.addListener(s,"draggable_changed",B)),R&&nt(google.maps.event.addListener(s,"flat_changed",R)),z&&rt(google.maps.event.addListener(s,"icon_changed",z)),T&&ct(google.maps.event.addListener(s,"position_changed",T)),_&&ht(google.maps.event.addListener(s,"shape_changed",_)),U&&yt(google.maps.event.addListener(s,"title_changed",U)),A&&Ct(google.maps.event.addListener(s,"visible_changed",A)),V&&xt(google.maps.event.addListener(s,"zindex_changed",V)),q(s),N&&N(s),function(){null!==J&&google.maps.event.removeListener(J),null!==te&&google.maps.event.removeListener(te),null!==se&&google.maps.event.removeListener(se),null!==pe&&google.maps.event.removeListener(pe),null!==fe&&google.maps.event.removeListener(fe),null!==be&&google.maps.event.removeListener(be),null!==we&&google.maps.event.removeListener(we),null!==Ze&&google.maps.event.removeListener(Ze),null!==De&&google.maps.event.removeListener(De),null!==Ue&&google.maps.event.removeListener(Ue),null!==We&&google.maps.event.removeListener(We),null!==Ye&&google.maps.event.removeListener(Ye),null!==Je&&google.maps.event.removeListener(Je),null!==tt&&google.maps.event.removeListener(tt),null!==st&&google.maps.event.removeListener(st),null!==ut&&google.maps.event.removeListener(ut),null!==vt&&google.maps.event.removeListener(vt),null!==kt&&google.maps.event.removeListener(kt),null!==Et&&google.maps.event.removeListener(Et),W&&W(s),o?o.removeMarker(s,!!i):s&&s.setMap(null)}}),[]);var Zt=(0,f.useMemo)((function(){return s?f.Children.map(s,(function(e){if(!(0,f.isValidElement)(e))return e;var t=e;return(0,f.cloneElement)(t,{anchor:Y})})):null}),[s,Y]);return(0,h.jsx)(h.Fragment,{children:Zt})||null}));var pe=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=this;return j((0,a.Z)().mark((function t(){var n;return(0,a.Z)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=ae(ae(ae({},e.props.options||ce),e.props.clusterer?ce:{map:e.context}),{},{position:e.props.position}),e.marker=new google.maps.Marker(n),e.props.clusterer?e.props.clusterer.addMarker(e.marker,!!e.props.noClustererRedraw):e.marker.setMap(e.context),e.registeredEvents=Z({updaterMap:ue,eventMap:le,prevProps:{},nextProps:e.props,instance:e.marker}),e.props.onLoad&&e.props.onLoad(e.marker);case 5:case"end":return t.stop()}}),t)})))()}},{key:"componentDidUpdate",value:function(e){this.marker&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:ue,eventMap:le,prevProps:e,nextProps:this.props,instance:this.marker}))}},{key:"componentWillUnmount",value:function(){this.marker&&(this.props.onUnmount&&this.props.onUnmount(this.marker),x(this.registeredEvents),this.props.clusterer?this.props.clusterer.removeMarker(this.marker,!!this.props.noClustererRedraw):this.marker&&this.marker.setMap(null))}},{key:"render",value:function(){var e=this;return(this.props.children?f.Children.map(this.props.children,(function(t){if(!(0,f.isValidElement)(t))return t;var n=t;return(0,f.cloneElement)(n,{anchor:e.marker})})):null)||null}}]),n}(f.PureComponent);b(pe,"contextType",C);var de=function(){function e(t,n){t.getClusterer().extend(e,google.maps.OverlayView),this.cluster=t,this.clusterClassName=this.cluster.getClusterer().getClusterClass(),this.className=this.clusterClassName,this.styles=n,this.center=void 0,this.div=null,this.sums=null,this.visible=!1,this.boundsChangedListener=null,this.url="",this.height=0,this.width=0,this.anchorText=[0,0],this.anchorIcon=[0,0],this.textColor="black",this.textSize=11,this.textDecoration="none",this.fontWeight="bold",this.fontStyle="normal",this.fontFamily="Arial,sans-serif",this.backgroundPosition="0 0",this.cMouseDownInCluster=null,this.cDraggingMapByCluster=null,this.timeOut=null,this.setMap(t.getMap()),this.onBoundsChanged=this.onBoundsChanged.bind(this),this.onMouseDown=this.onMouseDown.bind(this),this.onClick=this.onClick.bind(this),this.onMouseOver=this.onMouseOver.bind(this),this.onMouseOut=this.onMouseOut.bind(this),this.onAdd=this.onAdd.bind(this),this.onRemove=this.onRemove.bind(this),this.draw=this.draw.bind(this),this.hide=this.hide.bind(this),this.show=this.show.bind(this),this.useStyle=this.useStyle.bind(this),this.setCenter=this.setCenter.bind(this),this.getPosFromLatLng=this.getPosFromLatLng.bind(this)}return e.prototype.onBoundsChanged=function(){this.cDraggingMapByCluster=this.cMouseDownInCluster},e.prototype.onMouseDown=function(){this.cMouseDownInCluster=!0,this.cDraggingMapByCluster=!1},e.prototype.onClick=function(e){if(this.cMouseDownInCluster=!1,!this.cDraggingMapByCluster){var t=this.cluster.getClusterer();if(google.maps.event.trigger(t,"click",this.cluster),google.maps.event.trigger(t,"clusterclick",this.cluster),t.getZoomOnClick()){var n=t.getMaxZoom(),o=this.cluster.getBounds(),i=t.getMap();null!==i&&"fitBounds"in i&&i.fitBounds(o),this.timeOut=window.setTimeout((function(){var e=t.getMap();if(null!==e){"fitBounds"in e&&e.fitBounds(o);var i=e.getZoom()||0;null!==n&&i>n&&e.setZoom(n+1)}}),100)}e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation()}},e.prototype.onMouseOver=function(){google.maps.event.trigger(this.cluster.getClusterer(),"mouseover",this.cluster)},e.prototype.onMouseOut=function(){google.maps.event.trigger(this.cluster.getClusterer(),"mouseout",this.cluster)},e.prototype.onAdd=function(){var e;this.div=document.createElement("div"),this.div.className=this.className,this.visible&&this.show(),null===(e=this.getPanes())||void 0===e||e.overlayMouseTarget.appendChild(this.div);var t=this.getMap();null!==t&&(this.boundsChangedListener=google.maps.event.addListener(t,"bounds_changed",this.onBoundsChanged),this.div.addEventListener("mousedown",this.onMouseDown),this.div.addEventListener("click",this.onClick),this.div.addEventListener("mouseover",this.onMouseOver),this.div.addEventListener("mouseout",this.onMouseOut))},e.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.hide(),null!==this.boundsChangedListener&&google.maps.event.removeListener(this.boundsChangedListener),this.div.removeEventListener("mousedown",this.onMouseDown),this.div.removeEventListener("click",this.onClick),this.div.removeEventListener("mouseover",this.onMouseOver),this.div.removeEventListener("mouseout",this.onMouseOut),this.div.parentNode.removeChild(this.div),null!==this.timeOut&&(window.clearTimeout(this.timeOut),this.timeOut=null),this.div=null)},e.prototype.draw=function(){if(this.visible&&null!==this.div&&this.center){var e=this.getPosFromLatLng(this.center);this.div.style.top=null!==e?"".concat(e.y,"px"):"0",this.div.style.left=null!==e?"".concat(e.x,"px"):"0"}},e.prototype.hide=function(){this.div&&(this.div.style.display="none"),this.visible=!1},e.prototype.show=function(){var e,t,n,o,i,s;if(this.div&&this.center){var r=null===this.sums||"undefined"===typeof this.sums.title||""===this.sums.title?this.cluster.getClusterer().getTitle():this.sums.title,a=this.backgroundPosition.split(" "),l=parseInt((null===(e=a[0])||void 0===e?void 0:e.replace(/^\s+|\s+$/g,""))||"0",10),u=parseInt((null===(t=a[1])||void 0===t?void 0:t.replace(/^\s+|\s+$/g,""))||"0",10),c=this.getPosFromLatLng(this.center);this.div.className=this.className,this.div.setAttribute("style","cursor: pointer; position: absolute; top: ".concat(null!==c?"".concat(c.y,"px"):"0","; left: ").concat(null!==c?"".concat(c.x,"px"):"0","; width: ").concat(this.width,"px; height: ").concat(this.height,"px; "));var p=document.createElement("img");p.alt=r,p.src=this.url,p.width=this.width,p.height=this.height,p.setAttribute("style","position: absolute; top: ".concat(u,"px; left: ").concat(l,"px")),this.cluster.getClusterer().enableRetinaIcons||(p.style.clip="rect(-".concat(u,"px, -").concat(l+this.width,"px, -").concat(u+this.height,", -").concat(l,")"));var d=document.createElement("div");d.setAttribute("style","position: absolute; top: ".concat(this.anchorText[0],"px; left: ").concat(this.anchorText[1],"px; color: ").concat(this.textColor,"; font-size: ").concat(this.textSize,"px; font-family: ").concat(this.fontFamily,"; font-weight: ").concat(this.fontWeight,"; fontStyle: ").concat(this.fontStyle,"; text-decoration: ").concat(this.textDecoration,"; text-align: center; width: ").concat(this.width,"px; line-height: ").concat(this.height,"px")),(null===(n=this.sums)||void 0===n?void 0:n.text)&&(d.innerText="".concat(null===(o=this.sums)||void 0===o?void 0:o.text)),(null===(i=this.sums)||void 0===i?void 0:i.html)&&(d.innerHTML="".concat(null===(s=this.sums)||void 0===s?void 0:s.html)),this.div.innerHTML="",this.div.appendChild(p),this.div.appendChild(d),this.div.title=r,this.div.style.display=""}this.visible=!0},e.prototype.useStyle=function(e){this.sums=e;var t=this.cluster.getClusterer().getStyles(),n=t[Math.min(t.length-1,Math.max(0,e.index-1))];n&&(this.url=n.url,this.height=n.height,this.width=n.width,n.className&&(this.className="".concat(this.clusterClassName," ").concat(n.className)),this.anchorText=n.anchorText||[0,0],this.anchorIcon=n.anchorIcon||[this.height/2,this.width/2],this.textColor=n.textColor||"black",this.textSize=n.textSize||11,this.textDecoration=n.textDecoration||"none",this.fontWeight=n.fontWeight||"bold",this.fontStyle=n.fontStyle||"normal",this.fontFamily=n.fontFamily||"Arial,sans-serif",this.backgroundPosition=n.backgroundPosition||"0 0")},e.prototype.setCenter=function(e){this.center=e},e.prototype.getPosFromLatLng=function(e){var t=this.getProjection().fromLatLngToDivPixel(e);return null!==t&&(t.x-=this.anchorIcon[1],t.y-=this.anchorIcon[0]),t},e}(),ge=function(){function e(e){this.markerClusterer=e,this.map=this.markerClusterer.getMap(),this.gridSize=this.markerClusterer.getGridSize(),this.minClusterSize=this.markerClusterer.getMinimumClusterSize(),this.averageCenter=this.markerClusterer.getAverageCenter(),this.markers=[],this.center=void 0,this.bounds=null,this.clusterIcon=new de(this,this.markerClusterer.getStyles()),this.getSize=this.getSize.bind(this),this.getMarkers=this.getMarkers.bind(this),this.getCenter=this.getCenter.bind(this),this.getMap=this.getMap.bind(this),this.getClusterer=this.getClusterer.bind(this),this.getBounds=this.getBounds.bind(this),this.remove=this.remove.bind(this),this.addMarker=this.addMarker.bind(this),this.isMarkerInClusterBounds=this.isMarkerInClusterBounds.bind(this),this.calculateBounds=this.calculateBounds.bind(this),this.updateIcon=this.updateIcon.bind(this),this.isMarkerAlreadyAdded=this.isMarkerAlreadyAdded.bind(this)}return e.prototype.getSize=function(){return this.markers.length},e.prototype.getMarkers=function(){return this.markers},e.prototype.getCenter=function(){return this.center},e.prototype.getMap=function(){return this.map},e.prototype.getClusterer=function(){return this.markerClusterer},e.prototype.getBounds=function(){for(var e=new google.maps.LatLngBounds(this.center,this.center),t=0,n=this.getMarkers();t<n.length;t++){var o=n[t].getPosition();o&&e.extend(o)}return e},e.prototype.remove=function(){this.clusterIcon.setMap(null),this.markers=[],delete this.markers},e.prototype.addMarker=function(e){var t,n;if(this.isMarkerAlreadyAdded(e))return!1;if(this.center){if(this.averageCenter&&(n=e.getPosition())){var o=this.markers.length+1;this.center=new google.maps.LatLng((this.center.lat()*(o-1)+n.lat())/o,(this.center.lng()*(o-1)+n.lng())/o),this.calculateBounds()}}else(n=e.getPosition())&&(this.center=n,this.calculateBounds());e.isAdded=!0,this.markers.push(e);var i=this.markers.length,s=this.markerClusterer.getMaxZoom(),r=null===(t=this.map)||void 0===t?void 0:t.getZoom();if(null!==s&&"undefined"!==typeof r&&r>s)e.getMap()!==this.map&&e.setMap(this.map);else if(i<this.minClusterSize)e.getMap()!==this.map&&e.setMap(this.map);else if(i===this.minClusterSize)for(var a=0,l=this.markers;a<l.length;a++){l[a].setMap(null)}else e.setMap(null);return!0},e.prototype.isMarkerInClusterBounds=function(e){if(null!==this.bounds){var t=e.getPosition();if(t)return this.bounds.contains(t)}return!1},e.prototype.calculateBounds=function(){this.bounds=this.markerClusterer.getExtendedBounds(new google.maps.LatLngBounds(this.center,this.center))},e.prototype.updateIcon=function(){var e,t=this.markers.length,n=this.markerClusterer.getMaxZoom(),o=null===(e=this.map)||void 0===e?void 0:e.getZoom();null!==n&&"undefined"!==typeof o&&o>n||t<this.minClusterSize?this.clusterIcon.hide():(this.center&&this.clusterIcon.setCenter(this.center),this.clusterIcon.useStyle(this.markerClusterer.getCalculator()(this.markers,this.markerClusterer.getStyles().length)),this.clusterIcon.show())},e.prototype.isMarkerAlreadyAdded=function(e){if(this.markers.includes)return this.markers.includes(e);for(var t=0;t<this.markers.length;t++)if(e===this.markers[t])return!0;return!1},e}();function he(e,t){var n=e.length,o=n.toString().length,i=Math.min(o,t);return{text:n.toString(),index:i,title:""}}var fe=[53,56,66,78,90],me=function(){function e(t,n,o){void 0===n&&(n=[]),void 0===o&&(o={}),this.getMinimumClusterSize=this.getMinimumClusterSize.bind(this),this.setMinimumClusterSize=this.setMinimumClusterSize.bind(this),this.getEnableRetinaIcons=this.getEnableRetinaIcons.bind(this),this.setEnableRetinaIcons=this.setEnableRetinaIcons.bind(this),this.addToClosestCluster=this.addToClosestCluster.bind(this),this.getImageExtension=this.getImageExtension.bind(this),this.setImageExtension=this.setImageExtension.bind(this),this.getExtendedBounds=this.getExtendedBounds.bind(this),this.getAverageCenter=this.getAverageCenter.bind(this),this.setAverageCenter=this.setAverageCenter.bind(this),this.getTotalClusters=this.getTotalClusters.bind(this),this.fitMapToMarkers=this.fitMapToMarkers.bind(this),this.getIgnoreHidden=this.getIgnoreHidden.bind(this),this.setIgnoreHidden=this.setIgnoreHidden.bind(this),this.getClusterClass=this.getClusterClass.bind(this),this.setClusterClass=this.setClusterClass.bind(this),this.getTotalMarkers=this.getTotalMarkers.bind(this),this.getZoomOnClick=this.getZoomOnClick.bind(this),this.setZoomOnClick=this.setZoomOnClick.bind(this),this.getBatchSizeIE=this.getBatchSizeIE.bind(this),this.setBatchSizeIE=this.setBatchSizeIE.bind(this),this.createClusters=this.createClusters.bind(this),this.onZoomChanged=this.onZoomChanged.bind(this),this.getImageSizes=this.getImageSizes.bind(this),this.setImageSizes=this.setImageSizes.bind(this),this.getCalculator=this.getCalculator.bind(this),this.setCalculator=this.setCalculator.bind(this),this.removeMarkers=this.removeMarkers.bind(this),this.resetViewport=this.resetViewport.bind(this),this.getImagePath=this.getImagePath.bind(this),this.setImagePath=this.setImagePath.bind(this),this.pushMarkerTo=this.pushMarkerTo.bind(this),this.removeMarker=this.removeMarker.bind(this),this.clearMarkers=this.clearMarkers.bind(this),this.setupStyles=this.setupStyles.bind(this),this.getGridSize=this.getGridSize.bind(this),this.setGridSize=this.setGridSize.bind(this),this.getClusters=this.getClusters.bind(this),this.getMaxZoom=this.getMaxZoom.bind(this),this.setMaxZoom=this.setMaxZoom.bind(this),this.getMarkers=this.getMarkers.bind(this),this.addMarkers=this.addMarkers.bind(this),this.getStyles=this.getStyles.bind(this),this.setStyles=this.setStyles.bind(this),this.addMarker=this.addMarker.bind(this),this.onRemove=this.onRemove.bind(this),this.getTitle=this.getTitle.bind(this),this.setTitle=this.setTitle.bind(this),this.repaint=this.repaint.bind(this),this.onIdle=this.onIdle.bind(this),this.redraw=this.redraw.bind(this),this.onAdd=this.onAdd.bind(this),this.draw=this.draw.bind(this),this.extend=this.extend.bind(this),this.extend(e,google.maps.OverlayView),this.markers=[],this.clusters=[],this.listeners=[],this.activeMap=null,this.ready=!1,this.gridSize=o.gridSize||60,this.minClusterSize=o.minimumClusterSize||2,this.maxZoom=o.maxZoom||null,this.styles=o.styles||[],this.title=o.title||"",this.zoomOnClick=!0,void 0!==o.zoomOnClick&&(this.zoomOnClick=o.zoomOnClick),this.averageCenter=!1,void 0!==o.averageCenter&&(this.averageCenter=o.averageCenter),this.ignoreHidden=!1,void 0!==o.ignoreHidden&&(this.ignoreHidden=o.ignoreHidden),this.enableRetinaIcons=!1,void 0!==o.enableRetinaIcons&&(this.enableRetinaIcons=o.enableRetinaIcons),this.imagePath=o.imagePath||"https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m",this.imageExtension=o.imageExtension||"png",this.imageSizes=o.imageSizes||fe,this.calculator=o.calculator||he,this.batchSize=o.batchSize||2e3,this.batchSizeIE=o.batchSizeIE||500,this.clusterClass=o.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&&(this.batchSize=this.batchSizeIE),this.timerRefStatic=null,this.setupStyles(),this.addMarkers(n,!0),this.setMap(t)}return e.prototype.onZoomChanged=function(){var e,t;this.resetViewport(!1),(null===(e=this.getMap())||void 0===e?void 0:e.getZoom())!==(this.get("minZoom")||0)&&(null===(t=this.getMap())||void 0===t?void 0:t.getZoom())!==this.get("maxZoom")||google.maps.event.trigger(this,"idle")},e.prototype.onIdle=function(){this.redraw()},e.prototype.onAdd=function(){var e=this.getMap();this.activeMap=e,this.ready=!0,this.repaint(),null!==e&&(this.listeners=[google.maps.event.addListener(e,"zoom_changed",this.onZoomChanged),google.maps.event.addListener(e,"idle",this.onIdle)])},e.prototype.onRemove=function(){for(var e=0,t=this.markers;e<t.length;e++){var n=t[e];n.getMap()!==this.activeMap&&n.setMap(this.activeMap)}for(var o=0,i=this.clusters;o<i.length;o++){i[o].remove()}this.clusters=[];for(var s=0,r=this.listeners;s<r.length;s++){var a=r[s];google.maps.event.removeListener(a)}this.listeners=[],this.activeMap=null,this.ready=!1},e.prototype.draw=function(){},e.prototype.getMap=function(){return null},e.prototype.getPanes=function(){return null},e.prototype.getProjection=function(){return{fromContainerPixelToLatLng:function(){return null},fromDivPixelToLatLng:function(){return null},fromLatLngToContainerPixel:function(){return null},fromLatLngToDivPixel:function(){return null},getVisibleRegion:function(){return null},getWorldWidth:function(){return 0}}},e.prototype.setMap=function(){},e.prototype.addListener=function(){return{remove:function(){}}},e.prototype.bindTo=function(){},e.prototype.get=function(){},e.prototype.notify=function(){},e.prototype.set=function(){},e.prototype.setValues=function(){},e.prototype.unbind=function(){},e.prototype.unbindAll=function(){},e.prototype.setupStyles=function(){if(!(this.styles.length>0))for(var e=0;e<this.imageSizes.length;e++)this.styles.push({url:"".concat(this.imagePath+(e+1),".").concat(this.imageExtension),height:this.imageSizes[e]||0,width:this.imageSizes[e]||0})},e.prototype.fitMapToMarkers=function(){for(var e=this.getMarkers(),t=new google.maps.LatLngBounds,n=0,o=e;n<o.length;n++){var i=o[n].getPosition();i&&t.extend(i)}var s=this.getMap();null!==s&&"fitBounds"in s&&s.fitBounds(t)},e.prototype.getGridSize=function(){return this.gridSize},e.prototype.setGridSize=function(e){this.gridSize=e},e.prototype.getMinimumClusterSize=function(){return this.minClusterSize},e.prototype.setMinimumClusterSize=function(e){this.minClusterSize=e},e.prototype.getMaxZoom=function(){return this.maxZoom},e.prototype.setMaxZoom=function(e){this.maxZoom=e},e.prototype.getStyles=function(){return this.styles},e.prototype.setStyles=function(e){this.styles=e},e.prototype.getTitle=function(){return this.title},e.prototype.setTitle=function(e){this.title=e},e.prototype.getZoomOnClick=function(){return this.zoomOnClick},e.prototype.setZoomOnClick=function(e){this.zoomOnClick=e},e.prototype.getAverageCenter=function(){return this.averageCenter},e.prototype.setAverageCenter=function(e){this.averageCenter=e},e.prototype.getIgnoreHidden=function(){return this.ignoreHidden},e.prototype.setIgnoreHidden=function(e){this.ignoreHidden=e},e.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons},e.prototype.setEnableRetinaIcons=function(e){this.enableRetinaIcons=e},e.prototype.getImageExtension=function(){return this.imageExtension},e.prototype.setImageExtension=function(e){this.imageExtension=e},e.prototype.getImagePath=function(){return this.imagePath},e.prototype.setImagePath=function(e){this.imagePath=e},e.prototype.getImageSizes=function(){return this.imageSizes},e.prototype.setImageSizes=function(e){this.imageSizes=e},e.prototype.getCalculator=function(){return this.calculator},e.prototype.setCalculator=function(e){this.calculator=e},e.prototype.getBatchSizeIE=function(){return this.batchSizeIE},e.prototype.setBatchSizeIE=function(e){this.batchSizeIE=e},e.prototype.getClusterClass=function(){return this.clusterClass},e.prototype.setClusterClass=function(e){this.clusterClass=e},e.prototype.getMarkers=function(){return this.markers},e.prototype.getTotalMarkers=function(){return this.markers.length},e.prototype.getClusters=function(){return this.clusters},e.prototype.getTotalClusters=function(){return this.clusters.length},e.prototype.addMarker=function(e,t){this.pushMarkerTo(e),t||this.redraw()},e.prototype.addMarkers=function(e,t){for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var o=e[n];o&&this.pushMarkerTo(o)}t||this.redraw()},e.prototype.pushMarkerTo=function(e){var t=this;e.getDraggable()&&google.maps.event.addListener(e,"dragend",(function(){t.ready&&(e.isAdded=!1,t.repaint())})),e.isAdded=!1,this.markers.push(e)},e.prototype.removeMarker_=function(e){var t=-1;if(this.markers.indexOf)t=this.markers.indexOf(e);else for(var n=0;n<this.markers.length;n++)if(e===this.markers[n]){t=n;break}return-1!==t&&(e.setMap(null),this.markers.splice(t,1),!0)},e.prototype.removeMarker=function(e,t){var n=this.removeMarker_(e);return!t&&n&&this.repaint(),n},e.prototype.removeMarkers=function(e,t){for(var n=!1,o=0,i=e;o<i.length;o++){var s=i[o];n=n||this.removeMarker_(s)}return!t&&n&&this.repaint(),n},e.prototype.clearMarkers=function(){this.resetViewport(!0),this.markers=[]},e.prototype.repaint=function(){var e=this.clusters.slice();this.clusters=[],this.resetViewport(!1),this.redraw(),setTimeout((function(){for(var t=0,n=e;t<n.length;t++){n[t].remove()}}),0)},e.prototype.getExtendedBounds=function(e){var t=this.getProjection(),n=t.fromLatLngToDivPixel(new google.maps.LatLng(e.getNorthEast().lat(),e.getNorthEast().lng()));null!==n&&(n.x+=this.gridSize,n.y-=this.gridSize);var o=t.fromLatLngToDivPixel(new google.maps.LatLng(e.getSouthWest().lat(),e.getSouthWest().lng()));if(null!==o&&(o.x-=this.gridSize,o.y+=this.gridSize),null!==n){var i=t.fromDivPixelToLatLng(n);null!==i&&e.extend(i)}if(null!==o){var s=t.fromDivPixelToLatLng(o);null!==s&&e.extend(s)}return e},e.prototype.redraw=function(){this.createClusters(0)},e.prototype.resetViewport=function(e){for(var t=0,n=this.clusters;t<n.length;t++){n[t].remove()}this.clusters=[];for(var o=0,i=this.markers;o<i.length;o++){var s=i[o];s.isAdded=!1,e&&s.setMap(null)}},e.prototype.distanceBetweenPoints=function(e,t){var n=(t.lat()-e.lat())*Math.PI/180,o=(t.lng()-e.lng())*Math.PI/180,i=Math.sin(n/2)*Math.sin(n/2)+Math.cos(e.lat()*Math.PI/180)*Math.cos(t.lat()*Math.PI/180)*Math.sin(o/2)*Math.sin(o/2);return 2*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))*6371},e.prototype.isMarkerInBounds=function(e,t){var n=e.getPosition();return!!n&&t.contains(n)},e.prototype.addToClosestCluster=function(e){for(var t,n=4e4,o=null,i=0,s=this.clusters;i<s.length;i++){var r=(t=s[i]).getCenter(),a=e.getPosition();if(r&&a){var l=this.distanceBetweenPoints(r,a);l<n&&(n=l,o=t)}}o&&o.isMarkerInClusterBounds(e)?o.addMarker(e):((t=new ge(this)).addMarker(e),this.clusters.push(t))},e.prototype.createClusters=function(e){var t=this;if(this.ready){0===e&&(google.maps.event.trigger(this,"clusteringbegin",this),null!==this.timerRefStatic&&(window.clearTimeout(this.timerRefStatic),delete this.timerRefStatic));for(var n=this.getMap(),o=(null!==n&&"getBounds"in n?n.getBounds():null),i=((null===n||void 0===n?void 0:n.getZoom())||0)>3?new google.maps.LatLngBounds(null===o||void 0===o?void 0:o.getSouthWest(),null===o||void 0===o?void 0:o.getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625)),s=this.getExtendedBounds(i),r=Math.min(e+this.batchSize,this.markers.length),a=e;a<r;a++){var l=this.markers[a];l&&!l.isAdded&&this.isMarkerInBounds(l,s)&&(!this.ignoreHidden||this.ignoreHidden&&l.getVisible())&&this.addToClosestCluster(l)}if(r<this.markers.length)this.timerRefStatic=window.setTimeout((function(){t.createClusters(r)}),0);else{this.timerRefStatic=null,google.maps.event.trigger(this,"clusteringend",this);for(var u=0,c=this.clusters;u<c.length;u++){c[u].updateIcon()}}}},e.prototype.extend=function(e,t){return function(e){for(var t in e.prototype){var n=t;this.prototype[n]=e.prototype[n]}return this}.apply(e,[t])},e}();function ve(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}var ye={onClick:"click",onClusteringBegin:"clusteringbegin",onClusteringEnd:"clusteringend",onMouseOut:"mouseout",onMouseOver:"mouseover"},be={averageCenter:function(e,t){e.setAverageCenter(t)},batchSizeIE:function(e,t){e.setBatchSizeIE(t)},calculator:function(e,t){e.setCalculator(t)},clusterClass:function(e,t){e.setClusterClass(t)},enableRetinaIcons:function(e,t){e.setEnableRetinaIcons(t)},gridSize:function(e,t){e.setGridSize(t)},ignoreHidden:function(e,t){e.setIgnoreHidden(t)},imageExtension:function(e,t){e.setImageExtension(t)},imagePath:function(e,t){e.setImagePath(t)},imageSizes:function(e,t){e.setImageSizes(t)},maxZoom:function(e,t){e.setMaxZoom(t)},minimumClusterSize:function(e,t){e.setMinimumClusterSize(t)},styles:function(e,t){e.setStyles(t)},title:function(e,t){e.setTitle(t)},zoomOnClick:function(e,t){e.setZoomOnClick(t)}},Le={};(0,f.memo)((function(e){var t=e.children,n=e.options,o=e.averageCenter,i=e.batchSizeIE,s=e.calculator,r=e.clusterClass,a=e.enableRetinaIcons,l=e.gridSize,u=e.ignoreHidden,c=e.imageExtension,p=e.imagePath,d=e.imageSizes,h=e.maxZoom,m=e.minimumClusterSize,v=e.styles,y=e.title,L=e.zoomOnClick,k=e.onClick,w=e.onClusteringBegin,M=e.onClusteringEnd,E=e.onMouseOver,x=e.onMouseOut,Z=e.onLoad,P=e.onUnmount,S=(0,f.useState)(null),O=(0,g.Z)(S,2),D=O[0],j=O[1],I=(0,f.useContext)(C),B=(0,f.useState)(null),R=(0,g.Z)(B,2),z=R[0],T=R[1],_=(0,f.useState)(null),U=(0,g.Z)(_,2),A=U[0],V=U[1],N=(0,f.useState)(null),W=(0,g.Z)(N,2),H=W[0],F=W[1],G=(0,f.useState)(null),Y=(0,g.Z)(G,2),q=Y[0],K=Y[1],X=(0,f.useState)(null),J=(0,g.Z)(X,2),$=J[0],Q=J[1];return(0,f.useEffect)((function(){D&&x&&(null!==q&&google.maps.event.removeListener(q),K(google.maps.event.addListener(D,ye.onMouseOut,x)))}),[x]),(0,f.useEffect)((function(){D&&E&&(null!==$&&google.maps.event.removeListener($),Q(google.maps.event.addListener(D,ye.onMouseOver,E)))}),[E]),(0,f.useEffect)((function(){D&&k&&(null!==z&&google.maps.event.removeListener(z),T(google.maps.event.addListener(D,ye.onClick,k)))}),[k]),(0,f.useEffect)((function(){D&&w&&(null!==A&&google.maps.event.removeListener(A),V(google.maps.event.addListener(D,ye.onClusteringBegin,w)))}),[w]),(0,f.useEffect)((function(){D&&M&&(null!==H&&google.maps.event.removeListener(H),V(google.maps.event.addListener(D,ye.onClusteringEnd,M)))}),[M]),(0,f.useEffect)((function(){"undefined"!==typeof o&&null!==D&&be.averageCenter(D,o)}),[D,o]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==D&&be.batchSizeIE(D,i)}),[D,i]),(0,f.useEffect)((function(){"undefined"!==typeof s&&null!==D&&be.calculator(D,s)}),[D,s]),(0,f.useEffect)((function(){"undefined"!==typeof r&&null!==D&&be.clusterClass(D,r)}),[D,r]),(0,f.useEffect)((function(){"undefined"!==typeof a&&null!==D&&be.enableRetinaIcons(D,a)}),[D,a]),(0,f.useEffect)((function(){"undefined"!==typeof l&&null!==D&&be.gridSize(D,l)}),[D,l]),(0,f.useEffect)((function(){"undefined"!==typeof u&&null!==D&&be.ignoreHidden(D,u)}),[D,u]),(0,f.useEffect)((function(){"undefined"!==typeof c&&null!==D&&be.imageExtension(D,c)}),[D,c]),(0,f.useEffect)((function(){"undefined"!==typeof p&&null!==D&&be.imagePath(D,p)}),[D,p]),(0,f.useEffect)((function(){"undefined"!==typeof d&&null!==D&&be.imageSizes(D,d)}),[D,d]),(0,f.useEffect)((function(){"undefined"!==typeof h&&null!==D&&be.maxZoom(D,h)}),[D,h]),(0,f.useEffect)((function(){"undefined"!==typeof m&&null!==D&&be.minimumClusterSize(D,m)}),[D,m]),(0,f.useEffect)((function(){"undefined"!==typeof v&&null!==D&&be.styles(D,v)}),[D,v]),(0,f.useEffect)((function(){"undefined"!==typeof y&&null!==D&&be.title(D,y)}),[D,y]),(0,f.useEffect)((function(){"undefined"!==typeof L&&null!==D&&be.zoomOnClick(D,L)}),[D,L]),(0,f.useEffect)((function(){if(I){var e=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ve(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ve(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},n||Le),t=new me(I,[],e);return o&&be.averageCenter(t,o),i&&be.batchSizeIE(t,i),s&&be.calculator(t,s),r&&be.clusterClass(t,r),a&&be.enableRetinaIcons(t,a),l&&be.gridSize(t,l),u&&be.ignoreHidden(t,u),c&&be.imageExtension(t,c),p&&be.imagePath(t,p),d&&be.imageSizes(t,d),h&&be.maxZoom(t,h),m&&be.minimumClusterSize(t,m),v&&be.styles(t,v),y&&be.title(t,y),L&&be.zoomOnClick(t,L),x&&K(google.maps.event.addListener(t,ye.onMouseOut,x)),E&&Q(google.maps.event.addListener(t,ye.onMouseOver,E)),k&&T(google.maps.event.addListener(t,ye.onClick,k)),w&&V(google.maps.event.addListener(t,ye.onClusteringBegin,w)),M&&F(google.maps.event.addListener(t,ye.onClusteringEnd,M)),j(t),Z&&Z(t),function(){null!==q&&google.maps.event.removeListener(q),null!==$&&google.maps.event.removeListener($),null!==z&&google.maps.event.removeListener(z),null!==A&&google.maps.event.removeListener(A),null!==H&&google.maps.event.removeListener(H),P&&P(t)}}}),[]),null!==D&&t(D)||null}));var ke=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{markerClusterer:null}),b((0,c.Z)(e),"setClustererCallback",(function(){null!==e.state.markerClusterer&&e.props.onLoad&&e.props.onLoad(e.state.markerClusterer)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){if(this.context){var e=new me(this.context,[],this.props.options);this.registeredEvents=Z({updaterMap:be,eventMap:ye,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{markerClusterer:e}}),this.setClustererCallback)}}},{key:"componentDidUpdate",value:function(e){this.state.markerClusterer&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:be,eventMap:ye,prevProps:e,nextProps:this.props,instance:this.state.markerClusterer}))}},{key:"componentWillUnmount",value:function(){null!==this.state.markerClusterer&&(this.props.onUnmount&&this.props.onUnmount(this.state.markerClusterer),x(this.registeredEvents),this.state.markerClusterer.setMap(null))}},{key:"render",value:function(){return null!==this.state.markerClusterer?this.props.children(this.state.markerClusterer):null}}]),n}(f.PureComponent);function Ce(e){e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation()}b(ke,"contextType",C);var we=function(){function e(t){void 0===t&&(t={}),this.getCloseClickHandler=this.getCloseClickHandler.bind(this),this.closeClickHandler=this.closeClickHandler.bind(this),this.createInfoBoxDiv=this.createInfoBoxDiv.bind(this),this.addClickHandler=this.addClickHandler.bind(this),this.getCloseBoxImg=this.getCloseBoxImg.bind(this),this.getBoxWidths=this.getBoxWidths.bind(this),this.setBoxStyle=this.setBoxStyle.bind(this),this.setPosition=this.setPosition.bind(this),this.getPosition=this.getPosition.bind(this),this.setOptions=this.setOptions.bind(this),this.setContent=this.setContent.bind(this),this.setVisible=this.setVisible.bind(this),this.getContent=this.getContent.bind(this),this.getVisible=this.getVisible.bind(this),this.setZIndex=this.setZIndex.bind(this),this.getZIndex=this.getZIndex.bind(this),this.onRemove=this.onRemove.bind(this),this.panBox=this.panBox.bind(this),this.extend=this.extend.bind(this),this.close=this.close.bind(this),this.draw=this.draw.bind(this),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.open=this.open.bind(this),this.extend(e,google.maps.OverlayView),this.content=t.content||"",this.disableAutoPan=t.disableAutoPan||!1,this.maxWidth=t.maxWidth||0,this.pixelOffset=t.pixelOffset||new google.maps.Size(0,0),this.position=t.position||new google.maps.LatLng(0,0),this.zIndex=t.zIndex||null,this.boxClass=t.boxClass||"infoBox",this.boxStyle=t.boxStyle||{},this.closeBoxMargin=t.closeBoxMargin||"2px",this.closeBoxURL=t.closeBoxURL||"http://www.google.com/intl/en_us/mapfiles/close.gif",""===t.closeBoxURL&&(this.closeBoxURL=""),this.infoBoxClearance=t.infoBoxClearance||new google.maps.Size(1,1),"undefined"===typeof t.visible&&("undefined"===typeof t.isHidden?t.visible=!0:t.visible=!t.isHidden),this.isHidden=!t.visible,this.alignBottom=t.alignBottom||!1,this.pane=t.pane||"floatPane",this.enableEventPropagation=t.enableEventPropagation||!1,this.div=null,this.closeListener=null,this.moveListener=null,this.mapListener=null,this.contextListener=null,this.eventListeners=null,this.fixedWidthSet=null}return e.prototype.createInfoBoxDiv=function(){var e=this;if(!this.div){this.div=document.createElement("div"),this.setBoxStyle(),"string"===typeof this.content?this.div.innerHTML=this.getCloseBoxImg()+this.content:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(this.content));var t=this.getPanes();if(null!==t&&t[this.pane].appendChild(this.div),this.addClickHandler(),this.div.style.width)this.fixedWidthSet=!0;else if(0!==this.maxWidth&&this.div.offsetWidth>this.maxWidth)this.div.style.width=this.maxWidth+"px",this.fixedWidthSet=!0;else{var n=this.getBoxWidths();this.div.style.width=this.div.offsetWidth-n.left-n.right+"px",this.fixedWidthSet=!1}if(this.panBox(this.disableAutoPan),!this.enableEventPropagation){this.eventListeners=[];for(var o=0,i=["mousedown","mouseover","mouseout","mouseup","click","dblclick","touchstart","touchend","touchmove"];o<i.length;o++){var s=i[o];this.eventListeners.push(google.maps.event.addListener(this.div,s,Ce))}this.eventListeners.push(google.maps.event.addListener(this.div,"mouseover",(function(){e.div&&(e.div.style.cursor="default")})))}this.contextListener=google.maps.event.addListener(this.div,"contextmenu",(function(t){t.returnValue=!1,t.preventDefault&&t.preventDefault(),e.enableEventPropagation||Ce(t)})),google.maps.event.trigger(this,"domready")}},e.prototype.getCloseBoxImg=function(){var e="";return""!==this.closeBoxURL&&(e='<img alt=""',e+=' aria-hidden="true"',e+=" src='"+this.closeBoxURL+"'",e+=" align=right",e+=" style='",e+=" position: relative;",e+=" cursor: pointer;",e+=" margin: "+this.closeBoxMargin+";",e+="'>"),e},e.prototype.addClickHandler=function(){this.closeListener=this.div&&this.div.firstChild&&""!==this.closeBoxURL?google.maps.event.addListener(this.div.firstChild,"click",this.getCloseClickHandler()):null},e.prototype.closeClickHandler=function(e){e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(this,"closeclick"),this.close()},e.prototype.getCloseClickHandler=function(){return this.closeClickHandler},e.prototype.panBox=function(e){if(this.div&&!e){var t=this.getMap();if(t instanceof google.maps.Map){var n=0,o=0,i=t.getBounds();i&&!i.contains(this.position)&&t.setCenter(this.position);var s=t.getDiv(),r=s.offsetWidth,a=s.offsetHeight,l=this.pixelOffset.width,u=this.pixelOffset.height,c=this.div.offsetWidth,p=this.div.offsetHeight,d=this.infoBoxClearance.width,g=this.infoBoxClearance.height,h=this.getProjection().fromLatLngToContainerPixel(this.position);null!==h&&(h.x<-l+d?n=h.x+l-d:h.x+c+l+d>r&&(n=h.x+c+l+d-r),this.alignBottom?h.y<-u+g+p?o=h.y+u-g-p:h.y+u+g>a&&(o=h.y+u+g-a):h.y<-u+g?o=h.y+u-g:h.y+p+u+g>a&&(o=h.y+p+u+g-a)),0===n&&0===o||t.panBy(n,o)}}},e.prototype.setBoxStyle=function(){if(this.div){this.div.className=this.boxClass,this.div.style.cssText="";var e=this.boxStyle;for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this.div.style[t]=e[t]);if(this.div.style.webkitTransform="translateZ(0)","undefined"!==typeof this.div.style.opacity&&""!==this.div.style.opacity){var n=parseFloat(this.div.style.opacity||"");this.div.style.msFilter='"progid:DXImageTransform.Microsoft.Alpha(Opacity='+100*n+')"',this.div.style.filter="alpha(opacity="+100*n+")"}this.div.style.position="absolute",this.div.style.visibility="hidden",null!==this.zIndex&&(this.div.style.zIndex=this.zIndex+""),this.div.style.overflow||(this.div.style.overflow="auto")}},e.prototype.getBoxWidths=function(){var e={top:0,bottom:0,left:0,right:0};if(!this.div)return e;if(document.defaultView){var t=this.div.ownerDocument,n=t&&t.defaultView?t.defaultView.getComputedStyle(this.div,""):null;n&&(e.top=parseInt(n.borderTopWidth||"",10)||0,e.bottom=parseInt(n.borderBottomWidth||"",10)||0,e.left=parseInt(n.borderLeftWidth||"",10)||0,e.right=parseInt(n.borderRightWidth||"",10)||0)}else if(document.documentElement.currentStyle){var o=this.div.currentStyle;o&&(e.top=parseInt(o.borderTopWidth||"",10)||0,e.bottom=parseInt(o.borderBottomWidth||"",10)||0,e.left=parseInt(o.borderLeftWidth||"",10)||0,e.right=parseInt(o.borderRightWidth||"",10)||0)}return e},e.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.div.parentNode.removeChild(this.div),this.div=null)},e.prototype.draw=function(){if(this.createInfoBoxDiv(),this.div){var e=this.getProjection().fromLatLngToDivPixel(this.position);null!==e&&(this.div.style.left=e.x+this.pixelOffset.width+"px",this.alignBottom?this.div.style.bottom=-(e.y+this.pixelOffset.height)+"px":this.div.style.top=e.y+this.pixelOffset.height+"px"),this.isHidden?this.div.style.visibility="hidden":this.div.style.visibility="visible"}},e.prototype.setOptions=function(e){void 0===e&&(e={}),"undefined"!==typeof e.boxClass&&(this.boxClass=e.boxClass,this.setBoxStyle()),"undefined"!==typeof e.boxStyle&&(this.boxStyle=e.boxStyle,this.setBoxStyle()),"undefined"!==typeof e.content&&this.setContent(e.content),"undefined"!==typeof e.disableAutoPan&&(this.disableAutoPan=e.disableAutoPan),"undefined"!==typeof e.maxWidth&&(this.maxWidth=e.maxWidth),"undefined"!==typeof e.pixelOffset&&(this.pixelOffset=e.pixelOffset),"undefined"!==typeof e.alignBottom&&(this.alignBottom=e.alignBottom),"undefined"!==typeof e.position&&this.setPosition(e.position),"undefined"!==typeof e.zIndex&&this.setZIndex(e.zIndex),"undefined"!==typeof e.closeBoxMargin&&(this.closeBoxMargin=e.closeBoxMargin),"undefined"!==typeof e.closeBoxURL&&(this.closeBoxURL=e.closeBoxURL),"undefined"!==typeof e.infoBoxClearance&&(this.infoBoxClearance=e.infoBoxClearance),"undefined"!==typeof e.isHidden&&(this.isHidden=e.isHidden),"undefined"!==typeof e.visible&&(this.isHidden=!e.visible),"undefined"!==typeof e.enableEventPropagation&&(this.enableEventPropagation=e.enableEventPropagation),this.div&&this.draw()},e.prototype.setContent=function(e){this.content=e,this.div&&(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.fixedWidthSet||(this.div.style.width=""),"string"===typeof e?this.div.innerHTML=this.getCloseBoxImg()+e:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(e)),this.fixedWidthSet||(this.div.style.width=this.div.offsetWidth+"px","string"===typeof e?this.div.innerHTML=this.getCloseBoxImg()+e:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(e))),this.addClickHandler()),google.maps.event.trigger(this,"content_changed")},e.prototype.setPosition=function(e){this.position=e,this.div&&this.draw(),google.maps.event.trigger(this,"position_changed")},e.prototype.setVisible=function(e){this.isHidden=!e,this.div&&(this.div.style.visibility=this.isHidden?"hidden":"visible")},e.prototype.setZIndex=function(e){this.zIndex=e,this.div&&(this.div.style.zIndex=e+""),google.maps.event.trigger(this,"zindex_changed")},e.prototype.getContent=function(){return this.content},e.prototype.getPosition=function(){return this.position},e.prototype.getZIndex=function(){return this.zIndex},e.prototype.getVisible=function(){var e=this.getMap();return"undefined"!==typeof e&&null!==e&&!this.isHidden},e.prototype.show=function(){this.isHidden=!1,this.div&&(this.div.style.visibility="visible")},e.prototype.hide=function(){this.isHidden=!0,this.div&&(this.div.style.visibility="hidden")},e.prototype.open=function(e,t){var n=this;t&&(this.position=t.getPosition(),this.moveListener=google.maps.event.addListener(t,"position_changed",(function(){var e=t.getPosition();n.setPosition(e)})),this.mapListener=google.maps.event.addListener(t,"map_changed",(function(){n.setMap(t.map)}))),this.setMap(e),this.div&&this.panBox()},e.prototype.close=function(){if(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.eventListeners){for(var e=0,t=this.eventListeners;e<t.length;e++){var n=t[e];google.maps.event.removeListener(n)}this.eventListeners=null}this.moveListener&&(google.maps.event.removeListener(this.moveListener),this.moveListener=null),this.mapListener&&(google.maps.event.removeListener(this.mapListener),this.mapListener=null),this.contextListener&&(google.maps.event.removeListener(this.contextListener),this.contextListener=null),this.setMap(null)},e.prototype.extend=function(e,t){return function(e){for(var t in e.prototype)Object.prototype.hasOwnProperty.call(this,t)||(this.prototype[t]=e.prototype[t]);return this}.apply(e,[t])},e}(),Me=["position"],Ee=["position"];function xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Ze(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xe(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Pe={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},Se={options:function(e,t){e.setOptions(t)},position:function(e,t){t instanceof google.maps.LatLng?e.setPosition(t):e.setPosition(new google.maps.LatLng(t.lat,t.lng))},visible:function(e,t){e.setVisible(t)},zIndex:function(e,t){e.setZIndex(t)}},Oe={};(0,f.memo)((function(e){var t=e.children,n=e.anchor,o=e.options,i=e.position,s=e.zIndex,r=e.onCloseClick,a=e.onDomReady,l=e.onContentChanged,u=e.onPositionChanged,c=e.onZindexChanged,p=e.onLoad,d=e.onUnmount,h=(0,f.useContext)(C),v=(0,f.useState)(null),y=(0,g.Z)(v,2),b=y[0],L=y[1],w=(0,f.useState)(null),M=(0,g.Z)(w,2),E=M[0],x=M[1],Z=(0,f.useState)(null),P=(0,g.Z)(Z,2),S=P[0],O=P[1],D=(0,f.useState)(null),j=(0,g.Z)(D,2),I=j[0],B=j[1],R=(0,f.useState)(null),z=(0,g.Z)(R,2),T=z[0],_=z[1],U=(0,f.useState)(null),A=(0,g.Z)(U,2),V=A[0],N=A[1],H=(0,f.useRef)(null);return(0,f.useEffect)((function(){h&&null!==b&&(b.close(),n?b.open(h,n):b.getPosition()&&b.open(h))}),[h,b,n]),(0,f.useEffect)((function(){o&&null!==b&&b.setOptions(o)}),[b,o]),(0,f.useEffect)((function(){if(i&&null!==b){var e=i instanceof google.maps.LatLng?i:new google.maps.LatLng(i.lat,i.lng);b.setPosition(e)}}),[i]),(0,f.useEffect)((function(){"number"===typeof s&&null!==b&&b.setZIndex(s)}),[s]),(0,f.useEffect)((function(){b&&r&&(null!==E&&google.maps.event.removeListener(E),x(google.maps.event.addListener(b,"closeclick",r)))}),[r]),(0,f.useEffect)((function(){b&&a&&(null!==S&&google.maps.event.removeListener(S),O(google.maps.event.addListener(b,"domready",a)))}),[a]),(0,f.useEffect)((function(){b&&l&&(null!==I&&google.maps.event.removeListener(I),B(google.maps.event.addListener(b,"content_changed",l)))}),[l]),(0,f.useEffect)((function(){b&&u&&(null!==T&&google.maps.event.removeListener(T),_(google.maps.event.addListener(b,"position_changed",u)))}),[u]),(0,f.useEffect)((function(){b&&c&&(null!==V&&google.maps.event.removeListener(V),N(google.maps.event.addListener(b,"zindex_changed",c)))}),[c]),(0,f.useEffect)((function(){if(h){var e,t=o||Oe,i=t.position,s=W(t,Me);!i||i instanceof google.maps.LatLng||(e=new google.maps.LatLng(i.lat,i.lng));var g=new we(Ze(Ze({},s),e?{position:e}:{}));H.current=document.createElement("div"),L(g),r&&x(google.maps.event.addListener(g,"closeclick",r)),a&&O(google.maps.event.addListener(g,"domready",a)),l&&B(google.maps.event.addListener(g,"content_changed",l)),u&&_(google.maps.event.addListener(g,"position_changed",u)),c&&N(google.maps.event.addListener(g,"zindex_changed",c)),g.setContent(H.current),n?g.open(h,n):g.getPosition()?g.open(h):k(!1,"You must provide either an anchor or a position prop for <InfoBox>."),p&&p(g)}return function(){null!==b&&(E&&google.maps.event.removeListener(E),I&&google.maps.event.removeListener(I),S&&google.maps.event.removeListener(S),T&&google.maps.event.removeListener(T),V&&google.maps.event.removeListener(V),d&&d(b),b.close())}}),[]),H.current?(0,m.createPortal)(f.Children.only(t),H.current):null}));var De,je,Ie=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"containerElement",null),b((0,c.Z)(e),"state",{infoBox:null}),b((0,c.Z)(e),"open",(function(t,n){n?null!==e.context&&t.open(e.context,n):t.getPosition()?null!==e.context&&t.open(e.context):k(!1,"You must provide either an anchor or a position prop for <InfoBox>.")})),b((0,c.Z)(e),"setInfoBoxCallback",(function(){null!==e.state.infoBox&&null!==e.containerElement&&(e.state.infoBox.setContent(e.containerElement),e.open(e.state.infoBox,e.props.anchor),e.props.onLoad&&e.props.onLoad(e.state.infoBox))})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e,t=this.props.options||{},n=t.position,o=W(t,Ee);!n||n instanceof google.maps.LatLng||(e=new google.maps.LatLng(n.lat,n.lng));var i=new we(Ze(Ze({},o),e?{position:e}:{}));this.containerElement=document.createElement("div"),this.registeredEvents=Z({updaterMap:Se,eventMap:Pe,prevProps:{},nextProps:this.props,instance:i}),this.setState({infoBox:i},this.setInfoBoxCallback)}},{key:"componentDidUpdate",value:function(e){var t=this.state.infoBox;null!==t&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Se,eventMap:Pe,prevProps:e,nextProps:this.props,instance:t}))}},{key:"componentWillUnmount",value:function(){var e=this.props.onUnmount,t=this.state.infoBox;null!==t&&(e&&e(t),x(this.registeredEvents),t.close())}},{key:"render",value:function(){return this.containerElement?(0,m.createPortal)(f.Children.only(this.props.children),this.containerElement):null}}]),n}(f.PureComponent);b(Ie,"contextType",C);var Be=(je||(je=1,De=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;var o,i,s;if(Array.isArray(t)){if((o=t.length)!=n.length)return!1;for(i=o;0!==i--;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((o=(s=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(i=o;0!==i--;)if(!Object.prototype.hasOwnProperty.call(n,s[i]))return!1;for(i=o;0!==i--;){var r=s[i];if(!e(t[r],n[r]))return!1}return!0}return t!==t&&n!==n}),De),Re=L(Be),ze=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Te=function(){function e(t){(0,l.Z)(this,e);var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:64,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Float64Array,i=arguments.length>3?arguments[3]:void 0;if(isNaN(t)||t<0)throw new Error("Unpexpected numItems value: ".concat(t,"."));this.numItems=+t,this.nodeSize=Math.min(Math.max(+n,2),65535),this.ArrayType=o,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;var s=ze.indexOf(this.ArrayType),r=2*t*this.ArrayType.BYTES_PER_ELEMENT,a=t*this.IndexArrayType.BYTES_PER_ELEMENT,u=(8-a%8)%8;if(s<0)throw new Error("Unexpected typed array class: ".concat(o,"."));i&&i instanceof ArrayBuffer?(this.data=i,this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+u,2*t),this._pos=2*t,this._finished=!0):(this.data=new ArrayBuffer(8+r+a+u),this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+u,2*t),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+s]),new Uint16Array(this.data,2,1)[0]=n,new Uint32Array(this.data,4,1)[0]=t)}return(0,u.Z)(e,[{key:"add",value:function(e,t){var n=this._pos>>1;return this.ids[n]=n,this.coords[this._pos++]=e,this.coords[this._pos++]=t,n}},{key:"finish",value:function(){var e=this._pos>>1;if(e!==this.numItems)throw new Error("Added ".concat(e," items when expected ").concat(this.numItems,"."));return _e(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}},{key:"range",value:function(e,t,n,o){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");for(var i=this.ids,s=this.coords,r=this.nodeSize,a=[0,i.length-1,0],l=[];a.length;){var u=a.pop()||0,c=a.pop()||0,p=a.pop()||0;if(c-p<=r)for(var d=p;d<=c;d++){var g=s[2*d],h=s[2*d+1];g>=e&&g<=n&&h>=t&&h<=o&&l.push(i[d])}else{var f=p+c>>1,m=s[2*f],v=s[2*f+1];m>=e&&m<=n&&v>=t&&v<=o&&l.push(i[f]),(0===u?e<=m:t<=v)&&(a.push(p),a.push(f-1),a.push(1-u)),(0===u?n>=m:o>=v)&&(a.push(f+1),a.push(c),a.push(1-u))}}return l}},{key:"within",value:function(e,t,n){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");for(var o=this.ids,i=this.coords,s=this.nodeSize,r=[0,o.length-1,0],a=[],l=n*n;r.length;){var u=r.pop()||0,c=r.pop()||0,p=r.pop()||0;if(c-p<=s)for(var d=p;d<=c;d++)Ne(i[2*d],i[2*d+1],e,t)<=l&&a.push(o[d]);else{var g=p+c>>1,h=i[2*g],f=i[2*g+1];Ne(h,f,e,t)<=l&&a.push(o[g]),(0===u?e-n<=h:t-n<=f)&&(r.push(p),r.push(g-1),r.push(1-u)),(0===u?e+n>=h:t+n>=f)&&(r.push(g+1),r.push(c),r.push(1-u))}}return a}}],[{key:"from",value:function(t){if(!(t instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");var n=new Uint8Array(t,0,2),o=(0,g.Z)(n,2),i=o[0],s=o[1];if(219!==i)throw new Error("Data does not appear to be in a KDBush format.");var r=s>>4;if(1!==r)throw new Error("Got v".concat(r," data when expected v").concat(1,"."));var a=ze[15&s];if(!a)throw new Error("Unrecognized array type.");var l=new Uint16Array(t,2,1),u=(0,g.Z)(l,1)[0],c=new Uint32Array(t,4,1);return new e((0,g.Z)(c,1)[0],u,a,t)}}]),e}();function _e(e,t,n,o,i,s){if(!(i-o<=n)){var r=o+i>>1;Ue(e,t,r,o,i,s),_e(e,t,n,o,r-1,1-s),_e(e,t,n,r+1,i,1-s)}}function Ue(e,t,n,o,i,s){for(;i>o;){if(i-o>600){var r=i-o+1,a=n-o+1,l=Math.log(r),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(r-u)/r)*(a-r/2<0?-1:1);Ue(e,t,n,Math.max(o,Math.floor(n-a*u/r+c)),Math.min(i,Math.floor(n+(r-a)*u/r+c)),s)}var p=t[2*n+s],d=o,g=i;for(Ae(e,t,o,n),t[2*i+s]>p&&Ae(e,t,o,i);d<g;){for(Ae(e,t,d,g),d++,g--;t[2*d+s]<p;)d++;for(;t[2*g+s]>p;)g--}t[2*o+s]===p?Ae(e,t,o,g):Ae(e,t,++g,i),g<=n&&(o=g+1),n<=g&&(i=g-1)}}function Ae(e,t,n,o){Ve(e,n,o),Ve(t,2*n,2*o),Ve(t,2*n+1,2*o+1)}function Ve(e,t,n){var o=e[t];e[t]=e[n],e[n]=o}function Ne(e,t,n,o){var i=e-n,s=t-o;return i*i+s*s}var We,He={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(e){return e}},Fe=Math.fround||(We=new Float32Array(1),function(e){return We[0]=+e,We[0]}),Ge=function(){function e(t){(0,l.Z)(this,e),this.options=Object.assign(Object.create(He),t),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}return(0,u.Z)(e,[{key:"load",value:function(e){var t=this.options,n=t.log,o=t.minZoom,i=t.maxZoom;n&&console.time("total time");var s="prepare ".concat(e.length," points");n&&console.time(s),this.points=e;for(var r=[],a=0;a<e.length;a++){var l=e[a];if(l.geometry){var u=(0,g.Z)(l.geometry.coordinates,2),c=u[0],p=u[1],d=Fe(Ke(c)),h=Fe(Xe(p));r.push(d,h,1/0,a,-1,1),this.options.reduce&&r.push(0)}}var f=this.trees[i+1]=this._createTree(r);n&&console.timeEnd(s);for(var m=i;m>=o;m--){var v=+Date.now();f=this.trees[m]=this._createTree(this._cluster(f,m)),n&&console.log("z%d: %d clusters in %dms",m,f.numItems,+Date.now()-v)}return n&&console.timeEnd("total time"),this}},{key:"getClusters",value:function(e,t){var n=((e[0]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,e[1])),i=180===e[2]?180:((e[2]+180)%360+360)%360-180,r=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)n=-180,i=180;else if(n>i){var a=this.getClusters([n,o,180,r],t),l=this.getClusters([-180,o,i,r],t);return a.concat(l)}var u,c=this.trees[this._limitZoom(t)],p=c.range(Ke(n),Xe(r),Ke(i),Xe(o)),d=c.data,g=[],h=(0,s.Z)(p);try{for(h.s();!(u=h.n()).done;){var f=u.value,m=this.stride*f;g.push(d[m+5]>1?Ye(d,m,this.clusterProps):this.points[d[m+3]])}}catch(v){h.e(v)}finally{h.f()}return g}},{key:"getChildren",value:function(e){var t=this._getOriginId(e),n=this._getOriginZoom(e),o="No cluster with the specified id.",i=this.trees[n];if(!i)throw new Error(o);var r=i.data;if(t*this.stride>=r.length)throw new Error(o);var a,l=this.options.radius/(this.options.extent*Math.pow(2,n-1)),u=r[t*this.stride],c=r[t*this.stride+1],p=i.within(u,c,l),d=[],g=(0,s.Z)(p);try{for(g.s();!(a=g.n()).done;){var h=a.value*this.stride;r[h+4]===e&&d.push(r[h+5]>1?Ye(r,h,this.clusterProps):this.points[r[h+3]])}}catch(f){g.e(f)}finally{g.f()}if(0===d.length)throw new Error(o);return d}},{key:"getLeaves",value:function(e,t,n){t=t||10,n=n||0;var o=[];return this._appendLeaves(o,e,t,n,0),o}},{key:"getTile",value:function(e,t,n){var o=this.trees[this._limitZoom(e)],i=Math.pow(2,e),s=this.options,r=s.extent,a=s.radius/r,l=(n-a)/i,u=(n+1+a)/i,c={features:[]};return this._addTileFeatures(o.range((t-a)/i,l,(t+1+a)/i,u),o.data,t,n,i,c),0===t&&this._addTileFeatures(o.range(1-a/i,l,1,u),o.data,i,n,i,c),t===i-1&&this._addTileFeatures(o.range(0,l,a/i,u),o.data,-1,n,i,c),c.features.length?c:null}},{key:"getClusterExpansionZoom",value:function(e){for(var t=this._getOriginZoom(e)-1;t<=this.options.maxZoom;){var n=this.getChildren(e);if(t++,1!==n.length)break;e=n[0].properties.cluster_id}return t}},{key:"_appendLeaves",value:function(e,t,n,o,i){var r,a=this.getChildren(t),l=(0,s.Z)(a);try{for(l.s();!(r=l.n()).done;){var u=r.value,c=u.properties;if(c&&c.cluster?i+c.point_count<=o?i+=c.point_count:i=this._appendLeaves(e,c.cluster_id,n,o,i):i<o?i++:e.push(u),e.length===n)break}}catch(p){l.e(p)}finally{l.f()}return i}},{key:"_createTree",value:function(e){for(var t=new Te(e.length/this.stride|0,this.options.nodeSize,Float32Array),n=0;n<e.length;n+=this.stride)t.add(e[n],e[n+1]);return t.finish(),t.data=e,t}},{key:"_addTileFeatures",value:function(e,t,n,o,i,r){var a,l=(0,s.Z)(e);try{for(l.s();!(a=l.n()).done;){var u=a.value*this.stride,c=t[u+5]>1,p=void 0,d=void 0,h=void 0;if(c)p=qe(t,u,this.clusterProps),d=t[u],h=t[u+1];else{var f=this.points[t[u+3]];p=f.properties;var m=(0,g.Z)(f.geometry.coordinates,2),v=m[0],y=m[1];d=Ke(v),h=Xe(y)}var b={type:1,geometry:[[Math.round(this.options.extent*(d*i-n)),Math.round(this.options.extent*(h*i-o))]],tags:p},L=void 0;void 0!==(L=c||this.options.generateId?t[u+3]:this.points[t[u+3]].id)&&(b.id=L),r.features.push(b)}}catch(k){l.e(k)}finally{l.f()}}},{key:"_limitZoom",value:function(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}},{key:"_cluster",value:function(e,t){for(var n=this.options,o=n.radius,i=n.extent,r=n.reduce,a=n.minPoints,l=o/(i*Math.pow(2,t)),u=e.data,c=[],p=this.stride,d=0;d<u.length;d+=p)if(!(u[d+2]<=t)){u[d+2]=t;var g,h=u[d],f=u[d+1],m=e.within(u[d],u[d+1],l),v=u[d+5],y=v,b=(0,s.Z)(m);try{for(b.s();!(g=b.n()).done;){var L=g.value*p;u[L+2]>t&&(y+=u[L+5])}}catch(R){b.e(R)}finally{b.f()}if(y>v&&y>=a){var k,C=h*v,w=f*v,M=void 0,E=-1,x=((d/p|0)<<5)+(t+1)+this.points.length,Z=(0,s.Z)(m);try{for(Z.s();!(k=Z.n()).done;){var P=k.value*p;if(!(u[P+2]<=t)){u[P+2]=t;var S=u[P+5];C+=u[P]*S,w+=u[P+1]*S,u[P+4]=x,r&&(M||(M=this._map(u,d,!0),E=this.clusterProps.length,this.clusterProps.push(M)),r(M,this._map(u,P)))}}}catch(R){Z.e(R)}finally{Z.f()}u[d+4]=x,c.push(C/y,w/y,1/0,x,-1,y),r&&c.push(E)}else{for(var O=0;O<p;O++)c.push(u[d+O]);if(y>1){var D,j=(0,s.Z)(m);try{for(j.s();!(D=j.n()).done;){var I=D.value*p;if(!(u[I+2]<=t)){u[I+2]=t;for(var B=0;B<p;B++)c.push(u[I+B])}}}catch(R){j.e(R)}finally{j.f()}}}}return c}},{key:"_getOriginId",value:function(e){return e-this.points.length>>5}},{key:"_getOriginZoom",value:function(e){return(e-this.points.length)%32}},{key:"_map",value:function(e,t,n){if(e[t+5]>1){var o=this.clusterProps[e[t+6]];return n?Object.assign({},o):o}var i=this.points[e[t+3]].properties,s=this.options.map(i);return n&&s===i?Object.assign({},s):s}}]),e}();function Ye(e,t,n){return{type:"Feature",id:e[t+3],properties:qe(e,t,n),geometry:{type:"Point",coordinates:[Je(e[t]),$e(e[t+1])]}}}function qe(e,t,n){var o=e[t+5],i=o>=1e4?"".concat(Math.round(o/1e3),"k"):o>=1e3?"".concat(Math.round(o/100)/10,"k"):o,s=e[t+6],r=-1===s?{}:Object.assign({},n[s]);return Object.assign(r,{cluster:!0,cluster_id:e[t+3],point_count:o,point_count_abbreviated:i})}function Ke(e){return e/360+.5}function Xe(e){var t=Math.sin(e*Math.PI/180),n=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return n<0?0:n>1?1:n}function Je(e){return 360*(e-.5)}function $e(e){var t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function Qe(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(n[o[i]]=e[o[i]])}return n}var et=function(){function e(){(0,l.Z)(this,e)}return(0,u.Z)(e,null,[{key:"isAdvancedMarkerAvailable",value:function(e){return google.maps.marker&&!0===e.getMapCapabilities().isAdvancedMarkersAvailable}},{key:"isAdvancedMarker",value:function(e){return google.maps.marker&&e instanceof google.maps.marker.AdvancedMarkerElement}},{key:"setMap",value:function(e,t){this.isAdvancedMarker(e)?e.map=t:e.setMap(t)}},{key:"getPosition",value:function(e){if(this.isAdvancedMarker(e)){if(e.position){if(e.position instanceof google.maps.LatLng)return e.position;if(e.position.lat&&e.position.lng)return new google.maps.LatLng(e.position.lat,e.position.lng)}return new google.maps.LatLng(null)}return e.getPosition()}},{key:"getVisible",value:function(e){return!!this.isAdvancedMarker(e)||e.getVisible()}}]),e}(),tt=function(){function e(t){(0,l.Z)(this,e);var n=t.markers,o=t.position;this.markers=n,o&&(o instanceof google.maps.LatLng?this._position=o:this._position=new google.maps.LatLng(o))}return(0,u.Z)(e,[{key:"bounds",get:function(){if(0!==this.markers.length||this._position){var e,t=new google.maps.LatLngBounds(this._position,this._position),n=(0,s.Z)(this.markers);try{for(n.s();!(e=n.n()).done;){var o=e.value;t.extend(et.getPosition(o))}}catch(i){n.e(i)}finally{n.f()}return t}}},{key:"position",get:function(){return this._position||this.bounds.getCenter()}},{key:"count",get:function(){return this.markers.filter((function(e){return et.getVisible(e)})).length}},{key:"push",value:function(e){this.markers.push(e)}},{key:"delete",value:function(){this.marker&&(et.setMap(this.marker,null),this.marker=void 0),this.markers.length=0}}]),e}(),nt=function(){function e(t){(0,l.Z)(this,e);var n=t.maxZoom,o=void 0===n?16:n;this.maxZoom=o}return(0,u.Z)(e,[{key:"noop",value:function(e){var t=e.markers;return ot(t)}}]),e}(),ot=function(e){return e.map((function(e){return new tt({position:et.getPosition(e),markers:[e]})}))},it=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(e){var o;(0,l.Z)(this,n);var i=e.maxZoom,s=e.radius,r=void 0===s?60:s,a=Qe(e,["maxZoom","radius"]);return(o=t.call(this,{maxZoom:i})).state={zoom:-1},o.superCluster=new Ge(Object.assign({maxZoom:o.maxZoom,radius:r},a)),o}return(0,u.Z)(n,[{key:"calculate",value:function(e){var t=!1,n={zoom:e.map.getZoom()};if(!Re(e.markers,this.markers)){t=!0,this.markers=(0,r.Z)(e.markers);var o=this.markers.map((function(e){var t=et.getPosition(e);return{type:"Feature",geometry:{type:"Point",coordinates:[t.lng(),t.lat()]},properties:{marker:e}}}));this.superCluster.load(o)}return t||(this.state.zoom<=this.maxZoom||n.zoom<=this.maxZoom)&&(t=!Re(this.state,n)),this.state=n,t&&(this.clusters=this.cluster(e)),{clusters:this.clusters,changed:t}}},{key:"cluster",value:function(e){var t=this,n=e.map;return this.superCluster.getClusters([-180,-90,180,90],Math.round(n.getZoom())).map((function(e){return t.transformCluster(e)}))}},{key:"transformCluster",value:function(e){var t=(0,g.Z)(e.geometry.coordinates,2),n=t[0],o=t[1],i=e.properties;if(i.cluster)return new tt({markers:this.superCluster.getLeaves(i.cluster_id,1/0).map((function(e){return e.properties.marker})),position:{lat:o,lng:n}});var s=i.marker;return new tt({markers:[s],position:et.getPosition(s)})}}]),n}(nt),st=(0,u.Z)((function e(t,n){(0,l.Z)(this,e),this.markers={sum:t.length};var o=n.map((function(e){return e.count})),i=o.reduce((function(e,t){return e+t}),0);this.clusters={count:n.length,markers:{mean:i/n.length,sum:i,min:Math.min.apply(Math,(0,r.Z)(o)),max:Math.max.apply(Math,(0,r.Z)(o))}}})),rt=function(){function e(){(0,l.Z)(this,e)}return(0,u.Z)(e,[{key:"render",value:function(e,t,n){var o=e.count,i=e.position,s=o>Math.max(10,t.clusters.markers.mean)?"#ff0000":"#0000ff",r='<svg fill="'.concat(s,'" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 240 240" width="50" height="50">\n<circle cx="120" cy="120" opacity=".6" r="70" />\n<circle cx="120" cy="120" opacity=".3" r="90" />\n<circle cx="120" cy="120" opacity=".2" r="110" />\n<text x="50%" y="50%" style="fill:#fff" text-anchor="middle" font-size="50" dominant-baseline="middle" font-family="roboto,arial,sans-serif">').concat(o,"</text>\n</svg>"),a="Cluster of ".concat(o," markers"),l=Number(google.maps.Marker.MAX_ZINDEX)+o;if(et.isAdvancedMarkerAvailable(n)){var u=(new DOMParser).parseFromString(r,"image/svg+xml").documentElement;u.setAttribute("transform","translate(0 25)");var c={map:n,position:i,zIndex:l,title:a,content:u};return new google.maps.marker.AdvancedMarkerElement(c)}var p={position:i,zIndex:l,title:a,icon:{url:"data:image/svg+xml;base64,".concat(btoa(r)),anchor:new google.maps.Point(25,25)}};return new google.maps.Marker(p)}}]),e}();var at,lt=(0,u.Z)((function e(){(0,l.Z)(this,e),function(e,t){for(var n in t.prototype)e.prototype[n]=t.prototype[n]}(e,google.maps.OverlayView)}));!function(e){e.CLUSTERING_BEGIN="clusteringbegin",e.CLUSTERING_END="clusteringend",e.CLUSTER_CLICK="click"}(at||(at={}));var ut=function(e,t,n){n.fitBounds(t.bounds)},ct=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(e){var o;(0,l.Z)(this,n);var i=e.map,s=e.markers,a=void 0===s?[]:s,u=e.algorithmOptions,c=void 0===u?{}:u,p=e.algorithm,d=void 0===p?new it(c):p,g=e.renderer,h=void 0===g?new rt:g,f=e.onClusterClick,m=void 0===f?ut:f;return(o=t.call(this)).markers=(0,r.Z)(a),o.clusters=[],o.algorithm=d,o.renderer=h,o.onClusterClick=m,i&&o.setMap(i),o}return(0,u.Z)(n,[{key:"addMarker",value:function(e,t){this.markers.includes(e)||(this.markers.push(e),t||this.render())}},{key:"addMarkers",value:function(e,t){var n=this;e.forEach((function(e){n.addMarker(e,!0)})),t||this.render()}},{key:"removeMarker",value:function(e,t){var n=this.markers.indexOf(e);return-1!==n&&(et.setMap(e,null),this.markers.splice(n,1),t||this.render(),!0)}},{key:"removeMarkers",value:function(e,t){var n=this,o=!1;return e.forEach((function(e){o=n.removeMarker(e,!0)||o})),o&&!t&&this.render(),o}},{key:"clearMarkers",value:function(e){this.markers.length=0,e||this.render()}},{key:"render",value:function(){var e=this.getMap();if(e instanceof google.maps.Map&&e.getProjection()){google.maps.event.trigger(this,at.CLUSTERING_BEGIN,this);var t=this.algorithm.calculate({markers:this.markers,map:e,mapCanvasProjection:this.getProjection()}),n=t.clusters,o=t.changed;if(o||void 0==o){var i,r=new Set,a=(0,s.Z)(n);try{for(a.s();!(i=a.n()).done;){var l=i.value;1==l.markers.length&&r.add(l.markers[0])}}catch(g){a.e(g)}finally{a.f()}var u,c=[],p=(0,s.Z)(this.clusters);try{for(p.s();!(u=p.n()).done;){var d=u.value;null!=d.marker&&(1==d.markers.length?r.has(d.marker)||et.setMap(d.marker,null):c.push(d.marker))}}catch(g){p.e(g)}finally{p.f()}this.clusters=n,this.renderClusters(),requestAnimationFrame((function(){return c.forEach((function(e){return et.setMap(e,null)}))}))}google.maps.event.trigger(this,at.CLUSTERING_END,this)}}},{key:"onAdd",value:function(){this.idleListener=this.getMap().addListener("idle",this.render.bind(this)),this.render()}},{key:"onRemove",value:function(){google.maps.event.removeListener(this.idleListener),this.reset()}},{key:"reset",value:function(){this.markers.forEach((function(e){return et.setMap(e,null)})),this.clusters.forEach((function(e){return e.delete()})),this.clusters=[]}},{key:"renderClusters",value:function(){var e=this,t=new st(this.markers,this.clusters),n=this.getMap();this.clusters.forEach((function(o){1===o.markers.length?o.marker=o.markers[0]:(o.marker=e.renderer.render(o,t,n),o.markers.forEach((function(e){return et.setMap(e,null)})),e.onClusterClick&&o.marker.addListener("click",(function(t){google.maps.event.trigger(e,at.CLUSTER_CLICK,o),e.onClusterClick(t,o,n)}))),et.setMap(o.marker,n)}))}}]),n}(lt);function pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function dt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pt(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function gt(e){var t=function(){k(!!f.useContext,"useGoogleMap is React hook and requires React version 16.8+");var e=(0,f.useContext)(C);return k(!!e,"useGoogleMap needs a GoogleMap available up in the tree"),e}(),n=(0,f.useState)(null),o=(0,g.Z)(n,2),i=o[0],s=o[1];return(0,f.useEffect)((function(){if(t&&null===i){var n=new ct(dt(dt({},e),{},{map:t}));s(n)}}),[t]),i}(0,f.memo)((function(e){var t=e.children,n=gt(e.options);return null!==n?t(n):null}));var ht={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},ft={options:function(e,t){e.setOptions(t)},position:function(e,t){e.setPosition(t)},zIndex:function(e,t){e.setZIndex(t)}};(0,f.memo)((function(e){var t=e.children,n=e.anchor,o=e.options,i=e.position,s=e.zIndex,r=e.onCloseClick,a=e.onDomReady,l=e.onContentChanged,u=e.onPositionChanged,c=e.onZindexChanged,p=e.onLoad,d=e.onUnmount,h=(0,f.useContext)(C),v=(0,f.useState)(null),y=(0,g.Z)(v,2),b=y[0],L=y[1],w=(0,f.useState)(null),M=(0,g.Z)(w,2),E=M[0],x=M[1],Z=(0,f.useState)(null),P=(0,g.Z)(Z,2),S=P[0],O=P[1],D=(0,f.useState)(null),j=(0,g.Z)(D,2),I=j[0],B=j[1],R=(0,f.useState)(null),z=(0,g.Z)(R,2),T=z[0],_=z[1],U=(0,f.useState)(null),A=(0,g.Z)(U,2),V=A[0],N=A[1],W=(0,f.useRef)(null);return(0,f.useEffect)((function(){null!==b&&(b.close(),n?b.open(h,n):b.getPosition()&&b.open(h))}),[h,b,n]),(0,f.useEffect)((function(){o&&null!==b&&b.setOptions(o)}),[b,o]),(0,f.useEffect)((function(){i&&null!==b&&b.setPosition(i)}),[i]),(0,f.useEffect)((function(){"number"===typeof s&&null!==b&&b.setZIndex(s)}),[s]),(0,f.useEffect)((function(){b&&r&&(null!==E&&google.maps.event.removeListener(E),x(google.maps.event.addListener(b,"closeclick",r)))}),[r]),(0,f.useEffect)((function(){b&&a&&(null!==S&&google.maps.event.removeListener(S),O(google.maps.event.addListener(b,"domready",a)))}),[a]),(0,f.useEffect)((function(){b&&l&&(null!==I&&google.maps.event.removeListener(I),B(google.maps.event.addListener(b,"content_changed",l)))}),[l]),(0,f.useEffect)((function(){b&&u&&(null!==T&&google.maps.event.removeListener(T),_(google.maps.event.addListener(b,"position_changed",u)))}),[u]),(0,f.useEffect)((function(){b&&c&&(null!==V&&google.maps.event.removeListener(V),N(google.maps.event.addListener(b,"zindex_changed",c)))}),[c]),(0,f.useEffect)((function(){var e=new google.maps.InfoWindow(o);return L(e),W.current=document.createElement("div"),r&&x(google.maps.event.addListener(e,"closeclick",r)),a&&O(google.maps.event.addListener(e,"domready",a)),l&&B(google.maps.event.addListener(e,"content_changed",l)),u&&_(google.maps.event.addListener(e,"position_changed",u)),c&&N(google.maps.event.addListener(e,"zindex_changed",c)),e.setContent(W.current),i&&e.setPosition(i),s&&e.setZIndex(s),n?e.open(h,n):e.getPosition()?e.open(h):k(!1,"You must provide either an anchor (typically render it inside a <Marker>) or a position props for <InfoWindow>."),p&&p(e),function(){E&&google.maps.event.removeListener(E),I&&google.maps.event.removeListener(I),S&&google.maps.event.removeListener(S),T&&google.maps.event.removeListener(T),V&&google.maps.event.removeListener(V),d&&d(e),e.close()}}),[]),W.current?(0,m.createPortal)(f.Children.only(t),W.current):null}));var mt=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"containerElement",null),b((0,c.Z)(e),"state",{infoWindow:null}),b((0,c.Z)(e),"open",(function(t,n){n?t.open(e.context,n):t.getPosition()?t.open(e.context):k(!1,"You must provide either an anchor (typically render it inside a <Marker>) or a position props for <InfoWindow>.")})),b((0,c.Z)(e),"setInfoWindowCallback",(function(){null!==e.state.infoWindow&&null!==e.containerElement&&(e.state.infoWindow.setContent(e.containerElement),e.open(e.state.infoWindow,e.props.anchor),e.props.onLoad&&e.props.onLoad(e.state.infoWindow))})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.InfoWindow(this.props.options);this.containerElement=document.createElement("div"),this.registeredEvents=Z({updaterMap:ft,eventMap:ht,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{infoWindow:e}}),this.setInfoWindowCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.infoWindow&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:ft,eventMap:ht,prevProps:e,nextProps:this.props,instance:this.state.infoWindow}))}},{key:"componentWillUnmount",value:function(){null!==this.state.infoWindow&&(x(this.registeredEvents),this.props.onUnmount&&this.props.onUnmount(this.state.infoWindow),this.state.infoWindow.close())}},{key:"render",value:function(){return this.containerElement?(0,m.createPortal)(f.Children.only(this.props.children),this.containerElement):null}}]),n}(f.PureComponent);function vt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function yt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?vt(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(mt,"contextType",C);var bt={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},Lt={draggable:function(e,t){e.setDraggable(t)},editable:function(e,t){e.setEditable(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)},path:function(e,t){e.setPath(t)},visible:function(e,t){e.setVisible(t)}},kt={};(0,f.memo)((function(e){var t=e.options,n=e.draggable,o=e.editable,i=e.visible,s=e.path,r=e.onDblClick,a=e.onDragEnd,l=e.onDragStart,u=e.onMouseDown,c=e.onMouseMove,p=e.onMouseOut,d=e.onMouseOver,h=e.onMouseUp,m=e.onRightClick,v=e.onClick,y=e.onDrag,b=e.onLoad,L=e.onUnmount,k=(0,f.useContext)(C),w=(0,f.useState)(null),M=(0,g.Z)(w,2),E=M[0],x=M[1],Z=(0,f.useState)(null),P=(0,g.Z)(Z,2),S=P[0],O=P[1],D=(0,f.useState)(null),j=(0,g.Z)(D,2),I=j[0],B=j[1],R=(0,f.useState)(null),z=(0,g.Z)(R,2),T=z[0],_=z[1],U=(0,f.useState)(null),A=(0,g.Z)(U,2),V=A[0],N=A[1],W=(0,f.useState)(null),H=(0,g.Z)(W,2),F=H[0],G=H[1],Y=(0,f.useState)(null),q=(0,g.Z)(Y,2),K=q[0],X=q[1],J=(0,f.useState)(null),$=(0,g.Z)(J,2),Q=$[0],ee=$[1],te=(0,f.useState)(null),ne=(0,g.Z)(te,2),oe=ne[0],ie=ne[1],se=(0,f.useState)(null),re=(0,g.Z)(se,2),ae=re[0],le=re[1],ue=(0,f.useState)(null),ce=(0,g.Z)(ue,2),pe=ce[0],de=ce[1],ge=(0,f.useState)(null),he=(0,g.Z)(ge,2),fe=he[0],me=he[1];return(0,f.useEffect)((function(){null!==E&&E.setMap(k)}),[k]),(0,f.useEffect)((function(){"undefined"!==typeof t&&null!==E&&E.setOptions(t)}),[E,t]),(0,f.useEffect)((function(){"undefined"!==typeof n&&null!==E&&E.setDraggable(n)}),[E,n]),(0,f.useEffect)((function(){"undefined"!==typeof o&&null!==E&&E.setEditable(o)}),[E,o]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==E&&E.setVisible(i)}),[E,i]),(0,f.useEffect)((function(){"undefined"!==typeof s&&null!==E&&E.setPath(s)}),[E,s]),(0,f.useEffect)((function(){E&&r&&(null!==S&&google.maps.event.removeListener(S),O(google.maps.event.addListener(E,"dblclick",r)))}),[r]),(0,f.useEffect)((function(){E&&a&&(null!==I&&google.maps.event.removeListener(I),B(google.maps.event.addListener(E,"dragend",a)))}),[a]),(0,f.useEffect)((function(){E&&l&&(null!==T&&google.maps.event.removeListener(T),_(google.maps.event.addListener(E,"dragstart",l)))}),[l]),(0,f.useEffect)((function(){E&&u&&(null!==V&&google.maps.event.removeListener(V),N(google.maps.event.addListener(E,"mousedown",u)))}),[u]),(0,f.useEffect)((function(){E&&c&&(null!==F&&google.maps.event.removeListener(F),G(google.maps.event.addListener(E,"mousemove",c)))}),[c]),(0,f.useEffect)((function(){E&&p&&(null!==K&&google.maps.event.removeListener(K),X(google.maps.event.addListener(E,"mouseout",p)))}),[p]),(0,f.useEffect)((function(){E&&d&&(null!==Q&&google.maps.event.removeListener(Q),ee(google.maps.event.addListener(E,"mouseover",d)))}),[d]),(0,f.useEffect)((function(){E&&h&&(null!==oe&&google.maps.event.removeListener(oe),ie(google.maps.event.addListener(E,"mouseup",h)))}),[h]),(0,f.useEffect)((function(){E&&m&&(null!==ae&&google.maps.event.removeListener(ae),le(google.maps.event.addListener(E,"rightclick",m)))}),[m]),(0,f.useEffect)((function(){E&&v&&(null!==pe&&google.maps.event.removeListener(pe),de(google.maps.event.addListener(E,"click",v)))}),[v]),(0,f.useEffect)((function(){E&&y&&(null!==fe&&google.maps.event.removeListener(fe),me(google.maps.event.addListener(E,"drag",y)))}),[y]),(0,f.useEffect)((function(){var e=new google.maps.Polyline(yt(yt({},t||kt),{},{map:k}));return s&&e.setPath(s),"undefined"!==typeof i&&e.setVisible(i),"undefined"!==typeof o&&e.setEditable(o),"undefined"!==typeof n&&e.setDraggable(n),r&&O(google.maps.event.addListener(e,"dblclick",r)),a&&B(google.maps.event.addListener(e,"dragend",a)),l&&_(google.maps.event.addListener(e,"dragstart",l)),u&&N(google.maps.event.addListener(e,"mousedown",u)),c&&G(google.maps.event.addListener(e,"mousemove",c)),p&&X(google.maps.event.addListener(e,"mouseout",p)),d&&ee(google.maps.event.addListener(e,"mouseover",d)),h&&ie(google.maps.event.addListener(e,"mouseup",h)),m&&le(google.maps.event.addListener(e,"rightclick",m)),v&&de(google.maps.event.addListener(e,"click",v)),y&&me(google.maps.event.addListener(e,"drag",y)),x(e),b&&b(e),function(){null!==S&&google.maps.event.removeListener(S),null!==I&&google.maps.event.removeListener(I),null!==T&&google.maps.event.removeListener(T),null!==V&&google.maps.event.removeListener(V),null!==F&&google.maps.event.removeListener(F),null!==K&&google.maps.event.removeListener(K),null!==Q&&google.maps.event.removeListener(Q),null!==oe&&google.maps.event.removeListener(oe),null!==ae&&google.maps.event.removeListener(ae),null!==pe&&google.maps.event.removeListener(pe),L&&L(e),e.setMap(null)}}),[]),null}));var Ct=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{polyline:null}),b((0,c.Z)(e),"setPolylineCallback",(function(){null!==e.state.polyline&&e.props.onLoad&&e.props.onLoad(e.state.polyline)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.Polyline(yt(yt({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:Lt,eventMap:bt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{polyline:e}}),this.setPolylineCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.polyline&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Lt,eventMap:bt,prevProps:e,nextProps:this.props,instance:this.state.polyline}))}},{key:"componentWillUnmount",value:function(){null!==this.state.polyline&&(this.props.onUnmount&&this.props.onUnmount(this.state.polyline),x(this.registeredEvents),this.state.polyline.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Mt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?wt(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(Ct,"contextType",C);var Et={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},xt={draggable:function(e,t){e.setDraggable(t)},editable:function(e,t){e.setEditable(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)},path:function(e,t){e.setPath(t)},paths:function(e,t){e.setPaths(t)},visible:function(e,t){e.setVisible(t)}};(0,f.memo)((function(e){var t=e.options,n=e.draggable,o=e.editable,i=e.visible,s=e.path,r=e.paths,a=e.onDblClick,l=e.onDragEnd,u=e.onDragStart,c=e.onMouseDown,p=e.onMouseMove,d=e.onMouseOut,h=e.onMouseOver,m=e.onMouseUp,v=e.onRightClick,y=e.onClick,b=e.onDrag,L=e.onLoad,k=e.onUnmount,w=e.onEdit,M=(0,f.useContext)(C),E=(0,f.useState)(null),x=(0,g.Z)(E,2),Z=x[0],P=x[1],S=(0,f.useState)(null),O=(0,g.Z)(S,2),D=O[0],j=O[1],I=(0,f.useState)(null),B=(0,g.Z)(I,2),R=B[0],z=B[1],T=(0,f.useState)(null),_=(0,g.Z)(T,2),U=_[0],A=_[1],V=(0,f.useState)(null),N=(0,g.Z)(V,2),W=N[0],H=N[1],F=(0,f.useState)(null),G=(0,g.Z)(F,2),Y=G[0],q=G[1],K=(0,f.useState)(null),X=(0,g.Z)(K,2),J=X[0],$=X[1],Q=(0,f.useState)(null),ee=(0,g.Z)(Q,2),te=ee[0],ne=ee[1],oe=(0,f.useState)(null),ie=(0,g.Z)(oe,2),se=ie[0],re=ie[1],ae=(0,f.useState)(null),le=(0,g.Z)(ae,2),ue=le[0],ce=le[1],pe=(0,f.useState)(null),de=(0,g.Z)(pe,2),ge=de[0],he=de[1],fe=(0,f.useState)(null),me=(0,g.Z)(fe,2),ve=me[0],ye=me[1];return(0,f.useEffect)((function(){null!==Z&&Z.setMap(M)}),[M]),(0,f.useEffect)((function(){"undefined"!==typeof t&&null!==Z&&Z.setOptions(t)}),[Z,t]),(0,f.useEffect)((function(){"undefined"!==typeof n&&null!==Z&&Z.setDraggable(n)}),[Z,n]),(0,f.useEffect)((function(){"undefined"!==typeof o&&null!==Z&&Z.setEditable(o)}),[Z,o]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==Z&&Z.setVisible(i)}),[Z,i]),(0,f.useEffect)((function(){"undefined"!==typeof s&&null!==Z&&Z.setPath(s)}),[Z,s]),(0,f.useEffect)((function(){"undefined"!==typeof r&&null!==Z&&Z.setPaths(r)}),[Z,r]),(0,f.useEffect)((function(){Z&&"function"===typeof a&&(null!==D&&google.maps.event.removeListener(D),j(google.maps.event.addListener(Z,"dblclick",a)))}),[a]),(0,f.useEffect)((function(){Z&&(google.maps.event.addListener(Z.getPath(),"insert_at",(function(){null===w||void 0===w||w(Z)})),google.maps.event.addListener(Z.getPath(),"set_at",(function(){null===w||void 0===w||w(Z)})),google.maps.event.addListener(Z.getPath(),"remove_at",(function(){null===w||void 0===w||w(Z)})))}),[Z,w]),(0,f.useEffect)((function(){Z&&"function"===typeof l&&(null!==R&&google.maps.event.removeListener(R),z(google.maps.event.addListener(Z,"dragend",l)))}),[l]),(0,f.useEffect)((function(){Z&&"function"===typeof u&&(null!==U&&google.maps.event.removeListener(U),A(google.maps.event.addListener(Z,"dragstart",u)))}),[u]),(0,f.useEffect)((function(){Z&&"function"===typeof c&&(null!==W&&google.maps.event.removeListener(W),H(google.maps.event.addListener(Z,"mousedown",c)))}),[c]),(0,f.useEffect)((function(){Z&&"function"===typeof p&&(null!==Y&&google.maps.event.removeListener(Y),q(google.maps.event.addListener(Z,"mousemove",p)))}),[p]),(0,f.useEffect)((function(){Z&&"function"===typeof d&&(null!==J&&google.maps.event.removeListener(J),$(google.maps.event.addListener(Z,"mouseout",d)))}),[d]),(0,f.useEffect)((function(){Z&&"function"===typeof h&&(null!==te&&google.maps.event.removeListener(te),ne(google.maps.event.addListener(Z,"mouseover",h)))}),[h]),(0,f.useEffect)((function(){Z&&"function"===typeof m&&(null!==se&&google.maps.event.removeListener(se),re(google.maps.event.addListener(Z,"mouseup",m)))}),[m]),(0,f.useEffect)((function(){Z&&"function"===typeof v&&(null!==ue&&google.maps.event.removeListener(ue),ce(google.maps.event.addListener(Z,"rightclick",v)))}),[v]),(0,f.useEffect)((function(){Z&&"function"===typeof y&&(null!==ge&&google.maps.event.removeListener(ge),he(google.maps.event.addListener(Z,"click",y)))}),[y]),(0,f.useEffect)((function(){Z&&"function"===typeof b&&(null!==ve&&google.maps.event.removeListener(ve),ye(google.maps.event.addListener(Z,"drag",b)))}),[b]),(0,f.useEffect)((function(){var e=new google.maps.Polygon(Mt(Mt({},t),{},{map:M}));return s&&e.setPath(s),r&&e.setPaths(r),"undefined"!==typeof i&&e.setVisible(i),"undefined"!==typeof o&&e.setEditable(o),"undefined"!==typeof n&&e.setDraggable(n),a&&j(google.maps.event.addListener(e,"dblclick",a)),l&&z(google.maps.event.addListener(e,"dragend",l)),u&&A(google.maps.event.addListener(e,"dragstart",u)),c&&H(google.maps.event.addListener(e,"mousedown",c)),p&&q(google.maps.event.addListener(e,"mousemove",p)),d&&$(google.maps.event.addListener(e,"mouseout",d)),h&&ne(google.maps.event.addListener(e,"mouseover",h)),m&&re(google.maps.event.addListener(e,"mouseup",m)),v&&ce(google.maps.event.addListener(e,"rightclick",v)),y&&he(google.maps.event.addListener(e,"click",y)),b&&ye(google.maps.event.addListener(e,"drag",b)),P(e),L&&L(e),function(){null!==D&&google.maps.event.removeListener(D),null!==R&&google.maps.event.removeListener(R),null!==U&&google.maps.event.removeListener(U),null!==W&&google.maps.event.removeListener(W),null!==Y&&google.maps.event.removeListener(Y),null!==J&&google.maps.event.removeListener(J),null!==te&&google.maps.event.removeListener(te),null!==se&&google.maps.event.removeListener(se),null!==ue&&google.maps.event.removeListener(ue),null!==ge&&google.maps.event.removeListener(ge),k&&k(e),e.setMap(null)}}),[]),null}));var Zt=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=this.props.options||{};this.polygon=new google.maps.Polygon(e),this.polygon.setMap(this.context),this.registeredEvents=Z({updaterMap:xt,eventMap:Et,prevProps:{},nextProps:this.props,instance:this.polygon}),this.props.onLoad&&this.props.onLoad(this.polygon)}},{key:"componentDidUpdate",value:function(e){this.polygon&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:xt,eventMap:Et,prevProps:e,nextProps:this.props,instance:this.polygon}))}},{key:"componentWillUnmount",value:function(){this.polygon&&(this.props.onUnmount&&this.props.onUnmount(this.polygon),x(this.registeredEvents),this.polygon&&this.polygon.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function Pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function St(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Pt(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(Zt,"contextType",C);var Ot={onBoundsChanged:"bounds_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},Dt={bounds:function(e,t){e.setBounds(t)},draggable:function(e,t){e.setDraggable(t)},editable:function(e,t){e.setEditable(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)},visible:function(e,t){e.setVisible(t)}};(0,f.memo)((function(e){var t=e.options,n=e.bounds,o=e.draggable,i=e.editable,s=e.visible,r=e.onDblClick,a=e.onDragEnd,l=e.onDragStart,u=e.onMouseDown,c=e.onMouseMove,p=e.onMouseOut,d=e.onMouseOver,h=e.onMouseUp,m=e.onRightClick,v=e.onClick,y=e.onDrag,b=e.onBoundsChanged,L=e.onLoad,k=e.onUnmount,w=(0,f.useContext)(C),M=(0,f.useState)(null),E=(0,g.Z)(M,2),x=E[0],Z=E[1],P=(0,f.useState)(null),S=(0,g.Z)(P,2),O=S[0],D=S[1],j=(0,f.useState)(null),I=(0,g.Z)(j,2),B=I[0],R=I[1],z=(0,f.useState)(null),T=(0,g.Z)(z,2),_=T[0],U=T[1],A=(0,f.useState)(null),V=(0,g.Z)(A,2),N=V[0],W=V[1],H=(0,f.useState)(null),F=(0,g.Z)(H,2),G=F[0],Y=F[1],q=(0,f.useState)(null),K=(0,g.Z)(q,2),X=K[0],J=K[1],$=(0,f.useState)(null),Q=(0,g.Z)($,2),ee=Q[0],te=Q[1],ne=(0,f.useState)(null),oe=(0,g.Z)(ne,2),ie=oe[0],se=oe[1],re=(0,f.useState)(null),ae=(0,g.Z)(re,2),le=ae[0],ue=ae[1],ce=(0,f.useState)(null),pe=(0,g.Z)(ce,2),de=pe[0],ge=pe[1],he=(0,f.useState)(null),fe=(0,g.Z)(he,2),me=fe[0],ve=fe[1],ye=(0,f.useState)(null),be=(0,g.Z)(ye,2),Le=be[0],ke=be[1];return(0,f.useEffect)((function(){null!==x&&x.setMap(w)}),[w]),(0,f.useEffect)((function(){"undefined"!==typeof t&&null!==x&&x.setOptions(t)}),[x,t]),(0,f.useEffect)((function(){"undefined"!==typeof o&&null!==x&&x.setDraggable(o)}),[x,o]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==x&&x.setEditable(i)}),[x,i]),(0,f.useEffect)((function(){"undefined"!==typeof s&&null!==x&&x.setVisible(s)}),[x,s]),(0,f.useEffect)((function(){"undefined"!==typeof n&&null!==x&&x.setBounds(n)}),[x,n]),(0,f.useEffect)((function(){x&&r&&(null!==O&&google.maps.event.removeListener(O),D(google.maps.event.addListener(x,"dblclick",r)))}),[r]),(0,f.useEffect)((function(){x&&a&&(null!==B&&google.maps.event.removeListener(B),R(google.maps.event.addListener(x,"dragend",a)))}),[a]),(0,f.useEffect)((function(){x&&l&&(null!==_&&google.maps.event.removeListener(_),U(google.maps.event.addListener(x,"dragstart",l)))}),[l]),(0,f.useEffect)((function(){x&&u&&(null!==N&&google.maps.event.removeListener(N),W(google.maps.event.addListener(x,"mousedown",u)))}),[u]),(0,f.useEffect)((function(){x&&c&&(null!==G&&google.maps.event.removeListener(G),Y(google.maps.event.addListener(x,"mousemove",c)))}),[c]),(0,f.useEffect)((function(){x&&p&&(null!==X&&google.maps.event.removeListener(X),J(google.maps.event.addListener(x,"mouseout",p)))}),[p]),(0,f.useEffect)((function(){x&&d&&(null!==ee&&google.maps.event.removeListener(ee),te(google.maps.event.addListener(x,"mouseover",d)))}),[d]),(0,f.useEffect)((function(){x&&h&&(null!==ie&&google.maps.event.removeListener(ie),se(google.maps.event.addListener(x,"mouseup",h)))}),[h]),(0,f.useEffect)((function(){x&&m&&(null!==le&&google.maps.event.removeListener(le),ue(google.maps.event.addListener(x,"rightclick",m)))}),[m]),(0,f.useEffect)((function(){x&&v&&(null!==de&&google.maps.event.removeListener(de),ge(google.maps.event.addListener(x,"click",v)))}),[v]),(0,f.useEffect)((function(){x&&y&&(null!==me&&google.maps.event.removeListener(me),ve(google.maps.event.addListener(x,"drag",y)))}),[y]),(0,f.useEffect)((function(){x&&b&&(null!==Le&&google.maps.event.removeListener(Le),ke(google.maps.event.addListener(x,"bounds_changed",b)))}),[b]),(0,f.useEffect)((function(){var e=new google.maps.Rectangle(St(St({},t),{},{map:w}));return"undefined"!==typeof s&&e.setVisible(s),"undefined"!==typeof i&&e.setEditable(i),"undefined"!==typeof o&&e.setDraggable(o),"undefined"!==typeof n&&e.setBounds(n),r&&D(google.maps.event.addListener(e,"dblclick",r)),a&&R(google.maps.event.addListener(e,"dragend",a)),l&&U(google.maps.event.addListener(e,"dragstart",l)),u&&W(google.maps.event.addListener(e,"mousedown",u)),c&&Y(google.maps.event.addListener(e,"mousemove",c)),p&&J(google.maps.event.addListener(e,"mouseout",p)),d&&te(google.maps.event.addListener(e,"mouseover",d)),h&&se(google.maps.event.addListener(e,"mouseup",h)),m&&ue(google.maps.event.addListener(e,"rightclick",m)),v&&ge(google.maps.event.addListener(e,"click",v)),y&&ve(google.maps.event.addListener(e,"drag",y)),b&&ke(google.maps.event.addListener(e,"bounds_changed",b)),Z(e),L&&L(e),function(){null!==O&&google.maps.event.removeListener(O),null!==B&&google.maps.event.removeListener(B),null!==_&&google.maps.event.removeListener(_),null!==N&&google.maps.event.removeListener(N),null!==G&&google.maps.event.removeListener(G),null!==X&&google.maps.event.removeListener(X),null!==ee&&google.maps.event.removeListener(ee),null!==ie&&google.maps.event.removeListener(ie),null!==le&&google.maps.event.removeListener(le),null!==de&&google.maps.event.removeListener(de),null!==me&&google.maps.event.removeListener(me),null!==Le&&google.maps.event.removeListener(Le),k&&k(e),e.setMap(null)}}),[]),null}));var jt=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{rectangle:null}),b((0,c.Z)(e),"setRectangleCallback",(function(){null!==e.state.rectangle&&e.props.onLoad&&e.props.onLoad(e.state.rectangle)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.Rectangle(St(St({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:Dt,eventMap:Ot,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{rectangle:e}}),this.setRectangleCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.rectangle&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Dt,eventMap:Ot,prevProps:e,nextProps:this.props,instance:this.state.rectangle}))}},{key:"componentWillUnmount",value:function(){null!==this.state.rectangle&&(this.props.onUnmount&&this.props.onUnmount(this.state.rectangle),x(this.registeredEvents),this.state.rectangle.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function It(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Bt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?It(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):It(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(jt,"contextType",C);var Rt={onCenterChanged:"center_changed",onRadiusChanged:"radius_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},zt={center:function(e,t){e.setCenter(t)},draggable:function(e,t){e.setDraggable(t)},editable:function(e,t){e.setEditable(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)},radius:function(e,t){e.setRadius(t)},visible:function(e,t){e.setVisible(t)}},Tt={};(0,f.memo)((function(e){var t=e.options,n=e.center,o=e.radius,i=e.draggable,s=e.editable,r=e.visible,a=e.onDblClick,l=e.onDragEnd,u=e.onDragStart,c=e.onMouseDown,p=e.onMouseMove,d=e.onMouseOut,h=e.onMouseOver,m=e.onMouseUp,v=e.onRightClick,y=e.onClick,b=e.onDrag,L=e.onCenterChanged,k=e.onRadiusChanged,w=e.onLoad,M=e.onUnmount,E=(0,f.useContext)(C),x=(0,f.useState)(null),Z=(0,g.Z)(x,2),P=Z[0],S=Z[1],O=(0,f.useState)(null),D=(0,g.Z)(O,2),j=D[0],I=D[1],B=(0,f.useState)(null),R=(0,g.Z)(B,2),z=R[0],T=R[1],_=(0,f.useState)(null),U=(0,g.Z)(_,2),A=U[0],V=U[1],N=(0,f.useState)(null),W=(0,g.Z)(N,2),H=W[0],F=W[1],G=(0,f.useState)(null),Y=(0,g.Z)(G,2),q=Y[0],K=Y[1],X=(0,f.useState)(null),J=(0,g.Z)(X,2),$=J[0],Q=J[1],ee=(0,f.useState)(null),te=(0,g.Z)(ee,2),ne=te[0],oe=te[1],ie=(0,f.useState)(null),se=(0,g.Z)(ie,2),re=se[0],ae=se[1],le=(0,f.useState)(null),ue=(0,g.Z)(le,2),ce=ue[0],pe=ue[1],de=(0,f.useState)(null),ge=(0,g.Z)(de,2),he=ge[0],fe=ge[1],me=(0,f.useState)(null),ve=(0,g.Z)(me,2),ye=ve[0],be=ve[1],Le=(0,f.useState)(null),ke=(0,g.Z)(Le,2),Ce=ke[0],we=ke[1],Me=(0,f.useState)(null),Ee=(0,g.Z)(Me,2),xe=Ee[0],Ze=Ee[1];return(0,f.useEffect)((function(){null!==P&&P.setMap(E)}),[E]),(0,f.useEffect)((function(){"undefined"!==typeof t&&null!==P&&P.setOptions(t)}),[P,t]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==P&&P.setDraggable(i)}),[P,i]),(0,f.useEffect)((function(){"undefined"!==typeof s&&null!==P&&P.setEditable(s)}),[P,s]),(0,f.useEffect)((function(){"undefined"!==typeof r&&null!==P&&P.setVisible(r)}),[P,r]),(0,f.useEffect)((function(){"number"===typeof o&&null!==P&&P.setRadius(o)}),[P,o]),(0,f.useEffect)((function(){"undefined"!==typeof n&&null!==P&&P.setCenter(n)}),[P,n]),(0,f.useEffect)((function(){P&&a&&(null!==j&&google.maps.event.removeListener(j),I(google.maps.event.addListener(P,"dblclick",a)))}),[a]),(0,f.useEffect)((function(){P&&l&&(null!==z&&google.maps.event.removeListener(z),T(google.maps.event.addListener(P,"dragend",l)))}),[l]),(0,f.useEffect)((function(){P&&u&&(null!==A&&google.maps.event.removeListener(A),V(google.maps.event.addListener(P,"dragstart",u)))}),[u]),(0,f.useEffect)((function(){P&&c&&(null!==H&&google.maps.event.removeListener(H),F(google.maps.event.addListener(P,"mousedown",c)))}),[c]),(0,f.useEffect)((function(){P&&p&&(null!==q&&google.maps.event.removeListener(q),K(google.maps.event.addListener(P,"mousemove",p)))}),[p]),(0,f.useEffect)((function(){P&&d&&(null!==$&&google.maps.event.removeListener($),Q(google.maps.event.addListener(P,"mouseout",d)))}),[d]),(0,f.useEffect)((function(){P&&h&&(null!==ne&&google.maps.event.removeListener(ne),oe(google.maps.event.addListener(P,"mouseover",h)))}),[h]),(0,f.useEffect)((function(){P&&m&&(null!==re&&google.maps.event.removeListener(re),ae(google.maps.event.addListener(P,"mouseup",m)))}),[m]),(0,f.useEffect)((function(){P&&v&&(null!==ce&&google.maps.event.removeListener(ce),pe(google.maps.event.addListener(P,"rightclick",v)))}),[v]),(0,f.useEffect)((function(){P&&y&&(null!==he&&google.maps.event.removeListener(he),fe(google.maps.event.addListener(P,"click",y)))}),[y]),(0,f.useEffect)((function(){P&&b&&(null!==ye&&google.maps.event.removeListener(ye),be(google.maps.event.addListener(P,"drag",b)))}),[b]),(0,f.useEffect)((function(){P&&L&&(null!==Ce&&google.maps.event.removeListener(Ce),we(google.maps.event.addListener(P,"center_changed",L)))}),[y]),(0,f.useEffect)((function(){P&&k&&(null!==xe&&google.maps.event.removeListener(xe),Ze(google.maps.event.addListener(P,"radius_changed",k)))}),[k]),(0,f.useEffect)((function(){var e=new google.maps.Circle(Bt(Bt({},t||Tt),{},{map:E}));return"number"===typeof o&&e.setRadius(o),"undefined"!==typeof n&&e.setCenter(n),"number"===typeof o&&e.setRadius(o),"undefined"!==typeof r&&e.setVisible(r),"undefined"!==typeof s&&e.setEditable(s),"undefined"!==typeof i&&e.setDraggable(i),a&&I(google.maps.event.addListener(e,"dblclick",a)),l&&T(google.maps.event.addListener(e,"dragend",l)),u&&V(google.maps.event.addListener(e,"dragstart",u)),c&&F(google.maps.event.addListener(e,"mousedown",c)),p&&K(google.maps.event.addListener(e,"mousemove",p)),d&&Q(google.maps.event.addListener(e,"mouseout",d)),h&&oe(google.maps.event.addListener(e,"mouseover",h)),m&&ae(google.maps.event.addListener(e,"mouseup",m)),v&&pe(google.maps.event.addListener(e,"rightclick",v)),y&&fe(google.maps.event.addListener(e,"click",y)),b&&be(google.maps.event.addListener(e,"drag",b)),L&&we(google.maps.event.addListener(e,"center_changed",L)),k&&Ze(google.maps.event.addListener(e,"radius_changed",k)),S(e),w&&w(e),function(){null!==j&&google.maps.event.removeListener(j),null!==z&&google.maps.event.removeListener(z),null!==A&&google.maps.event.removeListener(A),null!==H&&google.maps.event.removeListener(H),null!==q&&google.maps.event.removeListener(q),null!==$&&google.maps.event.removeListener($),null!==ne&&google.maps.event.removeListener(ne),null!==re&&google.maps.event.removeListener(re),null!==ce&&google.maps.event.removeListener(ce),null!==he&&google.maps.event.removeListener(he),null!==Ce&&google.maps.event.removeListener(Ce),null!==xe&&google.maps.event.removeListener(xe),M&&M(e),e.setMap(null)}}),[]),null}));var _t=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{circle:null}),b((0,c.Z)(e),"setCircleCallback",(function(){null!==e.state.circle&&e.props.onLoad&&e.props.onLoad(e.state.circle)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.Circle(Bt(Bt({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:zt,eventMap:Rt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{circle:e}}),this.setCircleCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.circle&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:zt,eventMap:Rt,prevProps:e,nextProps:this.props,instance:this.state.circle}))}},{key:"componentWillUnmount",value:function(){var e;null!==this.state.circle&&(this.props.onUnmount&&this.props.onUnmount(this.state.circle),x(this.registeredEvents),null===(e=this.state.circle)||void 0===e||e.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function Ut(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function At(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ut(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ut(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(_t,"contextType",C);var Vt={onClick:"click",onDblClick:"dblclick",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick",onAddFeature:"addfeature",onRemoveFeature:"removefeature",onRemoveProperty:"removeproperty",onSetGeometry:"setgeometry",onSetProperty:"setproperty"},Nt={add:function(e,t){e.add(t)},addgeojson:function(e,t,n){e.addGeoJson(t,n)},contains:function(e,t){e.contains(t)},foreach:function(e,t){e.forEach(t)},loadgeojson:function(e,t,n,o){e.loadGeoJson(t,n,o)},overridestyle:function(e,t,n){e.overrideStyle(t,n)},remove:function(e,t){e.remove(t)},revertstyle:function(e,t){e.revertStyle(t)},controlposition:function(e,t){e.setControlPosition(t)},controls:function(e,t){e.setControls(t)},drawingmode:function(e,t){e.setDrawingMode(t)},map:function(e,t){e.setMap(t)},style:function(e,t){e.setStyle(t)},togeojson:function(e,t){e.toGeoJson(t)}};(0,f.memo)((function(e){var t=e.options,n=e.onClick,o=e.onDblClick,i=e.onMouseDown,s=e.onMouseMove,r=e.onMouseOut,a=e.onMouseOver,l=e.onMouseUp,u=e.onRightClick,c=e.onAddFeature,p=e.onRemoveFeature,d=e.onRemoveProperty,h=e.onSetGeometry,m=e.onSetProperty,v=e.onLoad,y=e.onUnmount,b=(0,f.useContext)(C),L=(0,f.useState)(null),k=(0,g.Z)(L,2),w=k[0],M=k[1],E=(0,f.useState)(null),x=(0,g.Z)(E,2),Z=x[0],P=x[1],S=(0,f.useState)(null),O=(0,g.Z)(S,2),D=O[0],j=O[1],I=(0,f.useState)(null),B=(0,g.Z)(I,2),R=B[0],z=B[1],T=(0,f.useState)(null),_=(0,g.Z)(T,2),U=_[0],A=_[1],V=(0,f.useState)(null),N=(0,g.Z)(V,2),W=N[0],H=N[1],F=(0,f.useState)(null),G=(0,g.Z)(F,2),Y=G[0],q=G[1],K=(0,f.useState)(null),X=(0,g.Z)(K,2),J=X[0],$=X[1],Q=(0,f.useState)(null),ee=(0,g.Z)(Q,2),te=ee[0],ne=ee[1],oe=(0,f.useState)(null),ie=(0,g.Z)(oe,2),se=ie[0],re=ie[1],ae=(0,f.useState)(null),le=(0,g.Z)(ae,2),ue=le[0],ce=le[1],pe=(0,f.useState)(null),de=(0,g.Z)(pe,2),ge=de[0],he=de[1],fe=(0,f.useState)(null),me=(0,g.Z)(fe,2),ve=me[0],ye=me[1],be=(0,f.useState)(null),Le=(0,g.Z)(be,2),ke=Le[0],Ce=Le[1];return(0,f.useEffect)((function(){null!==w&&w.setMap(b)}),[b]),(0,f.useEffect)((function(){w&&o&&(null!==Z&&google.maps.event.removeListener(Z),P(google.maps.event.addListener(w,"dblclick",o)))}),[o]),(0,f.useEffect)((function(){w&&i&&(null!==D&&google.maps.event.removeListener(D),j(google.maps.event.addListener(w,"mousedown",i)))}),[i]),(0,f.useEffect)((function(){w&&s&&(null!==R&&google.maps.event.removeListener(R),z(google.maps.event.addListener(w,"mousemove",s)))}),[s]),(0,f.useEffect)((function(){w&&r&&(null!==U&&google.maps.event.removeListener(U),A(google.maps.event.addListener(w,"mouseout",r)))}),[r]),(0,f.useEffect)((function(){w&&a&&(null!==W&&google.maps.event.removeListener(W),H(google.maps.event.addListener(w,"mouseover",a)))}),[a]),(0,f.useEffect)((function(){w&&l&&(null!==Y&&google.maps.event.removeListener(Y),q(google.maps.event.addListener(w,"mouseup",l)))}),[l]),(0,f.useEffect)((function(){w&&u&&(null!==J&&google.maps.event.removeListener(J),$(google.maps.event.addListener(w,"rightclick",u)))}),[u]),(0,f.useEffect)((function(){w&&n&&(null!==te&&google.maps.event.removeListener(te),ne(google.maps.event.addListener(w,"click",n)))}),[n]),(0,f.useEffect)((function(){w&&c&&(null!==se&&google.maps.event.removeListener(se),re(google.maps.event.addListener(w,"addfeature",c)))}),[c]),(0,f.useEffect)((function(){w&&p&&(null!==ue&&google.maps.event.removeListener(ue),ce(google.maps.event.addListener(w,"removefeature",p)))}),[p]),(0,f.useEffect)((function(){w&&d&&(null!==ge&&google.maps.event.removeListener(ge),he(google.maps.event.addListener(w,"removeproperty",d)))}),[d]),(0,f.useEffect)((function(){w&&h&&(null!==ve&&google.maps.event.removeListener(ve),ye(google.maps.event.addListener(w,"setgeometry",h)))}),[h]),(0,f.useEffect)((function(){w&&m&&(null!==ke&&google.maps.event.removeListener(ke),Ce(google.maps.event.addListener(w,"setproperty",m)))}),[m]),(0,f.useEffect)((function(){if(null!==b){var e=new google.maps.Data(At(At({},t),{},{map:b}));o&&P(google.maps.event.addListener(e,"dblclick",o)),i&&j(google.maps.event.addListener(e,"mousedown",i)),s&&z(google.maps.event.addListener(e,"mousemove",s)),r&&A(google.maps.event.addListener(e,"mouseout",r)),a&&H(google.maps.event.addListener(e,"mouseover",a)),l&&q(google.maps.event.addListener(e,"mouseup",l)),u&&$(google.maps.event.addListener(e,"rightclick",u)),n&&ne(google.maps.event.addListener(e,"click",n)),c&&re(google.maps.event.addListener(e,"addfeature",c)),p&&ce(google.maps.event.addListener(e,"removefeature",p)),d&&he(google.maps.event.addListener(e,"removeproperty",d)),h&&ye(google.maps.event.addListener(e,"setgeometry",h)),m&&Ce(google.maps.event.addListener(e,"setproperty",m)),M(e),v&&v(e)}return function(){w&&(null!==Z&&google.maps.event.removeListener(Z),null!==D&&google.maps.event.removeListener(D),null!==R&&google.maps.event.removeListener(R),null!==U&&google.maps.event.removeListener(U),null!==W&&google.maps.event.removeListener(W),null!==Y&&google.maps.event.removeListener(Y),null!==J&&google.maps.event.removeListener(J),null!==te&&google.maps.event.removeListener(te),null!==se&&google.maps.event.removeListener(se),null!==ue&&google.maps.event.removeListener(ue),null!==ge&&google.maps.event.removeListener(ge),null!==ve&&google.maps.event.removeListener(ve),null!==ke&&google.maps.event.removeListener(ke),y&&y(w),w.setMap(null))}}),[]),null}));var Wt=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{data:null}),b((0,c.Z)(e),"setDataCallback",(function(){null!==e.state.data&&e.props.onLoad&&e.props.onLoad(e.state.data)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){if(null!==this.context){var e=new google.maps.Data(At(At({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:Nt,eventMap:Vt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{data:e}}),this.setDataCallback)}}},{key:"componentDidUpdate",value:function(e){null!==this.state.data&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Nt,eventMap:Vt,prevProps:e,nextProps:this.props,instance:this.state.data}))}},{key:"componentWillUnmount",value:function(){null!==this.state.data&&(this.props.onUnmount&&this.props.onUnmount(this.state.data),x(this.registeredEvents),this.state.data&&this.state.data.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function Ht(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Ft(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ht(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ht(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(Wt,"contextType",C);var Gt={onClick:"click",onDefaultViewportChanged:"defaultviewport_changed",onStatusChanged:"status_changed"},Yt={options:function(e,t){e.setOptions(t)},url:function(e,t){e.setUrl(t)},zIndex:function(e,t){e.setZIndex(t)}},qt=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{kmlLayer:null}),b((0,c.Z)(e),"setKmlLayerCallback",(function(){null!==e.state.kmlLayer&&e.props.onLoad&&e.props.onLoad(e.state.kmlLayer)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.KmlLayer(Ft(Ft({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:Yt,eventMap:Gt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{kmlLayer:e}}),this.setKmlLayerCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.kmlLayer&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Yt,eventMap:Gt,prevProps:e,nextProps:this.props,instance:this.state.kmlLayer}))}},{key:"componentWillUnmount",value:function(){null!==this.state.kmlLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.kmlLayer),x(this.registeredEvents),this.state.kmlLayer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function Kt(e,t){return"function"===typeof t?t(e.offsetWidth,e.offsetHeight):{x:0,y:0}}function Xt(e,t){return new t(e.lat,e.lng)}function Jt(e,t){return new t(new google.maps.LatLng(e.ne.lat,e.ne.lng),new google.maps.LatLng(e.sw.lat,e.sw.lng))}function $t(e,t,n,o){return void 0!==n?function(e,t,n){var o=e&&e.fromLatLngToDivPixel(n.getNorthEast()),i=e&&e.fromLatLngToDivPixel(n.getSouthWest());return o&&i?{left:"".concat(i.x+t.x,"px"),top:"".concat(o.y+t.y,"px"),width:"".concat(o.x-i.x-t.x,"px"),height:"".concat(i.y-o.y-t.y,"px")}:{left:"-9999px",top:"-9999px"}}(e,t,(i=n,s=google.maps.LatLngBounds,r=Jt,i instanceof s?i:r(i,s))):function(e,t,n){var o=e&&e.fromLatLngToDivPixel(n);if(o){var i=o.x,s=o.y;return{left:"".concat(i+t.x,"px"),top:"".concat(s+t.y,"px")}}return{left:"-9999px",top:"-9999px"}}(e,t,function(e,t,n){return e instanceof t?e:n(e,t)}(o,google.maps.LatLng,Xt));var i,s,r}function Qt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function en(e,t,n,o,i){var s=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(e,o,i,s){var r;return(0,l.Z)(this,n),(r=t.call(this)).container=e,r.pane=o,r.position=i,r.bounds=s,r}return(0,u.Z)(n,[{key:"onAdd",value:function(){var e,t=null===(e=this.getPanes())||void 0===e?void 0:e[this.pane];null===t||void 0===t||t.appendChild(this.container)}},{key:"draw",value:function(){for(var e=this.getProjection(),t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Qt(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Qt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},this.container?Kt(this.container,i):{x:0,y:0}),n=$t(e,t,this.bounds,this.position),o=0,s=Object.entries(n);o<s.length;o++){var r=(0,g.Z)(s[o],2),a=r[0],l=r[1];this.container.style[a]=l}}},{key:"onRemove",value:function(){null!==this.container.parentNode&&this.container.parentNode.removeChild(this.container)}}]),n}(google.maps.OverlayView);return new s(e,t,n,o)}function tn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function nn(e){return e?(e instanceof google.maps.LatLng?e:new google.maps.LatLng(e.lat,e.lng))+"":""}function on(e){return e?(e instanceof google.maps.LatLngBounds?e:new google.maps.LatLngBounds(new google.maps.LatLng(e.south,e.east),new google.maps.LatLng(e.north,e.west)))+"":""}b(qt,"contextType",C);(0,f.memo)((function(e){var t=e.position,n=e.bounds,o=e.mapPaneName,i=e.zIndex,s=e.onLoad,r=e.onUnmount,a=e.getPixelPositionOffset,l=e.children,u=(0,f.useContext)(C),c=(0,f.useMemo)((function(){var e=document.createElement("div");return e.style.position="absolute",e}),[]),p=(0,f.useMemo)((function(){return en(c,o,t,n,a)}),[c,o,t,n]);return(0,f.useEffect)((function(){return null===s||void 0===s||s(p),null===p||void 0===p||p.setMap(u),function(){null===r||void 0===r||r(p),null===p||void 0===p||p.setMap(null)}}),[u,p]),(0,f.useEffect)((function(){c.style.zIndex="".concat(i)}),[i,c]),m.createPortal(l,c)}));var sn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(e){var o;(0,l.Z)(this,n),o=t.call(this,e),b((0,c.Z)(o),"state",{paneEl:null,containerStyle:{position:"absolute"}}),b((0,c.Z)(o),"updatePane",(function(){var e=o.props.mapPaneName,t=o.overlayView.getPanes();k(!!e,"OverlayView requires props.mapPaneName but got %s",e),t?o.setState({paneEl:t[e]}):o.setState({paneEl:null})})),b((0,c.Z)(o),"onAdd",(function(){var e,t;o.updatePane(),null===(e=(t=o.props).onLoad)||void 0===e||e.call(t,o.overlayView)})),b((0,c.Z)(o),"onPositionElement",(function(){var e,t,n,i,s,r,a=o.overlayView.getProjection(),l=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tn(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({x:0,y:0},o.containerRef.current?Kt(o.containerRef.current,o.props.getPixelPositionOffset):{}),u=$t(a,l,o.props.bounds,o.props.position);(s=u,r={left:o.state.containerStyle.left,top:o.state.containerStyle.top,width:o.state.containerStyle.width,height:o.state.containerStyle.height},s.left!==r.left||s.top!==r.top||s.width!==r.height||s.height!==r.height)&&o.setState({containerStyle:{top:null!==(e=u.top)&&void 0!==e?e:0,left:null!==(t=u.left)&&void 0!==t?t:0,width:null!==(n=u.width)&&void 0!==n?n:0,height:null!==(i=u.height)&&void 0!==i?i:0,position:"absolute"}})})),b((0,c.Z)(o),"draw",(function(){o.onPositionElement()})),b((0,c.Z)(o),"onRemove",(function(){var e,t;o.setState((function(){return{paneEl:null}})),null===(e=(t=o.props).onUnmount)||void 0===e||e.call(t,o.overlayView)})),o.containerRef=(0,f.createRef)();var i=new google.maps.OverlayView;return i.onAdd=o.onAdd,i.draw=o.draw,i.onRemove=o.onRemove,o.overlayView=i,o}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){this.overlayView.setMap(this.context)}},{key:"componentDidUpdate",value:function(e){var t=nn(e.position),n=nn(this.props.position),o=on(e.bounds),i=on(this.props.bounds);t===n&&o===i||this.overlayView.draw(),e.mapPaneName!==this.props.mapPaneName&&this.updatePane()}},{key:"componentWillUnmount",value:function(){this.overlayView.setMap(null)}},{key:"render",value:function(){var e=this.state.paneEl;return e?m.createPortal((0,h.jsx)("div",{ref:this.containerRef,style:this.state.containerStyle,children:f.Children.only(this.props.children)}),e):null}}]),n}(f.PureComponent);function rn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function an(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?rn(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(sn,"FLOAT_PANE","floatPane"),b(sn,"MAP_PANE","mapPane"),b(sn,"MARKER_LAYER","markerLayer"),b(sn,"OVERLAY_LAYER","overlayLayer"),b(sn,"OVERLAY_MOUSE_TARGET","overlayMouseTarget"),b(sn,"contextType",C);var ln={onDblClick:"dblclick",onClick:"click"},un={opacity:function(e,t){e.setOpacity(t)}};(0,f.memo)((function(e){var t=e.url,n=e.bounds,o=e.options,i=e.visible,s=(0,f.useContext)(C),r=new google.maps.LatLngBounds(new google.maps.LatLng(n.south,n.west),new google.maps.LatLng(n.north,n.east)),a=(0,f.useMemo)((function(){return new google.maps.GroundOverlay(t,r,o)}),[]);return(0,f.useEffect)((function(){null!==a&&a.setMap(s)}),[s]),(0,f.useEffect)((function(){"undefined"!==typeof t&&null!==a&&(a.set("url",t),a.setMap(s))}),[a,t]),(0,f.useEffect)((function(){"undefined"!==typeof i&&null!==a&&a.setOpacity(i?1:0)}),[a,i]),(0,f.useEffect)((function(){var e=new google.maps.LatLngBounds(new google.maps.LatLng(n.south,n.west),new google.maps.LatLng(n.north,n.east));"undefined"!==typeof n&&null!==a&&(a.set("bounds",e),a.setMap(s))}),[a,n]),null}));var cn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{groundOverlay:null}),b((0,c.Z)(e),"setGroundOverlayCallback",(function(){null!==e.state.groundOverlay&&e.props.onLoad&&e.props.onLoad(e.state.groundOverlay)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){k(!!this.props.url||!!this.props.bounds,"For GroundOverlay, url and bounds are passed in to constructor and are immutable after instantiated. This is the behavior of Google Maps JavaScript API v3 ( See https://developers.google.com/maps/documentation/javascript/reference#GroundOverlay) Hence, use the corresponding two props provided by `react-google-maps-api`, url and bounds. In some cases, you'll need the GroundOverlay component to reflect the changes of url and bounds. You can leverage the React's key property to remount the component. Typically, just `key={url}` would serve your need. See https://github.com/tomchentw/react-google-maps/issues/655");var e=new google.maps.GroundOverlay(this.props.url,this.props.bounds,an(an({},this.props.options),{},{map:this.context}));this.registeredEvents=Z({updaterMap:un,eventMap:ln,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{groundOverlay:e}}),this.setGroundOverlayCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.groundOverlay&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:un,eventMap:ln,prevProps:e,nextProps:this.props,instance:this.state.groundOverlay}))}},{key:"componentWillUnmount",value:function(){this.state.groundOverlay&&(this.props.onUnmount&&this.props.onUnmount(this.state.groundOverlay),this.state.groundOverlay.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);function pn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function dn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pn(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}b(cn,"defaultProps",{onLoad:function(){}}),b(cn,"contextType",C);var gn={},hn={data:function(e,t){e.setData(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)}};(0,f.memo)((function(e){var t=e.data,n=e.onLoad,o=e.onUnmount,i=e.options,s=(0,f.useContext)(C),r=(0,f.useState)(null),a=(0,g.Z)(r,2),l=a[0],u=a[1];return(0,f.useEffect)((function(){google.maps.visualization||k(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} in useJsApiScript? %s',google.maps.visualization)}),[]),(0,f.useEffect)((function(){k(!!t,"data property is required in HeatmapLayer %s",t)}),[t]),(0,f.useEffect)((function(){null!==l&&l.setMap(s)}),[s]),(0,f.useEffect)((function(){i&&null!==l&&l.setOptions(i)}),[l,i]),(0,f.useEffect)((function(){var e=new google.maps.visualization.HeatmapLayer(dn(dn({},i),{},{data:t,map:s}));return u(e),n&&n(e),function(){null!==l&&(o&&o(l),l.setMap(null))}}),[]),null}));var fn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{heatmapLayer:null}),b((0,c.Z)(e),"setHeatmapLayerCallback",(function(){null!==e.state.heatmapLayer&&e.props.onLoad&&e.props.onLoad(e.state.heatmapLayer)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){k(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} to <LoadScript />? %s',google.maps.visualization),k(!!this.props.data,"data property is required in HeatmapLayer %s",this.props.data);var e=new google.maps.visualization.HeatmapLayer(dn(dn({},this.props.options),{},{data:this.props.data,map:this.context}));this.registeredEvents=Z({updaterMap:hn,eventMap:gn,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{heatmapLayer:e}}),this.setHeatmapLayerCallback)}},{key:"componentDidUpdate",value:function(e){x(this.registeredEvents),this.registeredEvents=Z({updaterMap:hn,eventMap:gn,prevProps:e,nextProps:this.props,instance:this.state.heatmapLayer})}},{key:"componentWillUnmount",value:function(){null!==this.state.heatmapLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.heatmapLayer),x(this.registeredEvents),this.state.heatmapLayer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b(fn,"contextType",C);var mn={onCloseClick:"closeclick",onPanoChanged:"pano_changed",onPositionChanged:"position_changed",onPovChanged:"pov_changed",onResize:"resize",onStatusChanged:"status_changed",onVisibleChanged:"visible_changed",onZoomChanged:"zoom_changed"},vn={register:function(e,t,n){e.registerPanoProvider(t,n)},links:function(e,t){e.setLinks(t)},motionTracking:function(e,t){e.setMotionTracking(t)},options:function(e,t){e.setOptions(t)},pano:function(e,t){e.setPano(t)},position:function(e,t){e.setPosition(t)},pov:function(e,t){e.setPov(t)},visible:function(e,t){e.setVisible(t)},zoom:function(e,t){e.setZoom(t)}},yn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{streetViewPanorama:null}),b((0,c.Z)(e),"setStreetViewPanoramaCallback",(function(){null!==e.state.streetViewPanorama&&e.props.onLoad&&e.props.onLoad(e.state.streetViewPanorama)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e,t,n=null!==(e=null===(t=this.context)||void 0===t?void 0:t.getStreetView())&&void 0!==e?e:null;this.registeredEvents=Z({updaterMap:vn,eventMap:mn,prevProps:{},nextProps:this.props,instance:n}),this.setState((function(){return{streetViewPanorama:n}}),this.setStreetViewPanoramaCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.streetViewPanorama&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:vn,eventMap:mn,prevProps:e,nextProps:this.props,instance:this.state.streetViewPanorama}))}},{key:"componentWillUnmount",value:function(){null!==this.state.streetViewPanorama&&(this.props.onUnmount&&this.props.onUnmount(this.state.streetViewPanorama),x(this.registeredEvents),this.state.streetViewPanorama.setVisible(!1))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b(yn,"contextType",C);var bn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"state",{streetViewService:null}),b((0,c.Z)(e),"setStreetViewServiceCallback",(function(){null!==e.state.streetViewService&&e.props.onLoad&&e.props.onLoad(e.state.streetViewService)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.StreetViewService;this.setState((function(){return{streetViewService:e}}),this.setStreetViewServiceCallback)}},{key:"componentWillUnmount",value:function(){null!==this.state.streetViewService&&this.props.onUnmount&&this.props.onUnmount(this.state.streetViewService)}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b(bn,"contextType",C);f.PureComponent;var Ln={onDirectionsChanged:"directions_changed"},kn={directions:function(e,t){e.setDirections(t)},map:function(e,t){e.setMap(t)},options:function(e,t){e.setOptions(t)},panel:function(e,t){e.setPanel(t)},routeIndex:function(e,t){e.setRouteIndex(t)}},Cn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"state",{directionsRenderer:null}),b((0,c.Z)(e),"setDirectionsRendererCallback",(function(){null!==e.state.directionsRenderer&&(e.state.directionsRenderer.setMap(e.context),e.props.onLoad&&e.props.onLoad(e.state.directionsRenderer))})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e=new google.maps.DirectionsRenderer(this.props.options);this.registeredEvents=Z({updaterMap:kn,eventMap:Ln,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{directionsRenderer:e}}),this.setDirectionsRendererCallback)}},{key:"componentDidUpdate",value:function(e){null!==this.state.directionsRenderer&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:kn,eventMap:Ln,prevProps:e,nextProps:this.props,instance:this.state.directionsRenderer}))}},{key:"componentWillUnmount",value:function(){null!==this.state.directionsRenderer&&(this.props.onUnmount&&this.props.onUnmount(this.state.directionsRenderer),x(this.registeredEvents),this.state.directionsRenderer&&this.state.directionsRenderer.setMap(null))}},{key:"render",value:function(){return null}}]),n}(f.PureComponent);b(Cn,"contextType",C);f.PureComponent;var wn={onPlacesChanged:"places_changed"},Mn={bounds:function(e,t){e.setBounds(t)}},En=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"containerElement",(0,f.createRef)()),b((0,c.Z)(e),"state",{searchBox:null}),b((0,c.Z)(e),"setSearchBoxCallback",(function(){null!==e.state.searchBox&&e.props.onLoad&&e.props.onLoad(e.state.searchBox)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){if(k(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places),null!==this.containerElement&&null!==this.containerElement.current){var e=this.containerElement.current.querySelector("input");if(null!==e){var t=new google.maps.places.SearchBox(e,this.props.options);this.registeredEvents=Z({updaterMap:Mn,eventMap:wn,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{searchBox:t}}),this.setSearchBoxCallback)}}}},{key:"componentDidUpdate",value:function(e){null!==this.state.searchBox&&(x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Mn,eventMap:wn,prevProps:e,nextProps:this.props,instance:this.state.searchBox}))}},{key:"componentWillUnmount",value:function(){null!==this.state.searchBox&&(this.props.onUnmount&&this.props.onUnmount(this.state.searchBox),x(this.registeredEvents))}},{key:"render",value:function(){return(0,h.jsx)("div",{ref:this.containerElement,children:f.Children.only(this.props.children)})}}]),n}(f.PureComponent);b(En,"contextType",C);var xn={onPlaceChanged:"place_changed"},Zn={bounds:function(e,t){e.setBounds(t)},restrictions:function(e,t){e.setComponentRestrictions(t)},fields:function(e,t){e.setFields(t)},options:function(e,t){e.setOptions(t)},types:function(e,t){e.setTypes(t)}},Pn=function(e){(0,p.Z)(n,e);var t=(0,d.Z)(n);function n(){var e;return(0,l.Z)(this,n),e=t.apply(this,arguments),b((0,c.Z)(e),"registeredEvents",[]),b((0,c.Z)(e),"containerElement",(0,f.createRef)()),b((0,c.Z)(e),"state",{autocomplete:null}),b((0,c.Z)(e),"setAutocompleteCallback",(function(){null!==e.state.autocomplete&&e.props.onLoad&&e.props.onLoad(e.state.autocomplete)})),e}return(0,u.Z)(n,[{key:"componentDidMount",value:function(){var e;k(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places);var t=null===(e=this.containerElement.current)||void 0===e?void 0:e.querySelector("input");if(t){var n=new google.maps.places.Autocomplete(t,this.props.options);this.registeredEvents=Z({updaterMap:Zn,eventMap:xn,prevProps:{},nextProps:this.props,instance:n}),this.setState((function(){return{autocomplete:n}}),this.setAutocompleteCallback)}}},{key:"componentDidUpdate",value:function(e){x(this.registeredEvents),this.registeredEvents=Z({updaterMap:Zn,eventMap:xn,prevProps:e,nextProps:this.props,instance:this.state.autocomplete})}},{key:"componentWillUnmount",value:function(){null!==this.state.autocomplete&&x(this.registeredEvents)}},{key:"render",value:function(){return(0,h.jsx)("div",{ref:this.containerElement,className:this.props.className,children:f.Children.only(this.props.children)})}}]),n}(f.PureComponent);b(Pn,"defaultProps",{className:""}),b(Pn,"contextType",C)},41962:function(e,t,n){n.d(t,{a:function(){return s}});var o=n(18948),i=n(51695);function s(e,t){return(0,i.r)(e,o.z,t)}}}]); |