@reltio/remotes 1.4.1721 → 1.4.1722

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/1088.js +1 -1
  2. package/1148.js +1 -1
  3. package/1215.js +1 -1
  4. package/1334.js +1 -1
  5. package/1425.js +1 -1
  6. package/1550.js +1 -1
  7. package/1664.js +1 -1
  8. package/1707.js +1 -1
  9. package/1840.js +1 -1
  10. package/2066.js +1 -1
  11. package/2345.js +1 -1
  12. package/2400.js +1 -1
  13. package/2617.js +1 -1
  14. package/2825.js +3 -0
  15. package/2825.js.map +1 -0
  16. package/2857.js +1 -1
  17. package/3004.js +1 -1
  18. package/3042.js +1 -1
  19. package/3096.js +1 -1
  20. package/3104.js +2 -0
  21. package/3104.js.map +1 -0
  22. package/3144.js +1 -1
  23. package/3191.js +1 -1
  24. package/3348.js +1 -1
  25. package/3381.js +1 -1
  26. package/3383.js +1 -1
  27. package/3463.js +1 -1
  28. package/3469.js +1 -1
  29. package/3538.js +1 -1
  30. package/3639.js +1 -1
  31. package/393.js +1 -1
  32. package/393.js.map +1 -1
  33. package/4038.js +1 -1
  34. package/415.js +1 -1
  35. package/4212.js +1 -1
  36. package/{3209.css → 4265.css} +1 -1
  37. package/{3209.css.map → 4265.css.map} +1 -1
  38. package/4265.js +2 -0
  39. package/4265.js.map +1 -0
  40. package/{829.css → 4390.css} +1 -1
  41. package/4390.css.map +1 -0
  42. package/4390.js +2 -0
  43. package/4390.js.map +1 -0
  44. package/4444.js +1 -1
  45. package/4481.js +1 -1
  46. package/4780.js +2 -0
  47. package/4780.js.map +1 -0
  48. package/4787.js +1 -1
  49. package/4838.js +1 -1
  50. package/4969.js +1 -1
  51. package/50.js +1 -1
  52. package/5039.js +1 -1
  53. package/5177.js +1 -1
  54. package/5201.js +1 -1
  55. package/5292.js +1 -1
  56. package/5368.js +2 -0
  57. package/{4143.js.map → 5368.js.map} +1 -1
  58. package/5383.js +1 -1
  59. package/5738.js +1 -1
  60. package/5738.js.map +1 -1
  61. package/5769.js +1 -1
  62. package/6012.js +76 -0
  63. package/{2966.js.LICENSE.txt → 6012.js.LICENSE.txt} +0 -10
  64. package/6012.js.map +1 -0
  65. package/6287.js +1 -1
  66. package/6422.js +1 -1
  67. package/6506.js +1 -1
  68. package/6578.js +1 -1
  69. package/6578.js.map +1 -1
  70. package/658.js +1 -1
  71. package/6799.js +1 -1
  72. package/6807.js +2 -0
  73. package/6807.js.map +1 -0
  74. package/6844.js +1 -1
  75. package/6903.js +1 -1
  76. package/7074.js +1 -1
  77. package/7119.js +1 -1
  78. package/7237.js +1 -1
  79. package/7340.js +1 -1
  80. package/735.js +1 -1
  81. package/7401.js +2 -0
  82. package/7401.js.map +1 -0
  83. package/7407.js +1 -1
  84. package/7422.js +1 -1
  85. package/7468.js +1 -1
  86. package/7626.js +1 -1
  87. package/7719.js +1 -1
  88. package/7744.js +1 -1
  89. package/7744.js.map +1 -1
  90. package/7896.js +1 -1
  91. package/820.js +1 -1
  92. package/8207.js +1 -1
  93. package/8216.js +1 -1
  94. package/8741.js +1 -1
  95. package/8786.js +1 -1
  96. package/9016.js +1 -1
  97. package/9032.js +1 -1
  98. package/9050.js +1 -1
  99. package/913.js +56 -0
  100. package/913.js.LICENSE.txt +9 -0
  101. package/913.js.map +1 -0
  102. package/9283.js +1 -1
  103. package/9328.js +1 -1
  104. package/9387.js +1 -1
  105. package/9719.js +1 -1
  106. package/main.js +1 -1
  107. package/main.js.map +1 -1
  108. package/package.json +1 -1
  109. package/remoteEntry.js +1 -1
  110. package/remoteEntry.js.map +1 -1
  111. package/2383.js +0 -3
  112. package/2383.js.map +0 -1
  113. package/2966.js +0 -129
  114. package/2966.js.map +0 -1
  115. package/3209.js +0 -2
  116. package/3209.js.map +0 -1
  117. package/3785.js +0 -2
  118. package/3785.js.map +0 -1
  119. package/4143.js +0 -2
  120. package/829.css.map +0 -1
  121. package/829.js +0 -2
  122. package/829.js.map +0 -1
  123. package/9109.js +0 -2
  124. package/9109.js.map +0 -1
  125. /package/{2383.js.LICENSE.txt → 2825.js.LICENSE.txt} +0 -0
package/6422.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see 6422.js.LICENSE.txt */
2
- !function(){try{var t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=(new Error).stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="338a1306-d4c1-486a-ac80-a88b84afc52d",t._sentryDebugIdIdentifier="sentry-dbid-338a1306-d4c1-486a-ac80-a88b84afc52d")}catch(t){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"1.4.1722"},(self.webpackChunk_reltio_remotes=self.webpackChunk_reltio_remotes||[]).push([[6422],{56569:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}),"AddCircle");e.Z=r},76981:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h3V9h4v4h3z"}),"CloudDownload");e.Z=r},29754:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}),"Edit");e.Z=r},35296:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}),"Warning");e.Z=r},17871:(t,e,s)=>{s.d(e,{j_:()=>U,b6:()=>u,vD:()=>Q,Jx:()=>j,XL:()=>G,mg:()=>ut,Ji:()=>S});var n=s(24328),i=s(75047),o=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==s.g?s.g:"undefined"!=typeof self&&self,function(t,e,s,n,i,o,r,a){if(!t){var l;if(void 0===e)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var h=[s,n,i,o,r,a],p=0;(l=new Error(e.replace(/%s/g,(function(){return h[p++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}});const r=(0,n.createContext)(null);function a(t){google.maps.event.removeListener(t)}function l(t=[]){t.forEach(a)}function h({updaterMap:t,eventMap:e,prevProps:s,nextProps:n,instance:i}){const o=function(t,e,s){const n=(i=s,o=function(s,n,i){return"function"==typeof t[i]&&s.push(google.maps.event.addListener(e,n,t[i])),s},r=[],Object.keys(i).reduce((function(t,e){return o(t,i[e],e)}),r));var i,o,r;return n}(n,i,e);return((t,e,s,n)=>{const i={};var o,r;o=t,r=(t,o)=>{const r=s[o];r!==e[o]&&(i[o]=r,t(n,r))},Object.keys(o).forEach((function(t){return r(o[t],t)}))})(t,s,n,i),o}const 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"},c={extraMapTypes(t,e){e.forEach((function(e,s){t.mapTypes.set(String(s),e)}))},center(t,e){t.setCenter(e)},clickableIcons(t,e){t.setClickableIcons(e)},heading(t,e){t.setHeading(e)},mapTypeId(t,e){t.setMapTypeId(e)},options(t,e){t.setOptions(e)},streetView(t,e){t.setStreetView(e)},tilt(t,e){t.setTilt(e)},zoom(t,e){t.setZoom(e)}};class u extends n.PureComponent{constructor(){super(...arguments),this.state={map:null},this.registeredEvents=[],this.mapRef=null,this.getInstance=()=>null===this.mapRef?null:new google.maps.Map(this.mapRef,this.props.options),this.panTo=t=>{const e=this.getInstance();e&&e.panTo(t)},this.setMapCallback=()=>{null!==this.state.map&&this.props.onLoad&&this.props.onLoad(this.state.map)},this.getRef=t=>{this.mapRef=t}}componentDidMount(){const t=this.getInstance();this.registeredEvents=h({updaterMap:c,eventMap:p,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{map:t}}),this.setMapCallback)}componentDidUpdate(t){null!==this.state.map&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:c,eventMap:p,prevProps:t,nextProps:this.props,instance:this.state.map}))}componentWillUnmount(){null!==this.state.map&&(this.props.onUnmount&&this.props.onUnmount(this.state.map),l(this.registeredEvents))}render(){return n.createElement("div",{id:this.props.id,ref:this.getRef,style:this.props.mapContainerStyle,className:this.props.mapContainerClassName},n.createElement(r.Provider,{value:this.state.map},null!==this.state.map?this.props.children:n.createElement(n.Fragment,null)))}}function d(t,e){var s={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(s[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(s[n[i]]=t[n[i]])}return s}const g="undefined"!=typeof document,m=({url:t,id:e,nonce:s})=>g?new Promise((function(n,i){const o=document.getElementById(e),r=window;if(o){const s=o.getAttribute("data-state");if(o.src===t&&"error"!==s){if("ready"===s)return n(e);{const t=r.initMap,s=o.onerror;return r.initMap=function(){t&&t(),n(e)},void(o.onerror=function(t){s&&s(t),i(t)})}}o.remove()}const a=document.createElement("script");a.type="text/javascript",a.src=t,a.id=e,a.async=!0,a.nonce=s,a.onerror=function(t){a.setAttribute("data-state","error"),i(t)},r.initMap=function(){a.setAttribute("data-state","ready"),n(e)},document.head.appendChild(a)})).catch((t=>{throw console.error("injectScript error: ",t),t})):Promise.reject(new Error("document is undefined")),v=t=>!((!t.href||0!==t.href.indexOf("https://fonts.googleapis.com/css?family=Roboto"))&&("style"===t.tagName.toLowerCase()&&t.styleSheet&&t.styleSheet.cssText&&0===t.styleSheet.cssText.replace("\r\n","").indexOf(".gm-style")?(t.styleSheet.cssText="",0):"style"===t.tagName.toLowerCase()&&t.innerHTML&&0===t.innerHTML.replace("\r\n","").indexOf(".gm-style")?(t.innerHTML="",0):"style"!==t.tagName.toLowerCase()||t.styleSheet||t.innerHTML)),f=()=>{const t=document.getElementsByTagName("head")[0],e=t.insertBefore.bind(t);t.insertBefore=function(s,n){v(s)||Reflect.apply(e,t,[s,n])};const s=t.appendChild.bind(t);t.appendChild=function(e){v(e)||Reflect.apply(s,t,[e])}};function y({googleMapsApiKey:t,googleMapsClientId:e,version:s="weekly",language:n,region:i,libraries:r,channel:a,mapIds:l}){const h=[];return o(t&&e||!(t&&e),"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?h.push(`key=${t}`):e&&h.push(`client=${e}`),s&&h.push(`v=${s}`),n&&h.push(`language=${n}`),i&&h.push(`region=${i}`),r&&r.length&&h.push(`libraries=${r.sort().join(",")}`),a&&h.push(`channel=${a}`),l&&l.length&&h.push(`map_ids=${l.join(",")}`),h.push("callback=initMap"),`https://maps.googleapis.com/maps/api/js?${h.join("&")}`}let x=!1;function C(){return n.createElement("div",null,"Loading...")}const b={id:"script-loader",version:"weekly"};class M extends n.PureComponent{constructor(){super(...arguments),this.check=n.createRef(),this.state={loaded:!1},this.cleanupCallback=()=>{delete window.google.maps,this.injectScript()},this.isCleaningUp=()=>{return t=this,e=void 0,n=function*(){return new Promise((function(t){if(x){if(g){const e=window.setInterval((function(){x||(window.clearInterval(e),t())}),1)}}else t()}))},new((s=void 0)||(s=Promise))((function(i,o){function r(t){try{l(n.next(t))}catch(t){o(t)}}function a(t){try{l(n.throw(t))}catch(t){o(t)}}function l(t){var e;t.done?i(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(r,a)}l((n=n.apply(t,e||[])).next())}));var t,e,s,n},this.cleanup=()=>{x=!0;const t=document.getElementById(this.props.id);t&&t.parentNode&&t.parentNode.removeChild(t),Array.prototype.slice.call(document.getElementsByTagName("script")).filter((function(t){return"string"==typeof t.src&&t.src.includes("maps.googleapis")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("link")).filter((function(t){return"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans"===t.href})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("style")).filter((function(t){return void 0!==t.innerText&&t.innerText.length>0&&t.innerText.includes(".gm-")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)}))},this.injectScript=()=>{this.props.preventGoogleFontsLoading&&f(),o(!!this.props.id,'LoadScript requires "id" prop to be a string: %s',this.props.id);const t={id:this.props.id,nonce:this.props.nonce,url:y(this.props)};m(t).then((()=>{this.props.onLoad&&this.props.onLoad(),this.setState((function(){return{loaded:!0}}))})).catch((t=>{this.props.onError&&this.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 (${this.props.googleMapsApiKey||"-"}) or Client ID (${this.props.googleMapsClientId||"-"}) to <LoadScript />\n Otherwise it is a Network issue.\n `)}))}}componentDidMount(){if(g){if(window.google&&window.google.maps&&!x)return void console.error("google api is already presented");this.isCleaningUp().then(this.injectScript).catch((function(t){console.error("Error at injecting script after cleaning up: ",t)}))}}componentDidUpdate(t){this.props.libraries!==t.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"),g&&t.language!==this.props.language&&(this.cleanup(),this.setState((function(){return{loaded:!1}}),this.cleanupCallback))}componentWillUnmount(){if(g){this.cleanup();const t=()=>{this.check.current||(delete window.google,x=!1)};window.setTimeout(t,1),this.props.onUnmount&&this.props.onUnmount()}}render(){return n.createElement(n.Fragment,null,n.createElement("div",{ref:this.check}),this.state.loaded?this.props.children:this.props.loadingElement||n.createElement(C,null))}}let w;M.defaultProps=b;const L=n.createElement(C,null);n.memo((function(t){var{loadingElement:e,onLoad:s,onError:i,onUnmount:r,children:a}=t,l=d(t,["loadingElement","onLoad","onError","onUnmount","children"]);const{isLoaded:h,loadError:p}=function({id:t=b.id,version:e=b.version,nonce:s,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:l,libraries:h,preventGoogleFontsLoading:p,channel:c,mapIds:u}){const d=n.useRef(!1),[v,x]=n.useState(!1),[C,M]=n.useState(void 0);n.useEffect((function(){return d.current=!0,()=>{d.current=!1}}),[]),n.useEffect((function(){g&&p&&f()}),[p]),n.useEffect((function(){v&&o(!!window.google,"useLoadScript was marked as loaded, but window.google is not present. Something went wrong.")}),[v]);const L=y({version:e,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:l,libraries:h,channel:c,mapIds:u});n.useEffect((function(){function e(){d.current&&(x(!0),w=L)}g&&(window.google&&window.google.maps&&w===L?e():m({id:t,url:L,nonce:s}).then(e).catch((function(t){d.current&&M(t),console.warn(`\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (${i||"-"}) or Client ID (${r||"-"})\n Otherwise it is a Network issue.\n `),console.error(t)})))}),[t,L,s]);const k=n.useRef();return n.useEffect((function(){k.current&&h!==k.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"),k.current=h}),[h]),{isLoaded:v,loadError:C,url:L}}(l);return n.useEffect((function(){h&&"function"==typeof s&&s()}),[h,s]),n.useEffect((function(){p&&"function"==typeof i&&i(p)}),[p,i]),n.useEffect((function(){return()=>{r&&r()}}),[r]),h?a:e||L}));var k=function t(e,s){if(e===s)return!0;if(e&&s&&"object"==typeof e&&"object"==typeof s){if(e.constructor!==s.constructor)return!1;var n,i,o;if(Array.isArray(e)){if((n=e.length)!=s.length)return!1;for(i=n;0!=i--;)if(!t(e[i],s[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===s.source&&e.flags===s.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===s.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===s.toString();if((n=(o=Object.keys(e)).length)!==Object.keys(s).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(s,o[i]))return!1;for(i=n;0!=i--;){var r=o[i];if(!t(e[r],s[r]))return!1}return!0}return e!=e&&s!=s};const P="__googleMapsScriptId";class E{constructor({apiKey:t,channel:e,client:s,id:n=P,libraries:i=[],language:o,region:r,version:a,mapIds:l,nonce:h,retries:p=3,url:c="https://maps.googleapis.com/maps/api/js"}){if(this.CALLBACK="__googleMapsCallback",this.callbacks=[],this.done=!1,this.loading=!1,this.errors=[],this.version=a,this.apiKey=t,this.channel=e,this.client=s,this.id=n||P,this.libraries=i,this.language=o,this.region=r,this.mapIds=l,this.nonce=h,this.retries=p,this.url=c,E.instance){if(!k(this.options,E.instance.options))throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(E.instance.options)}`);return E.instance}E.instance=this}get options(){return{version:this.version,apiKey:this.apiKey,channel:this.channel,client:this.client,id:this.id,libraries:this.libraries,language:this.language,region:this.region,mapIds:this.mapIds,nonce:this.nonce,url:this.url}}get failed(){return this.done&&!this.loading&&this.errors.length>=this.retries+1}createUrl(){let t=this.url;return t+=`?callback=${this.CALLBACK}`,this.apiKey&&(t+=`&key=${this.apiKey}`),this.channel&&(t+=`&channel=${this.channel}`),this.client&&(t+=`&client=${this.client}`),this.libraries.length>0&&(t+=`&libraries=${this.libraries.join(",")}`),this.language&&(t+=`&language=${this.language}`),this.region&&(t+=`&region=${this.region}`),this.version&&(t+=`&v=${this.version}`),this.mapIds&&(t+=`&map_ids=${this.mapIds.join(",")}`),t}deleteScript(){const t=document.getElementById(this.id);t&&t.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise(((t,e)=>{this.loadCallback((s=>{s?e(s.error):t(window.google)}))}))}loadCallback(t){this.callbacks.push(t),this.execute()}setScript(){if(document.getElementById(this.id))return void this.callback();const t=this.createUrl(),e=document.createElement("script");e.id=this.id,e.type="text/javascript",e.src=t,e.onerror=this.loadErrorCallback.bind(this),e.defer=!0,e.async=!0,this.nonce&&(e.nonce=this.nonce),document.head.appendChild(e)}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.errors=[],this.onerrorEvent=null}resetIfRetryingFailed(){this.failed&&this.reset()}loadErrorCallback(t){if(this.errors.push(t),this.errors.length<=this.retries){const t=this.errors.length*Math.pow(2,this.errors.length);console.log(`Failed to load Google Maps script, retrying in ${t} ms.`),setTimeout((()=>{this.deleteScript(),this.setScript()}),t)}else this.onerrorEvent=t,this.callback()}setCallback(){window.__googleMapsCallback=this.callback.bind(this)}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach((t=>{t(this.onerrorEvent)})),this.callbacks=[]}execute(){if(this.resetIfRetryingFailed(),this.done)this.callback();else{if(window.google&&window.google.maps&&window.google.maps.version)return console.warn("Google Maps already loaded outside @googlemaps/js-api-loader.This may result in undesirable behavior as options and script parameters may not match."),void this.callback();this.loading||(this.loading=!0,this.setCallback(),this.setScript())}}}function S({id:t=b.id,version:e=b.version,nonce:s,googleMapsApiKey:i,language:o,region:r,libraries:a,preventGoogleFontsLoading:l,mapIds:h}){const p=n.useRef(!1),[c,u]=n.useState(!1),[d,m]=n.useState(void 0);n.useEffect((function(){return p.current=!0,()=>{p.current=!1}}),[]);const v=n.useMemo((function(){return new E({id:t,apiKey:i,version:e,libraries:a,language:o,region:r,mapIds:h,nonce:s})}),[t,i,e,a,o,r,h,s]);n.useEffect((function(){c||v.load().then((function(){p.current&&u(!0)})).catch((function(t){m(t)}))}),[]),n.useEffect((function(){g&&l&&f()}),[l]);const y=n.useRef();return n.useEffect((function(){y.current&&a!==y.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"),y.current=a}),[a]),{isLoaded:c,loadError:d}}const _={},I={options(t,e){t.setOptions(e)}};class D extends n.PureComponent{constructor(){super(...arguments),this.state={trafficLayer:null},this.setTrafficLayerCallback=()=>{null!==this.state.trafficLayer&&this.props.onLoad&&this.props.onLoad(this.state.trafficLayer)},this.registeredEvents=[]}componentDidMount(){const t=new google.maps.TrafficLayer(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:I,eventMap:_,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{trafficLayer:t}}),this.setTrafficLayerCallback)}componentDidUpdate(t){null!==this.state.trafficLayer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:I,eventMap:_,prevProps:t,nextProps:this.props,instance:this.state.trafficLayer}))}componentWillUnmount(){null!==this.state.trafficLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.trafficLayer),l(this.registeredEvents),this.state.trafficLayer.setMap(null))}render(){return null}}D.contextType=r;class O extends n.PureComponent{constructor(){super(...arguments),this.state={bicyclingLayer:null},this.setBicyclingLayerCallback=()=>{null!==this.state.bicyclingLayer&&(this.state.bicyclingLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.bicyclingLayer))}}componentDidMount(){const t=new google.maps.BicyclingLayer;this.setState((function(){return{bicyclingLayer:t}}),this.setBicyclingLayerCallback)}componentWillUnmount(){null!==this.state.bicyclingLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.bicyclingLayer),this.state.bicyclingLayer.setMap(null))}render(){return null}}O.contextType=r;class T extends n.PureComponent{constructor(){super(...arguments),this.state={transitLayer:null},this.setTransitLayerCallback=()=>{null!==this.state.transitLayer&&(this.state.transitLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.transitLayer))}}componentDidMount(){const t=new google.maps.TransitLayer;this.setState((function(){return{transitLayer:t}}),this.setTransitLayerCallback)}componentWillUnmount(){null!==this.state.transitLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.transitLayer),this.state.transitLayer.setMap(null))}render(){return null}}T.contextType=r;const B={onCircleComplete:"circlecomplete",onMarkerComplete:"markercomplete",onOverlayComplete:"overlaycomplete",onPolygonComplete:"polygoncomplete",onPolylineComplete:"polylinecomplete",onRectangleComplete:"rectanglecomplete"},z={drawingMode(t,e){t.setDrawingMode(e)},options(t,e){t.setOptions(e)}};class U extends n.PureComponent{constructor(t){super(t),this.registeredEvents=[],this.state={drawingManager:null},this.setDrawingManagerCallback=()=>{null!==this.state.drawingManager&&this.props.onLoad&&this.props.onLoad(this.state.drawingManager)},o(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing)}componentDidMount(){const t=new google.maps.drawing.DrawingManager(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:z,eventMap:B,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{drawingManager:t}}),this.setDrawingManagerCallback)}componentDidUpdate(t){null!==this.state.drawingManager&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:z,eventMap:B,prevProps:t,nextProps:this.props,instance:this.state.drawingManager}))}componentWillUnmount(){null!==this.state.drawingManager&&(this.props.onUnmount&&this.props.onUnmount(this.state.drawingManager),l(this.registeredEvents),this.state.drawingManager.setMap(null))}render(){return n.createElement(n.Fragment,null)}}U.contextType=r;const R={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"},A={animation(t,e){t.setAnimation(e)},clickable(t,e){t.setClickable(e)},cursor(t,e){t.setCursor(e)},draggable(t,e){t.setDraggable(e)},icon(t,e){t.setIcon(e)},label(t,e){t.setLabel(e)},map(t,e){t.setMap(e)},opacity(t,e){t.setOpacity(e)},options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},shape(t,e){t.setShape(e)},title(t,e){t.setTitle(e)},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class j extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[]}componentDidMount(){const t=Object.assign(Object.assign(Object.assign({},this.props.options||{}),this.props.clusterer?{}:{map:this.context}),{position:this.props.position});this.marker=new google.maps.Marker(t),this.props.clusterer?this.props.clusterer.addMarker(this.marker,!!this.props.noClustererRedraw):this.marker.setMap(this.context),this.registeredEvents=h({updaterMap:A,eventMap:R,prevProps:{},nextProps:this.props,instance:this.marker}),this.props.onLoad&&this.props.onLoad(this.marker)}componentDidUpdate(t){this.marker&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:A,eventMap:R,prevProps:t,nextProps:this.props,instance:this.marker}))}componentWillUnmount(){this.marker&&(this.props.onUnmount&&this.props.onUnmount(this.marker),l(this.registeredEvents),this.props.clusterer?this.props.clusterer.removeMarker(this.marker,!!this.props.noClustererRedraw):this.marker&&this.marker.setMap(null))}render(){let t=null;return this.props.children&&(t=n.Children.map(this.props.children,(t=>{if(!n.isValidElement(t))return t;let e=t;return n.cloneElement(e,{anchor:this.marker})}))),t||null}}j.contextType=r;var W=function(){function t(e,s){e.getClusterer().extend(t,google.maps.OverlayView),this.cluster=e,this.clusterClassName=this.cluster.getClusterer().getClusterClass(),this.className=this.clusterClassName,this.styles=s,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.setMap(e.getMap())}return t.prototype.onAdd=function(){var t,e,s=this;this.div=document.createElement("div"),this.div.className=this.className,this.visible&&this.show(),this.getPanes().overlayMouseTarget.appendChild(this.div),this.boundsChangedListener=google.maps.event.addListener(this.getMap(),"boundschanged",(function(){e=t})),google.maps.event.addDomListener(this.div,"mousedown",(function(){t=!0,e=!1})),google.maps.event.addDomListener(this.div,"click",(function(n){if(t=!1,!e){var i=s.cluster.getClusterer();if(google.maps.event.trigger(i,"click",s.cluster),google.maps.event.trigger(i,"clusterclick",s.cluster),i.getZoomOnClick()){var o=i.getMaxZoom(),r=s.cluster.getBounds();i.getMap().fitBounds(r),setTimeout((function(){i.getMap().fitBounds(r),null!==o&&i.getMap().getZoom()>o&&i.getMap().setZoom(o+1)}),100)}n.cancelBubble=!0,n.stopPropagation&&n.stopPropagation()}})),google.maps.event.addDomListener(this.div,"mouseover",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseover",s.cluster)})),google.maps.event.addDomListener(this.div,"mouseout",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseout",s.cluster)}))},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.hide(),null!==this.boundsChangedListener&&google.maps.event.removeListener(this.boundsChangedListener),google.maps.event.clearInstanceListeners(this.div),this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.visible&&null!==this.div&&this.center){var t=this.getPosFromLatLng(this.center),e=t.x,s=t.y;this.div.style.top=s+"px",this.div.style.left=e+"px"}},t.prototype.hide=function(){this.div&&(this.div.style.display="none"),this.visible=!1},t.prototype.show=function(){if(this.div&&this.center){var t,e="",s=this.backgroundPosition.split(" "),n=parseInt(s[0].replace(/^\s+|\s+$/g,""),10),i=parseInt(s[1].replace(/^\s+|\s+$/g,""),10),o=this.getPosFromLatLng(this.center);t=null===this.sums||void 0===this.sums.title||""===this.sums.title?this.cluster.getClusterer().getTitle():this.sums.title,this.div.style.cssText=this.createCss(o),e="<img alt='"+t+"' src='"+this.url+"' style='position: absolute; top: "+i+"px; left: "+n+"px; ",this.cluster.getClusterer().enableRetinaIcons||(e+="clip: rect("+-1*i+"px, "+(-1*n+this.width)+"px, "+(-1*i+this.height)+"px, "+-1*n+"px);"),e+="'>",this.div.innerHTML=e+"<div style='position: absolute;top: "+this.anchorText[0]+"px;left: "+this.anchorText[1]+"px;color: "+this.textColor+";font-size: "+this.textSize+"px;font-family: "+this.fontFamily+";font-weight: "+this.fontWeight+";font-style: "+this.fontStyle+";text-decoration: "+this.textDecoration+";text-align: center;width: "+this.width+"px;line-height:"+this.height+"px;'>"+this.sums.text+"</div>",this.div.title=t,this.div.style.display=""}this.visible=!0},t.prototype.useStyle=function(t){this.sums=t;var e=this.cluster.getClusterer().getStyles(),s=e[Math.min(e.length-1,Math.max(0,t.index-1))];this.url=s.url,this.height=s.height,this.width=s.width,s.className&&(this.className=this.clusterClassName+" "+s.className),this.anchorText=s.anchorText||[0,0],this.anchorIcon=s.anchorIcon||[this.height/2,this.width/2],this.textColor=s.textColor||"black",this.textSize=s.textSize||11,this.textDecoration=s.textDecoration||"none",this.fontWeight=s.fontWeight||"bold",this.fontStyle=s.fontStyle||"normal",this.fontFamily=s.fontFamily||"Arial,sans-serif",this.backgroundPosition=s.backgroundPosition||"0 0"},t.prototype.setCenter=function(t){this.center=t},t.prototype.createCss=function(t){var e=[];return e.push("cursor: pointer;"),e.push("position: absolute; top: "+t.y+"px; left: "+t.x+"px;"),e.push("width: "+this.width+"px; height: "+this.height+"px;"),e.join("")},t.prototype.getPosFromLatLng=function(t){var e=this.getProjection().fromLatLngToDivPixel(t);return e.x-=this.anchorIcon[1],e.y-=this.anchorIcon[0],e},t}(),V=function(){function t(t){this.markerClusterer=t,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 W(this,this.markerClusterer.getStyles())}return t.prototype.getSize=function(){return this.markers.length},t.prototype.getMarkers=function(){return this.markers},t.prototype.getCenter=function(){return this.center},t.prototype.getMap=function(){return this.map},t.prototype.getClusterer=function(){return this.markerClusterer},t.prototype.getBounds=function(){for(var t=new google.maps.LatLngBounds(this.center,this.center),e=this.getMarkers(),s=0;s<e.length;s++){var n=e[s].getPosition();n&&t.extend(n)}return t},t.prototype.remove=function(){this.clusterIcon.setMap(null),this.markers=[],delete this.markers},t.prototype.addMarker=function(t){if(this.isMarkerAlreadyAdded(t))return!1;var e;if(this.center){if(this.averageCenter&&(e=t.getPosition())){var s=this.markers.length+1;this.center=new google.maps.LatLng((this.center.lat()*(s-1)+e.lat())/s,(this.center.lng()*(s-1)+e.lng())/s),this.calculateBounds()}}else(e=t.getPosition())&&(this.center=e,this.calculateBounds());t.isAdded=!0,this.markers.push(t);var n=this.markers.length,i=this.markerClusterer.getMaxZoom(),o=this.map.getZoom();if(null!==i&&void 0!==o&&o>i)t.getMap()!==this.map&&t.setMap(this.map);else if(n<this.minClusterSize)t.getMap()!==this.map&&t.setMap(this.map);else if(n===this.minClusterSize)for(var r=0;r<n;r++)this.markers[r].setMap(null);else t.setMap(null);return!0},t.prototype.isMarkerInClusterBounds=function(t){if(null!==this.bounds){var e=t.getPosition();if(e)return this.bounds.contains(e)}return!1},t.prototype.calculateBounds=function(){this.bounds=this.markerClusterer.getExtendedBounds(new google.maps.LatLngBounds(this.center,this.center))},t.prototype.updateIcon=function(){var t=this.markers.length,e=this.markerClusterer.getMaxZoom(),s=this.map.getZoom();null!==e&&void 0!==s&&s>e||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())},t.prototype.isMarkerAlreadyAdded=function(t){if(this.markers.includes)return this.markers.includes(t);for(var e=0;e<this.markers.length;e++)if(t===this.markers[e])return!0;return!1},t}(),Z=function(t,e){var s=t.length,n=s.toString().length,i=Math.min(n,e);return{text:s.toString(),index:i,title:""}},N=[53,56,66,78,90],H=function(){function t(e,s,n){void 0===s&&(s=[]),void 0===n&&(n={}),this.extend(t,google.maps.OverlayView),this.markers=[],this.clusters=[],this.listeners=[],this.activeMap=null,this.ready=!1,this.gridSize=n.gridSize||60,this.minClusterSize=n.minimumClusterSize||2,this.maxZoom=n.maxZoom||null,this.styles=n.styles||[],this.title=n.title||"",this.zoomOnClick=!0,void 0!==n.zoomOnClick&&(this.zoomOnClick=n.zoomOnClick),this.averageCenter=!1,void 0!==n.averageCenter&&(this.averageCenter=n.averageCenter),this.ignoreHidden=!1,void 0!==n.ignoreHidden&&(this.ignoreHidden=n.ignoreHidden),this.enableRetinaIcons=!1,void 0!==n.enableRetinaIcons&&(this.enableRetinaIcons=n.enableRetinaIcons),this.imagePath=n.imagePath||"https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m",this.imageExtension=n.imageExtension||"png",this.imageSizes=n.imageSizes||N,this.calculator=n.calculator||Z,this.batchSize=n.batchSize||2e3,this.batchSizeIE=n.batchSizeIE||500,this.clusterClass=n.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&&(this.batchSize=this.batchSizeIE),this.timerRefStatic=null,this.setupStyles(),this.addMarkers(s,!0),this.setMap(e)}return t.prototype.onAdd=function(){var t=this;this.activeMap=this.getMap(),this.ready=!0,this.repaint(),this.listeners=[google.maps.event.addListener(this.getMap(),"zoom_changed",(function(){t.resetViewport(!1),t.getMap().getZoom()!==(t.get("minZoom")||0)&&t.getMap().getZoom()!==t.get("maxZoom")||google.maps.event.trigger(t,"idle")})),google.maps.event.addListener(this.getMap(),"idle",(function(){t.redraw()}))]},t.prototype.onRemove=function(){for(var t=0;t<this.markers.length;t++)this.markers[t].getMap()!==this.activeMap&&this.markers[t].setMap(this.activeMap);for(t=0;t<this.clusters.length;t++)this.clusters[t].remove();for(this.clusters=[],t=0;t<this.listeners.length;t++)google.maps.event.removeListener(this.listeners[t]);this.listeners=[],this.activeMap=null,this.ready=!1},t.prototype.draw=function(){},t.prototype.setupStyles=function(){if(!(this.styles.length>0))for(var t=0;t<this.imageSizes.length;t++)this.styles.push({url:this.imagePath+(t+1)+"."+this.imageExtension,height:this.imageSizes[t],width:this.imageSizes[t]})},t.prototype.fitMapToMarkers=function(){for(var t=this.getMarkers(),e=new google.maps.LatLngBounds,s=0;s<t.length;s++){var n=t[s].getPosition();n&&e.extend(n)}this.getMap().fitBounds(e)},t.prototype.getGridSize=function(){return this.gridSize},t.prototype.setGridSize=function(t){this.gridSize=t},t.prototype.getMinimumClusterSize=function(){return this.minClusterSize},t.prototype.setMinimumClusterSize=function(t){this.minClusterSize=t},t.prototype.getMaxZoom=function(){return this.maxZoom},t.prototype.setMaxZoom=function(t){this.maxZoom=t},t.prototype.getStyles=function(){return this.styles},t.prototype.setStyles=function(t){this.styles=t},t.prototype.getTitle=function(){return this.title},t.prototype.setTitle=function(t){this.title=t},t.prototype.getZoomOnClick=function(){return this.zoomOnClick},t.prototype.setZoomOnClick=function(t){this.zoomOnClick=t},t.prototype.getAverageCenter=function(){return this.averageCenter},t.prototype.setAverageCenter=function(t){this.averageCenter=t},t.prototype.getIgnoreHidden=function(){return this.ignoreHidden},t.prototype.setIgnoreHidden=function(t){this.ignoreHidden=t},t.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons},t.prototype.setEnableRetinaIcons=function(t){this.enableRetinaIcons=t},t.prototype.getImageExtension=function(){return this.imageExtension},t.prototype.setImageExtension=function(t){this.imageExtension=t},t.prototype.getImagePath=function(){return this.imagePath},t.prototype.setImagePath=function(t){this.imagePath=t},t.prototype.getImageSizes=function(){return this.imageSizes},t.prototype.setImageSizes=function(t){this.imageSizes=t},t.prototype.getCalculator=function(){return this.calculator},t.prototype.setCalculator=function(t){this.calculator=t},t.prototype.getBatchSizeIE=function(){return this.batchSizeIE},t.prototype.setBatchSizeIE=function(t){this.batchSizeIE=t},t.prototype.getClusterClass=function(){return this.clusterClass},t.prototype.setClusterClass=function(t){this.clusterClass=t},t.prototype.getMarkers=function(){return this.markers},t.prototype.getTotalMarkers=function(){return this.markers.length},t.prototype.getClusters=function(){return this.clusters},t.prototype.getTotalClusters=function(){return this.clusters.length},t.prototype.addMarker=function(t,e){this.pushMarkerTo(t),e||this.redraw()},t.prototype.addMarkers=function(t,e){for(var s in t)t.hasOwnProperty(s)&&this.pushMarkerTo(t[s]);e||this.redraw()},t.prototype.pushMarkerTo=function(t){var e=this;t.getDraggable()&&google.maps.event.addListener(t,"dragend",(function(){e.ready&&(t.isAdded=!1,e.repaint())})),t.isAdded=!1,this.markers.push(t)},t.prototype.removeMarker_=function(t){var e=-1;if(this.markers.indexOf)e=this.markers.indexOf(t);else for(var s=0;s<this.markers.length;s++)if(t===this.markers[s]){e=s;break}return-1!==e&&(t.setMap(null),this.markers.splice(e,1),!0)},t.prototype.removeMarker=function(t,e){var s=this.removeMarker_(t);return!e&&s&&this.repaint(),s},t.prototype.removeMarkers=function(t,e){for(var s=!1,n=0;n<t.length;n++)s=s||this.removeMarker_(t[n]);return!e&&s&&this.repaint(),s},t.prototype.clearMarkers=function(){this.resetViewport(!0),this.markers=[]},t.prototype.repaint=function(){var t=this.clusters.slice();this.clusters=[],this.resetViewport(!1),this.redraw(),setTimeout((function(){for(var e=0;e<t.length;e++)t[e].remove()}),0)},t.prototype.getExtendedBounds=function(t){var e=this.getProjection(),s=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getNorthEast().lat(),t.getNorthEast().lng()));s.x+=this.gridSize,s.y-=this.gridSize;var n=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getSouthWest().lat(),t.getSouthWest().lng()));return n.x-=this.gridSize,n.y+=this.gridSize,t.extend(e.fromDivPixelToLatLng(s)),t.extend(e.fromDivPixelToLatLng(n)),t},t.prototype.redraw=function(){this.createClusters(0)},t.prototype.resetViewport=function(t){for(var e=0;e<this.clusters.length;e++)this.clusters[e].remove();for(this.clusters=[],e=0;e<this.markers.length;e++){var s=this.markers[e];s.isAdded=!1,t&&s.setMap(null)}},t.prototype.distanceBetweenPoints=function(t,e){var s=(e.lat()-t.lat())*Math.PI/180,n=(e.lng()-t.lng())*Math.PI/180,i=Math.sin(s/2)*Math.sin(s/2)+Math.cos(t.lat()*Math.PI/180)*Math.cos(e.lat()*Math.PI/180)*Math.sin(n/2)*Math.sin(n/2);return 2*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))*6371},t.prototype.isMarkerInBounds=function(t,e){var s=t.getPosition();return!!s&&e.contains(s)},t.prototype.addToClosestCluster=function(t){for(var e,s=4e4,n=null,i=0;i<this.clusters.length;i++){var o=(e=this.clusters[i]).getCenter(),r=t.getPosition();if(o&&r){var a=this.distanceBetweenPoints(o,r);a<s&&(s=a,n=e)}}n&&n.isMarkerInClusterBounds(t)?n.addMarker(t):((e=new V(this)).addMarker(t),this.clusters.push(e))},t.prototype.createClusters=function(t){var e=this;if(this.ready){0===t&&(google.maps.event.trigger(this,"clusteringbegin",this),null!==this.timerRefStatic&&(window.clearTimeout(this.timerRefStatic),delete this.timerRefStatic));for(var s=this.getMap().getZoom()>3?new google.maps.LatLngBounds(this.getMap().getBounds().getSouthWest(),this.getMap().getBounds().getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625)),n=this.getExtendedBounds(s),i=Math.min(t+this.batchSize,this.markers.length),o=t;o<i;o++){var r=this.markers[o];!r.isAdded&&this.isMarkerInBounds(r,n)&&(!this.ignoreHidden||this.ignoreHidden&&r.getVisible())&&this.addToClosestCluster(r)}if(i<this.markers.length)this.timerRefStatic=window.setTimeout((function(){e.createClusters(i)}),0);else for(this.timerRefStatic=null,google.maps.event.trigger(this,"clusteringend",this),o=0;o<this.clusters.length;o++)this.clusters[o].updateIcon()}},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype[e]=t.prototype[e];return this}.apply(t,[e])},t}();const F={onClick:"click",onClusteringBegin:"clusteringbegin",onClusteringEnd:"clusteringend",onMouseOut:"mouseout",onMouseOver:"mouseover"},$={averageCenter(t,e){t.setAverageCenter(e)},batchSizeIE(t,e){t.setBatchSizeIE(e)},calculator(t,e){t.setCalculator(e)},clusterClass(t,e){t.setClusterClass(e)},enableRetinaIcons(t,e){t.setEnableRetinaIcons(e)},gridSize(t,e){t.setGridSize(e)},ignoreHidden(t,e){t.setIgnoreHidden(e)},imageExtension(t,e){t.setImageExtension(e)},imagePath(t,e){t.setImagePath(e)},imageSizes(t,e){t.setImageSizes(e)},maxZoom(t,e){t.setMaxZoom(e)},minimumClusterSize(t,e){t.setMinimumClusterSize(e)},styles(t,e){t.setStyles(e)},title(t,e){t.setTitle(e)},zoomOnClick(t,e){t.setZoomOnClick(e)}};class G extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={markerClusterer:null},this.setClustererCallback=()=>{null!==this.state.markerClusterer&&this.props.onLoad&&this.props.onLoad(this.state.markerClusterer)}}componentDidMount(){if(this.context){const t=new H(this.context,[],this.props.options);this.registeredEvents=h({updaterMap:$,eventMap:F,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{markerClusterer:t}}),this.setClustererCallback)}}componentDidUpdate(t){this.state.markerClusterer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:$,eventMap:F,prevProps:t,nextProps:this.props,instance:this.state.markerClusterer}))}componentWillUnmount(){null!==this.state.markerClusterer&&(this.props.onUnmount&&this.props.onUnmount(this.state.markerClusterer),l(this.registeredEvents),this.state.markerClusterer.setMap(null))}render(){return null!==this.state.markerClusterer?this.props.children(this.state.markerClusterer):null}}G.contextType=r;var q=function(){function t(e){void 0===e&&(e={}),this.extend(t,google.maps.OverlayView),this.content=e.content||"",this.disableAutoPan=e.disableAutoPan||!1,this.maxWidth=e.maxWidth||0,this.pixelOffset=e.pixelOffset||new google.maps.Size(0,0),this.position=e.position||new google.maps.LatLng(0,0),this.zIndex=e.zIndex||null,this.boxClass=e.boxClass||"infoBox",this.boxStyle=e.boxStyle||{},this.closeBoxMargin=e.closeBoxMargin||"2px",this.closeBoxURL=e.closeBoxURL||"http://www.google.com/intl/en_us/mapfiles/close.gif",""===e.closeBoxURL&&(this.closeBoxURL=""),this.infoBoxClearance=e.infoBoxClearance||new google.maps.Size(1,1),void 0===e.visible&&(void 0===e.isHidden?e.visible=!0:e.visible=!e.isHidden),this.isHidden=!e.visible,this.alignBottom=e.alignBottom||!1,this.pane=e.pane||"floatPane",this.enableEventPropagation=e.enableEventPropagation||!1,this.div=null,this.closeListener=null,this.moveListener=null,this.mapListener=null,this.contextListener=null,this.eventListeners=null,this.fixedWidthSet=null}return t.prototype.createInfoBoxDiv=function(){var t=this;function e(t){t.cancelBubble=!0,t.stopPropagation&&t.stopPropagation()}if(!this.div){if(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)),this.getPanes()[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 s=this.getBoxWidths();this.div.style.width=this.div.offsetWidth-s.left-s.right+"px",this.fixedWidthSet=!1}if(this.panBox(this.disableAutoPan),!this.enableEventPropagation){this.eventListeners=[];for(var n=["mousedown","mouseover","mouseout","mouseup","click","dblclick","touchstart","touchend","touchmove"],i=0;i<n.length;i++)this.eventListeners.push(google.maps.event.addDomListener(this.div,n[i],e));this.eventListeners.push(google.maps.event.addDomListener(this.div,"mouseover",(function(){t.div&&(t.div.style.cursor="default")})))}this.contextListener=google.maps.event.addDomListener(this.div,"contextmenu",(function(s){s.returnValue=!1,s.preventDefault&&s.preventDefault(),t.enableEventPropagation||e(s)})),google.maps.event.trigger(this,"domready")}},t.prototype.getCloseBoxImg=function(){var t="";return""!==this.closeBoxURL&&(t='<img alt=""',t+=' aria-hidden="true"',t+=" src='"+this.closeBoxURL+"'",t+=" align=right",t+=" style='",t+=" position: relative;",t+=" cursor: pointer;",t+=" margin: "+this.closeBoxMargin+";",t+="'>"),t},t.prototype.addClickHandler=function(){if(this.div&&this.div.firstChild&&""!==this.closeBoxURL){var t=this.div.firstChild;this.closeListener=google.maps.event.addDomListener(t,"click",this.getCloseClickHandler())}else this.closeListener=null},t.prototype.getCloseClickHandler=function(){var t=this;return function(e){e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t,"closeclick"),t.close()}},t.prototype.panBox=function(t){if(this.div&&!t){var e=this.getMap();if(e instanceof google.maps.Map){var s=0,n=0,i=e.getBounds();i&&!i.contains(this.position)&&e.setCenter(this.position);var o=e.getDiv(),r=o.offsetWidth,a=o.offsetHeight,l=this.pixelOffset.width,h=this.pixelOffset.height,p=this.div.offsetWidth,c=this.div.offsetHeight,u=this.infoBoxClearance.width,d=this.infoBoxClearance.height,g=this.getProjection().fromLatLngToContainerPixel(this.position);null!==g&&(g.x<-l+u?s=g.x+l-u:g.x+p+l+u>r&&(s=g.x+p+l+u-r),this.alignBottom?g.y<-h+d+c?n=g.y+h-d-c:g.y+h+d>a&&(n=g.y+h+d-a):g.y<-h+d?n=g.y+h-d:g.y+c+h+d>a&&(n=g.y+c+h+d-a)),0===s&&0===n||e.panBy(s,n)}}},t.prototype.setBoxStyle=function(){if(this.div){this.div.className=this.boxClass,this.div.style.cssText="";var t=this.boxStyle;for(var e in t)t.hasOwnProperty(e)&&(this.div.style[e]=t[e]);if(this.div.style.webkitTransform="translateZ(0)",void 0!==this.div.style.opacity&&""!==this.div.style.opacity){var s=parseFloat(this.div.style.opacity||"");this.div.style.msFilter='"progid:DXImageTransform.Microsoft.Alpha(Opacity='+100*s+')"',this.div.style.filter="alpha(opacity="+100*s+")"}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")}},t.prototype.getBoxWidths=function(){var t={top:0,bottom:0,left:0,right:0};if(!this.div)return t;if(document.defaultView&&document.defaultView.getComputedStyle){var e=this.div.ownerDocument,s=e&&e.defaultView?e.defaultView.getComputedStyle(this.div,""):null;s&&(t.top=parseInt(s.borderTopWidth||"",10)||0,t.bottom=parseInt(s.borderBottomWidth||"",10)||0,t.left=parseInt(s.borderLeftWidth||"",10)||0,t.right=parseInt(s.borderRightWidth||"",10)||0)}else if(document.documentElement.currentStyle){var n=this.div.currentStyle;n&&(t.top=parseInt(n.borderTopWidth||"",10)||0,t.bottom=parseInt(n.borderBottomWidth||"",10)||0,t.left=parseInt(n.borderLeftWidth||"",10)||0,t.right=parseInt(n.borderRightWidth||"",10)||0)}return t},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.createInfoBoxDiv(),this.div){var t=this.getProjection().fromLatLngToDivPixel(this.position);null!==t&&(this.div.style.left=t.x+this.pixelOffset.width+"px",this.alignBottom?this.div.style.bottom=-(t.y+this.pixelOffset.height)+"px":this.div.style.top=t.y+this.pixelOffset.height+"px"),this.isHidden?this.div.style.visibility="hidden":this.div.style.visibility="visible"}},t.prototype.setOptions=function(t){void 0===t&&(t={}),void 0!==t.boxClass&&(this.boxClass=t.boxClass,this.setBoxStyle()),void 0!==t.boxStyle&&(this.boxStyle=t.boxStyle,this.setBoxStyle()),void 0!==t.content&&this.setContent(t.content),void 0!==t.disableAutoPan&&(this.disableAutoPan=t.disableAutoPan),void 0!==t.maxWidth&&(this.maxWidth=t.maxWidth),void 0!==t.pixelOffset&&(this.pixelOffset=t.pixelOffset),void 0!==t.alignBottom&&(this.alignBottom=t.alignBottom),void 0!==t.position&&this.setPosition(t.position),void 0!==t.zIndex&&this.setZIndex(t.zIndex),void 0!==t.closeBoxMargin&&(this.closeBoxMargin=t.closeBoxMargin),void 0!==t.closeBoxURL&&(this.closeBoxURL=t.closeBoxURL),void 0!==t.infoBoxClearance&&(this.infoBoxClearance=t.infoBoxClearance),void 0!==t.isHidden&&(this.isHidden=t.isHidden),void 0!==t.visible&&(this.isHidden=!t.visible),void 0!==t.enableEventPropagation&&(this.enableEventPropagation=t.enableEventPropagation),this.div&&this.draw()},t.prototype.setContent=function(t){this.content=t,this.div&&(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.fixedWidthSet||(this.div.style.width=""),"string"==typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t)),this.fixedWidthSet||(this.div.style.width=this.div.offsetWidth+"px","string"==typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t))),this.addClickHandler()),google.maps.event.trigger(this,"content_changed")},t.prototype.setPosition=function(t){this.position=t,this.div&&this.draw(),google.maps.event.trigger(this,"position_changed")},t.prototype.setVisible=function(t){this.isHidden=!t,this.div&&(this.div.style.visibility=this.isHidden?"hidden":"visible")},t.prototype.setZIndex=function(t){this.zIndex=t,this.div&&(this.div.style.zIndex=t+""),google.maps.event.trigger(this,"zindex_changed")},t.prototype.getContent=function(){return this.content},t.prototype.getPosition=function(){return this.position},t.prototype.getZIndex=function(){return this.zIndex},t.prototype.getVisible=function(){return null!=this.getMap()&&!this.isHidden},t.prototype.show=function(){this.isHidden=!1,this.div&&(this.div.style.visibility="visible")},t.prototype.hide=function(){this.isHidden=!0,this.div&&(this.div.style.visibility="hidden")},t.prototype.open=function(t,e){var s=this;e&&(this.position=e.getPosition(),this.moveListener=google.maps.event.addListener(e,"position_changed",(function(){var t=e.getPosition();s.setPosition(t)})),this.mapListener=google.maps.event.addListener(e,"map_changed",(function(){s.setMap(e.map)}))),this.setMap(t),this.div&&this.panBox()},t.prototype.close=function(){if(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.eventListeners){for(var t=0;t<this.eventListeners.length;t++)google.maps.event.removeListener(this.eventListeners[t]);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)},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype.hasOwnProperty(e)||(this.prototype[e]=t.prototype[e]);return this}.apply(t,[e])},t}();const K={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},Y={options(t,e){t.setOptions(e)},position(t,e){e instanceof google.maps.LatLng?t.setPosition(e):t.setPosition(new google.maps.LatLng(e.lat,e.lng))},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class Q extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoBox:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor or a position prop for <InfoBox>.")},this.setInfoBoxCallback=()=>{const{anchor:t,onLoad:e}=this.props,{infoBox:s}=this.state;null!==s&&null!==this.containerElement&&(s.setContent(this.containerElement),this.open(s,t),e&&e(s))}}componentDidMount(){const{options:t}=this.props,e=t||{},{position:s}=e,n=d(e,["position"]);let i;!s||s instanceof google.maps.LatLng||(i=new google.maps.LatLng(s.lat,s.lng));const o=new q(Object.assign(Object.assign({},n),i?{position:i}:{}));this.containerElement=document.createElement("div"),this.registeredEvents=h({updaterMap:Y,eventMap:K,prevProps:{},nextProps:this.props,instance:o}),this.setState({infoBox:o},this.setInfoBoxCallback)}componentDidUpdate(t){const{infoBox:e}=this.state;null!==e&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Y,eventMap:K,prevProps:t,nextProps:this.props,instance:e}))}componentWillUnmount(){const{onUnmount:t}=this.props,{infoBox:e}=this.state;null!==e&&(t&&t(e),l(this.registeredEvents),e.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):null}}Q.contextType=r;var J={exports:{}};!function(t){function e(t,e,s,n){this.dataset=[],this.epsilon=1,this.minPts=2,this.distance=this._euclideanDistance,this.clusters=[],this.noise=[],this._visited=[],this._assigned=[],this._datasetLength=0,this._init(t,e,s,n)}e.prototype.run=function(t,e,s,n){this._init(t,e,s,n);for(var i=0;i<this._datasetLength;i++)if(1!==this._visited[i]){this._visited[i]=1;var o=this._regionQuery(i);if(o.length<this.minPts)this.noise.push(i);else{var r=this.clusters.length;this.clusters.push([]),this._addToCluster(i,r),this._expandCluster(r,o)}}return this.clusters},e.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this.noise=[],this._datasetLength=t.length,this._visited=new Array(this._datasetLength),this._assigned=new Array(this._datasetLength)}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},e.prototype._expandCluster=function(t,e){for(var s=0;s<e.length;s++){var n=e[s];if(1!==this._visited[n]){this._visited[n]=1;var i=this._regionQuery(n);i.length>=this.minPts&&(e=this._mergeArrays(e,i))}1!==this._assigned[n]&&this._addToCluster(n,t)}},e.prototype._addToCluster=function(t,e){this.clusters[e].push(t),this._assigned[t]=1},e.prototype._regionQuery=function(t){for(var e=[],s=0;s<this._datasetLength;s++)this.distance(this.dataset[t],this.dataset[s])<this.epsilon&&e.push(s);return e},e.prototype._mergeArrays=function(t,e){for(var s=e.length,n=0;n<s;n++){var i=e[n];t.indexOf(i)<0&&t.push(i)}return t},e.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=e)}(J);var X={exports:{}};!function(t){function e(t,e,s){this.k=3,this.dataset=[],this.assignments=[],this.centroids=[],this.init(t,e,s)}e.prototype.init=function(t,e,s){this.assignments=[],this.centroids=[],void 0!==t&&(this.dataset=t),void 0!==e&&(this.k=e),void 0!==s&&(this.distance=s)},e.prototype.run=function(t,e){this.init(t,e);for(var s=this.dataset.length,n=0;n<this.k;n++)this.centroids[n]=this.randomCentroid();for(var i=!0;i;){i=this.assign();for(var o=0;o<this.k;o++){for(var r=new Array(p),a=0,l=0;l<p;l++)r[l]=0;for(var h=0;h<s;h++){var p=this.dataset[h].length;if(o===this.assignments[h]){for(l=0;l<p;l++)r[l]+=this.dataset[h][l];a++}}if(a>0){for(l=0;l<p;l++)r[l]/=a;this.centroids[o]=r}else this.centroids[o]=this.randomCentroid(),i=!0}}return this.getClusters()},e.prototype.randomCentroid=function(){var t,e,s=this.dataset.length-1;do{e=Math.round(Math.random()*s),t=this.dataset[e]}while(this.centroids.indexOf(t)>=0);return t},e.prototype.assign=function(){for(var t,e=!1,s=this.dataset.length,n=0;n<s;n++)(t=this.argmin(this.dataset[n],this.centroids,this.distance))!=this.assignments[n]&&(this.assignments[n]=t,e=!0);return e},e.prototype.getClusters=function(){for(var t,e=new Array(this.k),s=0;s<this.assignments.length;s++)void 0===e[t=this.assignments[s]]&&(e[t]=[]),e[t].push(s);return e},e.prototype.argmin=function(t,e,s){for(var n,i=Number.MAX_VALUE,o=0,r=e.length,a=0;a<r;a++)(n=s(t,e[a]))<i&&(i=n,o=a);return o},e.prototype.distance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;){var i=t[n]-e[n];s+=i*i}return Math.sqrt(s)},t.exports&&(t.exports=e)}(X);var tt,et={exports:{}},st={exports:{}};!function(t){function e(t,e,s){this._queue=[],this._priorities=[],this._sorting="desc",this._init(t,e,s)}e.prototype.insert=function(t,e){for(var s=this._queue.length,n=s;n--;){var i=this._priorities[n];"desc"===this._sorting?e>i&&(s=n):e<i&&(s=n)}this._insertAt(t,e,s)},e.prototype.remove=function(t){for(var e=this._queue.length;e--;)if(t===this._queue[e]){this._queue.splice(e,1),this._priorities.splice(e,1);break}},e.prototype.forEach=function(t){this._queue.forEach(t)},e.prototype.getElements=function(){return this._queue},e.prototype.getElementPriority=function(t){return this._priorities[t]},e.prototype.getPriorities=function(){return this._priorities},e.prototype.getElementsWithPriorities=function(){for(var t=[],e=0,s=this._queue.length;e<s;e++)t.push([this._queue[e],this._priorities[e]]);return t},e.prototype._init=function(t,e,s){if(t&&e){if(this._queue=[],this._priorities=[],t.length!==e.length)throw new Error("Arrays must have the same length");for(var n=0;n<t.length;n++)this.insert(t[n],e[n])}s&&(this._sorting=s)},e.prototype._insertAt=function(t,e,s){this._queue.length===s?(this._queue.push(t),this._priorities.push(e)):(this._queue.splice(s,0,t),this._priorities.splice(s,0,e))},t.exports&&(t.exports=e)}(st),function(t){if(t.exports)var e=st.exports;function s(t,e,s,n){this.epsilon=1,this.minPts=1,this.distance=this._euclideanDistance,this._reachability=[],this._processed=[],this._coreDistance=0,this._orderedList=[],this._init(t,e,s,n)}s.prototype.run=function(t,s,n,i){this._init(t,s,n,i);for(var o=0,r=this.dataset.length;o<r;o++)if(1!==this._processed[o]){this._processed[o]=1,this.clusters.push([o]);var a=this.clusters.length-1;this._orderedList.push(o);var l=new e(null,null,"asc"),h=this._regionQuery(o);void 0!==this._distanceToCore(o)&&(this._updateQueue(o,h,l),this._expandCluster(a,l))}return this.clusters},s.prototype.getReachabilityPlot=function(){for(var t=[],e=0,s=this._orderedList.length;e<s;e++){var n=this._orderedList[e],i=this._reachability[n];t.push([n,i])}return t},s.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this._reachability=new Array(this.dataset.length),this._processed=new Array(this.dataset.length),this._coreDistance=0,this._orderedList=[]}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},s.prototype._updateQueue=function(t,e,s){var n=this;this._coreDistance=this._distanceToCore(t),e.forEach((function(e){if(void 0===n._processed[e]){var i=n.distance(n.dataset[t],n.dataset[e]),o=Math.max(n._coreDistance,i);void 0===n._reachability[e]?(n._reachability[e]=o,s.insert(e,o)):o<n._reachability[e]&&(n._reachability[e]=o,s.remove(e),s.insert(e,o))}}))},s.prototype._expandCluster=function(t,e){for(var s=e.getElements(),n=0,i=s.length;n<i;n++){var o=s[n];if(void 0===this._processed[o]){var r=this._regionQuery(o);this._processed[o]=1,this.clusters[t].push(o),this._orderedList.push(o),void 0!==this._distanceToCore(o)&&(this._updateQueue(o,r,e),this._expandCluster(t,e))}}},s.prototype._distanceToCore=function(t){for(var e=this.epsilon,s=0;s<e;s++)if(this._regionQuery(t,s).length>=this.minPts)return s},s.prototype._regionQuery=function(t,e){e=e||this.epsilon;for(var s=[],n=0,i=this.dataset.length;n<i;n++)this.distance(this.dataset[t],this.dataset[n])<e&&s.push(n);return s},s.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=s)}(et),(tt={exports:{}}).exports&&(tt.exports={DBSCAN:J.exports,KMEANS:X.exports,OPTICS:et.exports,PriorityQueue:st.exports});var nt;!function(t,e){t.exports=function(){function t(s,n,i,o,r,a){if(!(r-o<=i)){var l=o+r>>1;e(s,n,l,o,r,a%2),t(s,n,i,o,l-1,a+1),t(s,n,i,l+1,r,a+1)}}function e(t,n,i,o,r,a){for(;r>o;){if(r-o>600){var l=r-o+1,h=i-o+1,p=Math.log(l),c=.5*Math.exp(2*p/3),u=.5*Math.sqrt(p*c*(l-c)/l)*(h-l/2<0?-1:1);e(t,n,i,Math.max(o,Math.floor(i-h*c/l+u)),Math.min(r,Math.floor(i+(l-h)*c/l+u)),a)}var d=n[2*i+a],g=o,m=r;for(s(t,n,o,i),n[2*r+a]>d&&s(t,n,o,r);g<m;){for(s(t,n,g,m),g++,m--;n[2*g+a]<d;)g++;for(;n[2*m+a]>d;)m--}n[2*o+a]===d?s(t,n,o,m):s(t,n,++m,r),m<=i&&(o=m+1),i<=m&&(r=m-1)}}function s(t,e,s,i){n(t,s,i),n(e,2*s,2*i),n(e,2*s+1,2*i+1)}function n(t,e,s){var n=t[e];t[e]=t[s],t[s]=n}function i(t,e,s,n){var i=t-s,o=e-n;return i*i+o*o}var o=function(t){return t[0]},r=function(t){return t[1]},a=function(e,s,n,i,a){void 0===s&&(s=o),void 0===n&&(n=r),void 0===i&&(i=64),void 0===a&&(a=Float64Array),this.nodeSize=i,this.points=e;for(var l=e.length<65536?Uint16Array:Uint32Array,h=this.ids=new l(e.length),p=this.coords=new a(2*e.length),c=0;c<e.length;c++)h[c]=c,p[2*c]=s(e[c]),p[2*c+1]=n(e[c]);t(h,p,i,0,h.length-1,0)};a.prototype.range=function(t,e,s,n){return function(t,e,s,n,i,o,r){for(var a,l,h=[0,t.length-1,0],p=[];h.length;){var c=h.pop(),u=h.pop(),d=h.pop();if(u-d<=r)for(var g=d;g<=u;g++)a=e[2*g],l=e[2*g+1],a>=s&&a<=i&&l>=n&&l<=o&&p.push(t[g]);else{var m=Math.floor((d+u)/2);a=e[2*m],l=e[2*m+1],a>=s&&a<=i&&l>=n&&l<=o&&p.push(t[m]);var v=(c+1)%2;(0===c?s<=a:n<=l)&&(h.push(d),h.push(m-1),h.push(v)),(0===c?i>=a:o>=l)&&(h.push(m+1),h.push(u),h.push(v))}}return p}(this.ids,this.coords,t,e,s,n,this.nodeSize)},a.prototype.within=function(t,e,s){return function(t,e,s,n,o,r){for(var a=[0,t.length-1,0],l=[],h=o*o;a.length;){var p=a.pop(),c=a.pop(),u=a.pop();if(c-u<=r)for(var d=u;d<=c;d++)i(e[2*d],e[2*d+1],s,n)<=h&&l.push(t[d]);else{var g=Math.floor((u+c)/2),m=e[2*g],v=e[2*g+1];i(m,v,s,n)<=h&&l.push(t[g]);var f=(p+1)%2;(0===p?s-o<=m:n-o<=v)&&(a.push(u),a.push(g-1),a.push(f)),(0===p?s+o>=m:n+o>=v)&&(a.push(g+1),a.push(c),a.push(f))}}return l}(this.ids,this.coords,t,e,s,this.nodeSize)};var l,h={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},p=Math.fround||(l=new Float32Array(1),function(t){return l[0]=+t,l[0]}),c=function(t){this.options=y(Object.create(h),t),this.trees=new Array(this.options.maxZoom+1)};function u(t,e,s,n,i){return{x:p(t),y:p(e),zoom:1/0,id:s,parentId:-1,numPoints:n,properties:i}}function d(t,e){var s=t.geometry.coordinates,n=s[0],i=s[1];return{x:p(v(n)),y:p(f(i)),zoom:1/0,index:e,parentId:-1}}function g(t){return{type:"Feature",id:t.id,properties:m(t),geometry:{type:"Point",coordinates:[(n=t.x,360*(n-.5)),(e=t.y,s=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(s))/Math.PI-90)]}};var e,s,n}function m(t){var e=t.numPoints,s=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return y(y({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:s})}function v(t){return t/360+.5}function f(t){var e=Math.sin(t*Math.PI/180),s=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return s<0?0:s>1?1:s}function y(t,e){for(var s in e)t[s]=e[s];return t}function x(t){return t.x}function C(t){return t.y}return c.prototype.load=function(t){var e=this.options,s=e.log,n=e.minZoom,i=e.maxZoom,o=e.nodeSize;s&&console.time("total time");var r="prepare "+t.length+" points";s&&console.time(r),this.points=t;for(var l=[],h=0;h<t.length;h++)t[h].geometry&&l.push(d(t[h],h));this.trees[i+1]=new a(l,x,C,o,Float32Array),s&&console.timeEnd(r);for(var p=i;p>=n;p--){var c=+Date.now();l=this._cluster(l,p),this.trees[p]=new a(l,x,C,o,Float32Array),s&&console.log("z%d: %d clusters in %dms",p,l.length,+Date.now()-c)}return s&&console.timeEnd("total time"),this},c.prototype.getClusters=function(t,e){var s=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)s=-180,i=180;else if(s>i){var r=this.getClusters([s,n,180,o],e),a=this.getClusters([-180,n,i,o],e);return r.concat(a)}for(var l=this.trees[this._limitZoom(e)],h=[],p=0,c=l.range(v(s),f(o),v(i),f(n));p<c.length;p+=1){var u=c[p],d=l.points[u];h.push(d.numPoints?g(d):this.points[d.index])}return h},c.prototype.getChildren=function(t){var e=this._getOriginId(t),s=this._getOriginZoom(t),n="No cluster with the specified id.",i=this.trees[s];if(!i)throw new Error(n);var o=i.points[e];if(!o)throw new Error(n);for(var r=this.options.radius/(this.options.extent*Math.pow(2,s-1)),a=[],l=0,h=i.within(o.x,o.y,r);l<h.length;l+=1){var p=h[l],c=i.points[p];c.parentId===t&&a.push(c.numPoints?g(c):this.points[c.index])}if(0===a.length)throw new Error(n);return a},c.prototype.getLeaves=function(t,e,s){e=e||10,s=s||0;var n=[];return this._appendLeaves(n,t,e,s,0),n},c.prototype.getTile=function(t,e,s){var n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),o=this.options,r=o.extent,a=o.radius/r,l=(s-a)/i,h=(s+1+a)/i,p={features:[]};return this._addTileFeatures(n.range((e-a)/i,l,(e+1+a)/i,h),n.points,e,s,i,p),0===e&&this._addTileFeatures(n.range(1-a/i,l,1,h),n.points,i,s,i,p),e===i-1&&this._addTileFeatures(n.range(0,l,a/i,h),n.points,-1,s,i,p),p.features.length?p:null},c.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var s=this.getChildren(t);if(e++,1!==s.length)break;t=s[0].properties.cluster_id}return e},c.prototype._appendLeaves=function(t,e,s,n,i){for(var o=0,r=this.getChildren(e);o<r.length;o+=1){var a=r[o],l=a.properties;if(l&&l.cluster?i+l.point_count<=n?i+=l.point_count:i=this._appendLeaves(t,l.cluster_id,s,n,i):i<n?i++:t.push(a),t.length===s)break}return i},c.prototype._addTileFeatures=function(t,e,s,n,i,o){for(var r=0,a=t;r<a.length;r+=1){var l=e[a[r]],h=l.numPoints,p=void 0,c=void 0,u=void 0;if(h)p=m(l),c=l.x,u=l.y;else{var d=this.points[l.index];p=d.properties,c=v(d.geometry.coordinates[0]),u=f(d.geometry.coordinates[1])}var g={type:1,geometry:[[Math.round(this.options.extent*(c*i-s)),Math.round(this.options.extent*(u*i-n))]],tags:p},y=void 0;h?y=l.id:this.options.generateId?y=l.index:this.points[l.index].id&&(y=this.points[l.index].id),void 0!==y&&(g.id=y),o.features.push(g)}},c.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(+t,this.options.maxZoom+1))},c.prototype._cluster=function(t,e){for(var s=[],n=this.options,i=n.radius,o=n.extent,r=n.reduce,a=n.minPoints,l=i/(o*Math.pow(2,e)),h=0;h<t.length;h++){var p=t[h];if(!(p.zoom<=e)){p.zoom=e;for(var c=this.trees[e+1],d=c.within(p.x,p.y,l),g=p.numPoints||1,m=g,v=0,f=d;v<f.length;v+=1){var y=f[v],x=c.points[y];x.zoom>e&&(m+=x.numPoints||1)}if(m>g&&m>=a){for(var C=p.x*g,b=p.y*g,M=r&&g>1?this._map(p,!0):null,w=(h<<5)+(e+1)+this.points.length,L=0,k=d;L<k.length;L+=1){var P=k[L],E=c.points[P];if(!(E.zoom<=e)){E.zoom=e;var S=E.numPoints||1;C+=E.x*S,b+=E.y*S,E.parentId=w,r&&(M||(M=this._map(p,!0)),r(M,this._map(E)))}}p.parentId=w,s.push(u(C/m,b/m,w,m,M))}else if(s.push(p),m>1)for(var _=0,I=d;_<I.length;_+=1){var D=I[_],O=c.points[D];O.zoom<=e||(O.zoom=e,s.push(O))}}}return s},c.prototype._getOriginId=function(t){return t-this.points.length>>5},c.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},c.prototype._map=function(t,e){if(t.numPoints)return e?y({},t.properties):t.properties;var s=this.points[t.index].properties,n=this.options.map(s);return e&&n===s?y({},n):n},c}()}({exports:{}}),function(t){t.CLUSTERING_BEGIN="clusteringbegin",t.CLUSTERING_END="clusteringend",t.CLUSTER_CLICK="click"}(nt||(nt={}));const it={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},ot={options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},zIndex(t,e){t.setZIndex(e)}};class rt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoWindow:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor (typically render it inside a <Marker>) or a position props for <InfoWindow>.")},this.setInfoWindowCallback=()=>{null!==this.state.infoWindow&&null!==this.containerElement&&(this.state.infoWindow.setContent(this.containerElement),this.open(this.state.infoWindow,this.props.anchor),this.props.onLoad&&this.props.onLoad(this.state.infoWindow))}}componentDidMount(){const t=new google.maps.InfoWindow(Object.assign({},this.props.options||{}));this.containerElement=document.createElement("div"),this.registeredEvents=h({updaterMap:ot,eventMap:it,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{infoWindow:t}}),this.setInfoWindowCallback)}componentDidUpdate(t){null!==this.state.infoWindow&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ot,eventMap:it,prevProps:t,nextProps:this.props,instance:this.state.infoWindow}))}componentWillUnmount(){null!==this.state.infoWindow&&(l(this.registeredEvents),this.state.infoWindow.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):n.createElement(n.Fragment,null)}}rt.contextType=r;const at={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},lt={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},visible(t,e){t.setVisible(e)}};class ht extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polyline:null},this.setPolylineCallback=()=>{null!==this.state.polyline&&this.props.onLoad&&this.props.onLoad(this.state.polyline)}}componentDidMount(){const t=new google.maps.Polyline(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:lt,eventMap:at,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polyline:t}}),this.setPolylineCallback)}componentDidUpdate(t){null!==this.state.polyline&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:lt,eventMap:at,prevProps:t,nextProps:this.props,instance:this.state.polyline}))}componentWillUnmount(){null!==this.state.polyline&&(this.props.onUnmount&&this.props.onUnmount(this.state.polyline),l(this.registeredEvents),this.state.polyline.setMap(null))}render(){return n.createElement(n.Fragment,null)}}ht.contextType=r;const pt={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ct={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},paths(t,e){t.setPaths(e)},visible(t,e){t.setVisible(e)}};class ut extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polygon:null},this.setPolygonCallback=()=>{null!==this.state.polygon&&this.props.onLoad&&this.props.onLoad(this.state.polygon)}}componentDidMount(){const t=new google.maps.Polygon(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:ct,eventMap:pt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polygon:t}}),this.setPolygonCallback)}componentDidUpdate(t){null!==this.state.polygon&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ct,eventMap:pt,prevProps:t,nextProps:this.props,instance:this.state.polygon}))}componentWillUnmount(){null!==this.state.polygon&&(this.props.onUnmount&&this.props.onUnmount(this.state.polygon),l(this.registeredEvents),this.state.polygon&&this.state.polygon.setMap(null))}render(){return null}}ut.contextType=r;const dt={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"},gt={bounds(t,e){t.setBounds(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},visible(t,e){t.setVisible(e)}};class mt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={rectangle:null},this.setRectangleCallback=()=>{null!==this.state.rectangle&&this.props.onLoad&&this.props.onLoad(this.state.rectangle)}}componentDidMount(){const t=new google.maps.Rectangle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:gt,eventMap:dt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{rectangle:t}}),this.setRectangleCallback)}componentDidUpdate(t){null!==this.state.rectangle&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:gt,eventMap:dt,prevProps:t,nextProps:this.props,instance:this.state.rectangle}))}componentWillUnmount(){null!==this.state.rectangle&&(this.props.onUnmount&&this.props.onUnmount(this.state.rectangle),l(this.registeredEvents),this.state.rectangle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}mt.contextType=r;const vt={onCenterChanged:"center_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRadiusChanged:"radius_changed",onRightClick:"rightclick"},ft={center(t,e){t.setCenter(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},radius(t,e){t.setRadius(e)},visible(t,e){t.setVisible(e)}};class yt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={circle:null},this.setCircleCallback=()=>{null!==this.state.circle&&this.props.onLoad&&this.props.onLoad(this.state.circle)}}componentDidMount(){const t=new google.maps.Circle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:ft,eventMap:vt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{circle:t}}),this.setCircleCallback)}componentDidUpdate(t){null!==this.state.circle&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ft,eventMap:vt,prevProps:t,nextProps:this.props,instance:this.state.circle}))}componentWillUnmount(){null!==this.state.circle&&(this.props.onUnmount&&this.props.onUnmount(this.state.circle),l(this.registeredEvents),this.state.circle&&this.state.circle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}yt.contextType=r;const xt={onAddFeature:"addfeature",onClick:"click",onDblClick:"dblclick",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRemoveFeature:"removefeature",onRemoveProperty:"removeproperty",onRightClick:"rightclick",onSetGeometry:"setgeometry",onSetProperty:"setproperty"},Ct={add(t,e){t.add(e)},addgeojson(t,e,s){t.addGeoJson(e,s)},contains(t,e){t.contains(e)},foreach(t,e){t.forEach(e)},loadgeojson(t,e,s,n){t.loadGeoJson(e,s,n)},overridestyle(t,e,s){t.overrideStyle(e,s)},remove(t,e){t.remove(e)},revertstyle(t,e){t.revertStyle(e)},controlposition(t,e){t.setControlPosition(e)},controls(t,e){t.setControls(e)},drawingmode(t,e){t.setDrawingMode(e)},map(t,e){t.setMap(e)},style(t,e){t.setStyle(e)},togeojson(t,e){t.toGeoJson(e)}};class bt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={data:null},this.setDataCallback=()=>{null!==this.state.data&&this.props.onLoad&&this.props.onLoad(this.state.data)}}componentDidMount(){const t=new google.maps.Data(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:Ct,eventMap:xt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{data:t}}),this.setDataCallback)}componentDidUpdate(t){null!==this.state.data&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ct,eventMap:xt,prevProps:t,nextProps:this.props,instance:this.state.data}))}componentWillUnmount(){null!==this.state.data&&(this.props.onUnmount&&this.props.onUnmount(this.state.data),l(this.registeredEvents),this.state.data&&this.state.data.setMap(null))}render(){return null}}bt.contextType=r;const Mt={onClick:"click",onDefaultViewportChanged:"defaultviewport_changed",onStatusChanged:"status_changed"},wt={options(t,e){t.setOptions(e)},url(t,e){t.setUrl(e)},zIndex(t,e){t.setZIndex(e)}};class Lt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={kmlLayer:null},this.setKmlLayerCallback=()=>{null!==this.state.kmlLayer&&this.props.onLoad&&this.props.onLoad(this.state.kmlLayer)}}componentDidMount(){const t=new google.maps.KmlLayer(Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=h({updaterMap:wt,eventMap:Mt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{kmlLayer:t}}),this.setKmlLayerCallback)}componentDidUpdate(t){null!==this.state.kmlLayer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:wt,eventMap:Mt,prevProps:t,nextProps:this.props,instance:this.state.kmlLayer}))}componentWillUnmount(){null!==this.state.kmlLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.kmlLayer),l(this.registeredEvents),this.state.kmlLayer.setMap(null))}render(){return null}}Lt.contextType=r;const kt=(t,e)=>new e(t.lat,t.lng),Pt=(t,e)=>new e(new google.maps.LatLng(t.ne.lat,t.ne.lng),new google.maps.LatLng(t.sw.lat,t.sw.lng)),Et=(t,e,s)=>t instanceof e?t:s(t,e);function St(t){return t?(t instanceof google.maps.LatLng?t:new google.maps.LatLng(t.lat,t.lng))+"":""}function _t(t){return t?(t instanceof google.maps.LatLngBounds?t:new google.maps.LatLngBounds(new google.maps.LatLng(t.south,t.east),new google.maps.LatLng(t.north,t.west)))+"":""}class It extends n.PureComponent{constructor(t){super(t),this.state={paneEl:null,containerStyle:{position:"absolute"}},this.updatePane=()=>{const t=this.props.mapPaneName,e=this.overlayView.getPanes();o(!!t,"OverlayView requires props.mapPaneName but got %s",t),e?this.setState({paneEl:e[t]}):this.setState({paneEl:null})},this.onAdd=()=>{var t,e;this.updatePane(),null===(e=(t=this.props).onLoad)||void 0===e||e.call(t,this.overlayView)},this.onPositionElement=()=>{var t,e;const s=(a=this.overlayView.getProjection(),l=Object.assign({x:0,y:0},this.containerRef.current?(t=this.containerRef.current,"function"==typeof(e=this.props.getPixelPositionOffset)?e(t.offsetWidth,t.offsetHeight):{}):{}),h=this.props.bounds,p=this.props.position,void 0!==h?((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s.getNorthEast()),i=t&&t.fromLatLngToDivPixel(s.getSouthWest());return n&&i?{left:`${i.x+e.x}px`,top:`${n.y+e.y}px`,width:n.x-i.x-e.x+"px",height:i.y-n.y-e.y+"px"}:{left:"-9999px",top:"-9999px"}})(a,l,Et(h,google.maps.LatLngBounds,Pt)):((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s);if(n){const{x:t,y:s}=n;return{left:`${t+e.x}px`,top:`${s+e.y}px`}}return{left:"-9999px",top:"-9999px"}})(a,l,Et(p,google.maps.LatLng,kt))),{left:n,top:i,width:o,height:r}=this.state.containerStyle;var a,l,h,p,c,u;u={left:n,top:i,width:o,height:r},((c=s).left!==u.left||c.top!==u.top||c.width!==u.height||c.height!==u.height)&&this.setState({containerStyle:Object.assign(Object.assign({},s),{position:"absolute"})})},this.draw=()=>{this.onPositionElement()},this.onRemove=()=>{var t,e;this.setState((()=>({paneEl:null}))),null===(e=(t=this.props).onUnmount)||void 0===e||e.call(t,this.overlayView)},this.containerRef=n.createRef();const e=new google.maps.OverlayView;e.onAdd=this.onAdd,e.draw=this.draw,e.onRemove=this.onRemove,this.overlayView=e}componentDidMount(){this.overlayView.setMap(this.context)}componentDidUpdate(t){const e=St(t.position),s=St(this.props.position),n=_t(t.bounds),i=_t(this.props.bounds);e===s&&n===i||this.overlayView.draw(),t.mapPaneName!==this.props.mapPaneName&&this.updatePane()}componentWillUnmount(){this.overlayView.setMap(null)}render(){const t=this.state.paneEl;return t?i.createPortal(n.createElement("div",{ref:this.containerRef,style:this.state.containerStyle},n.Children.only(this.props.children)),t):null}}It.FLOAT_PANE="floatPane",It.MAP_PANE="mapPane",It.MARKER_LAYER="markerLayer",It.OVERLAY_LAYER="overlayLayer",It.OVERLAY_MOUSE_TARGET="overlayMouseTarget",It.contextType=r;const Dt={onDblClick:"dblclick",onClick:"click"},Ot={opacity(t,e){t.setOpacity(e)}};class Tt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={groundOverlay:null},this.setGroundOverlayCallback=()=>{null!==this.state.groundOverlay&&this.props.onLoad&&this.props.onLoad(this.state.groundOverlay)}}componentDidMount(){o(!!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");const t=new google.maps.GroundOverlay(this.props.url,this.props.bounds,Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=h({updaterMap:Ot,eventMap:Dt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{groundOverlay:t}}),this.setGroundOverlayCallback)}componentDidUpdate(t){null!==this.state.groundOverlay&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ot,eventMap:Dt,prevProps:t,nextProps:this.props,instance:this.state.groundOverlay}))}componentWillUnmount(){this.state.groundOverlay&&(this.props.onUnmount&&this.props.onUnmount(this.state.groundOverlay),this.state.groundOverlay.setMap(null))}render(){return null}}Tt.defaultProps={onLoad:function(){}},Tt.contextType=r;const Bt={},zt={data(t,e){t.setData(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)}};class Ut extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={heatmapLayer:null},this.setHeatmapLayerCallback=()=>{null!==this.state.heatmapLayer&&this.props.onLoad&&this.props.onLoad(this.state.heatmapLayer)}}componentDidMount(){o(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} to <LoadScript />? %s',google.maps.visualization),o(!!this.props.data,"data property is required in HeatmapLayer %s",this.props.data);const t=new google.maps.visualization.HeatmapLayer(Object.assign(Object.assign({},this.props.options||{}),{data:this.props.data,map:this.context}));this.registeredEvents=h({updaterMap:zt,eventMap:Bt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{heatmapLayer:t}}),this.setHeatmapLayerCallback)}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=h({updaterMap:zt,eventMap:Bt,prevProps:t,nextProps:this.props,instance:this.state.heatmapLayer})}componentWillUnmount(){null!==this.state.heatmapLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.heatmapLayer),l(this.registeredEvents),this.state.heatmapLayer.setMap(null))}render(){return null}}Ut.contextType=r;const Rt={onCloseClick:"closeclick",onPanoChanged:"pano_changed",onPositionChanged:"position_changed",onPovChanged:"pov_changed",onResize:"resize",onStatusChanged:"status_changed",onVisibleChanged:"visible_changed",onZoomChanged:"zoom_changed"},At={register(t,e,s){t.registerPanoProvider(e,s)},links(t,e){t.setLinks(e)},motionTracking(t,e){t.setMotionTracking(e)},options(t,e){t.setOptions(e)},pano(t,e){t.setPano(e)},position(t,e){t.setPosition(e)},pov(t,e){t.setPov(e)},visible(t,e){t.setVisible(e)},zoom(t,e){t.setZoom(e)}};class jt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={streetViewPanorama:null},this.setStreetViewPanoramaCallback=()=>{null!==this.state.streetViewPanorama&&this.props.onLoad&&this.props.onLoad(this.state.streetViewPanorama)}}componentDidMount(){const t=this.context.getStreetView();this.registeredEvents=h({updaterMap:At,eventMap:Rt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{streetViewPanorama:t}}),this.setStreetViewPanoramaCallback)}componentDidUpdate(t){null!==this.state.streetViewPanorama&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:At,eventMap:Rt,prevProps:t,nextProps:this.props,instance:this.state.streetViewPanorama}))}componentWillUnmount(){null!==this.state.streetViewPanorama&&(this.props.onUnmount&&this.props.onUnmount(this.state.streetViewPanorama),l(this.registeredEvents),this.state.streetViewPanorama.setVisible(!1))}render(){return null}}jt.contextType=r;class Wt extends n.PureComponent{constructor(){super(...arguments),this.state={streetViewService:null},this.setStreetViewServiceCallback=()=>{null!==this.state.streetViewService&&this.props.onLoad&&this.props.onLoad(this.state.streetViewService)}}componentDidMount(){const t=new google.maps.StreetViewService;this.setState((function(){return{streetViewService:t}}),this.setStreetViewServiceCallback)}componentWillUnmount(){null!==this.state.streetViewService&&this.props.onUnmount&&this.props.onUnmount(this.state.streetViewService)}render(){return null}}Wt.contextType=r,n.PureComponent;const Vt={onDirectionsChanged:"directions_changed"},Zt={directions(t,e){t.setDirections(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},panel(t,e){t.setPanel(e)},routeIndex(t,e){t.setRouteIndex(e)}};class Nt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={directionsRenderer:null},this.setDirectionsRendererCallback=()=>{null!==this.state.directionsRenderer&&(this.state.directionsRenderer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.directionsRenderer))}}componentDidMount(){const t=new google.maps.DirectionsRenderer(this.props.options);this.registeredEvents=h({updaterMap:Zt,eventMap:Vt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{directionsRenderer:t}}),this.setDirectionsRendererCallback)}componentDidUpdate(t){null!==this.state.directionsRenderer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Zt,eventMap:Vt,prevProps:t,nextProps:this.props,instance:this.state.directionsRenderer}))}componentWillUnmount(){null!==this.state.directionsRenderer&&(this.props.onUnmount&&this.props.onUnmount(this.state.directionsRenderer),l(this.registeredEvents),this.state.directionsRenderer&&this.state.directionsRenderer.setMap(null))}render(){return n.createElement(n.Fragment,null)}}Nt.contextType=r,n.PureComponent;const Ht={onPlacesChanged:"places_changed"},Ft={bounds(t,e){t.setBounds(e)}};class $t extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={searchBox:null},this.setSearchBoxCallback=()=>{null!==this.state.searchBox&&this.props.onLoad&&this.props.onLoad(this.state.searchBox)}}componentDidMount(){if(o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places),null!==this.containerElement&&null!==this.containerElement.current){const t=this.containerElement.current.querySelector("input");if(null!==t){const e=new google.maps.places.SearchBox(t,this.props.options);this.registeredEvents=h({updaterMap:Ft,eventMap:Ht,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{searchBox:e}}),this.setSearchBoxCallback)}}}componentDidUpdate(t){null!==this.state.searchBox&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ft,eventMap:Ht,prevProps:t,nextProps:this.props,instance:this.state.searchBox}))}componentWillUnmount(){null!==this.state.searchBox&&(this.props.onUnmount&&this.props.onUnmount(this.state.searchBox),l(this.registeredEvents))}render(){return n.createElement("div",{ref:this.containerElement},n.Children.only(this.props.children))}}$t.contextType=r;const Gt={onPlaceChanged:"place_changed"},qt={bounds(t,e){t.setBounds(e)},restrictions(t,e){t.setComponentRestrictions(e)},fields(t,e){t.setFields(e)},options(t,e){t.setOptions(e)},types(t,e){t.setTypes(e)}};class Kt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={autocomplete:null},this.setAutocompleteCallback=()=>{null!==this.state.autocomplete&&this.props.onLoad&&this.props.onLoad(this.state.autocomplete)}}componentDidMount(){o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places);const t=this.containerElement.current.querySelector("input");if(t){const e=new google.maps.places.Autocomplete(t,this.props.options);this.registeredEvents=h({updaterMap:qt,eventMap:Gt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{autocomplete:e}}),this.setAutocompleteCallback)}}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=h({updaterMap:qt,eventMap:Gt,prevProps:t,nextProps:this.props,instance:this.state.autocomplete})}componentWillUnmount(){null!==this.state.autocomplete&&l(this.registeredEvents)}render(){return n.createElement("div",{ref:this.containerElement,className:this.props.className||""},n.Children.only(this.props.children))}}Kt.contextType=r}}]);
2
+ !function(){try{var t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=(new Error).stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="338a1306-d4c1-486a-ac80-a88b84afc52d",t._sentryDebugIdIdentifier="sentry-dbid-338a1306-d4c1-486a-ac80-a88b84afc52d")}catch(t){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"1.4.1723"},(self.webpackChunk_reltio_remotes=self.webpackChunk_reltio_remotes||[]).push([[6422],{56569:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}),"AddCircle");e.Z=r},76981:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h3V9h4v4h3z"}),"CloudDownload");e.Z=r},29754:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}),"Edit");e.Z=r},35296:(t,e,s)=>{var n=s(71600);e.Z=void 0;var i=n(s(68671)),o=s(52322),r=(0,i.default)((0,o.jsx)("path",{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}),"Warning");e.Z=r},17871:(t,e,s)=>{s.d(e,{j_:()=>U,b6:()=>u,vD:()=>Q,Jx:()=>j,XL:()=>G,mg:()=>ut,Ji:()=>S});var n=s(24328),i=s(75047),o=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==s.g?s.g:"undefined"!=typeof self&&self,function(t,e,s,n,i,o,r,a){if(!t){var l;if(void 0===e)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var h=[s,n,i,o,r,a],p=0;(l=new Error(e.replace(/%s/g,(function(){return h[p++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}});const r=(0,n.createContext)(null);function a(t){google.maps.event.removeListener(t)}function l(t=[]){t.forEach(a)}function h({updaterMap:t,eventMap:e,prevProps:s,nextProps:n,instance:i}){const o=function(t,e,s){const n=(i=s,o=function(s,n,i){return"function"==typeof t[i]&&s.push(google.maps.event.addListener(e,n,t[i])),s},r=[],Object.keys(i).reduce((function(t,e){return o(t,i[e],e)}),r));var i,o,r;return n}(n,i,e);return((t,e,s,n)=>{const i={};var o,r;o=t,r=(t,o)=>{const r=s[o];r!==e[o]&&(i[o]=r,t(n,r))},Object.keys(o).forEach((function(t){return r(o[t],t)}))})(t,s,n,i),o}const 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"},c={extraMapTypes(t,e){e.forEach((function(e,s){t.mapTypes.set(String(s),e)}))},center(t,e){t.setCenter(e)},clickableIcons(t,e){t.setClickableIcons(e)},heading(t,e){t.setHeading(e)},mapTypeId(t,e){t.setMapTypeId(e)},options(t,e){t.setOptions(e)},streetView(t,e){t.setStreetView(e)},tilt(t,e){t.setTilt(e)},zoom(t,e){t.setZoom(e)}};class u extends n.PureComponent{constructor(){super(...arguments),this.state={map:null},this.registeredEvents=[],this.mapRef=null,this.getInstance=()=>null===this.mapRef?null:new google.maps.Map(this.mapRef,this.props.options),this.panTo=t=>{const e=this.getInstance();e&&e.panTo(t)},this.setMapCallback=()=>{null!==this.state.map&&this.props.onLoad&&this.props.onLoad(this.state.map)},this.getRef=t=>{this.mapRef=t}}componentDidMount(){const t=this.getInstance();this.registeredEvents=h({updaterMap:c,eventMap:p,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{map:t}}),this.setMapCallback)}componentDidUpdate(t){null!==this.state.map&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:c,eventMap:p,prevProps:t,nextProps:this.props,instance:this.state.map}))}componentWillUnmount(){null!==this.state.map&&(this.props.onUnmount&&this.props.onUnmount(this.state.map),l(this.registeredEvents))}render(){return n.createElement("div",{id:this.props.id,ref:this.getRef,style:this.props.mapContainerStyle,className:this.props.mapContainerClassName},n.createElement(r.Provider,{value:this.state.map},null!==this.state.map?this.props.children:n.createElement(n.Fragment,null)))}}function d(t,e){var s={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(s[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(s[n[i]]=t[n[i]])}return s}const g="undefined"!=typeof document,m=({url:t,id:e,nonce:s})=>g?new Promise((function(n,i){const o=document.getElementById(e),r=window;if(o){const s=o.getAttribute("data-state");if(o.src===t&&"error"!==s){if("ready"===s)return n(e);{const t=r.initMap,s=o.onerror;return r.initMap=function(){t&&t(),n(e)},void(o.onerror=function(t){s&&s(t),i(t)})}}o.remove()}const a=document.createElement("script");a.type="text/javascript",a.src=t,a.id=e,a.async=!0,a.nonce=s,a.onerror=function(t){a.setAttribute("data-state","error"),i(t)},r.initMap=function(){a.setAttribute("data-state","ready"),n(e)},document.head.appendChild(a)})).catch((t=>{throw console.error("injectScript error: ",t),t})):Promise.reject(new Error("document is undefined")),v=t=>!((!t.href||0!==t.href.indexOf("https://fonts.googleapis.com/css?family=Roboto"))&&("style"===t.tagName.toLowerCase()&&t.styleSheet&&t.styleSheet.cssText&&0===t.styleSheet.cssText.replace("\r\n","").indexOf(".gm-style")?(t.styleSheet.cssText="",0):"style"===t.tagName.toLowerCase()&&t.innerHTML&&0===t.innerHTML.replace("\r\n","").indexOf(".gm-style")?(t.innerHTML="",0):"style"!==t.tagName.toLowerCase()||t.styleSheet||t.innerHTML)),f=()=>{const t=document.getElementsByTagName("head")[0],e=t.insertBefore.bind(t);t.insertBefore=function(s,n){v(s)||Reflect.apply(e,t,[s,n])};const s=t.appendChild.bind(t);t.appendChild=function(e){v(e)||Reflect.apply(s,t,[e])}};function y({googleMapsApiKey:t,googleMapsClientId:e,version:s="weekly",language:n,region:i,libraries:r,channel:a,mapIds:l}){const h=[];return o(t&&e||!(t&&e),"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?h.push(`key=${t}`):e&&h.push(`client=${e}`),s&&h.push(`v=${s}`),n&&h.push(`language=${n}`),i&&h.push(`region=${i}`),r&&r.length&&h.push(`libraries=${r.sort().join(",")}`),a&&h.push(`channel=${a}`),l&&l.length&&h.push(`map_ids=${l.join(",")}`),h.push("callback=initMap"),`https://maps.googleapis.com/maps/api/js?${h.join("&")}`}let x=!1;function C(){return n.createElement("div",null,"Loading...")}const b={id:"script-loader",version:"weekly"};class M extends n.PureComponent{constructor(){super(...arguments),this.check=n.createRef(),this.state={loaded:!1},this.cleanupCallback=()=>{delete window.google.maps,this.injectScript()},this.isCleaningUp=()=>{return t=this,e=void 0,n=function*(){return new Promise((function(t){if(x){if(g){const e=window.setInterval((function(){x||(window.clearInterval(e),t())}),1)}}else t()}))},new((s=void 0)||(s=Promise))((function(i,o){function r(t){try{l(n.next(t))}catch(t){o(t)}}function a(t){try{l(n.throw(t))}catch(t){o(t)}}function l(t){var e;t.done?i(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(r,a)}l((n=n.apply(t,e||[])).next())}));var t,e,s,n},this.cleanup=()=>{x=!0;const t=document.getElementById(this.props.id);t&&t.parentNode&&t.parentNode.removeChild(t),Array.prototype.slice.call(document.getElementsByTagName("script")).filter((function(t){return"string"==typeof t.src&&t.src.includes("maps.googleapis")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("link")).filter((function(t){return"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans"===t.href})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("style")).filter((function(t){return void 0!==t.innerText&&t.innerText.length>0&&t.innerText.includes(".gm-")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)}))},this.injectScript=()=>{this.props.preventGoogleFontsLoading&&f(),o(!!this.props.id,'LoadScript requires "id" prop to be a string: %s',this.props.id);const t={id:this.props.id,nonce:this.props.nonce,url:y(this.props)};m(t).then((()=>{this.props.onLoad&&this.props.onLoad(),this.setState((function(){return{loaded:!0}}))})).catch((t=>{this.props.onError&&this.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 (${this.props.googleMapsApiKey||"-"}) or Client ID (${this.props.googleMapsClientId||"-"}) to <LoadScript />\n Otherwise it is a Network issue.\n `)}))}}componentDidMount(){if(g){if(window.google&&window.google.maps&&!x)return void console.error("google api is already presented");this.isCleaningUp().then(this.injectScript).catch((function(t){console.error("Error at injecting script after cleaning up: ",t)}))}}componentDidUpdate(t){this.props.libraries!==t.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"),g&&t.language!==this.props.language&&(this.cleanup(),this.setState((function(){return{loaded:!1}}),this.cleanupCallback))}componentWillUnmount(){if(g){this.cleanup();const t=()=>{this.check.current||(delete window.google,x=!1)};window.setTimeout(t,1),this.props.onUnmount&&this.props.onUnmount()}}render(){return n.createElement(n.Fragment,null,n.createElement("div",{ref:this.check}),this.state.loaded?this.props.children:this.props.loadingElement||n.createElement(C,null))}}let w;M.defaultProps=b;const L=n.createElement(C,null);n.memo((function(t){var{loadingElement:e,onLoad:s,onError:i,onUnmount:r,children:a}=t,l=d(t,["loadingElement","onLoad","onError","onUnmount","children"]);const{isLoaded:h,loadError:p}=function({id:t=b.id,version:e=b.version,nonce:s,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:l,libraries:h,preventGoogleFontsLoading:p,channel:c,mapIds:u}){const d=n.useRef(!1),[v,x]=n.useState(!1),[C,M]=n.useState(void 0);n.useEffect((function(){return d.current=!0,()=>{d.current=!1}}),[]),n.useEffect((function(){g&&p&&f()}),[p]),n.useEffect((function(){v&&o(!!window.google,"useLoadScript was marked as loaded, but window.google is not present. Something went wrong.")}),[v]);const L=y({version:e,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:l,libraries:h,channel:c,mapIds:u});n.useEffect((function(){function e(){d.current&&(x(!0),w=L)}g&&(window.google&&window.google.maps&&w===L?e():m({id:t,url:L,nonce:s}).then(e).catch((function(t){d.current&&M(t),console.warn(`\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (${i||"-"}) or Client ID (${r||"-"})\n Otherwise it is a Network issue.\n `),console.error(t)})))}),[t,L,s]);const k=n.useRef();return n.useEffect((function(){k.current&&h!==k.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"),k.current=h}),[h]),{isLoaded:v,loadError:C,url:L}}(l);return n.useEffect((function(){h&&"function"==typeof s&&s()}),[h,s]),n.useEffect((function(){p&&"function"==typeof i&&i(p)}),[p,i]),n.useEffect((function(){return()=>{r&&r()}}),[r]),h?a:e||L}));var k=function t(e,s){if(e===s)return!0;if(e&&s&&"object"==typeof e&&"object"==typeof s){if(e.constructor!==s.constructor)return!1;var n,i,o;if(Array.isArray(e)){if((n=e.length)!=s.length)return!1;for(i=n;0!=i--;)if(!t(e[i],s[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===s.source&&e.flags===s.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===s.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===s.toString();if((n=(o=Object.keys(e)).length)!==Object.keys(s).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(s,o[i]))return!1;for(i=n;0!=i--;){var r=o[i];if(!t(e[r],s[r]))return!1}return!0}return e!=e&&s!=s};const P="__googleMapsScriptId";class E{constructor({apiKey:t,channel:e,client:s,id:n=P,libraries:i=[],language:o,region:r,version:a,mapIds:l,nonce:h,retries:p=3,url:c="https://maps.googleapis.com/maps/api/js"}){if(this.CALLBACK="__googleMapsCallback",this.callbacks=[],this.done=!1,this.loading=!1,this.errors=[],this.version=a,this.apiKey=t,this.channel=e,this.client=s,this.id=n||P,this.libraries=i,this.language=o,this.region=r,this.mapIds=l,this.nonce=h,this.retries=p,this.url=c,E.instance){if(!k(this.options,E.instance.options))throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(E.instance.options)}`);return E.instance}E.instance=this}get options(){return{version:this.version,apiKey:this.apiKey,channel:this.channel,client:this.client,id:this.id,libraries:this.libraries,language:this.language,region:this.region,mapIds:this.mapIds,nonce:this.nonce,url:this.url}}get failed(){return this.done&&!this.loading&&this.errors.length>=this.retries+1}createUrl(){let t=this.url;return t+=`?callback=${this.CALLBACK}`,this.apiKey&&(t+=`&key=${this.apiKey}`),this.channel&&(t+=`&channel=${this.channel}`),this.client&&(t+=`&client=${this.client}`),this.libraries.length>0&&(t+=`&libraries=${this.libraries.join(",")}`),this.language&&(t+=`&language=${this.language}`),this.region&&(t+=`&region=${this.region}`),this.version&&(t+=`&v=${this.version}`),this.mapIds&&(t+=`&map_ids=${this.mapIds.join(",")}`),t}deleteScript(){const t=document.getElementById(this.id);t&&t.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise(((t,e)=>{this.loadCallback((s=>{s?e(s.error):t(window.google)}))}))}loadCallback(t){this.callbacks.push(t),this.execute()}setScript(){if(document.getElementById(this.id))return void this.callback();const t=this.createUrl(),e=document.createElement("script");e.id=this.id,e.type="text/javascript",e.src=t,e.onerror=this.loadErrorCallback.bind(this),e.defer=!0,e.async=!0,this.nonce&&(e.nonce=this.nonce),document.head.appendChild(e)}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.errors=[],this.onerrorEvent=null}resetIfRetryingFailed(){this.failed&&this.reset()}loadErrorCallback(t){if(this.errors.push(t),this.errors.length<=this.retries){const t=this.errors.length*Math.pow(2,this.errors.length);console.log(`Failed to load Google Maps script, retrying in ${t} ms.`),setTimeout((()=>{this.deleteScript(),this.setScript()}),t)}else this.onerrorEvent=t,this.callback()}setCallback(){window.__googleMapsCallback=this.callback.bind(this)}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach((t=>{t(this.onerrorEvent)})),this.callbacks=[]}execute(){if(this.resetIfRetryingFailed(),this.done)this.callback();else{if(window.google&&window.google.maps&&window.google.maps.version)return console.warn("Google Maps already loaded outside @googlemaps/js-api-loader.This may result in undesirable behavior as options and script parameters may not match."),void this.callback();this.loading||(this.loading=!0,this.setCallback(),this.setScript())}}}function S({id:t=b.id,version:e=b.version,nonce:s,googleMapsApiKey:i,language:o,region:r,libraries:a,preventGoogleFontsLoading:l,mapIds:h}){const p=n.useRef(!1),[c,u]=n.useState(!1),[d,m]=n.useState(void 0);n.useEffect((function(){return p.current=!0,()=>{p.current=!1}}),[]);const v=n.useMemo((function(){return new E({id:t,apiKey:i,version:e,libraries:a,language:o,region:r,mapIds:h,nonce:s})}),[t,i,e,a,o,r,h,s]);n.useEffect((function(){c||v.load().then((function(){p.current&&u(!0)})).catch((function(t){m(t)}))}),[]),n.useEffect((function(){g&&l&&f()}),[l]);const y=n.useRef();return n.useEffect((function(){y.current&&a!==y.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"),y.current=a}),[a]),{isLoaded:c,loadError:d}}const _={},I={options(t,e){t.setOptions(e)}};class D extends n.PureComponent{constructor(){super(...arguments),this.state={trafficLayer:null},this.setTrafficLayerCallback=()=>{null!==this.state.trafficLayer&&this.props.onLoad&&this.props.onLoad(this.state.trafficLayer)},this.registeredEvents=[]}componentDidMount(){const t=new google.maps.TrafficLayer(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:I,eventMap:_,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{trafficLayer:t}}),this.setTrafficLayerCallback)}componentDidUpdate(t){null!==this.state.trafficLayer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:I,eventMap:_,prevProps:t,nextProps:this.props,instance:this.state.trafficLayer}))}componentWillUnmount(){null!==this.state.trafficLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.trafficLayer),l(this.registeredEvents),this.state.trafficLayer.setMap(null))}render(){return null}}D.contextType=r;class O extends n.PureComponent{constructor(){super(...arguments),this.state={bicyclingLayer:null},this.setBicyclingLayerCallback=()=>{null!==this.state.bicyclingLayer&&(this.state.bicyclingLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.bicyclingLayer))}}componentDidMount(){const t=new google.maps.BicyclingLayer;this.setState((function(){return{bicyclingLayer:t}}),this.setBicyclingLayerCallback)}componentWillUnmount(){null!==this.state.bicyclingLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.bicyclingLayer),this.state.bicyclingLayer.setMap(null))}render(){return null}}O.contextType=r;class T extends n.PureComponent{constructor(){super(...arguments),this.state={transitLayer:null},this.setTransitLayerCallback=()=>{null!==this.state.transitLayer&&(this.state.transitLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.transitLayer))}}componentDidMount(){const t=new google.maps.TransitLayer;this.setState((function(){return{transitLayer:t}}),this.setTransitLayerCallback)}componentWillUnmount(){null!==this.state.transitLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.transitLayer),this.state.transitLayer.setMap(null))}render(){return null}}T.contextType=r;const B={onCircleComplete:"circlecomplete",onMarkerComplete:"markercomplete",onOverlayComplete:"overlaycomplete",onPolygonComplete:"polygoncomplete",onPolylineComplete:"polylinecomplete",onRectangleComplete:"rectanglecomplete"},z={drawingMode(t,e){t.setDrawingMode(e)},options(t,e){t.setOptions(e)}};class U extends n.PureComponent{constructor(t){super(t),this.registeredEvents=[],this.state={drawingManager:null},this.setDrawingManagerCallback=()=>{null!==this.state.drawingManager&&this.props.onLoad&&this.props.onLoad(this.state.drawingManager)},o(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing)}componentDidMount(){const t=new google.maps.drawing.DrawingManager(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:z,eventMap:B,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{drawingManager:t}}),this.setDrawingManagerCallback)}componentDidUpdate(t){null!==this.state.drawingManager&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:z,eventMap:B,prevProps:t,nextProps:this.props,instance:this.state.drawingManager}))}componentWillUnmount(){null!==this.state.drawingManager&&(this.props.onUnmount&&this.props.onUnmount(this.state.drawingManager),l(this.registeredEvents),this.state.drawingManager.setMap(null))}render(){return n.createElement(n.Fragment,null)}}U.contextType=r;const R={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"},A={animation(t,e){t.setAnimation(e)},clickable(t,e){t.setClickable(e)},cursor(t,e){t.setCursor(e)},draggable(t,e){t.setDraggable(e)},icon(t,e){t.setIcon(e)},label(t,e){t.setLabel(e)},map(t,e){t.setMap(e)},opacity(t,e){t.setOpacity(e)},options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},shape(t,e){t.setShape(e)},title(t,e){t.setTitle(e)},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class j extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[]}componentDidMount(){const t=Object.assign(Object.assign(Object.assign({},this.props.options||{}),this.props.clusterer?{}:{map:this.context}),{position:this.props.position});this.marker=new google.maps.Marker(t),this.props.clusterer?this.props.clusterer.addMarker(this.marker,!!this.props.noClustererRedraw):this.marker.setMap(this.context),this.registeredEvents=h({updaterMap:A,eventMap:R,prevProps:{},nextProps:this.props,instance:this.marker}),this.props.onLoad&&this.props.onLoad(this.marker)}componentDidUpdate(t){this.marker&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:A,eventMap:R,prevProps:t,nextProps:this.props,instance:this.marker}))}componentWillUnmount(){this.marker&&(this.props.onUnmount&&this.props.onUnmount(this.marker),l(this.registeredEvents),this.props.clusterer?this.props.clusterer.removeMarker(this.marker,!!this.props.noClustererRedraw):this.marker&&this.marker.setMap(null))}render(){let t=null;return this.props.children&&(t=n.Children.map(this.props.children,(t=>{if(!n.isValidElement(t))return t;let e=t;return n.cloneElement(e,{anchor:this.marker})}))),t||null}}j.contextType=r;var W=function(){function t(e,s){e.getClusterer().extend(t,google.maps.OverlayView),this.cluster=e,this.clusterClassName=this.cluster.getClusterer().getClusterClass(),this.className=this.clusterClassName,this.styles=s,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.setMap(e.getMap())}return t.prototype.onAdd=function(){var t,e,s=this;this.div=document.createElement("div"),this.div.className=this.className,this.visible&&this.show(),this.getPanes().overlayMouseTarget.appendChild(this.div),this.boundsChangedListener=google.maps.event.addListener(this.getMap(),"boundschanged",(function(){e=t})),google.maps.event.addDomListener(this.div,"mousedown",(function(){t=!0,e=!1})),google.maps.event.addDomListener(this.div,"click",(function(n){if(t=!1,!e){var i=s.cluster.getClusterer();if(google.maps.event.trigger(i,"click",s.cluster),google.maps.event.trigger(i,"clusterclick",s.cluster),i.getZoomOnClick()){var o=i.getMaxZoom(),r=s.cluster.getBounds();i.getMap().fitBounds(r),setTimeout((function(){i.getMap().fitBounds(r),null!==o&&i.getMap().getZoom()>o&&i.getMap().setZoom(o+1)}),100)}n.cancelBubble=!0,n.stopPropagation&&n.stopPropagation()}})),google.maps.event.addDomListener(this.div,"mouseover",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseover",s.cluster)})),google.maps.event.addDomListener(this.div,"mouseout",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseout",s.cluster)}))},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.hide(),null!==this.boundsChangedListener&&google.maps.event.removeListener(this.boundsChangedListener),google.maps.event.clearInstanceListeners(this.div),this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.visible&&null!==this.div&&this.center){var t=this.getPosFromLatLng(this.center),e=t.x,s=t.y;this.div.style.top=s+"px",this.div.style.left=e+"px"}},t.prototype.hide=function(){this.div&&(this.div.style.display="none"),this.visible=!1},t.prototype.show=function(){if(this.div&&this.center){var t,e="",s=this.backgroundPosition.split(" "),n=parseInt(s[0].replace(/^\s+|\s+$/g,""),10),i=parseInt(s[1].replace(/^\s+|\s+$/g,""),10),o=this.getPosFromLatLng(this.center);t=null===this.sums||void 0===this.sums.title||""===this.sums.title?this.cluster.getClusterer().getTitle():this.sums.title,this.div.style.cssText=this.createCss(o),e="<img alt='"+t+"' src='"+this.url+"' style='position: absolute; top: "+i+"px; left: "+n+"px; ",this.cluster.getClusterer().enableRetinaIcons||(e+="clip: rect("+-1*i+"px, "+(-1*n+this.width)+"px, "+(-1*i+this.height)+"px, "+-1*n+"px);"),e+="'>",this.div.innerHTML=e+"<div style='position: absolute;top: "+this.anchorText[0]+"px;left: "+this.anchorText[1]+"px;color: "+this.textColor+";font-size: "+this.textSize+"px;font-family: "+this.fontFamily+";font-weight: "+this.fontWeight+";font-style: "+this.fontStyle+";text-decoration: "+this.textDecoration+";text-align: center;width: "+this.width+"px;line-height:"+this.height+"px;'>"+this.sums.text+"</div>",this.div.title=t,this.div.style.display=""}this.visible=!0},t.prototype.useStyle=function(t){this.sums=t;var e=this.cluster.getClusterer().getStyles(),s=e[Math.min(e.length-1,Math.max(0,t.index-1))];this.url=s.url,this.height=s.height,this.width=s.width,s.className&&(this.className=this.clusterClassName+" "+s.className),this.anchorText=s.anchorText||[0,0],this.anchorIcon=s.anchorIcon||[this.height/2,this.width/2],this.textColor=s.textColor||"black",this.textSize=s.textSize||11,this.textDecoration=s.textDecoration||"none",this.fontWeight=s.fontWeight||"bold",this.fontStyle=s.fontStyle||"normal",this.fontFamily=s.fontFamily||"Arial,sans-serif",this.backgroundPosition=s.backgroundPosition||"0 0"},t.prototype.setCenter=function(t){this.center=t},t.prototype.createCss=function(t){var e=[];return e.push("cursor: pointer;"),e.push("position: absolute; top: "+t.y+"px; left: "+t.x+"px;"),e.push("width: "+this.width+"px; height: "+this.height+"px;"),e.join("")},t.prototype.getPosFromLatLng=function(t){var e=this.getProjection().fromLatLngToDivPixel(t);return e.x-=this.anchorIcon[1],e.y-=this.anchorIcon[0],e},t}(),V=function(){function t(t){this.markerClusterer=t,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 W(this,this.markerClusterer.getStyles())}return t.prototype.getSize=function(){return this.markers.length},t.prototype.getMarkers=function(){return this.markers},t.prototype.getCenter=function(){return this.center},t.prototype.getMap=function(){return this.map},t.prototype.getClusterer=function(){return this.markerClusterer},t.prototype.getBounds=function(){for(var t=new google.maps.LatLngBounds(this.center,this.center),e=this.getMarkers(),s=0;s<e.length;s++){var n=e[s].getPosition();n&&t.extend(n)}return t},t.prototype.remove=function(){this.clusterIcon.setMap(null),this.markers=[],delete this.markers},t.prototype.addMarker=function(t){if(this.isMarkerAlreadyAdded(t))return!1;var e;if(this.center){if(this.averageCenter&&(e=t.getPosition())){var s=this.markers.length+1;this.center=new google.maps.LatLng((this.center.lat()*(s-1)+e.lat())/s,(this.center.lng()*(s-1)+e.lng())/s),this.calculateBounds()}}else(e=t.getPosition())&&(this.center=e,this.calculateBounds());t.isAdded=!0,this.markers.push(t);var n=this.markers.length,i=this.markerClusterer.getMaxZoom(),o=this.map.getZoom();if(null!==i&&void 0!==o&&o>i)t.getMap()!==this.map&&t.setMap(this.map);else if(n<this.minClusterSize)t.getMap()!==this.map&&t.setMap(this.map);else if(n===this.minClusterSize)for(var r=0;r<n;r++)this.markers[r].setMap(null);else t.setMap(null);return!0},t.prototype.isMarkerInClusterBounds=function(t){if(null!==this.bounds){var e=t.getPosition();if(e)return this.bounds.contains(e)}return!1},t.prototype.calculateBounds=function(){this.bounds=this.markerClusterer.getExtendedBounds(new google.maps.LatLngBounds(this.center,this.center))},t.prototype.updateIcon=function(){var t=this.markers.length,e=this.markerClusterer.getMaxZoom(),s=this.map.getZoom();null!==e&&void 0!==s&&s>e||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())},t.prototype.isMarkerAlreadyAdded=function(t){if(this.markers.includes)return this.markers.includes(t);for(var e=0;e<this.markers.length;e++)if(t===this.markers[e])return!0;return!1},t}(),Z=function(t,e){var s=t.length,n=s.toString().length,i=Math.min(n,e);return{text:s.toString(),index:i,title:""}},N=[53,56,66,78,90],H=function(){function t(e,s,n){void 0===s&&(s=[]),void 0===n&&(n={}),this.extend(t,google.maps.OverlayView),this.markers=[],this.clusters=[],this.listeners=[],this.activeMap=null,this.ready=!1,this.gridSize=n.gridSize||60,this.minClusterSize=n.minimumClusterSize||2,this.maxZoom=n.maxZoom||null,this.styles=n.styles||[],this.title=n.title||"",this.zoomOnClick=!0,void 0!==n.zoomOnClick&&(this.zoomOnClick=n.zoomOnClick),this.averageCenter=!1,void 0!==n.averageCenter&&(this.averageCenter=n.averageCenter),this.ignoreHidden=!1,void 0!==n.ignoreHidden&&(this.ignoreHidden=n.ignoreHidden),this.enableRetinaIcons=!1,void 0!==n.enableRetinaIcons&&(this.enableRetinaIcons=n.enableRetinaIcons),this.imagePath=n.imagePath||"https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m",this.imageExtension=n.imageExtension||"png",this.imageSizes=n.imageSizes||N,this.calculator=n.calculator||Z,this.batchSize=n.batchSize||2e3,this.batchSizeIE=n.batchSizeIE||500,this.clusterClass=n.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&&(this.batchSize=this.batchSizeIE),this.timerRefStatic=null,this.setupStyles(),this.addMarkers(s,!0),this.setMap(e)}return t.prototype.onAdd=function(){var t=this;this.activeMap=this.getMap(),this.ready=!0,this.repaint(),this.listeners=[google.maps.event.addListener(this.getMap(),"zoom_changed",(function(){t.resetViewport(!1),t.getMap().getZoom()!==(t.get("minZoom")||0)&&t.getMap().getZoom()!==t.get("maxZoom")||google.maps.event.trigger(t,"idle")})),google.maps.event.addListener(this.getMap(),"idle",(function(){t.redraw()}))]},t.prototype.onRemove=function(){for(var t=0;t<this.markers.length;t++)this.markers[t].getMap()!==this.activeMap&&this.markers[t].setMap(this.activeMap);for(t=0;t<this.clusters.length;t++)this.clusters[t].remove();for(this.clusters=[],t=0;t<this.listeners.length;t++)google.maps.event.removeListener(this.listeners[t]);this.listeners=[],this.activeMap=null,this.ready=!1},t.prototype.draw=function(){},t.prototype.setupStyles=function(){if(!(this.styles.length>0))for(var t=0;t<this.imageSizes.length;t++)this.styles.push({url:this.imagePath+(t+1)+"."+this.imageExtension,height:this.imageSizes[t],width:this.imageSizes[t]})},t.prototype.fitMapToMarkers=function(){for(var t=this.getMarkers(),e=new google.maps.LatLngBounds,s=0;s<t.length;s++){var n=t[s].getPosition();n&&e.extend(n)}this.getMap().fitBounds(e)},t.prototype.getGridSize=function(){return this.gridSize},t.prototype.setGridSize=function(t){this.gridSize=t},t.prototype.getMinimumClusterSize=function(){return this.minClusterSize},t.prototype.setMinimumClusterSize=function(t){this.minClusterSize=t},t.prototype.getMaxZoom=function(){return this.maxZoom},t.prototype.setMaxZoom=function(t){this.maxZoom=t},t.prototype.getStyles=function(){return this.styles},t.prototype.setStyles=function(t){this.styles=t},t.prototype.getTitle=function(){return this.title},t.prototype.setTitle=function(t){this.title=t},t.prototype.getZoomOnClick=function(){return this.zoomOnClick},t.prototype.setZoomOnClick=function(t){this.zoomOnClick=t},t.prototype.getAverageCenter=function(){return this.averageCenter},t.prototype.setAverageCenter=function(t){this.averageCenter=t},t.prototype.getIgnoreHidden=function(){return this.ignoreHidden},t.prototype.setIgnoreHidden=function(t){this.ignoreHidden=t},t.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons},t.prototype.setEnableRetinaIcons=function(t){this.enableRetinaIcons=t},t.prototype.getImageExtension=function(){return this.imageExtension},t.prototype.setImageExtension=function(t){this.imageExtension=t},t.prototype.getImagePath=function(){return this.imagePath},t.prototype.setImagePath=function(t){this.imagePath=t},t.prototype.getImageSizes=function(){return this.imageSizes},t.prototype.setImageSizes=function(t){this.imageSizes=t},t.prototype.getCalculator=function(){return this.calculator},t.prototype.setCalculator=function(t){this.calculator=t},t.prototype.getBatchSizeIE=function(){return this.batchSizeIE},t.prototype.setBatchSizeIE=function(t){this.batchSizeIE=t},t.prototype.getClusterClass=function(){return this.clusterClass},t.prototype.setClusterClass=function(t){this.clusterClass=t},t.prototype.getMarkers=function(){return this.markers},t.prototype.getTotalMarkers=function(){return this.markers.length},t.prototype.getClusters=function(){return this.clusters},t.prototype.getTotalClusters=function(){return this.clusters.length},t.prototype.addMarker=function(t,e){this.pushMarkerTo(t),e||this.redraw()},t.prototype.addMarkers=function(t,e){for(var s in t)t.hasOwnProperty(s)&&this.pushMarkerTo(t[s]);e||this.redraw()},t.prototype.pushMarkerTo=function(t){var e=this;t.getDraggable()&&google.maps.event.addListener(t,"dragend",(function(){e.ready&&(t.isAdded=!1,e.repaint())})),t.isAdded=!1,this.markers.push(t)},t.prototype.removeMarker_=function(t){var e=-1;if(this.markers.indexOf)e=this.markers.indexOf(t);else for(var s=0;s<this.markers.length;s++)if(t===this.markers[s]){e=s;break}return-1!==e&&(t.setMap(null),this.markers.splice(e,1),!0)},t.prototype.removeMarker=function(t,e){var s=this.removeMarker_(t);return!e&&s&&this.repaint(),s},t.prototype.removeMarkers=function(t,e){for(var s=!1,n=0;n<t.length;n++)s=s||this.removeMarker_(t[n]);return!e&&s&&this.repaint(),s},t.prototype.clearMarkers=function(){this.resetViewport(!0),this.markers=[]},t.prototype.repaint=function(){var t=this.clusters.slice();this.clusters=[],this.resetViewport(!1),this.redraw(),setTimeout((function(){for(var e=0;e<t.length;e++)t[e].remove()}),0)},t.prototype.getExtendedBounds=function(t){var e=this.getProjection(),s=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getNorthEast().lat(),t.getNorthEast().lng()));s.x+=this.gridSize,s.y-=this.gridSize;var n=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getSouthWest().lat(),t.getSouthWest().lng()));return n.x-=this.gridSize,n.y+=this.gridSize,t.extend(e.fromDivPixelToLatLng(s)),t.extend(e.fromDivPixelToLatLng(n)),t},t.prototype.redraw=function(){this.createClusters(0)},t.prototype.resetViewport=function(t){for(var e=0;e<this.clusters.length;e++)this.clusters[e].remove();for(this.clusters=[],e=0;e<this.markers.length;e++){var s=this.markers[e];s.isAdded=!1,t&&s.setMap(null)}},t.prototype.distanceBetweenPoints=function(t,e){var s=(e.lat()-t.lat())*Math.PI/180,n=(e.lng()-t.lng())*Math.PI/180,i=Math.sin(s/2)*Math.sin(s/2)+Math.cos(t.lat()*Math.PI/180)*Math.cos(e.lat()*Math.PI/180)*Math.sin(n/2)*Math.sin(n/2);return 2*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))*6371},t.prototype.isMarkerInBounds=function(t,e){var s=t.getPosition();return!!s&&e.contains(s)},t.prototype.addToClosestCluster=function(t){for(var e,s=4e4,n=null,i=0;i<this.clusters.length;i++){var o=(e=this.clusters[i]).getCenter(),r=t.getPosition();if(o&&r){var a=this.distanceBetweenPoints(o,r);a<s&&(s=a,n=e)}}n&&n.isMarkerInClusterBounds(t)?n.addMarker(t):((e=new V(this)).addMarker(t),this.clusters.push(e))},t.prototype.createClusters=function(t){var e=this;if(this.ready){0===t&&(google.maps.event.trigger(this,"clusteringbegin",this),null!==this.timerRefStatic&&(window.clearTimeout(this.timerRefStatic),delete this.timerRefStatic));for(var s=this.getMap().getZoom()>3?new google.maps.LatLngBounds(this.getMap().getBounds().getSouthWest(),this.getMap().getBounds().getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625)),n=this.getExtendedBounds(s),i=Math.min(t+this.batchSize,this.markers.length),o=t;o<i;o++){var r=this.markers[o];!r.isAdded&&this.isMarkerInBounds(r,n)&&(!this.ignoreHidden||this.ignoreHidden&&r.getVisible())&&this.addToClosestCluster(r)}if(i<this.markers.length)this.timerRefStatic=window.setTimeout((function(){e.createClusters(i)}),0);else for(this.timerRefStatic=null,google.maps.event.trigger(this,"clusteringend",this),o=0;o<this.clusters.length;o++)this.clusters[o].updateIcon()}},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype[e]=t.prototype[e];return this}.apply(t,[e])},t}();const F={onClick:"click",onClusteringBegin:"clusteringbegin",onClusteringEnd:"clusteringend",onMouseOut:"mouseout",onMouseOver:"mouseover"},$={averageCenter(t,e){t.setAverageCenter(e)},batchSizeIE(t,e){t.setBatchSizeIE(e)},calculator(t,e){t.setCalculator(e)},clusterClass(t,e){t.setClusterClass(e)},enableRetinaIcons(t,e){t.setEnableRetinaIcons(e)},gridSize(t,e){t.setGridSize(e)},ignoreHidden(t,e){t.setIgnoreHidden(e)},imageExtension(t,e){t.setImageExtension(e)},imagePath(t,e){t.setImagePath(e)},imageSizes(t,e){t.setImageSizes(e)},maxZoom(t,e){t.setMaxZoom(e)},minimumClusterSize(t,e){t.setMinimumClusterSize(e)},styles(t,e){t.setStyles(e)},title(t,e){t.setTitle(e)},zoomOnClick(t,e){t.setZoomOnClick(e)}};class G extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={markerClusterer:null},this.setClustererCallback=()=>{null!==this.state.markerClusterer&&this.props.onLoad&&this.props.onLoad(this.state.markerClusterer)}}componentDidMount(){if(this.context){const t=new H(this.context,[],this.props.options);this.registeredEvents=h({updaterMap:$,eventMap:F,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{markerClusterer:t}}),this.setClustererCallback)}}componentDidUpdate(t){this.state.markerClusterer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:$,eventMap:F,prevProps:t,nextProps:this.props,instance:this.state.markerClusterer}))}componentWillUnmount(){null!==this.state.markerClusterer&&(this.props.onUnmount&&this.props.onUnmount(this.state.markerClusterer),l(this.registeredEvents),this.state.markerClusterer.setMap(null))}render(){return null!==this.state.markerClusterer?this.props.children(this.state.markerClusterer):null}}G.contextType=r;var q=function(){function t(e){void 0===e&&(e={}),this.extend(t,google.maps.OverlayView),this.content=e.content||"",this.disableAutoPan=e.disableAutoPan||!1,this.maxWidth=e.maxWidth||0,this.pixelOffset=e.pixelOffset||new google.maps.Size(0,0),this.position=e.position||new google.maps.LatLng(0,0),this.zIndex=e.zIndex||null,this.boxClass=e.boxClass||"infoBox",this.boxStyle=e.boxStyle||{},this.closeBoxMargin=e.closeBoxMargin||"2px",this.closeBoxURL=e.closeBoxURL||"http://www.google.com/intl/en_us/mapfiles/close.gif",""===e.closeBoxURL&&(this.closeBoxURL=""),this.infoBoxClearance=e.infoBoxClearance||new google.maps.Size(1,1),void 0===e.visible&&(void 0===e.isHidden?e.visible=!0:e.visible=!e.isHidden),this.isHidden=!e.visible,this.alignBottom=e.alignBottom||!1,this.pane=e.pane||"floatPane",this.enableEventPropagation=e.enableEventPropagation||!1,this.div=null,this.closeListener=null,this.moveListener=null,this.mapListener=null,this.contextListener=null,this.eventListeners=null,this.fixedWidthSet=null}return t.prototype.createInfoBoxDiv=function(){var t=this;function e(t){t.cancelBubble=!0,t.stopPropagation&&t.stopPropagation()}if(!this.div){if(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)),this.getPanes()[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 s=this.getBoxWidths();this.div.style.width=this.div.offsetWidth-s.left-s.right+"px",this.fixedWidthSet=!1}if(this.panBox(this.disableAutoPan),!this.enableEventPropagation){this.eventListeners=[];for(var n=["mousedown","mouseover","mouseout","mouseup","click","dblclick","touchstart","touchend","touchmove"],i=0;i<n.length;i++)this.eventListeners.push(google.maps.event.addDomListener(this.div,n[i],e));this.eventListeners.push(google.maps.event.addDomListener(this.div,"mouseover",(function(){t.div&&(t.div.style.cursor="default")})))}this.contextListener=google.maps.event.addDomListener(this.div,"contextmenu",(function(s){s.returnValue=!1,s.preventDefault&&s.preventDefault(),t.enableEventPropagation||e(s)})),google.maps.event.trigger(this,"domready")}},t.prototype.getCloseBoxImg=function(){var t="";return""!==this.closeBoxURL&&(t='<img alt=""',t+=' aria-hidden="true"',t+=" src='"+this.closeBoxURL+"'",t+=" align=right",t+=" style='",t+=" position: relative;",t+=" cursor: pointer;",t+=" margin: "+this.closeBoxMargin+";",t+="'>"),t},t.prototype.addClickHandler=function(){if(this.div&&this.div.firstChild&&""!==this.closeBoxURL){var t=this.div.firstChild;this.closeListener=google.maps.event.addDomListener(t,"click",this.getCloseClickHandler())}else this.closeListener=null},t.prototype.getCloseClickHandler=function(){var t=this;return function(e){e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t,"closeclick"),t.close()}},t.prototype.panBox=function(t){if(this.div&&!t){var e=this.getMap();if(e instanceof google.maps.Map){var s=0,n=0,i=e.getBounds();i&&!i.contains(this.position)&&e.setCenter(this.position);var o=e.getDiv(),r=o.offsetWidth,a=o.offsetHeight,l=this.pixelOffset.width,h=this.pixelOffset.height,p=this.div.offsetWidth,c=this.div.offsetHeight,u=this.infoBoxClearance.width,d=this.infoBoxClearance.height,g=this.getProjection().fromLatLngToContainerPixel(this.position);null!==g&&(g.x<-l+u?s=g.x+l-u:g.x+p+l+u>r&&(s=g.x+p+l+u-r),this.alignBottom?g.y<-h+d+c?n=g.y+h-d-c:g.y+h+d>a&&(n=g.y+h+d-a):g.y<-h+d?n=g.y+h-d:g.y+c+h+d>a&&(n=g.y+c+h+d-a)),0===s&&0===n||e.panBy(s,n)}}},t.prototype.setBoxStyle=function(){if(this.div){this.div.className=this.boxClass,this.div.style.cssText="";var t=this.boxStyle;for(var e in t)t.hasOwnProperty(e)&&(this.div.style[e]=t[e]);if(this.div.style.webkitTransform="translateZ(0)",void 0!==this.div.style.opacity&&""!==this.div.style.opacity){var s=parseFloat(this.div.style.opacity||"");this.div.style.msFilter='"progid:DXImageTransform.Microsoft.Alpha(Opacity='+100*s+')"',this.div.style.filter="alpha(opacity="+100*s+")"}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")}},t.prototype.getBoxWidths=function(){var t={top:0,bottom:0,left:0,right:0};if(!this.div)return t;if(document.defaultView&&document.defaultView.getComputedStyle){var e=this.div.ownerDocument,s=e&&e.defaultView?e.defaultView.getComputedStyle(this.div,""):null;s&&(t.top=parseInt(s.borderTopWidth||"",10)||0,t.bottom=parseInt(s.borderBottomWidth||"",10)||0,t.left=parseInt(s.borderLeftWidth||"",10)||0,t.right=parseInt(s.borderRightWidth||"",10)||0)}else if(document.documentElement.currentStyle){var n=this.div.currentStyle;n&&(t.top=parseInt(n.borderTopWidth||"",10)||0,t.bottom=parseInt(n.borderBottomWidth||"",10)||0,t.left=parseInt(n.borderLeftWidth||"",10)||0,t.right=parseInt(n.borderRightWidth||"",10)||0)}return t},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.createInfoBoxDiv(),this.div){var t=this.getProjection().fromLatLngToDivPixel(this.position);null!==t&&(this.div.style.left=t.x+this.pixelOffset.width+"px",this.alignBottom?this.div.style.bottom=-(t.y+this.pixelOffset.height)+"px":this.div.style.top=t.y+this.pixelOffset.height+"px"),this.isHidden?this.div.style.visibility="hidden":this.div.style.visibility="visible"}},t.prototype.setOptions=function(t){void 0===t&&(t={}),void 0!==t.boxClass&&(this.boxClass=t.boxClass,this.setBoxStyle()),void 0!==t.boxStyle&&(this.boxStyle=t.boxStyle,this.setBoxStyle()),void 0!==t.content&&this.setContent(t.content),void 0!==t.disableAutoPan&&(this.disableAutoPan=t.disableAutoPan),void 0!==t.maxWidth&&(this.maxWidth=t.maxWidth),void 0!==t.pixelOffset&&(this.pixelOffset=t.pixelOffset),void 0!==t.alignBottom&&(this.alignBottom=t.alignBottom),void 0!==t.position&&this.setPosition(t.position),void 0!==t.zIndex&&this.setZIndex(t.zIndex),void 0!==t.closeBoxMargin&&(this.closeBoxMargin=t.closeBoxMargin),void 0!==t.closeBoxURL&&(this.closeBoxURL=t.closeBoxURL),void 0!==t.infoBoxClearance&&(this.infoBoxClearance=t.infoBoxClearance),void 0!==t.isHidden&&(this.isHidden=t.isHidden),void 0!==t.visible&&(this.isHidden=!t.visible),void 0!==t.enableEventPropagation&&(this.enableEventPropagation=t.enableEventPropagation),this.div&&this.draw()},t.prototype.setContent=function(t){this.content=t,this.div&&(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.fixedWidthSet||(this.div.style.width=""),"string"==typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t)),this.fixedWidthSet||(this.div.style.width=this.div.offsetWidth+"px","string"==typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t))),this.addClickHandler()),google.maps.event.trigger(this,"content_changed")},t.prototype.setPosition=function(t){this.position=t,this.div&&this.draw(),google.maps.event.trigger(this,"position_changed")},t.prototype.setVisible=function(t){this.isHidden=!t,this.div&&(this.div.style.visibility=this.isHidden?"hidden":"visible")},t.prototype.setZIndex=function(t){this.zIndex=t,this.div&&(this.div.style.zIndex=t+""),google.maps.event.trigger(this,"zindex_changed")},t.prototype.getContent=function(){return this.content},t.prototype.getPosition=function(){return this.position},t.prototype.getZIndex=function(){return this.zIndex},t.prototype.getVisible=function(){return null!=this.getMap()&&!this.isHidden},t.prototype.show=function(){this.isHidden=!1,this.div&&(this.div.style.visibility="visible")},t.prototype.hide=function(){this.isHidden=!0,this.div&&(this.div.style.visibility="hidden")},t.prototype.open=function(t,e){var s=this;e&&(this.position=e.getPosition(),this.moveListener=google.maps.event.addListener(e,"position_changed",(function(){var t=e.getPosition();s.setPosition(t)})),this.mapListener=google.maps.event.addListener(e,"map_changed",(function(){s.setMap(e.map)}))),this.setMap(t),this.div&&this.panBox()},t.prototype.close=function(){if(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.eventListeners){for(var t=0;t<this.eventListeners.length;t++)google.maps.event.removeListener(this.eventListeners[t]);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)},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype.hasOwnProperty(e)||(this.prototype[e]=t.prototype[e]);return this}.apply(t,[e])},t}();const K={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},Y={options(t,e){t.setOptions(e)},position(t,e){e instanceof google.maps.LatLng?t.setPosition(e):t.setPosition(new google.maps.LatLng(e.lat,e.lng))},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class Q extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoBox:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor or a position prop for <InfoBox>.")},this.setInfoBoxCallback=()=>{const{anchor:t,onLoad:e}=this.props,{infoBox:s}=this.state;null!==s&&null!==this.containerElement&&(s.setContent(this.containerElement),this.open(s,t),e&&e(s))}}componentDidMount(){const{options:t}=this.props,e=t||{},{position:s}=e,n=d(e,["position"]);let i;!s||s instanceof google.maps.LatLng||(i=new google.maps.LatLng(s.lat,s.lng));const o=new q(Object.assign(Object.assign({},n),i?{position:i}:{}));this.containerElement=document.createElement("div"),this.registeredEvents=h({updaterMap:Y,eventMap:K,prevProps:{},nextProps:this.props,instance:o}),this.setState({infoBox:o},this.setInfoBoxCallback)}componentDidUpdate(t){const{infoBox:e}=this.state;null!==e&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Y,eventMap:K,prevProps:t,nextProps:this.props,instance:e}))}componentWillUnmount(){const{onUnmount:t}=this.props,{infoBox:e}=this.state;null!==e&&(t&&t(e),l(this.registeredEvents),e.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):null}}Q.contextType=r;var J={exports:{}};!function(t){function e(t,e,s,n){this.dataset=[],this.epsilon=1,this.minPts=2,this.distance=this._euclideanDistance,this.clusters=[],this.noise=[],this._visited=[],this._assigned=[],this._datasetLength=0,this._init(t,e,s,n)}e.prototype.run=function(t,e,s,n){this._init(t,e,s,n);for(var i=0;i<this._datasetLength;i++)if(1!==this._visited[i]){this._visited[i]=1;var o=this._regionQuery(i);if(o.length<this.minPts)this.noise.push(i);else{var r=this.clusters.length;this.clusters.push([]),this._addToCluster(i,r),this._expandCluster(r,o)}}return this.clusters},e.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this.noise=[],this._datasetLength=t.length,this._visited=new Array(this._datasetLength),this._assigned=new Array(this._datasetLength)}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},e.prototype._expandCluster=function(t,e){for(var s=0;s<e.length;s++){var n=e[s];if(1!==this._visited[n]){this._visited[n]=1;var i=this._regionQuery(n);i.length>=this.minPts&&(e=this._mergeArrays(e,i))}1!==this._assigned[n]&&this._addToCluster(n,t)}},e.prototype._addToCluster=function(t,e){this.clusters[e].push(t),this._assigned[t]=1},e.prototype._regionQuery=function(t){for(var e=[],s=0;s<this._datasetLength;s++)this.distance(this.dataset[t],this.dataset[s])<this.epsilon&&e.push(s);return e},e.prototype._mergeArrays=function(t,e){for(var s=e.length,n=0;n<s;n++){var i=e[n];t.indexOf(i)<0&&t.push(i)}return t},e.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=e)}(J);var X={exports:{}};!function(t){function e(t,e,s){this.k=3,this.dataset=[],this.assignments=[],this.centroids=[],this.init(t,e,s)}e.prototype.init=function(t,e,s){this.assignments=[],this.centroids=[],void 0!==t&&(this.dataset=t),void 0!==e&&(this.k=e),void 0!==s&&(this.distance=s)},e.prototype.run=function(t,e){this.init(t,e);for(var s=this.dataset.length,n=0;n<this.k;n++)this.centroids[n]=this.randomCentroid();for(var i=!0;i;){i=this.assign();for(var o=0;o<this.k;o++){for(var r=new Array(p),a=0,l=0;l<p;l++)r[l]=0;for(var h=0;h<s;h++){var p=this.dataset[h].length;if(o===this.assignments[h]){for(l=0;l<p;l++)r[l]+=this.dataset[h][l];a++}}if(a>0){for(l=0;l<p;l++)r[l]/=a;this.centroids[o]=r}else this.centroids[o]=this.randomCentroid(),i=!0}}return this.getClusters()},e.prototype.randomCentroid=function(){var t,e,s=this.dataset.length-1;do{e=Math.round(Math.random()*s),t=this.dataset[e]}while(this.centroids.indexOf(t)>=0);return t},e.prototype.assign=function(){for(var t,e=!1,s=this.dataset.length,n=0;n<s;n++)(t=this.argmin(this.dataset[n],this.centroids,this.distance))!=this.assignments[n]&&(this.assignments[n]=t,e=!0);return e},e.prototype.getClusters=function(){for(var t,e=new Array(this.k),s=0;s<this.assignments.length;s++)void 0===e[t=this.assignments[s]]&&(e[t]=[]),e[t].push(s);return e},e.prototype.argmin=function(t,e,s){for(var n,i=Number.MAX_VALUE,o=0,r=e.length,a=0;a<r;a++)(n=s(t,e[a]))<i&&(i=n,o=a);return o},e.prototype.distance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;){var i=t[n]-e[n];s+=i*i}return Math.sqrt(s)},t.exports&&(t.exports=e)}(X);var tt,et={exports:{}},st={exports:{}};!function(t){function e(t,e,s){this._queue=[],this._priorities=[],this._sorting="desc",this._init(t,e,s)}e.prototype.insert=function(t,e){for(var s=this._queue.length,n=s;n--;){var i=this._priorities[n];"desc"===this._sorting?e>i&&(s=n):e<i&&(s=n)}this._insertAt(t,e,s)},e.prototype.remove=function(t){for(var e=this._queue.length;e--;)if(t===this._queue[e]){this._queue.splice(e,1),this._priorities.splice(e,1);break}},e.prototype.forEach=function(t){this._queue.forEach(t)},e.prototype.getElements=function(){return this._queue},e.prototype.getElementPriority=function(t){return this._priorities[t]},e.prototype.getPriorities=function(){return this._priorities},e.prototype.getElementsWithPriorities=function(){for(var t=[],e=0,s=this._queue.length;e<s;e++)t.push([this._queue[e],this._priorities[e]]);return t},e.prototype._init=function(t,e,s){if(t&&e){if(this._queue=[],this._priorities=[],t.length!==e.length)throw new Error("Arrays must have the same length");for(var n=0;n<t.length;n++)this.insert(t[n],e[n])}s&&(this._sorting=s)},e.prototype._insertAt=function(t,e,s){this._queue.length===s?(this._queue.push(t),this._priorities.push(e)):(this._queue.splice(s,0,t),this._priorities.splice(s,0,e))},t.exports&&(t.exports=e)}(st),function(t){if(t.exports)var e=st.exports;function s(t,e,s,n){this.epsilon=1,this.minPts=1,this.distance=this._euclideanDistance,this._reachability=[],this._processed=[],this._coreDistance=0,this._orderedList=[],this._init(t,e,s,n)}s.prototype.run=function(t,s,n,i){this._init(t,s,n,i);for(var o=0,r=this.dataset.length;o<r;o++)if(1!==this._processed[o]){this._processed[o]=1,this.clusters.push([o]);var a=this.clusters.length-1;this._orderedList.push(o);var l=new e(null,null,"asc"),h=this._regionQuery(o);void 0!==this._distanceToCore(o)&&(this._updateQueue(o,h,l),this._expandCluster(a,l))}return this.clusters},s.prototype.getReachabilityPlot=function(){for(var t=[],e=0,s=this._orderedList.length;e<s;e++){var n=this._orderedList[e],i=this._reachability[n];t.push([n,i])}return t},s.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this._reachability=new Array(this.dataset.length),this._processed=new Array(this.dataset.length),this._coreDistance=0,this._orderedList=[]}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},s.prototype._updateQueue=function(t,e,s){var n=this;this._coreDistance=this._distanceToCore(t),e.forEach((function(e){if(void 0===n._processed[e]){var i=n.distance(n.dataset[t],n.dataset[e]),o=Math.max(n._coreDistance,i);void 0===n._reachability[e]?(n._reachability[e]=o,s.insert(e,o)):o<n._reachability[e]&&(n._reachability[e]=o,s.remove(e),s.insert(e,o))}}))},s.prototype._expandCluster=function(t,e){for(var s=e.getElements(),n=0,i=s.length;n<i;n++){var o=s[n];if(void 0===this._processed[o]){var r=this._regionQuery(o);this._processed[o]=1,this.clusters[t].push(o),this._orderedList.push(o),void 0!==this._distanceToCore(o)&&(this._updateQueue(o,r,e),this._expandCluster(t,e))}}},s.prototype._distanceToCore=function(t){for(var e=this.epsilon,s=0;s<e;s++)if(this._regionQuery(t,s).length>=this.minPts)return s},s.prototype._regionQuery=function(t,e){e=e||this.epsilon;for(var s=[],n=0,i=this.dataset.length;n<i;n++)this.distance(this.dataset[t],this.dataset[n])<e&&s.push(n);return s},s.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=s)}(et),(tt={exports:{}}).exports&&(tt.exports={DBSCAN:J.exports,KMEANS:X.exports,OPTICS:et.exports,PriorityQueue:st.exports});var nt;!function(t,e){t.exports=function(){function t(s,n,i,o,r,a){if(!(r-o<=i)){var l=o+r>>1;e(s,n,l,o,r,a%2),t(s,n,i,o,l-1,a+1),t(s,n,i,l+1,r,a+1)}}function e(t,n,i,o,r,a){for(;r>o;){if(r-o>600){var l=r-o+1,h=i-o+1,p=Math.log(l),c=.5*Math.exp(2*p/3),u=.5*Math.sqrt(p*c*(l-c)/l)*(h-l/2<0?-1:1);e(t,n,i,Math.max(o,Math.floor(i-h*c/l+u)),Math.min(r,Math.floor(i+(l-h)*c/l+u)),a)}var d=n[2*i+a],g=o,m=r;for(s(t,n,o,i),n[2*r+a]>d&&s(t,n,o,r);g<m;){for(s(t,n,g,m),g++,m--;n[2*g+a]<d;)g++;for(;n[2*m+a]>d;)m--}n[2*o+a]===d?s(t,n,o,m):s(t,n,++m,r),m<=i&&(o=m+1),i<=m&&(r=m-1)}}function s(t,e,s,i){n(t,s,i),n(e,2*s,2*i),n(e,2*s+1,2*i+1)}function n(t,e,s){var n=t[e];t[e]=t[s],t[s]=n}function i(t,e,s,n){var i=t-s,o=e-n;return i*i+o*o}var o=function(t){return t[0]},r=function(t){return t[1]},a=function(e,s,n,i,a){void 0===s&&(s=o),void 0===n&&(n=r),void 0===i&&(i=64),void 0===a&&(a=Float64Array),this.nodeSize=i,this.points=e;for(var l=e.length<65536?Uint16Array:Uint32Array,h=this.ids=new l(e.length),p=this.coords=new a(2*e.length),c=0;c<e.length;c++)h[c]=c,p[2*c]=s(e[c]),p[2*c+1]=n(e[c]);t(h,p,i,0,h.length-1,0)};a.prototype.range=function(t,e,s,n){return function(t,e,s,n,i,o,r){for(var a,l,h=[0,t.length-1,0],p=[];h.length;){var c=h.pop(),u=h.pop(),d=h.pop();if(u-d<=r)for(var g=d;g<=u;g++)a=e[2*g],l=e[2*g+1],a>=s&&a<=i&&l>=n&&l<=o&&p.push(t[g]);else{var m=Math.floor((d+u)/2);a=e[2*m],l=e[2*m+1],a>=s&&a<=i&&l>=n&&l<=o&&p.push(t[m]);var v=(c+1)%2;(0===c?s<=a:n<=l)&&(h.push(d),h.push(m-1),h.push(v)),(0===c?i>=a:o>=l)&&(h.push(m+1),h.push(u),h.push(v))}}return p}(this.ids,this.coords,t,e,s,n,this.nodeSize)},a.prototype.within=function(t,e,s){return function(t,e,s,n,o,r){for(var a=[0,t.length-1,0],l=[],h=o*o;a.length;){var p=a.pop(),c=a.pop(),u=a.pop();if(c-u<=r)for(var d=u;d<=c;d++)i(e[2*d],e[2*d+1],s,n)<=h&&l.push(t[d]);else{var g=Math.floor((u+c)/2),m=e[2*g],v=e[2*g+1];i(m,v,s,n)<=h&&l.push(t[g]);var f=(p+1)%2;(0===p?s-o<=m:n-o<=v)&&(a.push(u),a.push(g-1),a.push(f)),(0===p?s+o>=m:n+o>=v)&&(a.push(g+1),a.push(c),a.push(f))}}return l}(this.ids,this.coords,t,e,s,this.nodeSize)};var l,h={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},p=Math.fround||(l=new Float32Array(1),function(t){return l[0]=+t,l[0]}),c=function(t){this.options=y(Object.create(h),t),this.trees=new Array(this.options.maxZoom+1)};function u(t,e,s,n,i){return{x:p(t),y:p(e),zoom:1/0,id:s,parentId:-1,numPoints:n,properties:i}}function d(t,e){var s=t.geometry.coordinates,n=s[0],i=s[1];return{x:p(v(n)),y:p(f(i)),zoom:1/0,index:e,parentId:-1}}function g(t){return{type:"Feature",id:t.id,properties:m(t),geometry:{type:"Point",coordinates:[(n=t.x,360*(n-.5)),(e=t.y,s=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(s))/Math.PI-90)]}};var e,s,n}function m(t){var e=t.numPoints,s=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return y(y({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:s})}function v(t){return t/360+.5}function f(t){var e=Math.sin(t*Math.PI/180),s=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return s<0?0:s>1?1:s}function y(t,e){for(var s in e)t[s]=e[s];return t}function x(t){return t.x}function C(t){return t.y}return c.prototype.load=function(t){var e=this.options,s=e.log,n=e.minZoom,i=e.maxZoom,o=e.nodeSize;s&&console.time("total time");var r="prepare "+t.length+" points";s&&console.time(r),this.points=t;for(var l=[],h=0;h<t.length;h++)t[h].geometry&&l.push(d(t[h],h));this.trees[i+1]=new a(l,x,C,o,Float32Array),s&&console.timeEnd(r);for(var p=i;p>=n;p--){var c=+Date.now();l=this._cluster(l,p),this.trees[p]=new a(l,x,C,o,Float32Array),s&&console.log("z%d: %d clusters in %dms",p,l.length,+Date.now()-c)}return s&&console.timeEnd("total time"),this},c.prototype.getClusters=function(t,e){var s=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)s=-180,i=180;else if(s>i){var r=this.getClusters([s,n,180,o],e),a=this.getClusters([-180,n,i,o],e);return r.concat(a)}for(var l=this.trees[this._limitZoom(e)],h=[],p=0,c=l.range(v(s),f(o),v(i),f(n));p<c.length;p+=1){var u=c[p],d=l.points[u];h.push(d.numPoints?g(d):this.points[d.index])}return h},c.prototype.getChildren=function(t){var e=this._getOriginId(t),s=this._getOriginZoom(t),n="No cluster with the specified id.",i=this.trees[s];if(!i)throw new Error(n);var o=i.points[e];if(!o)throw new Error(n);for(var r=this.options.radius/(this.options.extent*Math.pow(2,s-1)),a=[],l=0,h=i.within(o.x,o.y,r);l<h.length;l+=1){var p=h[l],c=i.points[p];c.parentId===t&&a.push(c.numPoints?g(c):this.points[c.index])}if(0===a.length)throw new Error(n);return a},c.prototype.getLeaves=function(t,e,s){e=e||10,s=s||0;var n=[];return this._appendLeaves(n,t,e,s,0),n},c.prototype.getTile=function(t,e,s){var n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),o=this.options,r=o.extent,a=o.radius/r,l=(s-a)/i,h=(s+1+a)/i,p={features:[]};return this._addTileFeatures(n.range((e-a)/i,l,(e+1+a)/i,h),n.points,e,s,i,p),0===e&&this._addTileFeatures(n.range(1-a/i,l,1,h),n.points,i,s,i,p),e===i-1&&this._addTileFeatures(n.range(0,l,a/i,h),n.points,-1,s,i,p),p.features.length?p:null},c.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var s=this.getChildren(t);if(e++,1!==s.length)break;t=s[0].properties.cluster_id}return e},c.prototype._appendLeaves=function(t,e,s,n,i){for(var o=0,r=this.getChildren(e);o<r.length;o+=1){var a=r[o],l=a.properties;if(l&&l.cluster?i+l.point_count<=n?i+=l.point_count:i=this._appendLeaves(t,l.cluster_id,s,n,i):i<n?i++:t.push(a),t.length===s)break}return i},c.prototype._addTileFeatures=function(t,e,s,n,i,o){for(var r=0,a=t;r<a.length;r+=1){var l=e[a[r]],h=l.numPoints,p=void 0,c=void 0,u=void 0;if(h)p=m(l),c=l.x,u=l.y;else{var d=this.points[l.index];p=d.properties,c=v(d.geometry.coordinates[0]),u=f(d.geometry.coordinates[1])}var g={type:1,geometry:[[Math.round(this.options.extent*(c*i-s)),Math.round(this.options.extent*(u*i-n))]],tags:p},y=void 0;h?y=l.id:this.options.generateId?y=l.index:this.points[l.index].id&&(y=this.points[l.index].id),void 0!==y&&(g.id=y),o.features.push(g)}},c.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(+t,this.options.maxZoom+1))},c.prototype._cluster=function(t,e){for(var s=[],n=this.options,i=n.radius,o=n.extent,r=n.reduce,a=n.minPoints,l=i/(o*Math.pow(2,e)),h=0;h<t.length;h++){var p=t[h];if(!(p.zoom<=e)){p.zoom=e;for(var c=this.trees[e+1],d=c.within(p.x,p.y,l),g=p.numPoints||1,m=g,v=0,f=d;v<f.length;v+=1){var y=f[v],x=c.points[y];x.zoom>e&&(m+=x.numPoints||1)}if(m>g&&m>=a){for(var C=p.x*g,b=p.y*g,M=r&&g>1?this._map(p,!0):null,w=(h<<5)+(e+1)+this.points.length,L=0,k=d;L<k.length;L+=1){var P=k[L],E=c.points[P];if(!(E.zoom<=e)){E.zoom=e;var S=E.numPoints||1;C+=E.x*S,b+=E.y*S,E.parentId=w,r&&(M||(M=this._map(p,!0)),r(M,this._map(E)))}}p.parentId=w,s.push(u(C/m,b/m,w,m,M))}else if(s.push(p),m>1)for(var _=0,I=d;_<I.length;_+=1){var D=I[_],O=c.points[D];O.zoom<=e||(O.zoom=e,s.push(O))}}}return s},c.prototype._getOriginId=function(t){return t-this.points.length>>5},c.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},c.prototype._map=function(t,e){if(t.numPoints)return e?y({},t.properties):t.properties;var s=this.points[t.index].properties,n=this.options.map(s);return e&&n===s?y({},n):n},c}()}({exports:{}}),function(t){t.CLUSTERING_BEGIN="clusteringbegin",t.CLUSTERING_END="clusteringend",t.CLUSTER_CLICK="click"}(nt||(nt={}));const it={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},ot={options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},zIndex(t,e){t.setZIndex(e)}};class rt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoWindow:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor (typically render it inside a <Marker>) or a position props for <InfoWindow>.")},this.setInfoWindowCallback=()=>{null!==this.state.infoWindow&&null!==this.containerElement&&(this.state.infoWindow.setContent(this.containerElement),this.open(this.state.infoWindow,this.props.anchor),this.props.onLoad&&this.props.onLoad(this.state.infoWindow))}}componentDidMount(){const t=new google.maps.InfoWindow(Object.assign({},this.props.options||{}));this.containerElement=document.createElement("div"),this.registeredEvents=h({updaterMap:ot,eventMap:it,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{infoWindow:t}}),this.setInfoWindowCallback)}componentDidUpdate(t){null!==this.state.infoWindow&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ot,eventMap:it,prevProps:t,nextProps:this.props,instance:this.state.infoWindow}))}componentWillUnmount(){null!==this.state.infoWindow&&(l(this.registeredEvents),this.state.infoWindow.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):n.createElement(n.Fragment,null)}}rt.contextType=r;const at={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},lt={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},visible(t,e){t.setVisible(e)}};class ht extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polyline:null},this.setPolylineCallback=()=>{null!==this.state.polyline&&this.props.onLoad&&this.props.onLoad(this.state.polyline)}}componentDidMount(){const t=new google.maps.Polyline(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:lt,eventMap:at,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polyline:t}}),this.setPolylineCallback)}componentDidUpdate(t){null!==this.state.polyline&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:lt,eventMap:at,prevProps:t,nextProps:this.props,instance:this.state.polyline}))}componentWillUnmount(){null!==this.state.polyline&&(this.props.onUnmount&&this.props.onUnmount(this.state.polyline),l(this.registeredEvents),this.state.polyline.setMap(null))}render(){return n.createElement(n.Fragment,null)}}ht.contextType=r;const pt={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ct={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},paths(t,e){t.setPaths(e)},visible(t,e){t.setVisible(e)}};class ut extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polygon:null},this.setPolygonCallback=()=>{null!==this.state.polygon&&this.props.onLoad&&this.props.onLoad(this.state.polygon)}}componentDidMount(){const t=new google.maps.Polygon(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:ct,eventMap:pt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polygon:t}}),this.setPolygonCallback)}componentDidUpdate(t){null!==this.state.polygon&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ct,eventMap:pt,prevProps:t,nextProps:this.props,instance:this.state.polygon}))}componentWillUnmount(){null!==this.state.polygon&&(this.props.onUnmount&&this.props.onUnmount(this.state.polygon),l(this.registeredEvents),this.state.polygon&&this.state.polygon.setMap(null))}render(){return null}}ut.contextType=r;const dt={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"},gt={bounds(t,e){t.setBounds(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},visible(t,e){t.setVisible(e)}};class mt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={rectangle:null},this.setRectangleCallback=()=>{null!==this.state.rectangle&&this.props.onLoad&&this.props.onLoad(this.state.rectangle)}}componentDidMount(){const t=new google.maps.Rectangle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:gt,eventMap:dt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{rectangle:t}}),this.setRectangleCallback)}componentDidUpdate(t){null!==this.state.rectangle&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:gt,eventMap:dt,prevProps:t,nextProps:this.props,instance:this.state.rectangle}))}componentWillUnmount(){null!==this.state.rectangle&&(this.props.onUnmount&&this.props.onUnmount(this.state.rectangle),l(this.registeredEvents),this.state.rectangle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}mt.contextType=r;const vt={onCenterChanged:"center_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRadiusChanged:"radius_changed",onRightClick:"rightclick"},ft={center(t,e){t.setCenter(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},radius(t,e){t.setRadius(e)},visible(t,e){t.setVisible(e)}};class yt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={circle:null},this.setCircleCallback=()=>{null!==this.state.circle&&this.props.onLoad&&this.props.onLoad(this.state.circle)}}componentDidMount(){const t=new google.maps.Circle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:ft,eventMap:vt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{circle:t}}),this.setCircleCallback)}componentDidUpdate(t){null!==this.state.circle&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:ft,eventMap:vt,prevProps:t,nextProps:this.props,instance:this.state.circle}))}componentWillUnmount(){null!==this.state.circle&&(this.props.onUnmount&&this.props.onUnmount(this.state.circle),l(this.registeredEvents),this.state.circle&&this.state.circle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}yt.contextType=r;const xt={onAddFeature:"addfeature",onClick:"click",onDblClick:"dblclick",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRemoveFeature:"removefeature",onRemoveProperty:"removeproperty",onRightClick:"rightclick",onSetGeometry:"setgeometry",onSetProperty:"setproperty"},Ct={add(t,e){t.add(e)},addgeojson(t,e,s){t.addGeoJson(e,s)},contains(t,e){t.contains(e)},foreach(t,e){t.forEach(e)},loadgeojson(t,e,s,n){t.loadGeoJson(e,s,n)},overridestyle(t,e,s){t.overrideStyle(e,s)},remove(t,e){t.remove(e)},revertstyle(t,e){t.revertStyle(e)},controlposition(t,e){t.setControlPosition(e)},controls(t,e){t.setControls(e)},drawingmode(t,e){t.setDrawingMode(e)},map(t,e){t.setMap(e)},style(t,e){t.setStyle(e)},togeojson(t,e){t.toGeoJson(e)}};class bt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={data:null},this.setDataCallback=()=>{null!==this.state.data&&this.props.onLoad&&this.props.onLoad(this.state.data)}}componentDidMount(){const t=new google.maps.Data(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=h({updaterMap:Ct,eventMap:xt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{data:t}}),this.setDataCallback)}componentDidUpdate(t){null!==this.state.data&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ct,eventMap:xt,prevProps:t,nextProps:this.props,instance:this.state.data}))}componentWillUnmount(){null!==this.state.data&&(this.props.onUnmount&&this.props.onUnmount(this.state.data),l(this.registeredEvents),this.state.data&&this.state.data.setMap(null))}render(){return null}}bt.contextType=r;const Mt={onClick:"click",onDefaultViewportChanged:"defaultviewport_changed",onStatusChanged:"status_changed"},wt={options(t,e){t.setOptions(e)},url(t,e){t.setUrl(e)},zIndex(t,e){t.setZIndex(e)}};class Lt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={kmlLayer:null},this.setKmlLayerCallback=()=>{null!==this.state.kmlLayer&&this.props.onLoad&&this.props.onLoad(this.state.kmlLayer)}}componentDidMount(){const t=new google.maps.KmlLayer(Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=h({updaterMap:wt,eventMap:Mt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{kmlLayer:t}}),this.setKmlLayerCallback)}componentDidUpdate(t){null!==this.state.kmlLayer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:wt,eventMap:Mt,prevProps:t,nextProps:this.props,instance:this.state.kmlLayer}))}componentWillUnmount(){null!==this.state.kmlLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.kmlLayer),l(this.registeredEvents),this.state.kmlLayer.setMap(null))}render(){return null}}Lt.contextType=r;const kt=(t,e)=>new e(t.lat,t.lng),Pt=(t,e)=>new e(new google.maps.LatLng(t.ne.lat,t.ne.lng),new google.maps.LatLng(t.sw.lat,t.sw.lng)),Et=(t,e,s)=>t instanceof e?t:s(t,e);function St(t){return t?(t instanceof google.maps.LatLng?t:new google.maps.LatLng(t.lat,t.lng))+"":""}function _t(t){return t?(t instanceof google.maps.LatLngBounds?t:new google.maps.LatLngBounds(new google.maps.LatLng(t.south,t.east),new google.maps.LatLng(t.north,t.west)))+"":""}class It extends n.PureComponent{constructor(t){super(t),this.state={paneEl:null,containerStyle:{position:"absolute"}},this.updatePane=()=>{const t=this.props.mapPaneName,e=this.overlayView.getPanes();o(!!t,"OverlayView requires props.mapPaneName but got %s",t),e?this.setState({paneEl:e[t]}):this.setState({paneEl:null})},this.onAdd=()=>{var t,e;this.updatePane(),null===(e=(t=this.props).onLoad)||void 0===e||e.call(t,this.overlayView)},this.onPositionElement=()=>{var t,e;const s=(a=this.overlayView.getProjection(),l=Object.assign({x:0,y:0},this.containerRef.current?(t=this.containerRef.current,"function"==typeof(e=this.props.getPixelPositionOffset)?e(t.offsetWidth,t.offsetHeight):{}):{}),h=this.props.bounds,p=this.props.position,void 0!==h?((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s.getNorthEast()),i=t&&t.fromLatLngToDivPixel(s.getSouthWest());return n&&i?{left:`${i.x+e.x}px`,top:`${n.y+e.y}px`,width:n.x-i.x-e.x+"px",height:i.y-n.y-e.y+"px"}:{left:"-9999px",top:"-9999px"}})(a,l,Et(h,google.maps.LatLngBounds,Pt)):((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s);if(n){const{x:t,y:s}=n;return{left:`${t+e.x}px`,top:`${s+e.y}px`}}return{left:"-9999px",top:"-9999px"}})(a,l,Et(p,google.maps.LatLng,kt))),{left:n,top:i,width:o,height:r}=this.state.containerStyle;var a,l,h,p,c,u;u={left:n,top:i,width:o,height:r},((c=s).left!==u.left||c.top!==u.top||c.width!==u.height||c.height!==u.height)&&this.setState({containerStyle:Object.assign(Object.assign({},s),{position:"absolute"})})},this.draw=()=>{this.onPositionElement()},this.onRemove=()=>{var t,e;this.setState((()=>({paneEl:null}))),null===(e=(t=this.props).onUnmount)||void 0===e||e.call(t,this.overlayView)},this.containerRef=n.createRef();const e=new google.maps.OverlayView;e.onAdd=this.onAdd,e.draw=this.draw,e.onRemove=this.onRemove,this.overlayView=e}componentDidMount(){this.overlayView.setMap(this.context)}componentDidUpdate(t){const e=St(t.position),s=St(this.props.position),n=_t(t.bounds),i=_t(this.props.bounds);e===s&&n===i||this.overlayView.draw(),t.mapPaneName!==this.props.mapPaneName&&this.updatePane()}componentWillUnmount(){this.overlayView.setMap(null)}render(){const t=this.state.paneEl;return t?i.createPortal(n.createElement("div",{ref:this.containerRef,style:this.state.containerStyle},n.Children.only(this.props.children)),t):null}}It.FLOAT_PANE="floatPane",It.MAP_PANE="mapPane",It.MARKER_LAYER="markerLayer",It.OVERLAY_LAYER="overlayLayer",It.OVERLAY_MOUSE_TARGET="overlayMouseTarget",It.contextType=r;const Dt={onDblClick:"dblclick",onClick:"click"},Ot={opacity(t,e){t.setOpacity(e)}};class Tt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={groundOverlay:null},this.setGroundOverlayCallback=()=>{null!==this.state.groundOverlay&&this.props.onLoad&&this.props.onLoad(this.state.groundOverlay)}}componentDidMount(){o(!!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");const t=new google.maps.GroundOverlay(this.props.url,this.props.bounds,Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=h({updaterMap:Ot,eventMap:Dt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{groundOverlay:t}}),this.setGroundOverlayCallback)}componentDidUpdate(t){null!==this.state.groundOverlay&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ot,eventMap:Dt,prevProps:t,nextProps:this.props,instance:this.state.groundOverlay}))}componentWillUnmount(){this.state.groundOverlay&&(this.props.onUnmount&&this.props.onUnmount(this.state.groundOverlay),this.state.groundOverlay.setMap(null))}render(){return null}}Tt.defaultProps={onLoad:function(){}},Tt.contextType=r;const Bt={},zt={data(t,e){t.setData(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)}};class Ut extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={heatmapLayer:null},this.setHeatmapLayerCallback=()=>{null!==this.state.heatmapLayer&&this.props.onLoad&&this.props.onLoad(this.state.heatmapLayer)}}componentDidMount(){o(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} to <LoadScript />? %s',google.maps.visualization),o(!!this.props.data,"data property is required in HeatmapLayer %s",this.props.data);const t=new google.maps.visualization.HeatmapLayer(Object.assign(Object.assign({},this.props.options||{}),{data:this.props.data,map:this.context}));this.registeredEvents=h({updaterMap:zt,eventMap:Bt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{heatmapLayer:t}}),this.setHeatmapLayerCallback)}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=h({updaterMap:zt,eventMap:Bt,prevProps:t,nextProps:this.props,instance:this.state.heatmapLayer})}componentWillUnmount(){null!==this.state.heatmapLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.heatmapLayer),l(this.registeredEvents),this.state.heatmapLayer.setMap(null))}render(){return null}}Ut.contextType=r;const Rt={onCloseClick:"closeclick",onPanoChanged:"pano_changed",onPositionChanged:"position_changed",onPovChanged:"pov_changed",onResize:"resize",onStatusChanged:"status_changed",onVisibleChanged:"visible_changed",onZoomChanged:"zoom_changed"},At={register(t,e,s){t.registerPanoProvider(e,s)},links(t,e){t.setLinks(e)},motionTracking(t,e){t.setMotionTracking(e)},options(t,e){t.setOptions(e)},pano(t,e){t.setPano(e)},position(t,e){t.setPosition(e)},pov(t,e){t.setPov(e)},visible(t,e){t.setVisible(e)},zoom(t,e){t.setZoom(e)}};class jt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={streetViewPanorama:null},this.setStreetViewPanoramaCallback=()=>{null!==this.state.streetViewPanorama&&this.props.onLoad&&this.props.onLoad(this.state.streetViewPanorama)}}componentDidMount(){const t=this.context.getStreetView();this.registeredEvents=h({updaterMap:At,eventMap:Rt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{streetViewPanorama:t}}),this.setStreetViewPanoramaCallback)}componentDidUpdate(t){null!==this.state.streetViewPanorama&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:At,eventMap:Rt,prevProps:t,nextProps:this.props,instance:this.state.streetViewPanorama}))}componentWillUnmount(){null!==this.state.streetViewPanorama&&(this.props.onUnmount&&this.props.onUnmount(this.state.streetViewPanorama),l(this.registeredEvents),this.state.streetViewPanorama.setVisible(!1))}render(){return null}}jt.contextType=r;class Wt extends n.PureComponent{constructor(){super(...arguments),this.state={streetViewService:null},this.setStreetViewServiceCallback=()=>{null!==this.state.streetViewService&&this.props.onLoad&&this.props.onLoad(this.state.streetViewService)}}componentDidMount(){const t=new google.maps.StreetViewService;this.setState((function(){return{streetViewService:t}}),this.setStreetViewServiceCallback)}componentWillUnmount(){null!==this.state.streetViewService&&this.props.onUnmount&&this.props.onUnmount(this.state.streetViewService)}render(){return null}}Wt.contextType=r,n.PureComponent;const Vt={onDirectionsChanged:"directions_changed"},Zt={directions(t,e){t.setDirections(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},panel(t,e){t.setPanel(e)},routeIndex(t,e){t.setRouteIndex(e)}};class Nt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={directionsRenderer:null},this.setDirectionsRendererCallback=()=>{null!==this.state.directionsRenderer&&(this.state.directionsRenderer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.directionsRenderer))}}componentDidMount(){const t=new google.maps.DirectionsRenderer(this.props.options);this.registeredEvents=h({updaterMap:Zt,eventMap:Vt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{directionsRenderer:t}}),this.setDirectionsRendererCallback)}componentDidUpdate(t){null!==this.state.directionsRenderer&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Zt,eventMap:Vt,prevProps:t,nextProps:this.props,instance:this.state.directionsRenderer}))}componentWillUnmount(){null!==this.state.directionsRenderer&&(this.props.onUnmount&&this.props.onUnmount(this.state.directionsRenderer),l(this.registeredEvents),this.state.directionsRenderer&&this.state.directionsRenderer.setMap(null))}render(){return n.createElement(n.Fragment,null)}}Nt.contextType=r,n.PureComponent;const Ht={onPlacesChanged:"places_changed"},Ft={bounds(t,e){t.setBounds(e)}};class $t extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={searchBox:null},this.setSearchBoxCallback=()=>{null!==this.state.searchBox&&this.props.onLoad&&this.props.onLoad(this.state.searchBox)}}componentDidMount(){if(o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places),null!==this.containerElement&&null!==this.containerElement.current){const t=this.containerElement.current.querySelector("input");if(null!==t){const e=new google.maps.places.SearchBox(t,this.props.options);this.registeredEvents=h({updaterMap:Ft,eventMap:Ht,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{searchBox:e}}),this.setSearchBoxCallback)}}}componentDidUpdate(t){null!==this.state.searchBox&&(l(this.registeredEvents),this.registeredEvents=h({updaterMap:Ft,eventMap:Ht,prevProps:t,nextProps:this.props,instance:this.state.searchBox}))}componentWillUnmount(){null!==this.state.searchBox&&(this.props.onUnmount&&this.props.onUnmount(this.state.searchBox),l(this.registeredEvents))}render(){return n.createElement("div",{ref:this.containerElement},n.Children.only(this.props.children))}}$t.contextType=r;const Gt={onPlaceChanged:"place_changed"},qt={bounds(t,e){t.setBounds(e)},restrictions(t,e){t.setComponentRestrictions(e)},fields(t,e){t.setFields(e)},options(t,e){t.setOptions(e)},types(t,e){t.setTypes(e)}};class Kt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={autocomplete:null},this.setAutocompleteCallback=()=>{null!==this.state.autocomplete&&this.props.onLoad&&this.props.onLoad(this.state.autocomplete)}}componentDidMount(){o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places);const t=this.containerElement.current.querySelector("input");if(t){const e=new google.maps.places.Autocomplete(t,this.props.options);this.registeredEvents=h({updaterMap:qt,eventMap:Gt,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{autocomplete:e}}),this.setAutocompleteCallback)}}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=h({updaterMap:qt,eventMap:Gt,prevProps:t,nextProps:this.props,instance:this.state.autocomplete})}componentWillUnmount(){null!==this.state.autocomplete&&l(this.registeredEvents)}render(){return n.createElement("div",{ref:this.containerElement,className:this.props.className||""},n.Children.only(this.props.children))}}Kt.contextType=r}}]);
3
3
  //# sourceMappingURL=6422.js.map