@local-logic/maps 0.0.10 → 0.0.11

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.
@@ -1,7 +1,7 @@
1
1
  import { jsxs as M, jsx as d } from "react/jsx-runtime";
2
2
  import { useState as h, useEffect as b } from "react";
3
3
  import { A as C, M as O, C as i, u as P } from "./index.modern-CLRs8JwI.js";
4
- import { u as p, d as l, a as v } from "./index-DgHrPgsK.js";
4
+ import { u as p, d as l, a as v } from "./index-BOBkPCX5.js";
5
5
  const y = {
6
6
  "top-left": i.LEFT_TOP,
7
7
  "top-right": i.RIGHT_TOP,
@@ -1,7 +1,7 @@
1
1
  import { jsx as t, jsxs as o, Fragment as f } from "react/jsx-runtime";
2
2
  import * as e from "react";
3
3
  import { useMemo as g } from "react";
4
- import { u as Z, M as c } from "./index-DgHrPgsK.js";
4
+ import { u as Z, M as c } from "./index-BOBkPCX5.js";
5
5
  import { p as A } from "./IconBase.es-rM5tt24D.js";
6
6
  const p = /* @__PURE__ */ new Map([
7
7
  [
@@ -1,7 +1,7 @@
1
1
  import { jsx as T } from "react/jsx-runtime";
2
- import * as B from "react";
3
- import ot, { useContext as at, useMemo as v, lazy as _, useRef as V, useState as D, useEffect as ct } from "react";
4
- const X = ot.createContext({}), Z = () => at(X), R = {
2
+ import * as D from "react";
3
+ import ot, { useContext as at, useState as Z, useMemo as v, lazy as _, useRef as V, useEffect as ct } from "react";
4
+ const X = ot.createContext({}), U = () => at(X), R = {
5
5
  zoom: 14,
6
6
  pitch: 0,
7
7
  bearing: 0,
@@ -10,7 +10,7 @@ const X = ot.createContext({}), Z = () => at(X), R = {
10
10
  maptiler: "600d69cb-288d-445e-9839-3dfe4d76b31a",
11
11
  mapbox: "locallogic/cmb9nz9kb011501ru8drq8fqf",
12
12
  google: "a7ff20eb973126bb"
13
- }, ut = 13, ht = 22, lt = 30, pt = "w-full h-full relative overflow-hidden", ft = _(() => import("./index-JQfyhSrg.js")), dt = _(() => import("./index-CR8t37Oz.js")), gt = _(() => import("./index-BtwgeEEU.js")), mt = _(() => import("./index-qqbvBkdn.js")), yt = ({ children: r }) => {
13
+ }, ut = 13, ht = 22, lt = 30, pt = "w-full h-full relative overflow-hidden", ft = _(() => import("./index-Dyy8UNMs.js")), dt = _(() => import("./index-B9QF7ewJ.js")), gt = _(() => import("./index-DJ4SJ9IL.js")), mt = _(() => import("./index-qqbvBkdn.js")), yt = ({ children: r }) => {
14
14
  const {
15
15
  mapProvider: t,
16
16
  center: e,
@@ -19,7 +19,7 @@ const X = ot.createContext({}), Z = () => at(X), R = {
19
19
  bearing: o = R.bearing,
20
20
  cooperativeGestures: a = R.cooperativeGestures,
21
21
  zoomPosition: u
22
- } = Z(), s = v(() => {
22
+ } = U(), [s] = Z(n), h = v(() => {
23
23
  switch (t == null ? void 0 : t.name) {
24
24
  case "maptiler":
25
25
  return ft;
@@ -38,19 +38,19 @@ const X = ot.createContext({}), Z = () => at(X), R = {
38
38
  "data-testid": "base-map",
39
39
  "data-map-provider-name": t == null ? void 0 : t.name,
40
40
  "data-map-provider-theme": (t == null ? void 0 : t.theme) || H[t == null ? void 0 : t.name] || H.maptiler,
41
- "data-zoom": n,
41
+ "data-initial-zoom": s,
42
42
  "data-pitch": i,
43
43
  "data-bearing": o,
44
44
  "data-cooperative-gestures": a,
45
45
  "data-zoom-position": u,
46
46
  "data-center-latitude": e.latitude,
47
47
  "data-center-longitude": e.longitude,
48
- children: /* @__PURE__ */ T(s, { children: r })
48
+ children: /* @__PURE__ */ T(h, { children: r })
49
49
  }
50
50
  );
51
51
  }, wt = _(() => import("./index-Do_dW76Q.js")), Mt = _(() => import("./index-BCa658u4.js")), _t = _(() => import("./index-CNxLnZ8O.js"));
52
52
  function At(r) {
53
- const { mapProvider: t } = Z(), e = v(() => {
53
+ const { mapProvider: t } = U(), e = v(() => {
54
54
  switch (t == null ? void 0 : t.name) {
55
55
  case "maptiler":
56
56
  return wt;
@@ -367,7 +367,7 @@ class Pt {
367
367
  for (let s = 0; s < t.length; s++) {
368
368
  const h = t[s];
369
369
  if (!h.geometry) continue;
370
- const [l, c] = h.geometry.coordinates, p = Y(U(l)), d = Y(z(c));
370
+ const [l, c] = h.geometry.coordinates, p = Y(z(l)), d = Y(B(c));
371
371
  a.push(
372
372
  p,
373
373
  d,
@@ -401,7 +401,7 @@ class Pt {
401
401
  const c = this.getClusters([n, i, 180, a], e), p = this.getClusters([-180, i, o, a], e);
402
402
  return c.concat(p);
403
403
  }
404
- const u = this.trees[this._limitZoom(e)], s = u.range(U(n), z(a), U(o), z(i)), h = u.data, l = [];
404
+ const u = this.trees[this._limitZoom(e)], s = u.range(z(n), B(a), z(o), B(i)), h = u.data, l = [];
405
405
  for (const c of s) {
406
406
  const p = this.stride * c;
407
407
  l.push(h[p + b] > 1 ? q(h, p, this.clusterProps) : this.points[h[p + S]]);
@@ -485,7 +485,7 @@ class Pt {
485
485
  const f = this.points[e[s + S]];
486
486
  l = f.properties;
487
487
  const [m, g] = f.geometry.coordinates;
488
- c = U(m), p = z(g);
488
+ c = z(m), p = B(g);
489
489
  }
490
490
  const d = {
491
491
  type: 1,
@@ -575,10 +575,10 @@ function st(r, t, e) {
575
575
  point_count_abbreviated: i
576
576
  });
577
577
  }
578
- function U(r) {
578
+ function z(r) {
579
579
  return r / 360 + 0.5;
580
580
  }
581
- function z(r) {
581
+ function B(r) {
582
582
  const t = Math.sin(r * Math.PI / 180), e = 0.5 - 0.25 * Math.log((1 + t) / (1 - t)) / Math.PI;
583
583
  return e < 0 ? 0 : e > 1 ? 1 : e;
584
584
  }
@@ -642,16 +642,16 @@ function O(r, t) {
642
642
  return r !== r && t !== t;
643
643
  }
644
644
  function vt(r) {
645
- var t = B.useRef(r), e = B.useRef(0);
646
- return O(r, t.current) || (t.current = r, e.current += 1), B.useMemo(function() {
645
+ var t = D.useRef(r), e = D.useRef(0);
646
+ return O(r, t.current) || (t.current = r, e.current += 1), D.useMemo(function() {
647
647
  return t.current;
648
648
  }, [e.current]);
649
649
  }
650
650
  function Lt(r, t) {
651
- return B.useEffect(r, vt(t));
651
+ return D.useEffect(r, vt(t));
652
652
  }
653
653
  var Ct = function(t) {
654
- var e = t.points, n = t.bounds, i = t.zoom, o = t.options, a = t.disableRefresh, u = V(), s = V(), h = D([]), l = h[0], c = h[1], p = Math.round(i);
654
+ var e = t.points, n = t.bounds, i = t.zoom, o = t.options, a = t.disableRefresh, u = V(), s = V(), h = Z([]), l = h[0], c = h[1], p = Math.round(i);
655
655
  return Lt(function() {
656
656
  a !== !0 && ((!u.current || !O(s.current, e) || !O(u.current.options, o)) && (u.current = new Pt(o), u.current.load(e)), n && c(u.current.getClusters(n, p)), s.current = e);
657
657
  }, [e, n, p, o, a]), {
@@ -659,9 +659,9 @@ var Ct = function(t) {
659
659
  supercluster: u.current
660
660
  };
661
661
  };
662
- const Rt = _(() => import("./index-CRQ5kxRL.js")), Zt = _(() => import("./index-DnsF5I7I.js")), Ut = _(() => import("./index-DNKXUpkv.js"));
662
+ const Rt = _(() => import("./index-Bn_2qA7h.js")), Zt = _(() => import("./index-BdXay-zF.js")), Ut = _(() => import("./index-DaEKTD5_.js"));
663
663
  function zt({ markers: r, markerBoundsPadding: t = 1e-3, onClick: e, ...n }) {
664
- const { mapProvider: i, center: o, bounds: a, zoom: u } = Z(), [s, h] = D(a);
664
+ const { mapProvider: i, center: o, bounds: a, zoom: u } = U(), [s, h] = Z(a);
665
665
  ct(() => {
666
666
  const f = r.length > 0 ? r.map((g) => [g.latitude, g.longitude]) : [[o.latitude, o.longitude]], m = St(bt(f));
667
667
  h(m);
@@ -720,7 +720,7 @@ function zt({ markers: r, markerBoundsPadding: t = 1e-3, onClick: e, ...n }) {
720
720
  }
721
721
  const Bt = _(() => import("./index-BOuko7CL.js")), Dt = _(() => import("./index-9RZYMoMG.js")), Ft = _(() => import("./index-D5uhfwEH.js"));
722
722
  function Nt({ children: r, ...t }) {
723
- const { mapProvider: e } = Z(), n = v(() => {
723
+ const { mapProvider: e } = U(), n = v(() => {
724
724
  switch (e == null ? void 0 : e.name) {
725
725
  case "maptiler":
726
726
  return Bt;
@@ -736,7 +736,7 @@ function Nt({ children: r, ...t }) {
736
736
  }
737
737
  const Gt = _(() => import("./index-CTk5bvm9.js")), $t = _(() => import("./index-BsnsAUt5.js")), jt = _(() => import("./index-DVitM43i.js"));
738
738
  function It(r) {
739
- const { mapProvider: t } = Z(), e = v(() => {
739
+ const { mapProvider: t } = U(), e = v(() => {
740
740
  switch (t == null ? void 0 : t.name) {
741
741
  case "maptiler":
742
742
  return Gt;
@@ -751,7 +751,7 @@ function It(r) {
751
751
  return e ? /* @__PURE__ */ T(e, { ...r }) : null;
752
752
  }
753
753
  function Vt(r) {
754
- const [t, e] = D(r.zoom || R.zoom), [n, i] = D();
754
+ const [t, e] = Z(r.zoom || R.zoom), [n, i] = Z();
755
755
  return /* @__PURE__ */ T(X.Provider, { value: { ...r, bounds: n, setBounds: i, zoom: t, setZoom: e }, children: r.children });
756
756
  }
757
757
  const Kt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
@@ -768,5 +768,5 @@ export {
768
768
  H as a,
769
769
  R as d,
770
770
  Kt as i,
771
- Z as u
771
+ U as u
772
772
  };
@@ -1,8 +1,8 @@
1
1
  import { jsxs as u, jsx as s } from "react/jsx-runtime";
2
2
  import { useEffect as x } from "react";
3
3
  import { u as L, a as c } from "./index.modern-CLRs8JwI.js";
4
- import { u as b, M as d } from "./index-DgHrPgsK.js";
5
- import { C as y, c as E, M as O } from "./index-BYlamtEc.js";
4
+ import { u as b, M as d } from "./index-BOBkPCX5.js";
5
+ import { C as y, c as E, M as O } from "./index-BMvwx9_l.js";
6
6
  function N({
7
7
  clusters: n,
8
8
  colors: e,
@@ -1,8 +1,8 @@
1
1
  import { jsxs as x, jsx as s } from "react/jsx-runtime";
2
2
  import { useEffect as c } from "react";
3
3
  import { u as h, a as L } from "./logo-control-NE-LlsRy.js";
4
- import { u as b, M as E } from "./index-DgHrPgsK.js";
5
- import { C as y, c as O, M as $ } from "./index-BYlamtEc.js";
4
+ import { u as b, M as E } from "./index-BOBkPCX5.js";
5
+ import { C as y, c as O, M as $ } from "./index-BMvwx9_l.js";
6
6
  function N({
7
7
  clusters: r,
8
8
  colors: a,
@@ -1,7 +1,7 @@
1
1
  import { jsxs as f, jsx as i } from "react/jsx-runtime";
2
2
  import { useEffect as d } from "react";
3
3
  import { M as b, N as x, u as M } from "./scale-control-CyJd4u6j.js";
4
- import { u as m, d as r, a as v } from "./index-DgHrPgsK.js";
4
+ import { u as m, d as r, a as v } from "./index-BOBkPCX5.js";
5
5
  const y = () => {
6
6
  const { current: e } = M(), { setBounds: o, setZoom: s } = m(), t = () => {
7
7
  var a;
@@ -1,8 +1,8 @@
1
1
  import { jsxs as g, jsx as s } from "react/jsx-runtime";
2
2
  import { useEffect as b } from "react";
3
3
  import { u as c, a as h } from "./scale-control-CyJd4u6j.js";
4
- import { u as L, M as E } from "./index-DgHrPgsK.js";
5
- import { C as y, c as O, M as $ } from "./index-BYlamtEc.js";
4
+ import { u as L, M as E } from "./index-BOBkPCX5.js";
5
+ import { C as y, c as O, M as $ } from "./index-BMvwx9_l.js";
6
6
  function N({
7
7
  clusters: m,
8
8
  colors: a,
@@ -1,7 +1,7 @@
1
1
  import { jsxs as f, jsx as i } from "react/jsx-runtime";
2
2
  import { useEffect as d } from "react";
3
3
  import { M, N as h, u as g } from "./logo-control-NE-LlsRy.js";
4
- import { u as n, d as a, a as v } from "./index-DgHrPgsK.js";
4
+ import { u as n, d as a, a as v } from "./index-BOBkPCX5.js";
5
5
  const y = () => {
6
6
  const { current: t } = g(), { setBounds: e, setZoom: r } = n(), o = () => {
7
7
  t && (e(t.getBounds().toArray().flat()), r(t.getZoom()));
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { i as c } from "./index-DgHrPgsK.js";
1
+ import { i as c } from "./index-BOBkPCX5.js";
2
2
  export {
3
3
  c as LocalLogicMap
4
4
  };
package/dist/index.umd.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(_d,Pr){typeof exports=="object"&&typeof module<"u"?Pr(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],Pr):(_d=typeof globalThis<"u"?globalThis:_d||self,Pr(_d.LocalLogicMaps={},_d.jsxRuntime,_d.React,_d.ReactDOM))})(this,function(_d,Pr,Mt,Cp){"use strict";function $v(Y){const q=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(Y){for(const ne in Y)if(ne!=="default"){const ce=Object.getOwnPropertyDescriptor(Y,ne);Object.defineProperty(q,ne,ce.get?ce:{enumerable:!0,get:()=>Y[ne]})}}return q.default=Y,Object.freeze(q)}function Gy(Y,q){for(var ne=0;ne<q.length;ne++){const ce=q[ne];if(typeof ce!="string"&&!Array.isArray(ce)){for(const _e in ce)if(_e!=="default"&&!(_e in Y)){const Me=Object.getOwnPropertyDescriptor(ce,_e);Me&&Object.defineProperty(Y,_e,Me.get?Me:{enumerable:!0,get:()=>ce[_e]})}}}return Object.freeze(Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"}))}const Dr=$v(Mt),Zy=Mt.createContext({}),Sl=()=>Mt.useContext(Zy),$a={zoom:14,pitch:0,bearing:0,cooperativeGestures:!1},lm={maptiler:"600d69cb-288d-445e-9839-3dfe4d76b31a",mapbox:"locallogic/cmb9nz9kb011501ru8drq8fqf",google:"a7ff20eb973126bb"},bf=13,Hv=22,Wv=30,Xv="w-full h-full relative overflow-hidden",Yv=Mt.lazy(()=>Promise.resolve().then(()=>l1)),Kv=Mt.lazy(()=>Promise.resolve().then(()=>Q1)),Jv=Mt.lazy(()=>Promise.resolve().then(()=>zw)),Qv=Mt.lazy(()=>Promise.resolve().then(()=>Lw)),eb=({children:Y})=>{const{mapProvider:q,center:ne,zoom:ce=$a.zoom,pitch:_e=$a.pitch,bearing:Me=$a.bearing,cooperativeGestures:ee=$a.cooperativeGestures,zoomPosition:i}=Sl(),it=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return Yv;case"google":return Kv;case"mapbox":return Jv;default:return Qv}},[q]);return Pr.jsx("div",{className:Xv,"data-testid":"base-map","data-map-provider-name":q==null?void 0:q.name,"data-map-provider-theme":(q==null?void 0:q.theme)||lm[q==null?void 0:q.name]||lm.maptiler,"data-zoom":ce,"data-pitch":_e,"data-bearing":Me,"data-cooperative-gestures":ee,"data-zoom-position":i,"data-center-latitude":ne.latitude,"data-center-longitude":ne.longitude,children:Pr.jsx(it,{children:Y})})},tb=Mt.lazy(()=>Promise.resolve().then(()=>Bw)),ib=Mt.lazy(()=>Promise.resolve().then(()=>Vw)),rb=Mt.lazy(()=>Promise.resolve().then(()=>Uw));function nb(Y){const{mapProvider:q}=Sl(),ne=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return tb;case"google":return ib;case"mapbox":return rb;default:return null}},[q]);return ne?Pr.jsx(ne,{...Y}):null}function qy(Y,q,ne={}){const ce={type:"Feature"};return(ne.id===0||ne.id)&&(ce.id=ne.id),ne.bbox&&(ce.bbox=ne.bbox),ce.properties=q||{},ce.geometry=Y,ce}function sb(Y,q,ne={}){if(!Y)throw new Error("coordinates is required");if(!Array.isArray(Y))throw new Error("coordinates must be an Array");if(Y.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!$y(Y[0])||!$y(Y[1]))throw new Error("coordinates must contain numbers");return qy({type:"Point",coordinates:Y},q,ne)}function ob(Y,q,ne={}){return qy({type:"MultiPoint",coordinates:Y},q,ne)}function $y(Y){return!isNaN(Y)&&Y!==null&&!Array.isArray(Y)}function Hy(Y,q,ne){if(Y!==null)for(var ce,_e,Me,ee,i,it,vt,Ft=0,Ut=0,Qt,St=Y.type,Wt=St==="FeatureCollection",Ci=St==="Feature",Sr=Wt?Y.features.length:1,Ri=0;Ri<Sr;Ri++){vt=Wt?Y.features[Ri].geometry:Ci?Y.geometry:Y,Qt=vt?vt.type==="GeometryCollection":!1,i=Qt?vt.geometries.length:1;for(var _r=0;_r<i;_r++){var gr=0,Fi=0;if(ee=Qt?vt.geometries[_r]:vt,ee!==null){it=ee.coordinates;var Cr=ee.type;switch(Ft=0,Cr){case null:break;case"Point":if(q(it,Ut,Ri,gr,Fi)===!1)return!1;Ut++,gr++;break;case"LineString":case"MultiPoint":for(ce=0;ce<it.length;ce++){if(q(it[ce],Ut,Ri,gr,Fi)===!1)return!1;Ut++,Cr==="MultiPoint"&&gr++}Cr==="LineString"&&gr++;break;case"Polygon":case"MultiLineString":for(ce=0;ce<it.length;ce++){for(_e=0;_e<it[ce].length-Ft;_e++){if(q(it[ce][_e],Ut,Ri,gr,Fi)===!1)return!1;Ut++}Cr==="MultiLineString"&&gr++,Cr==="Polygon"&&Fi++}Cr==="Polygon"&&gr++;break;case"MultiPolygon":for(ce=0;ce<it.length;ce++){for(Fi=0,_e=0;_e<it[ce].length;_e++){for(Me=0;Me<it[ce][_e].length-Ft;Me++){if(q(it[ce][_e][Me],Ut,Ri,gr,Fi)===!1)return!1;Ut++}Fi++}gr++}break;case"GeometryCollection":for(ce=0;ce<ee.geometries.length;ce++)if(Hy(ee.geometries[ce],q)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function ab(Y,q={}){if(Y.bbox!=null&&q.recompute!==!0)return Y.bbox;const ne=[1/0,1/0,-1/0,-1/0];return Hy(Y,ce=>{ne[0]>ce[0]&&(ne[0]=ce[0]),ne[1]>ce[1]&&(ne[1]=ce[1]),ne[2]<ce[0]&&(ne[2]=ce[0]),ne[3]<ce[1]&&(ne[3]=ce[1])}),ne}function zg(Y){return Y&&Y.__esModule&&Object.prototype.hasOwnProperty.call(Y,"default")?Y.default:Y}var Dg,Wy;function lb(){return Wy||(Wy=1,Dg=function Y(q,ne){if(q===ne)return!0;if(q&&ne&&typeof q=="object"&&typeof ne=="object"){if(q.constructor!==ne.constructor)return!1;var ce,_e,Me;if(Array.isArray(q)){if(ce=q.length,ce!=ne.length)return!1;for(_e=ce;_e--!==0;)if(!Y(q[_e],ne[_e]))return!1;return!0}if(q.constructor===RegExp)return q.source===ne.source&&q.flags===ne.flags;if(q.valueOf!==Object.prototype.valueOf)return q.valueOf()===ne.valueOf();if(q.toString!==Object.prototype.toString)return q.toString()===ne.toString();if(Me=Object.keys(q),ce=Me.length,ce!==Object.keys(ne).length)return!1;for(_e=ce;_e--!==0;)if(!Object.prototype.hasOwnProperty.call(ne,Me[_e]))return!1;for(_e=ce;_e--!==0;){var ee=Me[_e];if(!Y(q[ee],ne[ee]))return!1}return!0}return q!==q&&ne!==ne}),Dg}var cb=lb();const ub=zg(cb),Xy=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Lg=1,cm=8;class Rg{static from(q){if(!(q instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[ne,ce]=new Uint8Array(q,0,2);if(ne!==219)throw new Error("Data does not appear to be in a KDBush format.");const _e=ce>>4;if(_e!==Lg)throw new Error(`Got v${_e} data when expected v${Lg}.`);const Me=Xy[ce&15];if(!Me)throw new Error("Unrecognized array type.");const[ee]=new Uint16Array(q,2,1),[i]=new Uint32Array(q,4,1);return new Rg(i,ee,Me,q)}constructor(q,ne=64,ce=Float64Array,_e){if(isNaN(q)||q<0)throw new Error(`Unpexpected numItems value: ${q}.`);this.numItems=+q,this.nodeSize=Math.min(Math.max(+ne,2),65535),this.ArrayType=ce,this.IndexArrayType=q<65536?Uint16Array:Uint32Array;const Me=Xy.indexOf(this.ArrayType),ee=q*2*this.ArrayType.BYTES_PER_ELEMENT,i=q*this.IndexArrayType.BYTES_PER_ELEMENT,it=(8-i%8)%8;if(Me<0)throw new Error(`Unexpected typed array class: ${ce}.`);_e&&_e instanceof ArrayBuffer?(this.data=_e,this.ids=new this.IndexArrayType(this.data,cm,q),this.coords=new this.ArrayType(this.data,cm+i+it,q*2),this._pos=q*2,this._finished=!0):(this.data=new ArrayBuffer(cm+ee+i+it),this.ids=new this.IndexArrayType(this.data,cm,q),this.coords=new this.ArrayType(this.data,cm+i+it,q*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(Lg<<4)+Me]),new Uint16Array(this.data,2,1)[0]=ne,new Uint32Array(this.data,4,1)[0]=q)}add(q,ne){const ce=this._pos>>1;return this.ids[ce]=ce,this.coords[this._pos++]=q,this.coords[this._pos++]=ne,ce}finish(){const q=this._pos>>1;if(q!==this.numItems)throw new Error(`Added ${q} items when expected ${this.numItems}.`);return kg(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(q,ne,ce,_e){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:Me,coords:ee,nodeSize:i}=this,it=[0,Me.length-1,0],vt=[];for(;it.length;){const Ft=it.pop()||0,Ut=it.pop()||0,Qt=it.pop()||0;if(Ut-Qt<=i){for(let Sr=Qt;Sr<=Ut;Sr++){const Ri=ee[2*Sr],_r=ee[2*Sr+1];Ri>=q&&Ri<=ce&&_r>=ne&&_r<=_e&&vt.push(Me[Sr])}continue}const St=Qt+Ut>>1,Wt=ee[2*St],Ci=ee[2*St+1];Wt>=q&&Wt<=ce&&Ci>=ne&&Ci<=_e&&vt.push(Me[St]),(Ft===0?q<=Wt:ne<=Ci)&&(it.push(Qt),it.push(St-1),it.push(1-Ft)),(Ft===0?ce>=Wt:_e>=Ci)&&(it.push(St+1),it.push(Ut),it.push(1-Ft))}return vt}within(q,ne,ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:_e,coords:Me,nodeSize:ee}=this,i=[0,_e.length-1,0],it=[],vt=ce*ce;for(;i.length;){const Ft=i.pop()||0,Ut=i.pop()||0,Qt=i.pop()||0;if(Ut-Qt<=ee){for(let Sr=Qt;Sr<=Ut;Sr++)Ky(Me[2*Sr],Me[2*Sr+1],q,ne)<=vt&&it.push(_e[Sr]);continue}const St=Qt+Ut>>1,Wt=Me[2*St],Ci=Me[2*St+1];Ky(Wt,Ci,q,ne)<=vt&&it.push(_e[St]),(Ft===0?q-ce<=Wt:ne-ce<=Ci)&&(i.push(Qt),i.push(St-1),i.push(1-Ft)),(Ft===0?q+ce>=Wt:ne+ce>=Ci)&&(i.push(St+1),i.push(Ut),i.push(1-Ft))}return it}}function kg(Y,q,ne,ce,_e,Me){if(_e-ce<=ne)return;const ee=ce+_e>>1;Yy(Y,q,ee,ce,_e,Me),kg(Y,q,ne,ce,ee-1,1-Me),kg(Y,q,ne,ee+1,_e,1-Me)}function Yy(Y,q,ne,ce,_e,Me){for(;_e>ce;){if(_e-ce>600){const vt=_e-ce+1,Ft=ne-ce+1,Ut=Math.log(vt),Qt=.5*Math.exp(2*Ut/3),St=.5*Math.sqrt(Ut*Qt*(vt-Qt)/vt)*(Ft-vt/2<0?-1:1),Wt=Math.max(ce,Math.floor(ne-Ft*Qt/vt+St)),Ci=Math.min(_e,Math.floor(ne+(vt-Ft)*Qt/vt+St));Yy(Y,q,ne,Wt,Ci,Me)}const ee=q[2*ne+Me];let i=ce,it=_e;for(um(Y,q,ce,ne),q[2*_e+Me]>ee&&um(Y,q,ce,_e);i<it;){for(um(Y,q,i,it),i++,it--;q[2*i+Me]<ee;)i++;for(;q[2*it+Me]>ee;)it--}q[2*ce+Me]===ee?um(Y,q,ce,it):(it++,um(Y,q,it,_e)),it<=ne&&(ce=it+1),ne<=it&&(_e=it-1)}}function um(Y,q,ne,ce){Og(Y,ne,ce),Og(q,2*ne,2*ce),Og(q,2*ne+1,2*ce+1)}function Og(Y,q,ne){const ce=Y[q];Y[q]=Y[ne],Y[ne]=ce}function Ky(Y,q,ne,ce){const _e=Y-ne,Me=q-ce;return _e*_e+Me*Me}const hb={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:Y=>Y},Jy=Math.fround||(Y=>q=>(Y[0]=+q,Y[0]))(new Float32Array(1)),zp=2,Qd=3,Fg=4,ep=5,Qy=6;class db{constructor(q){this.options=Object.assign(Object.create(hb),q),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(q){const{log:ne,minZoom:ce,maxZoom:_e}=this.options;ne&&console.time("total time");const Me=`prepare ${q.length} points`;ne&&console.time(Me),this.points=q;const ee=[];for(let it=0;it<q.length;it++){const vt=q[it];if(!vt.geometry)continue;const[Ft,Ut]=vt.geometry.coordinates,Qt=Jy(a_(Ft)),St=Jy(l_(Ut));ee.push(Qt,St,1/0,it,-1,1),this.options.reduce&&ee.push(0)}let i=this.trees[_e+1]=this._createTree(ee);ne&&console.timeEnd(Me);for(let it=_e;it>=ce;it--){const vt=+Date.now();i=this.trees[it]=this._createTree(this._cluster(i,it)),ne&&console.log("z%d: %d clusters in %dms",it,i.numItems,+Date.now()-vt)}return ne&&console.timeEnd("total time"),this}getClusters(q,ne){let ce=((q[0]+180)%360+360)%360-180;const _e=Math.max(-90,Math.min(90,q[1]));let Me=q[2]===180?180:((q[2]+180)%360+360)%360-180;const ee=Math.max(-90,Math.min(90,q[3]));if(q[2]-q[0]>=360)ce=-180,Me=180;else if(ce>Me){const Ut=this.getClusters([ce,_e,180,ee],ne),Qt=this.getClusters([-180,_e,Me,ee],ne);return Ut.concat(Qt)}const i=this.trees[this._limitZoom(ne)],it=i.range(a_(ce),l_(ee),a_(Me),l_(_e)),vt=i.data,Ft=[];for(const Ut of it){const Qt=this.stride*Ut;Ft.push(vt[Qt+ep]>1?ex(vt,Qt,this.clusterProps):this.points[vt[Qt+Qd]])}return Ft}getChildren(q){const ne=this._getOriginId(q),ce=this._getOriginZoom(q),_e="No cluster with the specified id.",Me=this.trees[ce];if(!Me)throw new Error(_e);const ee=Me.data;if(ne*this.stride>=ee.length)throw new Error(_e);const i=this.options.radius/(this.options.extent*Math.pow(2,ce-1)),it=ee[ne*this.stride],vt=ee[ne*this.stride+1],Ft=Me.within(it,vt,i),Ut=[];for(const Qt of Ft){const St=Qt*this.stride;ee[St+Fg]===q&&Ut.push(ee[St+ep]>1?ex(ee,St,this.clusterProps):this.points[ee[St+Qd]])}if(Ut.length===0)throw new Error(_e);return Ut}getLeaves(q,ne,ce){ne=ne||10,ce=ce||0;const _e=[];return this._appendLeaves(_e,q,ne,ce,0),_e}getTile(q,ne,ce){const _e=this.trees[this._limitZoom(q)],Me=Math.pow(2,q),{extent:ee,radius:i}=this.options,it=i/ee,vt=(ce-it)/Me,Ft=(ce+1+it)/Me,Ut={features:[]};return this._addTileFeatures(_e.range((ne-it)/Me,vt,(ne+1+it)/Me,Ft),_e.data,ne,ce,Me,Ut),ne===0&&this._addTileFeatures(_e.range(1-it/Me,vt,1,Ft),_e.data,Me,ce,Me,Ut),ne===Me-1&&this._addTileFeatures(_e.range(0,vt,it/Me,Ft),_e.data,-1,ce,Me,Ut),Ut.features.length?Ut:null}getClusterExpansionZoom(q){let ne=this._getOriginZoom(q)-1;for(;ne<=this.options.maxZoom;){const ce=this.getChildren(q);if(ne++,ce.length!==1)break;q=ce[0].properties.cluster_id}return ne}_appendLeaves(q,ne,ce,_e,Me){const ee=this.getChildren(ne);for(const i of ee){const it=i.properties;if(it&&it.cluster?Me+it.point_count<=_e?Me+=it.point_count:Me=this._appendLeaves(q,it.cluster_id,ce,_e,Me):Me<_e?Me++:q.push(i),q.length===ce)break}return Me}_createTree(q){const ne=new Rg(q.length/this.stride|0,this.options.nodeSize,Float32Array);for(let ce=0;ce<q.length;ce+=this.stride)ne.add(q[ce],q[ce+1]);return ne.finish(),ne.data=q,ne}_addTileFeatures(q,ne,ce,_e,Me,ee){for(const i of q){const it=i*this.stride,vt=ne[it+ep]>1;let Ft,Ut,Qt;if(vt)Ft=tx(ne,it,this.clusterProps),Ut=ne[it],Qt=ne[it+1];else{const Ci=this.points[ne[it+Qd]];Ft=Ci.properties;const[Sr,Ri]=Ci.geometry.coordinates;Ut=a_(Sr),Qt=l_(Ri)}const St={type:1,geometry:[[Math.round(this.options.extent*(Ut*Me-ce)),Math.round(this.options.extent*(Qt*Me-_e))]],tags:Ft};let Wt;vt||this.options.generateId?Wt=ne[it+Qd]:Wt=this.points[ne[it+Qd]].id,Wt!==void 0&&(St.id=Wt),ee.features.push(St)}}_limitZoom(q){return Math.max(this.options.minZoom,Math.min(Math.floor(+q),this.options.maxZoom+1))}_cluster(q,ne){const{radius:ce,extent:_e,reduce:Me,minPoints:ee}=this.options,i=ce/(_e*Math.pow(2,ne)),it=q.data,vt=[],Ft=this.stride;for(let Ut=0;Ut<it.length;Ut+=Ft){if(it[Ut+zp]<=ne)continue;it[Ut+zp]=ne;const Qt=it[Ut],St=it[Ut+1],Wt=q.within(it[Ut],it[Ut+1],i),Ci=it[Ut+ep];let Sr=Ci;for(const Ri of Wt){const _r=Ri*Ft;it[_r+zp]>ne&&(Sr+=it[_r+ep])}if(Sr>Ci&&Sr>=ee){let Ri=Qt*Ci,_r=St*Ci,gr,Fi=-1;const Cr=((Ut/Ft|0)<<5)+(ne+1)+this.points.length;for(const tn of Wt){const Vi=tn*Ft;if(it[Vi+zp]<=ne)continue;it[Vi+zp]=ne;const hn=it[Vi+ep];Ri+=it[Vi]*hn,_r+=it[Vi+1]*hn,it[Vi+Fg]=Cr,Me&&(gr||(gr=this._map(it,Ut,!0),Fi=this.clusterProps.length,this.clusterProps.push(gr)),Me(gr,this._map(it,Vi)))}it[Ut+Fg]=Cr,vt.push(Ri/Sr,_r/Sr,1/0,Cr,-1,Sr),Me&&vt.push(Fi)}else{for(let Ri=0;Ri<Ft;Ri++)vt.push(it[Ut+Ri]);if(Sr>1)for(const Ri of Wt){const _r=Ri*Ft;if(!(it[_r+zp]<=ne)){it[_r+zp]=ne;for(let gr=0;gr<Ft;gr++)vt.push(it[_r+gr])}}}}return vt}_getOriginId(q){return q-this.points.length>>5}_getOriginZoom(q){return(q-this.points.length)%32}_map(q,ne,ce){if(q[ne+ep]>1){const ee=this.clusterProps[q[ne+Qy]];return ce?Object.assign({},ee):ee}const _e=this.points[q[ne+Qd]].properties,Me=this.options.map(_e);return ce&&Me===_e?Object.assign({},Me):Me}}function ex(Y,q,ne){return{type:"Feature",id:Y[q+Qd],properties:tx(Y,q,ne),geometry:{type:"Point",coordinates:[pb(Y[q]),fb(Y[q+1])]}}}function tx(Y,q,ne){const ce=Y[q+ep],_e=ce>=1e4?`${Math.round(ce/1e3)}k`:ce>=1e3?`${Math.round(ce/100)/10}k`:ce,Me=Y[q+Qy],ee=Me===-1?{}:Object.assign({},ne[Me]);return Object.assign(ee,{cluster:!0,cluster_id:Y[q+Qd],point_count:ce,point_count_abbreviated:_e})}function a_(Y){return Y/360+.5}function l_(Y){const q=Math.sin(Y*Math.PI/180),ne=.5-.25*Math.log((1+q)/(1-q))/Math.PI;return ne<0?0:ne>1?1:ne}function pb(Y){return(Y-.5)*360}function fb(Y){const q=(180-Y*360)*Math.PI/180;return 360*Math.atan(Math.exp(q))/Math.PI-90}var ix=Object.prototype.hasOwnProperty;function rx(Y,q,ne){for(ne of Y.keys())if(Dp(ne,q))return ne}function Dp(Y,q){var ne,ce,_e;if(Y===q)return!0;if(Y&&q&&(ne=Y.constructor)===q.constructor){if(ne===Date)return Y.getTime()===q.getTime();if(ne===RegExp)return Y.toString()===q.toString();if(ne===Array){if((ce=Y.length)===q.length)for(;ce--&&Dp(Y[ce],q[ce]););return ce===-1}if(ne===Set){if(Y.size!==q.size)return!1;for(ce of Y)if(_e=ce,_e&&typeof _e=="object"&&(_e=rx(q,_e),!_e)||!q.has(_e))return!1;return!0}if(ne===Map){if(Y.size!==q.size)return!1;for(ce of Y)if(_e=ce[0],_e&&typeof _e=="object"&&(_e=rx(q,_e),!_e)||!Dp(ce[1],q.get(_e)))return!1;return!0}if(ne===ArrayBuffer)Y=new Uint8Array(Y),q=new Uint8Array(q);else if(ne===DataView){if((ce=Y.byteLength)===q.byteLength)for(;ce--&&Y.getInt8(ce)===q.getInt8(ce););return ce===-1}if(ArrayBuffer.isView(Y)){if((ce=Y.byteLength)===q.byteLength)for(;ce--&&Y[ce]===q[ce];);return ce===-1}if(!ne||typeof Y=="object"){ce=0;for(ne in Y)if(ix.call(Y,ne)&&++ce&&!ix.call(q,ne)||!(ne in q)||!Dp(Y[ne],q[ne]))return!1;return Object.keys(q).length===ce}}return Y!==Y&&q!==q}function mb(Y){var q=Dr.useRef(Y),ne=Dr.useRef(0);return Dp(Y,q.current)||(q.current=Y,ne.current+=1),Dr.useMemo(function(){return q.current},[ne.current])}function _b(Y,q){return Dr.useEffect(Y,mb(q))}var gb=function(q){var ne=q.points,ce=q.bounds,_e=q.zoom,Me=q.options,ee=q.disableRefresh,i=Mt.useRef(),it=Mt.useRef(),vt=Mt.useState([]),Ft=vt[0],Ut=vt[1],Qt=Math.round(_e);return _b(function(){ee!==!0&&((!i.current||!Dp(it.current,ne)||!Dp(i.current.options,Me))&&(i.current=new db(Me),i.current.load(ne)),ce&&Ut(i.current.getClusters(ce,Qt)),it.current=ne)},[ne,ce,Qt,Me,ee]),{clusters:Ft,supercluster:i.current}};const yb=Mt.lazy(()=>Promise.resolve().then(()=>qw)),xb=Mt.lazy(()=>Promise.resolve().then(()=>Hw)),vb=Mt.lazy(()=>Promise.resolve().then(()=>Xw));function bb({markers:Y,markerBoundsPadding:q=.001,onClick:ne,...ce}){const{mapProvider:_e,center:Me,bounds:ee,zoom:i}=Sl(),[it,vt]=Mt.useState(ee);Mt.useEffect(()=>{const Ci=Y.length>0?Y.map(Ri=>[Ri.latitude,Ri.longitude]):[[Me.latitude,Me.longitude]],Sr=ab(ob(Ci));vt(Sr)},[Y,Me]);const Ft=Mt.useMemo(()=>typeof q=="number"?{top:q,bottom:q,left:q,right:q}:q,[q]),{clusters:Ut,supercluster:Qt}=gb({points:Y.map(Ci=>sb([Ci.longitude,Ci.latitude],Ci)),bounds:ee,zoom:i,options:{radius:Wv,minZoom:bf,maxZoom:Hv}}),St=Ci=>{var Sr,Ri,_r;if(!("properties"in Ci))throw new Error("Cluster does not have properties");if((Sr=Ci.properties)!=null&&Sr.cluster&&typeof((Ri=Ci.properties)==null?void 0:Ri.cluster_id)=="number"){ne==null||ne({id:`${Ci.properties.cluster_id}`,latitude:Ci.geometry.coordinates[1],longitude:Ci.geometry.coordinates[0],markers:((_r=Qt==null?void 0:Qt.getLeaves(Ci.properties.cluster_id))==null?void 0:_r.map(gr=>gr.properties))??[]});return}ne==null||ne({id:Ci.properties.id,latitude:Ci.properties.latitude,longitude:Ci.properties.longitude,markers:[Ci.properties]})},Wt=Mt.useMemo(()=>{switch(_e==null?void 0:_e.name){case"maptiler":return yb;case"google":return xb;case"mapbox":return vb;default:return null}},[_e]);return Wt?Pr.jsx(Wt,{clusters:Ut,markerBounds:it,markerBoundsPadding:Ft,onClick:St,...ce}):null}const wb=Mt.lazy(()=>Promise.resolve().then(()=>Kw)),Tb=Mt.lazy(()=>Promise.resolve().then(()=>Qw)),Sb=Mt.lazy(()=>Promise.resolve().then(()=>t2));function Mb({children:Y,...q}){const{mapProvider:ne}=Sl(),ce=Mt.useMemo(()=>{switch(ne==null?void 0:ne.name){case"maptiler":return wb;case"google":return Tb;case"mapbox":return Sb;default:return null}},[ne]);return ce?Pr.jsx(ce,{...q,children:Y}):null}const Eb=Mt.lazy(()=>Promise.resolve().then(()=>n2)),Ib=Mt.lazy(()=>Promise.resolve().then(()=>o2)),Pb=Mt.lazy(()=>Promise.resolve().then(()=>l2));function Ab(Y){const{mapProvider:q}=Sl(),ne=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return Eb;case"google":return Ib;case"mapbox":return Pb;default:return null}},[q]);return ne?Pr.jsx(ne,{...Y}):null}function Cb(Y){const[q,ne]=Mt.useState(Y.zoom||$a.zoom),[ce,_e]=Mt.useState();return Pr.jsx(Zy.Provider,{value:{...Y,bounds:ce,setBounds:_e,zoom:q,setZoom:ne},children:Y.children})}const zb=Object.freeze(Object.defineProperty({__proto__:null,BaseMap:eb,CenterPin:nb,Layers:Ab,Markers:bb,Popup:Mb,Root:Cb},Symbol.toStringTag,{value:"Module"})),nx=Dr.createContext(null);function sx(){var ce;const Y=(ce=Mt.useContext(nx))==null?void 0:ce.maps,q=Mt.useContext(Lp);return Mt.useMemo(()=>({...Y,current:q==null?void 0:q.map}),[Y,q])}function Db(Y,q){const ne=Array.isArray(Y)?Y[0]:Y?Y.x:0,ce=Array.isArray(Y)?Y[1]:Y?Y.y:0,_e=Array.isArray(q)?q[0]:q?q.x:0,Me=Array.isArray(q)?q[1]:q?q.y:0;return ne===_e&&ce===Me}function ec(Y,q){if(Y===q)return!0;if(!Y||!q)return!1;if(Array.isArray(Y)){if(!Array.isArray(q)||Y.length!==q.length)return!1;for(let ne=0;ne<Y.length;ne++)if(!ec(Y[ne],q[ne]))return!1;return!0}else if(Array.isArray(q))return!1;if(typeof Y=="object"&&typeof q=="object"){const ne=Object.keys(Y),ce=Object.keys(q);if(ne.length!==ce.length)return!1;for(const _e of ne)if(!q.hasOwnProperty(_e)||!ec(Y[_e],q[_e]))return!1;return!0}return!1}function ox(Y){return{longitude:Y.center.lng,latitude:Y.center.lat,zoom:Y.zoom,pitch:Y.pitch,bearing:Y.bearing,padding:Y.padding}}function ax(Y,q){const ne=q.viewState||q,ce={};if("longitude"in ne&&"latitude"in ne&&(ne.longitude!==Y.center.lng||ne.latitude!==Y.center.lat)){const _e=Y.center.constructor;ce.center=new _e(ne.longitude,ne.latitude)}return"zoom"in ne&&ne.zoom!==Y.zoom&&(ce.zoom=ne.zoom),"bearing"in ne&&ne.bearing!==Y.bearing&&(ce.bearing=ne.bearing),"pitch"in ne&&ne.pitch!==Y.pitch&&(ce.pitch=ne.pitch),ne.padding&&Y.padding&&!ec(ne.padding,Y.padding)&&(ce.padding=ne.padding),ce}const Lb=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function lx(Y){if(!Y)return null;if(typeof Y=="string"||("toJS"in Y&&(Y=Y.toJS()),!Y.layers))return Y;const q={};for(const ce of Y.layers)q[ce.id]=ce;const ne=Y.layers.map(ce=>{let _e=null;"interactive"in ce&&(_e=Object.assign({},ce),delete _e.interactive);const Me=q[ce.ref];if(Me){_e=_e||Object.assign({},ce),delete _e.ref;for(const ee of Lb)ee in Me&&(_e[ee]=Me[ee])}return _e||ce});return{...Y,layers:ne}}const cx={version:8,sources:{},layers:[]},ux={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},hx={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},dx={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},Rb=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],kb=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"];class wf{constructor(q,ne,ce){this._map=null,this._internalUpdate=!1,this._hoveredFeatures=null,this._propsedCameraUpdate=null,this._styleComponents={},this._onEvent=_e=>{const Me=this.props[dx[_e.type]];Me?Me(_e):_e.type==="error"&&console.error(_e.error)},this._onCameraEvent=_e=>{if(this._internalUpdate)return;_e.viewState=this._propsedCameraUpdate||ox(this._map.transform);const Me=this.props[hx[_e.type]];Me&&Me(_e)},this._onCameraUpdate=_e=>this._internalUpdate?_e:(this._propsedCameraUpdate=ox(_e),ax(_e,this.props)),this._onPointerEvent=_e=>{(_e.type==="mousemove"||_e.type==="mouseout")&&this._updateHover(_e);const Me=this.props[ux[_e.type]];Me&&(this.props.interactiveLayerIds&&_e.type!=="mouseover"&&_e.type!=="mouseout"&&(_e.features=this._hoveredFeatures||this._queryRenderedFeatures(_e.point)),Me(_e),delete _e.features)},this._MapClass=q,this.props=ne,this._initialize(ce)}get map(){return this._map}setProps(q){const ne=this.props;this.props=q;const ce=this._updateSettings(q,ne),_e=this._updateSize(q),Me=this._updateViewState(q);this._updateStyle(q,ne),this._updateStyleComponents(q),this._updateHandlers(q,ne),(ce||_e||Me&&!this._map.isMoving())&&this.redraw()}static reuse(q,ne){const ce=wf.savedMaps.pop();if(!ce)return null;const _e=ce.map,Me=_e.getContainer();for(ne.className=Me.className;Me.childNodes.length>0;)ne.appendChild(Me.childNodes[0]);_e._container=ne;const ee=_e._resizeObserver;ee&&(ee.disconnect(),ee.observe(ne)),ce.setProps({...q,styleDiffing:!1}),_e.resize();const{initialViewState:i}=q;return i&&(i.bounds?_e.fitBounds(i.bounds,{...i.fitBoundsOptions,duration:0}):ce._updateViewState(i)),_e.isStyleLoaded()?_e.fire("load"):_e.once("style.load",()=>_e.fire("load")),_e._update(),ce}_initialize(q){const{props:ne}=this,{mapStyle:ce=cx}=ne,_e={...ne,...ne.initialViewState,container:q,style:lx(ce)},Me=_e.initialViewState||_e.viewState||_e;if(Object.assign(_e,{center:[Me.longitude||0,Me.latitude||0],zoom:Me.zoom||0,pitch:Me.pitch||0,bearing:Me.bearing||0}),ne.gl){const i=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=i,ne.gl)}const ee=new this._MapClass(_e);Me.padding&&ee.setPadding(Me.padding),ne.cursor&&(ee.getCanvas().style.cursor=ne.cursor),ee.transformCameraUpdate=this._onCameraUpdate,ee.on("style.load",()=>{var i;this._styleComponents={light:ee.getLight(),sky:ee.getSky(),projection:(i=ee.getProjection)==null?void 0:i.call(ee),terrain:ee.getTerrain()},this._updateStyleComponents(this.props)}),ee.on("sourcedata",()=>{this._updateStyleComponents(this.props)});for(const i in ux)ee.on(i,this._onPointerEvent);for(const i in hx)ee.on(i,this._onCameraEvent);for(const i in dx)ee.on(i,this._onEvent);this._map=ee}recycle(){const ne=this.map.getContainer().querySelector("[mapboxgl-children]");ne==null||ne.remove(),wf.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){const q=this._map;q.style&&(q._frame&&(q._frame.cancel(),q._frame=null),q._render())}_updateSize(q){const{viewState:ne}=q;if(ne){const ce=this._map;if(ne.width!==ce.transform.width||ne.height!==ce.transform.height)return ce.resize(),!0}return!1}_updateViewState(q){const ne=this._map,ce=ne.transform;if(!ne.isMoving()){const Me=ax(ce,q);if(Object.keys(Me).length>0)return this._internalUpdate=!0,ne.jumpTo(Me),this._internalUpdate=!1,!0}return!1}_updateSettings(q,ne){const ce=this._map;let _e=!1;for(const Me of Rb)if(Me in q&&!ec(q[Me],ne[Me])){_e=!0;const ee=ce[`set${Me[0].toUpperCase()}${Me.slice(1)}`];ee==null||ee.call(ce,q[Me])}return _e}_updateStyle(q,ne){if(q.cursor!==ne.cursor&&(this._map.getCanvas().style.cursor=q.cursor||""),q.mapStyle!==ne.mapStyle){const{mapStyle:ce=cx,styleDiffing:_e=!0}=q,Me={diff:_e};"localIdeographFontFamily"in q&&(Me.localIdeographFontFamily=q.localIdeographFontFamily),this._map.setStyle(lx(ce),Me)}}_updateStyleComponents({light:q,projection:ne,sky:ce,terrain:_e}){var i,it;const Me=this._map,ee=this._styleComponents;Me.style._loaded&&(q&&!ec(q,ee.light)&&(ee.light=q,Me.setLight(q)),ne&&!ec(ne,ee.projection)&&ne!==((i=ee.projection)==null?void 0:i.type)&&(ee.projection=typeof ne=="string"?{type:ne}:ne,(it=Me.setProjection)==null||it.call(Me,ee.projection)),ce&&!ec(ce,ee.sky)&&(ee.sky=ce,Me.setSky(ce)),_e!==void 0&&!ec(_e,ee.terrain)&&(!_e||Me.getSource(_e.source))&&(ee.terrain=_e,Me.setTerrain(_e)))}_updateHandlers(q,ne){const ce=this._map;for(const _e of kb){const Me=q[_e]??!0,ee=ne[_e]??!0;ec(Me,ee)||(Me?ce[_e].enable(Me):ce[_e].disable())}}_queryRenderedFeatures(q){const ne=this._map,{interactiveLayerIds:ce=[]}=this.props;try{return ne.queryRenderedFeatures(q,{layers:ce.filter(ne.getLayer.bind(ne))})}catch{return[]}}_updateHover(q){var _e;const{props:ne}=this;if(ne.interactiveLayerIds&&(ne.onMouseMove||ne.onMouseEnter||ne.onMouseLeave)){const Me=q.type,ee=((_e=this._hoveredFeatures)==null?void 0:_e.length)>0,i=this._queryRenderedFeatures(q.point),it=i.length>0;!it&&ee&&(q.type="mouseleave",this._onPointerEvent(q)),this._hoveredFeatures=i,it&&!ee&&(q.type="mouseenter",this._onPointerEvent(q)),q.type=Me}else this._hoveredFeatures=null}}wf.savedMaps=[];const Ob=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function Fb(Y){if(!Y)return null;const q=Y.map,ne={getMap:()=>q};for(const ce of Bb(q))!(ce in ne)&&!Ob.includes(ce)&&(ne[ce]=q[ce].bind(q));return ne}function Bb(Y){const q=new Set;let ne=Y;for(;ne;){for(const ce of Object.getOwnPropertyNames(ne))ce[0]!=="_"&&typeof Y[ce]=="function"&&ce!=="fire"&&ce!=="setEventedParent"&&q.add(ce);ne=Object.getPrototypeOf(ne)}return Array.from(q)}const Nb=typeof document<"u"?Mt.useLayoutEffect:Mt.useEffect;function Vb(Y,q){const{RTLTextPlugin:ne,maxParallelImageRequests:ce,workerCount:_e,workerUrl:Me}=q;if(ne&&Y.getRTLTextPluginStatus&&Y.getRTLTextPluginStatus()==="unavailable"){const{pluginUrl:ee,lazy:i=!0}=typeof ne=="string"?{pluginUrl:ne}:ne;Y.setRTLTextPlugin(ee,it=>{it&&console.error(it)},i)}ce!==void 0&&Y.setMaxParallelImageRequests(ce),_e!==void 0&&Y.setWorkerCount(_e),Me!==void 0&&Y.setWorkerUrl(Me)}const Lp=Dr.createContext(null);function jb(Y,q){const ne=Mt.useContext(nx),[ce,_e]=Mt.useState(null),Me=Mt.useRef(),{current:ee}=Mt.useRef({mapLib:null,map:null});Mt.useEffect(()=>{const vt=Y.mapLib;let Ft=!0,Ut;return Promise.resolve(vt||Promise.resolve().then(()=>h2)).then(Qt=>{if(!Ft)return;if(!Qt)throw new Error("Invalid mapLib");const St="Map"in Qt?Qt:Qt.default;if(!St.Map)throw new Error("Invalid mapLib");if(Vb(St,Y),!St.supported||St.supported(Y))Y.reuseMaps&&(Ut=wf.reuse(Y,Me.current)),Ut||(Ut=new wf(St.Map,Y,Me.current)),ee.map=Fb(Ut),ee.mapLib=St,_e(Ut),ne==null||ne.onMapMount(ee.map,Y.id);else throw new Error("Map is not supported by this browser")}).catch(Qt=>{const{onError:St}=Y;St?St({type:"error",target:null,originalEvent:null,error:Qt}):console.error(Qt)}),()=>{Ft=!1,Ut&&(ne==null||ne.onMapUnmount(Y.id),Y.reuseMaps?Ut.recycle():Ut.destroy())}},[]),Nb(()=>{ce&&ce.setProps(Y)}),Mt.useImperativeHandle(q,()=>ee.map,[ce]);const i=Mt.useMemo(()=>({position:"relative",width:"100%",height:"100%",...Y.style}),[Y.style]),it={height:"100%"};return Dr.createElement("div",{id:Y.id,ref:Me,style:i},ce&&Dr.createElement(Lp.Provider,{value:ee},Dr.createElement("div",{"mapboxgl-children":"",style:it},Y.children)))}const Ub=Dr.forwardRef(jb),Gb=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function gd(Y,q){if(!Y||!q)return;const ne=Y.style;for(const ce in q){const _e=q[ce];Number.isFinite(_e)&&!Gb.test(ce)?ne[ce]=`${_e}px`:ne[ce]=_e}}const px=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Lp),_e=Mt.useRef({props:Y});_e.current.props=Y;const Me=Mt.useMemo(()=>{let Ci=!1;Dr.Children.forEach(Y.children,_r=>{_r&&(Ci=!0)});const Sr={...Y,element:Ci?document.createElement("div"):null},Ri=new ce.Marker(Sr);return Ri.setLngLat([Y.longitude,Y.latitude]),Ri.getElement().addEventListener("click",_r=>{var gr,Fi;(Fi=(gr=_e.current.props).onClick)==null||Fi.call(gr,{type:"click",target:Ri,originalEvent:_r})}),Ri.on("dragstart",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragStart)==null||Cr.call(Fi,gr)}),Ri.on("drag",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDrag)==null||Cr.call(Fi,gr)}),Ri.on("dragend",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragEnd)==null||Cr.call(Fi,gr)}),Ri},[]);Mt.useEffect(()=>(Me.addTo(ne.getMap()),()=>{Me.remove()}),[]);const{longitude:ee,latitude:i,offset:it,style:vt,draggable:Ft=!1,popup:Ut=null,rotation:Qt=0,rotationAlignment:St="auto",pitchAlignment:Wt="auto"}=Y;return Mt.useEffect(()=>{gd(Me.getElement(),vt)},[vt]),Mt.useImperativeHandle(q,()=>Me,[]),(Me.getLngLat().lng!==ee||Me.getLngLat().lat!==i)&&Me.setLngLat([ee,i]),it&&!Db(Me.getOffset(),it)&&Me.setOffset(it),Me.isDraggable()!==Ft&&Me.setDraggable(Ft),Me.getRotation()!==Qt&&Me.setRotation(Qt),Me.getRotationAlignment()!==St&&Me.setRotationAlignment(St),Me.getPitchAlignment()!==Wt&&Me.setPitchAlignment(Wt),Me.getPopup()!==Ut&&Me.setPopup(Ut),Cp.createPortal(Y.children,Me.getElement())}));function fx(Y){return new Set(Y?Y.trim().split(/\s+/):[])}const Zb=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Lp),_e=Mt.useMemo(()=>document.createElement("div"),[]),Me=Mt.useRef({props:Y});Me.current.props=Y;const ee=Mt.useMemo(()=>{const i={...Y},it=new ce.Popup(i);return it.setLngLat([Y.longitude,Y.latitude]),it.once("open",vt=>{var Ft,Ut;(Ut=(Ft=Me.current.props).onOpen)==null||Ut.call(Ft,vt)}),it},[]);if(Mt.useEffect(()=>{const i=it=>{var vt,Ft;(Ft=(vt=Me.current.props).onClose)==null||Ft.call(vt,it)};return ee.on("close",i),ee.setDOMContent(_e).addTo(ne.getMap()),()=>{ee.off("close",i),ee.isOpen()&&ee.remove()}},[]),Mt.useEffect(()=>{gd(ee.getElement(),Y.style)},[Y.style]),Mt.useImperativeHandle(q,()=>ee,[]),ee.isOpen()&&((ee.getLngLat().lng!==Y.longitude||ee.getLngLat().lat!==Y.latitude)&&ee.setLngLat([Y.longitude,Y.latitude]),Y.offset&&!ec(ee.options.offset,Y.offset)&&ee.setOffset(Y.offset),(ee.options.anchor!==Y.anchor||ee.options.maxWidth!==Y.maxWidth)&&(ee.options.anchor=Y.anchor,ee.setMaxWidth(Y.maxWidth)),ee.options.className!==Y.className)){const i=fx(ee.options.className),it=fx(Y.className);for(const vt of i)it.has(vt)||ee.removeClassName(vt);for(const vt of it)i.has(vt)||ee.addClassName(vt);ee.options.className=Y.className}return Cp.createPortal(Y.children,_e)}));function Rp(Y,q,ne,ce){const _e=Mt.useContext(Lp),Me=Mt.useMemo(()=>Y(_e),[]);return Mt.useEffect(()=>{const ee=q,i=null,it=typeof q=="function"?q:null,{map:vt}=_e;return vt.hasControl(Me)||(vt.addControl(Me,ee==null?void 0:ee.position),i&&i(_e)),()=>{it&&it(_e),vt.hasControl(Me)&&vt.removeControl(Me)}},[]),Me}function qb(Y){const q=Rp(({mapLib:ne})=>new ne.AttributionControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(qb);function $b(Y){const q=Rp(({mapLib:ne})=>new ne.FullscreenControl({container:Y.containerId&&document.getElementById(Y.containerId)}),{position:Y.position});return Mt.useEffect(()=>{gd(q._controlContainer,Y.style)},[Y.style]),null}Mt.memo($b);function Hb(Y,q){const ne=Mt.useRef({props:Y}),ce=Rp(({mapLib:_e})=>{const Me=new _e.GeolocateControl(Y),ee=Me._setupUI;return Me._setupUI=()=>{Me._container.hasChildNodes()||ee()},Me.on("geolocate",i=>{var it,vt;(vt=(it=ne.current.props).onGeolocate)==null||vt.call(it,i)}),Me.on("error",i=>{var it,vt;(vt=(it=ne.current.props).onError)==null||vt.call(it,i)}),Me.on("outofmaxbounds",i=>{var it,vt;(vt=(it=ne.current.props).onOutOfMaxBounds)==null||vt.call(it,i)}),Me.on("trackuserlocationstart",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationStart)==null||vt.call(it,i)}),Me.on("trackuserlocationend",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationEnd)==null||vt.call(it,i)}),Me},{position:Y.position});return ne.current.props=Y,Mt.useImperativeHandle(q,()=>ce,[]),Mt.useEffect(()=>{gd(ce._container,Y.style)},[Y.style]),null}Mt.memo(Mt.forwardRef(Hb));function Wb(Y){const q=Rp(({mapLib:ne})=>new ne.NavigationControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}const Xb=Mt.memo(Wb);function Yb(Y){const q=Rp(({mapLib:Me})=>new Me.ScaleControl(Y),{position:Y.position}),ne=Mt.useRef(Y),ce=ne.current;ne.current=Y;const{style:_e}=Y;return Y.maxWidth!==void 0&&Y.maxWidth!==ce.maxWidth&&(q.options.maxWidth=Y.maxWidth),Y.unit!==void 0&&Y.unit!==ce.unit&&q.setUnit(Y.unit),Mt.useEffect(()=>{gd(q._container,_e)},[_e]),null}Mt.memo(Yb);function Kb(Y){const q=Rp(({mapLib:ne})=>new ne.TerrainControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(Kb);function Jb(Y){const q=Rp(({mapLib:ne})=>new ne.LogoControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(Jb);function c_(Y,q){if(!Y)throw new Error(q)}let Qb=0;function e1(Y,q,ne){if(Y.style&&Y.style._loaded){const ce={...ne};return delete ce.id,delete ce.children,Y.addSource(q,ce),Y.getSource(q)}return null}function t1(Y,q,ne){var ee,i,it;c_(q.id===ne.id,"source id changed"),c_(q.type===ne.type,"source type changed");let ce="",_e=0;for(const vt in q)vt!=="children"&&vt!=="id"&&!ec(ne[vt],q[vt])&&(ce=vt,_e++);if(!_e)return;const Me=q.type;if(Me==="geojson")Y.setData(q.data);else if(Me==="image")Y.updateImage({url:q.url,coordinates:q.coordinates});else switch(ce){case"coordinates":(ee=Y.setCoordinates)==null||ee.call(Y,q.coordinates);break;case"url":(i=Y.setUrl)==null||i.call(Y,q.url);break;case"tiles":(it=Y.setTiles)==null||it.call(Y,q.tiles);break;default:console.warn(`Unable to update <Source> prop: ${ce}`)}}function i1(Y){const q=Mt.useContext(Lp).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-source-${Qb++}`,[]);Mt.useEffect(()=>{if(q){const ee=()=>setTimeout(()=>ce(i=>i+1),0);return q.on("styledata",ee),ee(),()=>{var i;if(q.off("styledata",ee),q.style&&q.style._loaded&&q.getSource(_e)){const it=(i=q.getStyle())==null?void 0:i.layers;if(it)for(const vt of it)vt.source===_e&&q.removeLayer(vt.id);q.removeSource(_e)}}}},[q]);let Me=q&&q.style&&q.getSource(_e);return Me?t1(Me,Y,ne.current):Me=e1(q,_e,Y),ne.current=Y,Me&&Dr.Children.map(Y.children,ee=>ee&&Mt.cloneElement(ee,{source:_e}))||null}function r1(Y,q,ne,ce){if(c_(ne.id===ce.id,"layer id changed"),c_(ne.type===ce.type,"layer type changed"),ne.type==="custom"||ce.type==="custom")return;const{layout:_e={},paint:Me={},filter:ee,minzoom:i,maxzoom:it,beforeId:vt}=ne;if(vt!==ce.beforeId&&Y.moveLayer(q,vt),_e!==ce.layout){const Ft=ce.layout||{};for(const Ut in _e)ec(_e[Ut],Ft[Ut])||Y.setLayoutProperty(q,Ut,_e[Ut]);for(const Ut in Ft)_e.hasOwnProperty(Ut)||Y.setLayoutProperty(q,Ut,void 0)}if(Me!==ce.paint){const Ft=ce.paint||{};for(const Ut in Me)ec(Me[Ut],Ft[Ut])||Y.setPaintProperty(q,Ut,Me[Ut]);for(const Ut in Ft)Me.hasOwnProperty(Ut)||Y.setPaintProperty(q,Ut,void 0)}ec(ee,ce.filter)||Y.setFilter(q,ee),(i!==ce.minzoom||it!==ce.maxzoom)&&Y.setLayerZoomRange(q,i,it)}function n1(Y,q,ne){if(Y.style&&Y.style._loaded&&(!("source"in ne)||Y.getSource(ne.source))){const ce={...ne,id:q};delete ce.beforeId,Y.addLayer(ce,ne.beforeId)}}let s1=0;function mx(Y){const q=Mt.useContext(Lp).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-layer-${s1++}`,[]);if(Mt.useEffect(()=>{if(q){const ee=()=>ce(i=>i+1);return q.on("styledata",ee),ee(),()=>{q.off("styledata",ee),q.style&&q.style._loaded&&q.getLayer(_e)&&q.removeLayer(_e)}}},[q]),q&&q.style&&q.getLayer(_e))try{r1(q,_e,Y,ne.current)}catch(ee){console.warn(ee)}else n1(q,_e,Y);return ne.current=Y,null}const o1=()=>{const{current:Y}=sx(),{setBounds:q,setZoom:ne}=Sl(),ce=()=>{Y&&(q(Y.getBounds().toArray().flat()),ne(Y.getZoom()))};return Mt.useEffect(()=>{Y&&(ce(),Y.on("move",()=>{ce()}))},[Y]),null};function a1({children:Y}){const{mapProvider:q,center:ne,zoom:ce=$a.zoom,minZoom:_e,maxZoom:Me,pitch:ee=$a.pitch,bearing:i=$a.bearing,cooperativeGestures:it=$a.cooperativeGestures,zoomPosition:vt}=Sl();return q.name!=="maptiler"?null:Pr.jsxs(Ub,{initialViewState:{...ne,zoom:ce,pitch:ee,bearing:i},cooperativeGestures:it,minZoom:_e,maxZoom:Me,mapStyle:`https://api.maptiler.com/maps/${q.theme||lm.maptiler}/style.json?key=${q.apiKey}`,children:[Pr.jsx(o1,{}),vt&&Pr.jsx(Xb,{position:vt}),Y]})}const l1=Object.freeze(Object.defineProperty({__proto__:null,default:a1},Symbol.toStringTag,{value:"Module"}));function kh(){return kh=Object.assign?Object.assign.bind():function(Y){for(var q=1;q<arguments.length;q++){var ne=arguments[q];for(var ce in ne)({}).hasOwnProperty.call(ne,ce)&&(Y[ce]=ne[ce])}return Y},kh.apply(null,arguments)}function kp(Y,q){if(Y==null)return{};var ne={};for(var ce in Y)if({}.hasOwnProperty.call(Y,ce)){if(q.indexOf(ce)!==-1)continue;ne[ce]=Y[ce]}return ne}function c1(Y,q){if(typeof Y!="object"||!Y)return Y;var ne=Y[Symbol.toPrimitive];if(ne!==void 0){var ce=ne.call(Y,q);if(typeof ce!="object")return ce;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Y)}function u1(Y){var q=c1(Y,"string");return typeof q=="symbol"?q:q+""}const yd={NOT_LOADED:"NOT_LOADED",LOADING:"LOADING",LOADED:"LOADED",FAILED:"FAILED",AUTH_FAILURE:"AUTH_FAILURE"},h1="https://maps.googleapis.com/maps/api/js";class hm{static async load(q,ne){var ce;const _e=q.libraries?q.libraries.split(","):[],Me=this.serializeParams(q);this.listeners.push(ne),(ce=window.google)!=null&&(ce=ce.maps)!=null&&ce.importLibrary?(this.serializedApiParams||(this.loadingStatus=yd.LOADED),this.notifyLoadingStatusListeners()):(this.serializedApiParams=Me,this.initImportLibrary(q)),this.serializedApiParams&&this.serializedApiParams!==Me&&console.warn("[google-maps-api-loader] The maps API has already been loaded with different parameters and will not be loaded again. Refresh the page for new values to have effect.");const ee=["maps",..._e];await Promise.all(ee.map(i=>google.maps.importLibrary(i)))}static serializeParams(q){return[q.v,q.key,q.language,q.region,q.authReferrerPolicy,q.solutionChannel].join("/")}static initImportLibrary(q){if(window.google||(window.google={}),window.google.maps||(window.google.maps={}),window.google.maps.importLibrary){console.error("[google-maps-api-loader-internal]: initImportLibrary must only be called once");return}let ne=null;const ce=()=>ne||(ne=new Promise((_e,Me)=>{var ee;const i=document.createElement("script"),it=new URLSearchParams;for(const[vt,Ft]of Object.entries(q)){const Ut=vt.replace(/[A-Z]/g,Qt=>"_"+Qt[0].toLowerCase());it.set(Ut,String(Ft))}it.set("loading","async"),it.set("callback","__googleMapsCallback__"),i.async=!0,i.src=h1+"?"+it.toString(),i.nonce=((ee=document.querySelector("script[nonce]"))==null?void 0:ee.nonce)||"",i.onerror=()=>{this.loadingStatus=yd.FAILED,this.notifyLoadingStatusListeners(),Me(new Error("The Google Maps JavaScript API could not load."))},window.__googleMapsCallback__=()=>{this.loadingStatus=yd.LOADED,this.notifyLoadingStatusListeners(),_e()},window.gm_authFailure=()=>{this.loadingStatus=yd.AUTH_FAILURE,this.notifyLoadingStatusListeners()},this.loadingStatus=yd.LOADING,this.notifyLoadingStatusListeners(),document.head.append(i)}),ne);google.maps.importLibrary=_e=>ce().then(()=>google.maps.importLibrary(_e))}static notifyLoadingStatusListeners(){for(const q of this.listeners)q(this.loadingStatus)}}hm.loadingStatus=yd.NOT_LOADED,hm.serializedApiParams=void 0,hm.listeners=[];const d1=["onLoad","onError","apiKey","version","libraries"],p1=["children"],f1="GMP_visgl_rgmlibrary_v1_default",dm=Mt.createContext(null);function m1(){const[Y,q]=Mt.useState({});return{mapInstances:Y,addMapInstance:(Me,ee="default")=>{q(i=>kh({},i,{[ee]:Me}))},removeMapInstance:(Me="default")=>{q(ee=>kp(ee,[Me].map(u1)))},clearMapInstances:()=>{q({})}}}function _1(Y){const{onLoad:q,onError:ne,apiKey:ce,version:_e,libraries:Me=[]}=Y,ee=kp(Y,d1),[i,it]=Mt.useState(hm.loadingStatus),[vt,Ft]=Mt.useReducer((Wt,Ci)=>Wt[Ci.name]?Wt:kh({},Wt,{[Ci.name]:Ci.value}),{}),Ut=Mt.useMemo(()=>Me==null?void 0:Me.join(","),[Me]),Qt=Mt.useMemo(()=>JSON.stringify(kh({apiKey:ce,version:_e},ee)),[ce,_e,ee]),St=Mt.useCallback(async Wt=>{var Ci;if(vt[Wt])return vt[Wt];if(!((Ci=google)!=null&&(Ci=Ci.maps)!=null&&Ci.importLibrary))throw new Error("[api-provider-internal] importLibrary was called before google.maps.importLibrary was defined.");const Sr=await window.google.maps.importLibrary(Wt);return Ft({name:Wt,value:Sr}),Sr},[vt]);return Mt.useEffect(()=>{(async()=>{try{const Wt=kh({key:ce},ee);_e&&(Wt.v=_e),(Ut==null?void 0:Ut.length)>0&&(Wt.libraries=Ut),(Wt.channel===void 0||Wt.channel<0||Wt.channel>999)&&delete Wt.channel,Wt.solutionChannel===void 0?Wt.solutionChannel=f1:Wt.solutionChannel===""&&delete Wt.solutionChannel,await hm.load(Wt,Ci=>it(Ci));for(const Ci of["core","maps",...Me])await St(Ci);q&&q()}catch(Wt){ne?ne(Wt):console.error("<ApiProvider> failed to load the Google Maps JavaScript API",Wt)}})()},[ce,Ut,Qt]),{status:i,loadedLibraries:vt,importLibrary:St}}const g1=Y=>{const{children:q}=Y,ne=kp(Y,p1),{mapInstances:ce,addMapInstance:_e,removeMapInstance:Me,clearMapInstances:ee}=m1(),{status:i,loadedLibraries:it,importLibrary:vt}=_1(ne),Ft=Mt.useMemo(()=>({mapInstances:ce,addMapInstance:_e,removeMapInstance:Me,clearMapInstances:ee,status:i,loadedLibraries:it,importLibrary:vt}),[ce,_e,Me,ee,i,it,vt]);return Mt.createElement(dm.Provider,{value:Ft},q)};function y1(Y,q){for(const ne of w1){const ce=q[ne],_e=_x[ne];Mt.useEffect(()=>{if(!Y||!ce)return;const Me=google.maps.event.addListener(Y,_e,ee=>{ce(x1(_e,Y,ee))});return()=>Me.remove()},[Y,_e,ce])}}function x1(Y,q,ne){const ce={type:Y,map:q,detail:{},stoppable:!1,stop:()=>{}};if(v1.includes(Y)){const Me=ce,ee=q.getCenter(),i=q.getZoom(),it=q.getHeading()||0,vt=q.getTilt()||0,Ft=q.getBounds();return(!ee||!Ft||!Number.isFinite(i))&&console.warn("[createEvent] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),Me.detail={center:(ee==null?void 0:ee.toJSON())||{lat:0,lng:0},zoom:i||0,heading:it,tilt:vt,bounds:(Ft==null?void 0:Ft.toJSON())||{north:90,east:180,south:-90,west:-180}},Me}else if(b1.includes(Y)){var _e;if(!ne)throw new Error("[createEvent] mouse events must provide a srcEvent");const Me=ce;return Me.domEvent=ne.domEvent,Me.stoppable=!0,Me.stop=()=>ne.stop(),Me.detail={latLng:((_e=ne.latLng)==null?void 0:_e.toJSON())||null,placeId:ne.placeId},Me}return ce}const _x={onBoundsChanged:"bounds_changed",onCenterChanged:"center_changed",onClick:"click",onContextmenu:"contextmenu",onDblclick:"dblclick",onDrag:"drag",onDragend:"dragend",onDragstart:"dragstart",onHeadingChanged:"heading_changed",onIdle:"idle",onIsFractionalZoomEnabledChanged:"isfractionalzoomenabled_changed",onMapCapabilitiesChanged:"mapcapabilities_changed",onMapTypeIdChanged:"maptypeid_changed",onMousemove:"mousemove",onMouseout:"mouseout",onMouseover:"mouseover",onProjectionChanged:"projection_changed",onRenderingTypeChanged:"renderingtype_changed",onTilesLoaded:"tilesloaded",onTiltChanged:"tilt_changed",onZoomChanged:"zoom_changed",onCameraChanged:"bounds_changed"},v1=["bounds_changed","center_changed","heading_changed","tilt_changed","zoom_changed"],b1=["click","contextmenu","dblclick","mousemove","mouseout","mouseover"],w1=Object.keys(_x);function Bg(Y,q){const ne=Mt.useRef(void 0);(!ne.current||!ub(q,ne.current))&&(ne.current=q),Mt.useEffect(Y,ne.current)}const T1=new Set(["backgroundColor","clickableIcons","controlSize","disableDefaultUI","disableDoubleClickZoom","draggable","draggableCursor","draggingCursor","fullscreenControl","fullscreenControlOptions","gestureHandling","headingInteractionEnabled","isFractionalZoomEnabled","keyboardShortcuts","mapTypeControl","mapTypeControlOptions","mapTypeId","maxZoom","minZoom","noClear","panControl","panControlOptions","restriction","rotateControl","rotateControlOptions","scaleControl","scaleControlOptions","scrollwheel","streetView","streetViewControl","streetViewControlOptions","styles","tiltInteractionEnabled","zoomControl","zoomControlOptions"]);function S1(Y,q){const ne={},ce=Object.keys(q);for(const _e of ce)T1.has(_e)&&(ne[_e]=q[_e]);Bg(()=>{Y&&Y.setOptions(ne)},[ne])}function gx(){var Y;return((Y=Mt.useContext(dm))==null?void 0:Y.status)||yd.NOT_LOADED}function M1(Y,q){const{viewport:ne,viewState:ce}=q,_e=!!ne;return Mt.useLayoutEffect(()=>{if(!Y||!ce)return;const{latitude:Me,longitude:ee,bearing:i,pitch:it,zoom:vt}=ce;Y.moveCamera({center:{lat:Me,lng:ee},heading:i,tilt:it,zoom:vt+1})},[Y,ce]),_e}function E1(Y){return!Y||typeof Y!="object"||!("lat"in Y&&"lng"in Y)?!1:Number.isFinite(Y.lat)&&Number.isFinite(Y.lng)}function yx(Y){return E1(Y)?Y:Y.toJSON()}function I1(Y,q,ne){const ce=ne.center?yx(ne.center):null;let _e=null,Me=null;ce&&Number.isFinite(ce.lat)&&Number.isFinite(ce.lng)&&(_e=ce.lat,Me=ce.lng);const ee=Number.isFinite(ne.zoom)?ne.zoom:null,i=Number.isFinite(ne.heading)?ne.heading:null,it=Number.isFinite(ne.tilt)?ne.tilt:null;Mt.useLayoutEffect(()=>{if(!Y)return;const vt={};let Ft=!1;_e!==null&&Me!==null&&(q.current.center.lat!==_e||q.current.center.lng!==Me)&&(vt.center={lat:_e,lng:Me},Ft=!0),ee!==null&&q.current.zoom!==ee&&(vt.zoom=ee,Ft=!0),i!==null&&q.current.heading!==i&&(vt.heading=i,Ft=!0),it!==null&&q.current.tilt!==it&&(vt.tilt=it,Ft=!0),Ft&&Y.moveCamera(vt)})}const P1=()=>{const Y={position:"absolute",top:0,left:0,bottom:0,right:0,zIndex:999,display:"flex",flexFlow:"column nowrap",textAlign:"center",justifyContent:"center",fontSize:".8rem",color:"rgba(0,0,0,0.6)",background:"#dddddd",padding:"1rem 1.5rem"};return Mt.createElement("div",{style:Y},Mt.createElement("h2",null,"Error: AuthFailure"),Mt.createElement("p",null,"A problem with your API key prevents the map from rendering correctly. Please make sure the value of the ",Mt.createElement("code",null,"APIProvider.apiKey")," prop is correct. Check the error-message in the console for further details."))};function A1(){const[Y,q]=Mt.useState(null),ne=Mt.useCallback(ce=>q(ce),[q]);return[Y,ne]}function xx(){return gx()===yd.LOADED}function C1(){const[,Y]=Mt.useReducer(q=>q+1,0);return Y}function z1(Y,q){const ne=Y.getCenter(),ce=Y.getZoom(),_e=Y.getHeading()||0,Me=Y.getTilt()||0,ee=Y.getBounds();(!ne||!ee||!Number.isFinite(ce))&&console.warn("[useTrackedCameraState] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),Object.assign(q.current,{center:(ne==null?void 0:ne.toJSON())||{lat:0,lng:0},zoom:ce||0,heading:_e,tilt:Me})}function D1(Y){const q=C1(),ne=Mt.useRef({center:{lat:0,lng:0},heading:0,tilt:0,zoom:0});return Mt.useEffect(()=>{if(!Y)return;const ce=google.maps.event.addListener(Y,"bounds_changed",()=>{z1(Y,ne),q()});return()=>ce.remove()},[Y,q]),ne}const L1=["id","defaultBounds","defaultCenter","defaultZoom","defaultHeading","defaultTilt","reuseMaps","renderingType","colorScheme"],R1=["padding"];class u_{static has(q){return this.entries[q]&&this.entries[q].length>0}static pop(q){return this.entries[q]&&this.entries[q].pop()||null}static push(q,ne){this.entries[q]||(this.entries[q]=[]),this.entries[q].push(ne)}}u_.entries={};function k1(Y,q){const ne=xx(),[ce,_e]=Mt.useState(null),[Me,ee]=A1(),i=D1(ce),{id:it,defaultBounds:vt,defaultCenter:Ft,defaultZoom:Ut,defaultHeading:Qt,defaultTilt:St,reuseMaps:Wt,renderingType:Ci,colorScheme:Sr}=Y,Ri=kp(Y,L1),_r=Y.zoom!==void 0||Y.defaultZoom!==void 0,gr=Y.center!==void 0||Y.defaultCenter!==void 0;!vt&&(!_r||!gr)&&console.warn("<Map> component is missing configuration. You have to provide zoom and center (via the `zoom`/`defaultZoom` and `center`/`defaultCenter` props) or specify the region to show using `defaultBounds`. See https://visgl.github.io/react-google-maps/docs/api-reference/components/map#required"),!Ri.center&&Ft&&(Ri.center=Ft),!Ri.zoom&&Number.isFinite(Ut)&&(Ri.zoom=Ut),!Ri.heading&&Number.isFinite(Qt)&&(Ri.heading=Qt),!Ri.tilt&&Number.isFinite(St)&&(Ri.tilt=St);for(const Cr of Object.keys(Ri))Ri[Cr]===void 0&&delete Ri[Cr];const Fi=Mt.useRef(void 0);return Mt.useEffect(()=>{if(!Me||!ne)return;const{addMapInstance:Cr,removeMapInstance:tn}=q,{mapId:Vi}=Y,hn=`${Vi||"default"}:${Ci||"default"}:${Sr||"LIGHT"}`;let fs,rr;if(Wt&&u_.has(hn)?(rr=u_.pop(hn),fs=rr.getDiv(),Me.appendChild(fs),rr.setOptions(Ri),setTimeout(()=>rr.setCenter(rr.getCenter()),0)):(fs=document.createElement("div"),fs.style.height="100%",Me.appendChild(fs),rr=new google.maps.Map(fs,kh({},Ri,Ci?{renderingType:Ci}:{},Sr?{colorScheme:Sr}:{}))),_e(rr),Cr(rr,it),vt){const{padding:pr}=vt,fo=kp(vt,R1);rr.fitBounds(fo,pr)}else(!_r||!gr)&&rr.fitBounds({east:180,west:-180,south:-90,north:90});if(Fi.current){const{mapId:pr,cameraState:fo}=Fi.current;pr!==Vi&&rr.setOptions(fo)}return()=>{Fi.current={mapId:Vi,cameraState:i.current},fs.remove(),Wt?u_.push(hn,rr):google.maps.event.clearInstanceListeners(rr),_e(null),tn(it)}},[Me,ne,it,Y.mapId,Y.renderingType,Y.colorScheme]),[ce,ee,i]}const Ng=Mt.createContext(null),vx=Y=>{const{children:q,id:ne,className:ce,style:_e}=Y,Me=Mt.useContext(dm),ee=gx();if(!Me)throw new Error("<Map> can only be used inside an <ApiProvider> component.");const[i,it,vt]=k1(Y,Me);I1(i,vt,Y),y1(i,Y),S1(i,Y);const Ft=M1(i,Y),Ut=!!Y.controlled;Mt.useEffect(()=>{if(i)return Ft&&i.setOptions({disableDefaultUI:!0}),(Ft||Ut)&&i.setOptions({gestureHandling:"none",keyboardShortcuts:!1}),()=>{i.setOptions({gestureHandling:Y.gestureHandling,keyboardShortcuts:Y.keyboardShortcuts})}},[i,Ft,Ut,Y.gestureHandling,Y.keyboardShortcuts]);const Qt=Y.center?yx(Y.center):null;let St=null,Wt=null;Qt&&Number.isFinite(Qt.lat)&&Number.isFinite(Qt.lng)&&(St=Qt.lat,Wt=Qt.lng);const Ci=Mt.useMemo(()=>{var _r,gr,Fi,Cr,tn;return{center:{lat:(_r=St)!=null?_r:0,lng:(gr=Wt)!=null?gr:0},zoom:(Fi=Y.zoom)!=null?Fi:0,heading:(Cr=Y.heading)!=null?Cr:0,tilt:(tn=Y.tilt)!=null?tn:0}},[St,Wt,Y.zoom,Y.heading,Y.tilt]);Mt.useLayoutEffect(()=>{if(!i||!Ut)return;i.moveCamera(Ci);const _r=i.addListener("bounds_changed",()=>{i.moveCamera(Ci)});return()=>_r.remove()},[i,Ut,Ci]);const Sr=Mt.useMemo(()=>kh({width:"100%",height:"100%",position:"relative",zIndex:Ft?-1:0},_e),[_e,Ft]),Ri=Mt.useMemo(()=>({map:i}),[i]);return ee===yd.AUTH_FAILURE?Mt.createElement("div",{style:kh({position:"relative"},ce?{}:Sr),className:ce},Mt.createElement(P1,null)):Mt.createElement("div",kh({ref:it,"data-testid":"map",style:ce?void 0:Sr,className:ce},ne?{id:ne}:{}),i?Mt.createElement(Ng.Provider,{value:Ri},q):null)};vx.deckGLViewProps=!0;const bx=new Set;function O1(...Y){const q=JSON.stringify(Y);bx.has(q)||(bx.add(q),console.error(...Y))}const Tf=(Y=null)=>{const q=Mt.useContext(dm),{map:ne}=Mt.useContext(Ng)||{};if(q===null)return O1("useMap(): failed to retrieve APIProviderContext. Make sure that the <APIProvider> component exists and that the component you are calling `useMap()` from is a sibling of the <APIProvider>."),null;const{mapInstances:ce}=q;return Y!==null?ce[Y]||null:ne||ce.default||null};function wx(Y){const q=xx(),ne=Mt.useContext(dm);return Mt.useEffect(()=>{!q||!ne||ne.importLibrary(Y)},[q,ne,Y]),(ne==null?void 0:ne.loadedLibraries[Y])||null}function Sf(Y,q,ne){Mt.useEffect(()=>{if(!Y||!q||!ne)return;const ce=google.maps.event.addListener(Y,q,ne);return()=>ce.remove()},[Y,q,ne])}function h_(Y,q,ne){Mt.useEffect(()=>{Y&&(Y[q]=ne)},[Y,q,ne])}function Tx(Y,q,ne){Mt.useEffect(()=>{if(!(!Y||!q||!ne))return Y.addEventListener(q,ne),()=>Y.removeEventListener(q,ne)},[Y,q,ne])}function F1(Y){return Y.content!==void 0}function B1(Y){return Y.nodeType===Node.ELEMENT_NODE}const N1=Mt.createContext(null),V1={BOTTOM:["50%","100%"]},j1=({children:Y,styles:q,className:ne,anchorPoint:ce})=>{const[_e,Me]=ce??V1.BOTTOM;let ee=`-${_e}`,i=`-${Me}`;_e.trimStart().startsWith("-")&&(ee=_e.substring(1)),Me.trimStart().startsWith("-")&&(i=Me.substring(1));const it=`translate(50%, 100%) translate(${ee}, ${i})`;return Mt.createElement("div",{style:{transform:it}},Mt.createElement("div",{className:ne,style:q},Y))};function U1(Y){const[q,ne]=Mt.useState(null),[ce,_e]=Mt.useState(null),Me=Tf(),ee=wx("marker"),{children:i,onClick:it,className:vt,onMouseEnter:Ft,onMouseLeave:Ut,onDrag:Qt,onDragStart:St,onDragEnd:Wt,collisionBehavior:Ci,clickable:Sr,draggable:Ri,position:_r,title:gr,zIndex:Fi}=Y,Cr=Mt.Children.count(i);return Mt.useEffect(()=>{if(!Me||!ee)return;const tn=new ee.AdvancedMarkerElement;tn.map=Me,ne(tn);let Vi=null;return Cr>0&&(Vi=document.createElement("div"),Vi.isCustomMarker=!0,tn.content=Vi,_e(Vi)),()=>{var hn;tn.map=null,(hn=Vi)==null||hn.remove(),ne(null),_e(null)}},[Me,ee,Cr]),Mt.useEffect(()=>{!q||!q.content||Cr>0||(q.content.className=vt||"")},[q,vt,Cr]),h_(q,"position",_r),h_(q,"title",gr??""),h_(q,"zIndex",Fi),h_(q,"collisionBehavior",Ci),Mt.useEffect(()=>{q&&(Ri!==void 0?q.gmpDraggable=Ri:Qt||St||Wt?q.gmpDraggable=!0:q.gmpDraggable=!1)},[q,Ri,Qt,Wt,St]),Mt.useEffect(()=>{if(!q)return;const tn=Sr!==void 0||!!it||!!Ft||!!Ut;q.gmpClickable=tn,tn&&q!=null&&q.content&&B1(q.content)&&(q.content.style.pointerEvents="none",q.content.firstElementChild&&(q.content.firstElementChild.style.pointerEvents="all"))},[q,Sr,it,Ft,Ut]),Sf(q,"click",it),Sf(q,"drag",Qt),Sf(q,"dragstart",St),Sf(q,"dragend",Wt),Tx(q==null?void 0:q.element,"mouseenter",Ft),Tx(q==null?void 0:q.element,"mouseleave",Ut),[q,ce]}const Sx=Mt.forwardRef((Y,q)=>{const{children:ne,style:ce,className:_e,anchorPoint:Me}=Y,[ee,i]=U1(Y),it=Mt.useMemo(()=>ee?{marker:ee}:null,[ee]);return Mt.useImperativeHandle(q,()=>ee,[ee]),i?Mt.createElement(N1.Provider,{value:it},Cp.createPortal(Mt.createElement(j1,{anchorPoint:Me,styles:ce,className:_e},ne),i)):null});function G1(Y,q,ne){if(q!=null&&typeof q!="object")throw new Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");const ce=Y.style;if(ne==null){if(q==null)return;for(const _e in q)q.hasOwnProperty(_e)&&Mx(ce,_e,q[_e]);return}for(const _e in ne)ne.hasOwnProperty(_e)&&(q==null||!q.hasOwnProperty(_e))&&(_e.indexOf("--")===0?ce.setProperty(_e,""):_e==="float"?ce.cssFloat="":ce[_e]="");if(q!=null)for(const _e in q){const Me=q[_e];q.hasOwnProperty(_e)&&ne[_e]!==Me&&Mx(ce,_e,Me)}}function Mx(Y,q,ne){const ce=q.indexOf("--")===0;ne==null||typeof ne=="boolean"||ne===""?ce?Y.setProperty(q,""):q==="float"?Y.cssFloat="":Y[q]="":ce?Y.setProperty(q,ne):typeof ne=="number"&&ne!==0&&!q1(q)?Y[q]=ne+"px":q==="float"?Y.cssFloat=ne:Y[q]=(""+ne).trim()}const Z1=new Set(["animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","scale","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth"]);function q1(Y){return Z1.has(Y)}const $1=["children","headerContent","style","className","pixelOffset","anchor","shouldFocus","onClose","onCloseClick"],H1=Y=>{const{children:q,headerContent:ne,style:ce,className:_e,pixelOffset:Me,anchor:ee,shouldFocus:i,onClose:it,onCloseClick:vt}=Y,Ft=kp(Y,$1),Ut=wx("maps"),[Qt,St]=Mt.useState(null),Wt=Mt.useRef(null),Ci=Mt.useRef(null);Mt.useEffect(()=>{if(!Ut)return;Wt.current=document.createElement("div"),Ci.current=document.createElement("div");const _r=Ft;Me&&(_r.pixelOffset=new google.maps.Size(Me[0],Me[1])),ne&&(_r.headerContent=typeof ne=="string"?ne:Ci.current);const gr=new google.maps.InfoWindow(Ft);return gr.setContent(Wt.current),St(gr),()=>{var Fi,Cr;gr.setContent(null),(Fi=Wt.current)==null||Fi.remove(),(Cr=Ci.current)==null||Cr.remove(),Wt.current=null,Ci.current=null,St(null)}},[Ut]);const Sr=Mt.useRef(null);Mt.useEffect(()=>{!Qt||!Wt.current||(G1(Wt.current,ce||null,Sr.current),Sr.current=ce||null,_e!==Wt.current.className&&(Wt.current.className=_e||""))},[Qt,_e,ce]),Bg(()=>{if(!Qt)return;const _r=Ft;Me?_r.pixelOffset=new google.maps.Size(Me[0],Me[1]):_r.pixelOffset=null,ne?_r.headerContent=typeof ne=="string"?ne:Ci.current:_r.headerContent=null,Qt.setOptions(Ft)},[Ft,Me,ne]),Sf(Qt,"close",it),Sf(Qt,"closeclick",vt);const Ri=Tf();return Bg(()=>{if(!Ri||!Qt||ee===null)return;const _r=!!ee,gr={map:Ri};if(ee&&(gr.anchor=ee,F1(ee)&&ee.content instanceof Element)){const Cr=ee.content,tn=Cr==null?void 0:Cr.getBoundingClientRect();if(tn&&Cr!=null&&Cr.isCustomMarker){var Fi;const Vi=(Fi=ee.content.firstElementChild)==null?void 0:Fi.firstElementChild,hn=Vi==null?void 0:Vi.getBoundingClientRect(),fs=hn.x-tn.x+(hn.width-tn.width)/2,rr=hn.y-tn.y,pr=Ft;pr.pixelOffset=new google.maps.Size(Me?Me[0]+fs:fs,Me?Me[1]+rr:rr),Qt.setOptions(pr)}}return i!==void 0&&(gr.shouldFocus=i),Qt.open(gr),()=>{_r&&Qt.set("anchor",null),Qt.close()}},[Qt,ee,Ri,i,Ft,Me]),Mt.createElement(Mt.Fragment,null,Wt.current&&Cp.createPortal(q,Wt.current),Ci.current!==null&&Cp.createPortal(ne,Ci.current))},d_={LEFT_TOP:5,LEFT_BOTTOM:6,RIGHT_TOP:7,RIGHT_BOTTOM:9},W1=["onClick","onDrag","onDragStart","onDragEnd","onMouseOver","onMouseOut"];function X1(Y){const[q,ne]=Mt.useState(null),ce=Tf(),{onClick:_e,onDrag:Me,onDragStart:ee,onDragEnd:i,onMouseOver:it,onMouseOut:vt}=Y,Ft=kp(Y,W1),{position:Ut,draggable:Qt}=Ft;return Mt.useEffect(()=>{if(!ce){ce===void 0&&console.error("<Marker> has to be inside a Map component.");return}const St=new google.maps.Marker(Ft);return St.setMap(ce),ne(St),()=>{St.setMap(null),ne(null)}},[ce]),Mt.useEffect(()=>{if(!q)return;const St=q,Wt=google.maps.event;return _e&&Wt.addListener(St,"click",_e),Me&&Wt.addListener(St,"drag",Me),ee&&Wt.addListener(St,"dragstart",ee),i&&Wt.addListener(St,"dragend",i),it&&Wt.addListener(St,"mouseover",it),vt&&Wt.addListener(St,"mouseout",vt),q.setDraggable(!!Qt),()=>{Wt.clearInstanceListeners(St)}},[q,Qt,_e,Me,ee,i,it,vt]),Mt.useEffect(()=>{q&&Ft&&q.setOptions(Ft)},[q,Ft]),Mt.useEffect(()=>{Qt||!Ut||!q||q.setPosition(Ut)},[Qt,Ut,q]),q}Mt.forwardRef((Y,q)=>{const ne=X1(Y);return Mt.useImperativeHandle(q,()=>ne,[ne]),Mt.createElement(Mt.Fragment,null)});const Y1={"top-left":d_.LEFT_TOP,"top-right":d_.RIGHT_TOP,"bottom-left":d_.LEFT_BOTTOM,"bottom-right":d_.RIGHT_BOTTOM},K1=({isMapLoaded:Y})=>{const q=Tf(),{setBounds:ne,setZoom:ce}=Sl(),_e=()=>{var i;if(!q)return;const Me=(i=q.getBounds())==null?void 0:i.toJSON(),ee=q.getZoom();Me&&ne([Me.west,Me.south,Me.east,Me.north]),typeof ee<"u"&&ce(ee+1)};return Mt.useEffect(()=>{!Y||!q||(_e(),q.addListener("bounds_changed",()=>{_e()}))},[Y,q]),null};function J1({children:Y}){const[q,ne]=Mt.useState(!1),{mapProvider:ce,center:_e,zoom:Me=$a.zoom+1,minZoom:ee,maxZoom:i,pitch:it=$a.pitch,bearing:vt=$a.bearing,cooperativeGestures:Ft=$a.cooperativeGestures,zoomPosition:Ut}=Sl();if(ce.name!=="google")return null;const Qt=()=>{ne(!0)};return Pr.jsxs(g1,{apiKey:ce.apiKey,children:[Pr.jsx(K1,{isMapLoaded:q}),Pr.jsx(vx,{mapId:ce.theme||lm.google,defaultCenter:{lat:_e.latitude,lng:_e.longitude},defaultZoom:Me,defaultTilt:it,defaultHeading:vt,gestureHandling:Ft?"cooperative":"greedy",streetViewControl:!1,fullscreenControl:!1,clickableIcons:!1,mapTypeControl:!1,zoomControlOptions:{position:Ut&&Y1[Ut]},minZoom:typeof ee=="number"?ee+1:void 0,maxZoom:typeof i=="number"?i+1:void 0,onTilesLoaded:Qt,children:Y})]})}const Q1=Object.freeze(Object.defineProperty({__proto__:null,default:J1},Symbol.toStringTag,{value:"Module"})),Ex=Dr.createContext(null);function Ix(){var ce;const Y=(ce=Mt.useContext(Ex))==null?void 0:ce.maps,q=Mt.useContext(Op);return Mt.useMemo(()=>({...Y,current:q==null?void 0:q.map}),[Y,q])}function ew(Y,q){const ne=Array.isArray(Y)?Y[0]:Y?Y.x:0,ce=Array.isArray(Y)?Y[1]:Y?Y.y:0,_e=Array.isArray(q)?q[0]:q?q.x:0,Me=Array.isArray(q)?q[1]:q?q.y:0;return ne===_e&&ce===Me}function Pc(Y,q){if(Y===q)return!0;if(!Y||!q)return!1;if(Array.isArray(Y)){if(!Array.isArray(q)||Y.length!==q.length)return!1;for(let ne=0;ne<Y.length;ne++)if(!Pc(Y[ne],q[ne]))return!1;return!0}else if(Array.isArray(q))return!1;if(typeof Y=="object"&&typeof q=="object"){const ne=Object.keys(Y),ce=Object.keys(q);if(ne.length!==ce.length)return!1;for(const _e of ne)if(!q.hasOwnProperty(_e)||!Pc(Y[_e],q[_e]))return!1;return!0}return!1}function tw(Y){const q=Y.clone();return q.pixelsToGLUnits=Y.pixelsToGLUnits,q}function Px(Y,q){if(!Y.getProjection)return;const ne=Y.getProjection(),ce=q.getProjection();Pc(ne,ce)||q.setProjection(ne)}function Ax(Y){return{longitude:Y.center.lng,latitude:Y.center.lat,zoom:Y.zoom,pitch:Y.pitch,bearing:Y.bearing,padding:Y.padding}}function Cx(Y,q){const ne=q.viewState||q;let ce=!1;if("zoom"in ne){const _e=Y.zoom;Y.zoom=ne.zoom,ce=ce||_e!==Y.zoom}if("bearing"in ne){const _e=Y.bearing;Y.bearing=ne.bearing,ce=ce||_e!==Y.bearing}if("pitch"in ne){const _e=Y.pitch;Y.pitch=ne.pitch,ce=ce||_e!==Y.pitch}if(ne.padding&&!Y.isPaddingEqual(ne.padding)&&(ce=!0,Y.padding=ne.padding),"longitude"in ne&&"latitude"in ne){const _e=Y.center;Y.center=new _e.constructor(ne.longitude,ne.latitude),ce=ce||_e!==Y.center}return ce}const iw=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function zx(Y){if(!Y)return null;if(typeof Y=="string"||("toJS"in Y&&(Y=Y.toJS()),!Y.layers))return Y;const q={};for(const ce of Y.layers)q[ce.id]=ce;const ne=Y.layers.map(ce=>{let _e=null;"interactive"in ce&&(_e=Object.assign({},ce),delete _e.interactive);const Me=q[ce.ref];if(Me){_e=_e||Object.assign({},ce),delete _e.ref;for(const ee of iw)ee in Me&&(_e[ee]=Me[ee])}return _e||ce});return{...Y,layers:ne}}const Dx={version:8,sources:{},layers:[]},Lx={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},Vg={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},Rx={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},rw=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],nw=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"];class Mf{constructor(q,ne,ce){this._map=null,this._internalUpdate=!1,this._inRender=!1,this._hoveredFeatures=null,this._deferredEvents={move:!1,zoom:!1,pitch:!1,rotate:!1},this._onEvent=_e=>{const Me=this.props[Rx[_e.type]];Me?Me(_e):_e.type==="error"&&console.error(_e.error)},this._onPointerEvent=_e=>{(_e.type==="mousemove"||_e.type==="mouseout")&&this._updateHover(_e);const Me=this.props[Lx[_e.type]];Me&&(this.props.interactiveLayerIds&&_e.type!=="mouseover"&&_e.type!=="mouseout"&&(_e.features=this._hoveredFeatures||this._queryRenderedFeatures(_e.point)),Me(_e),delete _e.features)},this._onCameraEvent=_e=>{if(!this._internalUpdate){const Me=this.props[Vg[_e.type]];Me&&Me(_e)}_e.type in this._deferredEvents&&(this._deferredEvents[_e.type]=!1)},this._MapClass=q,this.props=ne,this._initialize(ce)}get map(){return this._map}get transform(){return this._renderTransform}setProps(q){const ne=this.props;this.props=q;const ce=this._updateSettings(q,ne);ce&&this._createShadowTransform(this._map);const _e=this._updateSize(q),Me=this._updateViewState(q,!0);this._updateStyle(q,ne),this._updateStyleComponents(q,ne),this._updateHandlers(q,ne),(ce||_e||Me&&!this._map.isMoving())&&this.redraw()}static reuse(q,ne){const ce=Mf.savedMaps.pop();if(!ce)return null;const _e=ce.map,Me=_e.getContainer();for(ne.className=Me.className;Me.childNodes.length>0;)ne.appendChild(Me.childNodes[0]);_e._container=ne,ce.setProps({...q,styleDiffing:!1}),_e.resize();const{initialViewState:ee}=q;return ee&&(ee.bounds?_e.fitBounds(ee.bounds,{...ee.fitBoundsOptions,duration:0}):ce._updateViewState(ee,!1)),_e.isStyleLoaded()?_e.fire("load"):_e.once("styledata",()=>_e.fire("load")),_e._update(),ce}_initialize(q){const{props:ne}=this,{mapStyle:ce=Dx}=ne,_e={...ne,...ne.initialViewState,accessToken:ne.mapboxAccessToken||sw()||null,container:q,style:zx(ce)},Me=_e.initialViewState||_e.viewState||_e;if(Object.assign(_e,{center:[Me.longitude||0,Me.latitude||0],zoom:Me.zoom||0,pitch:Me.pitch||0,bearing:Me.bearing||0}),ne.gl){const Ft=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=Ft,ne.gl)}const ee=new this._MapClass(_e);Me.padding&&ee.setPadding(Me.padding),ne.cursor&&(ee.getCanvas().style.cursor=ne.cursor),this._createShadowTransform(ee);const i=ee._render;ee._render=Ft=>{this._inRender=!0,i.call(ee,Ft),this._inRender=!1};const it=ee._renderTaskQueue.run;ee._renderTaskQueue.run=Ft=>{it.call(ee._renderTaskQueue,Ft),this._onBeforeRepaint()},ee.on("render",()=>this._onAfterRepaint());const vt=ee.fire;ee.fire=this._fireEvent.bind(this,vt),ee.on("resize",()=>{this._renderTransform.resize(ee.transform.width,ee.transform.height)}),ee.on("styledata",()=>{this._updateStyleComponents(this.props,{}),Px(ee.transform,this._renderTransform)}),ee.on("sourcedata",()=>this._updateStyleComponents(this.props,{}));for(const Ft in Lx)ee.on(Ft,this._onPointerEvent);for(const Ft in Vg)ee.on(Ft,this._onCameraEvent);for(const Ft in Rx)ee.on(Ft,this._onEvent);this._map=ee}recycle(){const ne=this.map.getContainer().querySelector("[mapboxgl-children]");ne==null||ne.remove(),Mf.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){const q=this._map;!this._inRender&&q.style&&(q._frame&&(q._frame.cancel(),q._frame=null),q._render())}_createShadowTransform(q){const ne=tw(q.transform);q.painter.transform=ne,this._renderTransform=ne}_updateSize(q){const{viewState:ne}=q;if(ne){const ce=this._map;if(ne.width!==ce.transform.width||ne.height!==ce.transform.height)return ce.resize(),!0}return!1}_updateViewState(q,ne){if(this._internalUpdate)return!1;const ce=this._map,_e=this._renderTransform,{zoom:Me,pitch:ee,bearing:i}=_e,it=ce.isMoving();it&&(_e.cameraElevationReference="sea");const vt=Cx(_e,{...Ax(ce.transform),...q});if(it&&(_e.cameraElevationReference="ground"),vt&&ne){const Ft=this._deferredEvents;Ft.move=!0,Ft.zoom||(Ft.zoom=Me!==_e.zoom),Ft.rotate||(Ft.rotate=i!==_e.bearing),Ft.pitch||(Ft.pitch=ee!==_e.pitch)}return it||Cx(ce.transform,q),vt}_updateSettings(q,ne){const ce=this._map;let _e=!1;for(const Me of rw)if(Me in q&&!Pc(q[Me],ne[Me])){_e=!0;const ee=ce[`set${Me[0].toUpperCase()}${Me.slice(1)}`];ee==null||ee.call(ce,q[Me])}return _e}_updateStyle(q,ne){if(q.cursor!==ne.cursor&&(this._map.getCanvas().style.cursor=q.cursor||""),q.mapStyle!==ne.mapStyle){const{mapStyle:ce=Dx,styleDiffing:_e=!0}=q,Me={diff:_e};return"localIdeographFontFamily"in q&&(Me.localIdeographFontFamily=q.localIdeographFontFamily),this._map.setStyle(zx(ce),Me),!0}return!1}_updateStyleComponents(q,ne){const ce=this._map;let _e=!1;return ce.isStyleLoaded()&&("light"in q&&ce.setLight&&!Pc(q.light,ne.light)&&(_e=!0,ce.setLight(q.light)),"fog"in q&&ce.setFog&&!Pc(q.fog,ne.fog)&&(_e=!0,ce.setFog(q.fog)),"terrain"in q&&ce.setTerrain&&!Pc(q.terrain,ne.terrain)&&(!q.terrain||ce.getSource(q.terrain.source))&&(_e=!0,ce.setTerrain(q.terrain))),_e}_updateHandlers(q,ne){const ce=this._map;let _e=!1;for(const Me of nw){const ee=q[Me]??!0,i=ne[Me]??!0;Pc(ee,i)||(_e=!0,ee?ce[Me].enable(ee):ce[Me].disable())}return _e}_queryRenderedFeatures(q){const ne=this._map,ce=ne.transform,{interactiveLayerIds:_e=[]}=this.props;try{return ne.transform=this._renderTransform,ne.queryRenderedFeatures(q,{layers:_e.filter(ne.getLayer.bind(ne))})}catch{return[]}finally{ne.transform=ce}}_updateHover(q){var _e;const{props:ne}=this;if(ne.interactiveLayerIds&&(ne.onMouseMove||ne.onMouseEnter||ne.onMouseLeave)){const Me=q.type,ee=((_e=this._hoveredFeatures)==null?void 0:_e.length)>0,i=this._queryRenderedFeatures(q.point),it=i.length>0;!it&&ee&&(q.type="mouseleave",this._onPointerEvent(q)),this._hoveredFeatures=i,it&&!ee&&(q.type="mouseenter",this._onPointerEvent(q)),q.type=Me}else this._hoveredFeatures=null}_fireEvent(q,ne,ce){const _e=this._map,Me=_e.transform,ee=typeof ne=="string"?ne:ne.type;return ee==="move"&&this._updateViewState(this.props,!1),ee in Vg&&(typeof ne=="object"&&(ne.viewState=Ax(Me)),this._map.isMoving())?(_e.transform=this._renderTransform,q.call(_e,ne,ce),_e.transform=Me,_e):(q.call(_e,ne,ce),_e)}_onBeforeRepaint(){const q=this._map;this._internalUpdate=!0;for(const ce in this._deferredEvents)this._deferredEvents[ce]&&q.fire(ce);this._internalUpdate=!1;const ne=this._map.transform;q.transform=this._renderTransform,this._onAfterRepaint=()=>{Px(this._renderTransform,ne),q.transform=ne}}}Mf.savedMaps=[];function sw(){let Y=null;if(typeof location<"u"){const q=/access_token=([^&\/]*)/.exec(location.search);Y=q&&q[1]}try{Y=Y||process.env.MapboxAccessToken}catch{}try{Y=Y||process.env.REACT_APP_MAPBOX_ACCESS_TOKEN}catch{}return Y}const ow=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function aw(Y){if(!Y)return null;const q=Y.map,ne={getMap:()=>q,getCenter:()=>Y.transform.center,getZoom:()=>Y.transform.zoom,getBearing:()=>Y.transform.bearing,getPitch:()=>Y.transform.pitch,getPadding:()=>Y.transform.padding,getBounds:()=>Y.transform.getBounds(),project:ce=>{const _e=q.transform;q.transform=Y.transform;const Me=q.project(ce);return q.transform=_e,Me},unproject:ce=>{const _e=q.transform;q.transform=Y.transform;const Me=q.unproject(ce);return q.transform=_e,Me},queryTerrainElevation:(ce,_e)=>{const Me=q.transform;q.transform=Y.transform;const ee=q.queryTerrainElevation(ce,_e);return q.transform=Me,ee},queryRenderedFeatures:(ce,_e)=>{const Me=q.transform;q.transform=Y.transform;const ee=q.queryRenderedFeatures(ce,_e);return q.transform=Me,ee}};for(const ce of lw(q))!(ce in ne)&&!ow.includes(ce)&&(ne[ce]=q[ce].bind(q));return ne}function lw(Y){const q=new Set;let ne=Y;for(;ne;){for(const ce of Object.getOwnPropertyNames(ne))ce[0]!=="_"&&typeof Y[ce]=="function"&&ce!=="fire"&&ce!=="setEventedParent"&&q.add(ce);ne=Object.getPrototypeOf(ne)}return Array.from(q)}const cw=typeof document<"u"?Mt.useLayoutEffect:Mt.useEffect,uw=["baseApiUrl","maxParallelImageRequests","workerClass","workerCount","workerUrl"];function hw(Y,q){for(const ce of uw)ce in q&&(Y[ce]=q[ce]);const{RTLTextPlugin:ne="https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-rtl-text/v0.2.3/mapbox-gl-rtl-text.js"}=q;ne&&Y.getRTLTextPluginStatus&&Y.getRTLTextPluginStatus()==="unavailable"&&Y.setRTLTextPlugin(ne,ce=>{ce&&console.error(ce)},!0)}const Op=Dr.createContext(null);function dw(Y,q){const ne=Mt.useContext(Ex),[ce,_e]=Mt.useState(null),Me=Mt.useRef(),{current:ee}=Mt.useRef({mapLib:null,map:null});Mt.useEffect(()=>{const vt=Y.mapLib;let Ft=!0,Ut;return Promise.resolve(vt||Promise.resolve().then(()=>f2)).then(Qt=>{if(!Ft)return;if(!Qt)throw new Error("Invalid mapLib");const St="Map"in Qt?Qt:Qt.default;if(!St.Map)throw new Error("Invalid mapLib");if(hw(St,Y),!St.supported||St.supported(Y))Y.reuseMaps&&(Ut=Mf.reuse(Y,Me.current)),Ut||(Ut=new Mf(St.Map,Y,Me.current)),ee.map=aw(Ut),ee.mapLib=St,_e(Ut),ne==null||ne.onMapMount(ee.map,Y.id);else throw new Error("Map is not supported by this browser")}).catch(Qt=>{const{onError:St}=Y;St?St({type:"error",target:null,error:Qt}):console.error(Qt)}),()=>{Ft=!1,Ut&&(ne==null||ne.onMapUnmount(Y.id),Y.reuseMaps?Ut.recycle():Ut.destroy())}},[]),cw(()=>{ce&&ce.setProps(Y)}),Mt.useImperativeHandle(q,()=>ee.map,[ce]);const i=Mt.useMemo(()=>({position:"relative",width:"100%",height:"100%",...Y.style}),[Y.style]),it={height:"100%"};return Dr.createElement("div",{id:Y.id,ref:Me,style:i},ce&&Dr.createElement(Op.Provider,{value:ee},Dr.createElement("div",{"mapboxgl-children":"",style:it},Y.children)))}const pw=Dr.forwardRef(dw),fw=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function Fp(Y,q){if(!Y||!q)return;const ne=Y.style;for(const ce in q){const _e=q[ce];Number.isFinite(_e)&&!fw.test(ce)?ne[ce]=`${_e}px`:ne[ce]=_e}}const kx=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Op),_e=Mt.useRef({props:Y});_e.current.props=Y;const Me=Mt.useMemo(()=>{let Ci=!1;Dr.Children.forEach(Y.children,_r=>{_r&&(Ci=!0)});const Sr={...Y,element:Ci?document.createElement("div"):null},Ri=new ce.Marker(Sr);return Ri.setLngLat([Y.longitude,Y.latitude]),Ri.getElement().addEventListener("click",_r=>{var gr,Fi;(Fi=(gr=_e.current.props).onClick)==null||Fi.call(gr,{type:"click",target:Ri,originalEvent:_r})}),Ri.on("dragstart",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragStart)==null||Cr.call(Fi,gr)}),Ri.on("drag",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDrag)==null||Cr.call(Fi,gr)}),Ri.on("dragend",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragEnd)==null||Cr.call(Fi,gr)}),Ri},[]);Mt.useEffect(()=>(Me.addTo(ne.getMap()),()=>{Me.remove()}),[]);const{longitude:ee,latitude:i,offset:it,style:vt,draggable:Ft=!1,popup:Ut=null,rotation:Qt=0,rotationAlignment:St="auto",pitchAlignment:Wt="auto"}=Y;return Mt.useEffect(()=>{Fp(Me.getElement(),vt)},[vt]),Mt.useImperativeHandle(q,()=>Me,[]),(Me.getLngLat().lng!==ee||Me.getLngLat().lat!==i)&&Me.setLngLat([ee,i]),it&&!ew(Me.getOffset(),it)&&Me.setOffset(it),Me.isDraggable()!==Ft&&Me.setDraggable(Ft),Me.getRotation()!==Qt&&Me.setRotation(Qt),Me.getRotationAlignment()!==St&&Me.setRotationAlignment(St),Me.getPitchAlignment()!==Wt&&Me.setPitchAlignment(Wt),Me.getPopup()!==Ut&&Me.setPopup(Ut),Cp.createPortal(Y.children,Me.getElement())}));function Ox(Y){return new Set(Y?Y.trim().split(/\s+/):[])}const mw=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Op),_e=Mt.useMemo(()=>document.createElement("div"),[]),Me=Mt.useRef({props:Y});Me.current.props=Y;const ee=Mt.useMemo(()=>{const i={...Y},it=new ce.Popup(i);return it.setLngLat([Y.longitude,Y.latitude]),it.once("open",vt=>{var Ft,Ut;(Ut=(Ft=Me.current.props).onOpen)==null||Ut.call(Ft,vt)}),it},[]);if(Mt.useEffect(()=>{const i=it=>{var vt,Ft;(Ft=(vt=Me.current.props).onClose)==null||Ft.call(vt,it)};return ee.on("close",i),ee.setDOMContent(_e).addTo(ne.getMap()),()=>{ee.off("close",i),ee.isOpen()&&ee.remove()}},[]),Mt.useEffect(()=>{Fp(ee.getElement(),Y.style)},[Y.style]),Mt.useImperativeHandle(q,()=>ee,[]),ee.isOpen()&&((ee.getLngLat().lng!==Y.longitude||ee.getLngLat().lat!==Y.latitude)&&ee.setLngLat([Y.longitude,Y.latitude]),Y.offset&&!Pc(ee.options.offset,Y.offset)&&ee.setOffset(Y.offset),(ee.options.anchor!==Y.anchor||ee.options.maxWidth!==Y.maxWidth)&&(ee.options.anchor=Y.anchor,ee.setMaxWidth(Y.maxWidth)),ee.options.className!==Y.className)){const i=Ox(ee.options.className),it=Ox(Y.className);for(const vt of i)it.has(vt)||ee.removeClassName(vt);for(const vt of it)i.has(vt)||ee.addClassName(vt);ee.options.className=Y.className}return Cp.createPortal(Y.children,_e)}));function pm(Y,q,ne,ce){const _e=Mt.useContext(Op),Me=Mt.useMemo(()=>Y(_e),[]);return Mt.useEffect(()=>{const ee=q,i=null,it=typeof q=="function"?q:null,{map:vt}=_e;return vt.hasControl(Me)||(vt.addControl(Me,ee==null?void 0:ee.position),i&&i(_e)),()=>{it&&it(_e),vt.hasControl(Me)&&vt.removeControl(Me)}},[]),Me}function _w(Y){const q=pm(({mapLib:ne})=>new ne.AttributionControl(Y),{position:Y.position});return Mt.useEffect(()=>{Fp(q._container,Y.style)},[Y.style]),null}Mt.memo(_w);function gw(Y){const q=pm(({mapLib:ne})=>new ne.FullscreenControl({container:Y.containerId&&document.getElementById(Y.containerId)}),{position:Y.position});return Mt.useEffect(()=>{Fp(q._controlContainer,Y.style)},[Y.style]),null}Mt.memo(gw);function yw(Y,q){const ne=Mt.useRef({props:Y}),ce=pm(({mapLib:_e})=>{const Me=new _e.GeolocateControl(Y),ee=Me._setupUI.bind(Me);return Me._setupUI=i=>{Me._container.hasChildNodes()||ee(i)},Me.on("geolocate",i=>{var it,vt;(vt=(it=ne.current.props).onGeolocate)==null||vt.call(it,i)}),Me.on("error",i=>{var it,vt;(vt=(it=ne.current.props).onError)==null||vt.call(it,i)}),Me.on("outofmaxbounds",i=>{var it,vt;(vt=(it=ne.current.props).onOutOfMaxBounds)==null||vt.call(it,i)}),Me.on("trackuserlocationstart",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationStart)==null||vt.call(it,i)}),Me.on("trackuserlocationend",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationEnd)==null||vt.call(it,i)}),Me},{position:Y.position});return ne.current.props=Y,Mt.useImperativeHandle(q,()=>ce,[]),Mt.useEffect(()=>{Fp(ce._container,Y.style)},[Y.style]),null}Mt.memo(Mt.forwardRef(yw));function xw(Y){const q=pm(({mapLib:ne})=>new ne.NavigationControl(Y),{position:Y.position});return Mt.useEffect(()=>{Fp(q._container,Y.style)},[Y.style]),null}const vw=Mt.memo(xw);function bw(Y){const q=pm(({mapLib:Me})=>new Me.ScaleControl(Y),{position:Y.position}),ne=Mt.useRef(Y),ce=ne.current;ne.current=Y;const{style:_e}=Y;return Y.maxWidth!==void 0&&Y.maxWidth!==ce.maxWidth&&(q.options.maxWidth=Y.maxWidth),Y.unit!==void 0&&Y.unit!==ce.unit&&q.setUnit(Y.unit),Mt.useEffect(()=>{Fp(q._container,_e)},[_e]),null}Mt.memo(bw);function p_(Y,q){if(!Y)throw new Error(q)}let ww=0;function Tw(Y,q,ne){if(Y.style&&Y.style._loaded){const ce={...ne};return delete ce.id,delete ce.children,Y.addSource(q,ce),Y.getSource(q)}return null}function Sw(Y,q,ne){p_(q.id===ne.id,"source id changed"),p_(q.type===ne.type,"source type changed");let ce="",_e=0;for(const ee in q)ee!=="children"&&ee!=="id"&&!Pc(ne[ee],q[ee])&&(ce=ee,_e++);if(!_e)return;const Me=q.type;Me==="geojson"?Y.setData(q.data):Me==="image"?Y.updateImage({url:q.url,coordinates:q.coordinates}):"setCoordinates"in Y&&_e===1&&ce==="coordinates"?Y.setCoordinates(q.coordinates):"setUrl"in Y&&ce==="url"?Y.setUrl(q.url):"setTiles"in Y&&ce==="tiles"?Y.setTiles(q.tiles):console.warn(`Unable to update <Source> prop: ${ce}`)}function Mw(Y){const q=Mt.useContext(Op).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-source-${ww++}`,[]);Mt.useEffect(()=>{if(q){const ee=()=>setTimeout(()=>ce(i=>i+1),0);return q.on("styledata",ee),ee(),()=>{var i;if(q.off("styledata",ee),q.style&&q.style._loaded&&q.getSource(_e)){const it=(i=q.getStyle())==null?void 0:i.layers;if(it)for(const vt of it)vt.source===_e&&q.removeLayer(vt.id);q.removeSource(_e)}}}},[q]);let Me=q&&q.style&&q.getSource(_e);return Me?Sw(Me,Y,ne.current):Me=Tw(q,_e,Y),ne.current=Y,Me&&Dr.Children.map(Y.children,ee=>ee&&Mt.cloneElement(ee,{source:_e}))||null}function Ew(Y,q,ne,ce){if(p_(ne.id===ce.id,"layer id changed"),p_(ne.type===ce.type,"layer type changed"),ne.type==="custom"||ce.type==="custom")return;const{layout:_e={},paint:Me={},filter:ee,minzoom:i,maxzoom:it,beforeId:vt}=ne;if(vt!==ce.beforeId&&Y.moveLayer(q,vt),_e!==ce.layout){const Ft=ce.layout||{};for(const Ut in _e)Pc(_e[Ut],Ft[Ut])||Y.setLayoutProperty(q,Ut,_e[Ut]);for(const Ut in Ft)_e.hasOwnProperty(Ut)||Y.setLayoutProperty(q,Ut,void 0)}if(Me!==ce.paint){const Ft=ce.paint||{};for(const Ut in Me)Pc(Me[Ut],Ft[Ut])||Y.setPaintProperty(q,Ut,Me[Ut]);for(const Ut in Ft)Me.hasOwnProperty(Ut)||Y.setPaintProperty(q,Ut,void 0)}Pc(ee,ce.filter)||Y.setFilter(q,ee),(i!==ce.minzoom||it!==ce.maxzoom)&&Y.setLayerZoomRange(q,i,it)}function Iw(Y,q,ne){if(Y.style&&Y.style._loaded&&(!("source"in ne)||Y.getSource(ne.source))){const ce={...ne,id:q};delete ce.beforeId,Y.addLayer(ce,ne.beforeId)}}let Pw=0;function Fx(Y){const q=Mt.useContext(Op).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-layer-${Pw++}`,[]);if(Mt.useEffect(()=>{if(q){const ee=()=>ce(i=>i+1);return q.on("styledata",ee),ee(),()=>{q.off("styledata",ee),q.style&&q.style._loaded&&q.getLayer(_e)&&q.removeLayer(_e)}}},[q]),q&&q.style&&q.getLayer(_e))try{Ew(q,_e,Y,ne.current)}catch(ee){console.warn(ee)}else Iw(q,_e,Y);return ne.current=Y,null}const Aw=()=>{const{current:Y}=Ix(),{setBounds:q,setZoom:ne}=Sl(),ce=()=>{var _e;Y&&(q((_e=Y.getBounds())==null?void 0:_e.toArray().flat()),ne(Y.getZoom()))};return Mt.useEffect(()=>{Y&&(ce(),Y.on("move",()=>{ce()}))},[Y]),null};function Cw({children:Y}){const{mapProvider:q,center:ne,zoom:ce=$a.zoom,minZoom:_e,maxZoom:Me,pitch:ee=$a.pitch,bearing:i=$a.bearing,cooperativeGestures:it=$a.cooperativeGestures,zoomPosition:vt}=Sl();return q.name!=="mapbox"?null:Pr.jsxs(pw,{mapboxAccessToken:q.apiKey,initialViewState:{...ne,zoom:ce,pitch:ee,bearing:i},cooperativeGestures:it,minZoom:_e,maxZoom:Me,mapStyle:`mapbox://styles/${q.theme||lm.mapbox}`,interactiveLayerIds:["road-label","waterway-label"],children:[Pr.jsx(Aw,{}),vt&&Pr.jsx(vw,{position:vt}),Y]})}const zw=Object.freeze(Object.defineProperty({__proto__:null,default:Cw},Symbol.toStringTag,{value:"Module"}));function Dw(){return Pr.jsx("div",{children:"Invalid map provider"})}const Lw=Object.freeze(Object.defineProperty({__proto__:null,default:Dw},Symbol.toStringTag,{value:"Module"})),Rw=new Map([["bold",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,204H228V144a12,12,0,0,0,12.49-19.78L142.14,25.85a20,20,0,0,0-28.28,0L15.51,124.2A12,12,0,0,0,28,144v60H16a12,12,0,0,0,0,24H240a12,12,0,0,0,0-24ZM52,121.65l76-76,76,76V204H164V152a12,12,0,0,0-12-12H104a12,12,0,0,0-12,12v52H52ZM140,204H116V164h24Z"}))],["duotone",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M216,116.69V216H152V152H104v64H40V116.69l82.34-82.35a8,8,0,0,1,11.32,0Z",opacity:"0.2"}),Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16ZM48,120l80-80,80,80v88H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48Zm96,88H112V160h32Z"}))],["fill",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16Zm-88,0H104V160a4,4,0,0,1,4-4h40a4,4,0,0,1,4,4Z"}))],["light",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,210H222V131.17l5.76,5.76a6,6,0,0,0,8.48-8.49L137.9,30.09a14,14,0,0,0-19.8,0L19.76,128.44a6,6,0,0,0,8.48,8.49L34,131.17V210H16a6,6,0,0,0,0,12H240a6,6,0,0,0,0-12ZM46,119.17l80.58-80.59a2,2,0,0,1,2.84,0L210,119.17V210H158V152a6,6,0,0,0-6-6H104a6,6,0,0,0-6,6v58H46ZM146,210H110V158h36Z"}))],["regular",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16ZM48,120l80-80,80,80v88H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48Zm96,88H112V160h32Z"}))],["thin",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,212H220V126.34l9.17,9.17a4,4,0,1,0,5.66-5.66L136.49,31.51a12,12,0,0,0-17,0L21.17,129.85a4,4,0,1,0,5.66,5.66L36,126.34V212H16a4,4,0,0,0,0,8H240a4,4,0,0,0,0-8ZM44,118.34l81.17-81.17a4,4,0,0,1,5.66,0L212,118.34V212H156V152a4,4,0,0,0-4-4H104a4,4,0,0,0-4,4v60H44ZM148,212H108V156h40Z"}))]]),kw=new Map([["bold",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,60a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,60Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,124Zm0-112a92.1,92.1,0,0,0-92,92c0,77.36,81.64,135.4,85.12,137.83a12,12,0,0,0,13.76,0,259,259,0,0,0,42.18-39C205.15,170.57,220,136.37,220,104A92.1,92.1,0,0,0,128,12Zm31.3,174.71A249.35,249.35,0,0,1,128,216.89a249.35,249.35,0,0,1-31.3-30.18C80,167.37,60,137.31,60,104a68,68,0,0,1,136,0C196,137.31,176,167.37,159.3,186.71Z"}))],["duotone",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,24a80,80,0,0,0-80,80c0,72,80,128,80,128s80-56,80-128A80,80,0,0,0,128,24Zm0,112a32,32,0,1,1,32-32A32,32,0,0,1,128,136Z",opacity:"0.2"}),Dr.createElement("path",{d:"M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z"}))],["fill",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,16a88.1,88.1,0,0,0-88,88c0,75.3,80,132.17,83.41,134.55a8,8,0,0,0,9.18,0C136,236.17,216,179.3,216,104A88.1,88.1,0,0,0,128,16Zm0,56a32,32,0,1,1-32,32A32,32,0,0,1,128,72Z"}))],["light",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,66a38,38,0,1,0,38,38A38,38,0,0,0,128,66Zm0,64a26,26,0,1,1,26-26A26,26,0,0,1,128,130Zm0-112a86.1,86.1,0,0,0-86,86c0,30.91,14.34,63.74,41.47,94.94a252.32,252.32,0,0,0,41.09,38,6,6,0,0,0,6.88,0,252.32,252.32,0,0,0,41.09-38c27.13-31.2,41.47-64,41.47-94.94A86.1,86.1,0,0,0,128,18Zm0,206.51C113,212.93,54,163.62,54,104a74,74,0,0,1,148,0C202,163.62,143,212.93,128,224.51Z"}))],["regular",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z"}))],["thin",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,68a36,36,0,1,0,36,36A36,36,0,0,0,128,68Zm0,64a28,28,0,1,1,28-28A28,28,0,0,1,128,132Zm0-112a84.09,84.09,0,0,0-84,84c0,30.42,14.17,62.79,41,93.62a250,250,0,0,0,40.73,37.66,4,4,0,0,0,4.58,0A250,250,0,0,0,171,197.62c26.81-30.83,41-63.2,41-93.62A84.09,84.09,0,0,0,128,20Zm37.1,172.23A254.62,254.62,0,0,1,128,227a254.62,254.62,0,0,1-37.1-34.81C73.15,171.8,52,139.9,52,104a76,76,0,0,1,152,0C204,139.9,182.85,171.8,165.1,192.23Z"}))]]),Ow=Mt.createContext({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),jg=Dr.forwardRef((Y,q)=>{const{alt:ne,color:ce,size:_e,weight:Me,mirrored:ee,children:i,weights:it,...vt}=Y,{color:Ft="currentColor",size:Ut,weight:Qt="regular",mirrored:St=!1,...Wt}=Dr.useContext(Ow);return Dr.createElement("svg",{ref:q,xmlns:"http://www.w3.org/2000/svg",width:_e??Ut,height:_e??Ut,fill:ce??Ft,viewBox:"0 0 256 256",transform:ee||St?"scale(-1, 1)":void 0,...Wt,...vt},!!ne&&Dr.createElement("title",null,ne),i,it.get(Me??Qt))});jg.displayName="IconBase";const f_=Dr.forwardRef((Y,q)=>Dr.createElement(jg,{ref:q,...Y,weights:Rw}));f_.displayName="HouseLineIcon";const Bx=Dr.forwardRef((Y,q)=>Dr.createElement(jg,{ref:q,...Y,weights:kw}));Bx.displayName="MapPinIcon";const Ug=Y=>Dr.createElement("svg",{width:34,height:41,viewBox:"0 0 34 41",fill:"none",xmlns:"http://www.w3.org/2000/svg",...Y},Dr.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M17 0C26.3888 0 34 7.61116 34 17C34 24.1987 29.5256 30.3524 23.2061 32.8316L17.9683 39.991C17.8591 40.1409 17.7141 40.2632 17.5456 40.3476C17.377 40.4321 17.1899 40.4762 17 40.4762C16.8101 40.4762 16.623 40.4321 16.4544 40.3476C16.2859 40.2632 16.1409 40.1409 16.0317 39.991L10.7939 32.8316C4.47445 30.3524 0 24.1987 0 17C0 7.61116 7.61116 0 17 0Z",fill:"#008491"})),Gg=`
1
+ (function(_d,Pr){typeof exports=="object"&&typeof module<"u"?Pr(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],Pr):(_d=typeof globalThis<"u"?globalThis:_d||self,Pr(_d.LocalLogicMaps={},_d.jsxRuntime,_d.React,_d.ReactDOM))})(this,function(_d,Pr,Mt,Cp){"use strict";function $v(Y){const q=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(Y){for(const ne in Y)if(ne!=="default"){const ce=Object.getOwnPropertyDescriptor(Y,ne);Object.defineProperty(q,ne,ce.get?ce:{enumerable:!0,get:()=>Y[ne]})}}return q.default=Y,Object.freeze(q)}function Gy(Y,q){for(var ne=0;ne<q.length;ne++){const ce=q[ne];if(typeof ce!="string"&&!Array.isArray(ce)){for(const _e in ce)if(_e!=="default"&&!(_e in Y)){const Me=Object.getOwnPropertyDescriptor(ce,_e);Me&&Object.defineProperty(Y,_e,Me.get?Me:{enumerable:!0,get:()=>ce[_e]})}}}return Object.freeze(Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"}))}const Dr=$v(Mt),Zy=Mt.createContext({}),Sl=()=>Mt.useContext(Zy),$a={zoom:14,pitch:0,bearing:0,cooperativeGestures:!1},lm={maptiler:"600d69cb-288d-445e-9839-3dfe4d76b31a",mapbox:"locallogic/cmb9nz9kb011501ru8drq8fqf",google:"a7ff20eb973126bb"},bf=13,Hv=22,Wv=30,Xv="w-full h-full relative overflow-hidden",Yv=Mt.lazy(()=>Promise.resolve().then(()=>l1)),Kv=Mt.lazy(()=>Promise.resolve().then(()=>Q1)),Jv=Mt.lazy(()=>Promise.resolve().then(()=>zw)),Qv=Mt.lazy(()=>Promise.resolve().then(()=>Lw)),eb=({children:Y})=>{const{mapProvider:q,center:ne,zoom:ce=$a.zoom,pitch:_e=$a.pitch,bearing:Me=$a.bearing,cooperativeGestures:ee=$a.cooperativeGestures,zoomPosition:i}=Sl(),[it]=Mt.useState(ce),vt=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return Yv;case"google":return Kv;case"mapbox":return Jv;default:return Qv}},[q]);return Pr.jsx("div",{className:Xv,"data-testid":"base-map","data-map-provider-name":q==null?void 0:q.name,"data-map-provider-theme":(q==null?void 0:q.theme)||lm[q==null?void 0:q.name]||lm.maptiler,"data-initial-zoom":it,"data-pitch":_e,"data-bearing":Me,"data-cooperative-gestures":ee,"data-zoom-position":i,"data-center-latitude":ne.latitude,"data-center-longitude":ne.longitude,children:Pr.jsx(vt,{children:Y})})},tb=Mt.lazy(()=>Promise.resolve().then(()=>Bw)),ib=Mt.lazy(()=>Promise.resolve().then(()=>Vw)),rb=Mt.lazy(()=>Promise.resolve().then(()=>Uw));function nb(Y){const{mapProvider:q}=Sl(),ne=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return tb;case"google":return ib;case"mapbox":return rb;default:return null}},[q]);return ne?Pr.jsx(ne,{...Y}):null}function qy(Y,q,ne={}){const ce={type:"Feature"};return(ne.id===0||ne.id)&&(ce.id=ne.id),ne.bbox&&(ce.bbox=ne.bbox),ce.properties=q||{},ce.geometry=Y,ce}function sb(Y,q,ne={}){if(!Y)throw new Error("coordinates is required");if(!Array.isArray(Y))throw new Error("coordinates must be an Array");if(Y.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!$y(Y[0])||!$y(Y[1]))throw new Error("coordinates must contain numbers");return qy({type:"Point",coordinates:Y},q,ne)}function ob(Y,q,ne={}){return qy({type:"MultiPoint",coordinates:Y},q,ne)}function $y(Y){return!isNaN(Y)&&Y!==null&&!Array.isArray(Y)}function Hy(Y,q,ne){if(Y!==null)for(var ce,_e,Me,ee,i,it,vt,Ft=0,Ut=0,Qt,St=Y.type,Wt=St==="FeatureCollection",Ci=St==="Feature",Sr=Wt?Y.features.length:1,Ri=0;Ri<Sr;Ri++){vt=Wt?Y.features[Ri].geometry:Ci?Y.geometry:Y,Qt=vt?vt.type==="GeometryCollection":!1,i=Qt?vt.geometries.length:1;for(var _r=0;_r<i;_r++){var gr=0,Fi=0;if(ee=Qt?vt.geometries[_r]:vt,ee!==null){it=ee.coordinates;var Cr=ee.type;switch(Ft=0,Cr){case null:break;case"Point":if(q(it,Ut,Ri,gr,Fi)===!1)return!1;Ut++,gr++;break;case"LineString":case"MultiPoint":for(ce=0;ce<it.length;ce++){if(q(it[ce],Ut,Ri,gr,Fi)===!1)return!1;Ut++,Cr==="MultiPoint"&&gr++}Cr==="LineString"&&gr++;break;case"Polygon":case"MultiLineString":for(ce=0;ce<it.length;ce++){for(_e=0;_e<it[ce].length-Ft;_e++){if(q(it[ce][_e],Ut,Ri,gr,Fi)===!1)return!1;Ut++}Cr==="MultiLineString"&&gr++,Cr==="Polygon"&&Fi++}Cr==="Polygon"&&gr++;break;case"MultiPolygon":for(ce=0;ce<it.length;ce++){for(Fi=0,_e=0;_e<it[ce].length;_e++){for(Me=0;Me<it[ce][_e].length-Ft;Me++){if(q(it[ce][_e][Me],Ut,Ri,gr,Fi)===!1)return!1;Ut++}Fi++}gr++}break;case"GeometryCollection":for(ce=0;ce<ee.geometries.length;ce++)if(Hy(ee.geometries[ce],q)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function ab(Y,q={}){if(Y.bbox!=null&&q.recompute!==!0)return Y.bbox;const ne=[1/0,1/0,-1/0,-1/0];return Hy(Y,ce=>{ne[0]>ce[0]&&(ne[0]=ce[0]),ne[1]>ce[1]&&(ne[1]=ce[1]),ne[2]<ce[0]&&(ne[2]=ce[0]),ne[3]<ce[1]&&(ne[3]=ce[1])}),ne}function zg(Y){return Y&&Y.__esModule&&Object.prototype.hasOwnProperty.call(Y,"default")?Y.default:Y}var Dg,Wy;function lb(){return Wy||(Wy=1,Dg=function Y(q,ne){if(q===ne)return!0;if(q&&ne&&typeof q=="object"&&typeof ne=="object"){if(q.constructor!==ne.constructor)return!1;var ce,_e,Me;if(Array.isArray(q)){if(ce=q.length,ce!=ne.length)return!1;for(_e=ce;_e--!==0;)if(!Y(q[_e],ne[_e]))return!1;return!0}if(q.constructor===RegExp)return q.source===ne.source&&q.flags===ne.flags;if(q.valueOf!==Object.prototype.valueOf)return q.valueOf()===ne.valueOf();if(q.toString!==Object.prototype.toString)return q.toString()===ne.toString();if(Me=Object.keys(q),ce=Me.length,ce!==Object.keys(ne).length)return!1;for(_e=ce;_e--!==0;)if(!Object.prototype.hasOwnProperty.call(ne,Me[_e]))return!1;for(_e=ce;_e--!==0;){var ee=Me[_e];if(!Y(q[ee],ne[ee]))return!1}return!0}return q!==q&&ne!==ne}),Dg}var cb=lb();const ub=zg(cb),Xy=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Lg=1,cm=8;class Rg{static from(q){if(!(q instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[ne,ce]=new Uint8Array(q,0,2);if(ne!==219)throw new Error("Data does not appear to be in a KDBush format.");const _e=ce>>4;if(_e!==Lg)throw new Error(`Got v${_e} data when expected v${Lg}.`);const Me=Xy[ce&15];if(!Me)throw new Error("Unrecognized array type.");const[ee]=new Uint16Array(q,2,1),[i]=new Uint32Array(q,4,1);return new Rg(i,ee,Me,q)}constructor(q,ne=64,ce=Float64Array,_e){if(isNaN(q)||q<0)throw new Error(`Unpexpected numItems value: ${q}.`);this.numItems=+q,this.nodeSize=Math.min(Math.max(+ne,2),65535),this.ArrayType=ce,this.IndexArrayType=q<65536?Uint16Array:Uint32Array;const Me=Xy.indexOf(this.ArrayType),ee=q*2*this.ArrayType.BYTES_PER_ELEMENT,i=q*this.IndexArrayType.BYTES_PER_ELEMENT,it=(8-i%8)%8;if(Me<0)throw new Error(`Unexpected typed array class: ${ce}.`);_e&&_e instanceof ArrayBuffer?(this.data=_e,this.ids=new this.IndexArrayType(this.data,cm,q),this.coords=new this.ArrayType(this.data,cm+i+it,q*2),this._pos=q*2,this._finished=!0):(this.data=new ArrayBuffer(cm+ee+i+it),this.ids=new this.IndexArrayType(this.data,cm,q),this.coords=new this.ArrayType(this.data,cm+i+it,q*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(Lg<<4)+Me]),new Uint16Array(this.data,2,1)[0]=ne,new Uint32Array(this.data,4,1)[0]=q)}add(q,ne){const ce=this._pos>>1;return this.ids[ce]=ce,this.coords[this._pos++]=q,this.coords[this._pos++]=ne,ce}finish(){const q=this._pos>>1;if(q!==this.numItems)throw new Error(`Added ${q} items when expected ${this.numItems}.`);return kg(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(q,ne,ce,_e){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:Me,coords:ee,nodeSize:i}=this,it=[0,Me.length-1,0],vt=[];for(;it.length;){const Ft=it.pop()||0,Ut=it.pop()||0,Qt=it.pop()||0;if(Ut-Qt<=i){for(let Sr=Qt;Sr<=Ut;Sr++){const Ri=ee[2*Sr],_r=ee[2*Sr+1];Ri>=q&&Ri<=ce&&_r>=ne&&_r<=_e&&vt.push(Me[Sr])}continue}const St=Qt+Ut>>1,Wt=ee[2*St],Ci=ee[2*St+1];Wt>=q&&Wt<=ce&&Ci>=ne&&Ci<=_e&&vt.push(Me[St]),(Ft===0?q<=Wt:ne<=Ci)&&(it.push(Qt),it.push(St-1),it.push(1-Ft)),(Ft===0?ce>=Wt:_e>=Ci)&&(it.push(St+1),it.push(Ut),it.push(1-Ft))}return vt}within(q,ne,ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:_e,coords:Me,nodeSize:ee}=this,i=[0,_e.length-1,0],it=[],vt=ce*ce;for(;i.length;){const Ft=i.pop()||0,Ut=i.pop()||0,Qt=i.pop()||0;if(Ut-Qt<=ee){for(let Sr=Qt;Sr<=Ut;Sr++)Ky(Me[2*Sr],Me[2*Sr+1],q,ne)<=vt&&it.push(_e[Sr]);continue}const St=Qt+Ut>>1,Wt=Me[2*St],Ci=Me[2*St+1];Ky(Wt,Ci,q,ne)<=vt&&it.push(_e[St]),(Ft===0?q-ce<=Wt:ne-ce<=Ci)&&(i.push(Qt),i.push(St-1),i.push(1-Ft)),(Ft===0?q+ce>=Wt:ne+ce>=Ci)&&(i.push(St+1),i.push(Ut),i.push(1-Ft))}return it}}function kg(Y,q,ne,ce,_e,Me){if(_e-ce<=ne)return;const ee=ce+_e>>1;Yy(Y,q,ee,ce,_e,Me),kg(Y,q,ne,ce,ee-1,1-Me),kg(Y,q,ne,ee+1,_e,1-Me)}function Yy(Y,q,ne,ce,_e,Me){for(;_e>ce;){if(_e-ce>600){const vt=_e-ce+1,Ft=ne-ce+1,Ut=Math.log(vt),Qt=.5*Math.exp(2*Ut/3),St=.5*Math.sqrt(Ut*Qt*(vt-Qt)/vt)*(Ft-vt/2<0?-1:1),Wt=Math.max(ce,Math.floor(ne-Ft*Qt/vt+St)),Ci=Math.min(_e,Math.floor(ne+(vt-Ft)*Qt/vt+St));Yy(Y,q,ne,Wt,Ci,Me)}const ee=q[2*ne+Me];let i=ce,it=_e;for(um(Y,q,ce,ne),q[2*_e+Me]>ee&&um(Y,q,ce,_e);i<it;){for(um(Y,q,i,it),i++,it--;q[2*i+Me]<ee;)i++;for(;q[2*it+Me]>ee;)it--}q[2*ce+Me]===ee?um(Y,q,ce,it):(it++,um(Y,q,it,_e)),it<=ne&&(ce=it+1),ne<=it&&(_e=it-1)}}function um(Y,q,ne,ce){Og(Y,ne,ce),Og(q,2*ne,2*ce),Og(q,2*ne+1,2*ce+1)}function Og(Y,q,ne){const ce=Y[q];Y[q]=Y[ne],Y[ne]=ce}function Ky(Y,q,ne,ce){const _e=Y-ne,Me=q-ce;return _e*_e+Me*Me}const hb={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:Y=>Y},Jy=Math.fround||(Y=>q=>(Y[0]=+q,Y[0]))(new Float32Array(1)),zp=2,Qd=3,Fg=4,ep=5,Qy=6;class db{constructor(q){this.options=Object.assign(Object.create(hb),q),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(q){const{log:ne,minZoom:ce,maxZoom:_e}=this.options;ne&&console.time("total time");const Me=`prepare ${q.length} points`;ne&&console.time(Me),this.points=q;const ee=[];for(let it=0;it<q.length;it++){const vt=q[it];if(!vt.geometry)continue;const[Ft,Ut]=vt.geometry.coordinates,Qt=Jy(a_(Ft)),St=Jy(l_(Ut));ee.push(Qt,St,1/0,it,-1,1),this.options.reduce&&ee.push(0)}let i=this.trees[_e+1]=this._createTree(ee);ne&&console.timeEnd(Me);for(let it=_e;it>=ce;it--){const vt=+Date.now();i=this.trees[it]=this._createTree(this._cluster(i,it)),ne&&console.log("z%d: %d clusters in %dms",it,i.numItems,+Date.now()-vt)}return ne&&console.timeEnd("total time"),this}getClusters(q,ne){let ce=((q[0]+180)%360+360)%360-180;const _e=Math.max(-90,Math.min(90,q[1]));let Me=q[2]===180?180:((q[2]+180)%360+360)%360-180;const ee=Math.max(-90,Math.min(90,q[3]));if(q[2]-q[0]>=360)ce=-180,Me=180;else if(ce>Me){const Ut=this.getClusters([ce,_e,180,ee],ne),Qt=this.getClusters([-180,_e,Me,ee],ne);return Ut.concat(Qt)}const i=this.trees[this._limitZoom(ne)],it=i.range(a_(ce),l_(ee),a_(Me),l_(_e)),vt=i.data,Ft=[];for(const Ut of it){const Qt=this.stride*Ut;Ft.push(vt[Qt+ep]>1?ex(vt,Qt,this.clusterProps):this.points[vt[Qt+Qd]])}return Ft}getChildren(q){const ne=this._getOriginId(q),ce=this._getOriginZoom(q),_e="No cluster with the specified id.",Me=this.trees[ce];if(!Me)throw new Error(_e);const ee=Me.data;if(ne*this.stride>=ee.length)throw new Error(_e);const i=this.options.radius/(this.options.extent*Math.pow(2,ce-1)),it=ee[ne*this.stride],vt=ee[ne*this.stride+1],Ft=Me.within(it,vt,i),Ut=[];for(const Qt of Ft){const St=Qt*this.stride;ee[St+Fg]===q&&Ut.push(ee[St+ep]>1?ex(ee,St,this.clusterProps):this.points[ee[St+Qd]])}if(Ut.length===0)throw new Error(_e);return Ut}getLeaves(q,ne,ce){ne=ne||10,ce=ce||0;const _e=[];return this._appendLeaves(_e,q,ne,ce,0),_e}getTile(q,ne,ce){const _e=this.trees[this._limitZoom(q)],Me=Math.pow(2,q),{extent:ee,radius:i}=this.options,it=i/ee,vt=(ce-it)/Me,Ft=(ce+1+it)/Me,Ut={features:[]};return this._addTileFeatures(_e.range((ne-it)/Me,vt,(ne+1+it)/Me,Ft),_e.data,ne,ce,Me,Ut),ne===0&&this._addTileFeatures(_e.range(1-it/Me,vt,1,Ft),_e.data,Me,ce,Me,Ut),ne===Me-1&&this._addTileFeatures(_e.range(0,vt,it/Me,Ft),_e.data,-1,ce,Me,Ut),Ut.features.length?Ut:null}getClusterExpansionZoom(q){let ne=this._getOriginZoom(q)-1;for(;ne<=this.options.maxZoom;){const ce=this.getChildren(q);if(ne++,ce.length!==1)break;q=ce[0].properties.cluster_id}return ne}_appendLeaves(q,ne,ce,_e,Me){const ee=this.getChildren(ne);for(const i of ee){const it=i.properties;if(it&&it.cluster?Me+it.point_count<=_e?Me+=it.point_count:Me=this._appendLeaves(q,it.cluster_id,ce,_e,Me):Me<_e?Me++:q.push(i),q.length===ce)break}return Me}_createTree(q){const ne=new Rg(q.length/this.stride|0,this.options.nodeSize,Float32Array);for(let ce=0;ce<q.length;ce+=this.stride)ne.add(q[ce],q[ce+1]);return ne.finish(),ne.data=q,ne}_addTileFeatures(q,ne,ce,_e,Me,ee){for(const i of q){const it=i*this.stride,vt=ne[it+ep]>1;let Ft,Ut,Qt;if(vt)Ft=tx(ne,it,this.clusterProps),Ut=ne[it],Qt=ne[it+1];else{const Ci=this.points[ne[it+Qd]];Ft=Ci.properties;const[Sr,Ri]=Ci.geometry.coordinates;Ut=a_(Sr),Qt=l_(Ri)}const St={type:1,geometry:[[Math.round(this.options.extent*(Ut*Me-ce)),Math.round(this.options.extent*(Qt*Me-_e))]],tags:Ft};let Wt;vt||this.options.generateId?Wt=ne[it+Qd]:Wt=this.points[ne[it+Qd]].id,Wt!==void 0&&(St.id=Wt),ee.features.push(St)}}_limitZoom(q){return Math.max(this.options.minZoom,Math.min(Math.floor(+q),this.options.maxZoom+1))}_cluster(q,ne){const{radius:ce,extent:_e,reduce:Me,minPoints:ee}=this.options,i=ce/(_e*Math.pow(2,ne)),it=q.data,vt=[],Ft=this.stride;for(let Ut=0;Ut<it.length;Ut+=Ft){if(it[Ut+zp]<=ne)continue;it[Ut+zp]=ne;const Qt=it[Ut],St=it[Ut+1],Wt=q.within(it[Ut],it[Ut+1],i),Ci=it[Ut+ep];let Sr=Ci;for(const Ri of Wt){const _r=Ri*Ft;it[_r+zp]>ne&&(Sr+=it[_r+ep])}if(Sr>Ci&&Sr>=ee){let Ri=Qt*Ci,_r=St*Ci,gr,Fi=-1;const Cr=((Ut/Ft|0)<<5)+(ne+1)+this.points.length;for(const tn of Wt){const Vi=tn*Ft;if(it[Vi+zp]<=ne)continue;it[Vi+zp]=ne;const hn=it[Vi+ep];Ri+=it[Vi]*hn,_r+=it[Vi+1]*hn,it[Vi+Fg]=Cr,Me&&(gr||(gr=this._map(it,Ut,!0),Fi=this.clusterProps.length,this.clusterProps.push(gr)),Me(gr,this._map(it,Vi)))}it[Ut+Fg]=Cr,vt.push(Ri/Sr,_r/Sr,1/0,Cr,-1,Sr),Me&&vt.push(Fi)}else{for(let Ri=0;Ri<Ft;Ri++)vt.push(it[Ut+Ri]);if(Sr>1)for(const Ri of Wt){const _r=Ri*Ft;if(!(it[_r+zp]<=ne)){it[_r+zp]=ne;for(let gr=0;gr<Ft;gr++)vt.push(it[_r+gr])}}}}return vt}_getOriginId(q){return q-this.points.length>>5}_getOriginZoom(q){return(q-this.points.length)%32}_map(q,ne,ce){if(q[ne+ep]>1){const ee=this.clusterProps[q[ne+Qy]];return ce?Object.assign({},ee):ee}const _e=this.points[q[ne+Qd]].properties,Me=this.options.map(_e);return ce&&Me===_e?Object.assign({},Me):Me}}function ex(Y,q,ne){return{type:"Feature",id:Y[q+Qd],properties:tx(Y,q,ne),geometry:{type:"Point",coordinates:[pb(Y[q]),fb(Y[q+1])]}}}function tx(Y,q,ne){const ce=Y[q+ep],_e=ce>=1e4?`${Math.round(ce/1e3)}k`:ce>=1e3?`${Math.round(ce/100)/10}k`:ce,Me=Y[q+Qy],ee=Me===-1?{}:Object.assign({},ne[Me]);return Object.assign(ee,{cluster:!0,cluster_id:Y[q+Qd],point_count:ce,point_count_abbreviated:_e})}function a_(Y){return Y/360+.5}function l_(Y){const q=Math.sin(Y*Math.PI/180),ne=.5-.25*Math.log((1+q)/(1-q))/Math.PI;return ne<0?0:ne>1?1:ne}function pb(Y){return(Y-.5)*360}function fb(Y){const q=(180-Y*360)*Math.PI/180;return 360*Math.atan(Math.exp(q))/Math.PI-90}var ix=Object.prototype.hasOwnProperty;function rx(Y,q,ne){for(ne of Y.keys())if(Dp(ne,q))return ne}function Dp(Y,q){var ne,ce,_e;if(Y===q)return!0;if(Y&&q&&(ne=Y.constructor)===q.constructor){if(ne===Date)return Y.getTime()===q.getTime();if(ne===RegExp)return Y.toString()===q.toString();if(ne===Array){if((ce=Y.length)===q.length)for(;ce--&&Dp(Y[ce],q[ce]););return ce===-1}if(ne===Set){if(Y.size!==q.size)return!1;for(ce of Y)if(_e=ce,_e&&typeof _e=="object"&&(_e=rx(q,_e),!_e)||!q.has(_e))return!1;return!0}if(ne===Map){if(Y.size!==q.size)return!1;for(ce of Y)if(_e=ce[0],_e&&typeof _e=="object"&&(_e=rx(q,_e),!_e)||!Dp(ce[1],q.get(_e)))return!1;return!0}if(ne===ArrayBuffer)Y=new Uint8Array(Y),q=new Uint8Array(q);else if(ne===DataView){if((ce=Y.byteLength)===q.byteLength)for(;ce--&&Y.getInt8(ce)===q.getInt8(ce););return ce===-1}if(ArrayBuffer.isView(Y)){if((ce=Y.byteLength)===q.byteLength)for(;ce--&&Y[ce]===q[ce];);return ce===-1}if(!ne||typeof Y=="object"){ce=0;for(ne in Y)if(ix.call(Y,ne)&&++ce&&!ix.call(q,ne)||!(ne in q)||!Dp(Y[ne],q[ne]))return!1;return Object.keys(q).length===ce}}return Y!==Y&&q!==q}function mb(Y){var q=Dr.useRef(Y),ne=Dr.useRef(0);return Dp(Y,q.current)||(q.current=Y,ne.current+=1),Dr.useMemo(function(){return q.current},[ne.current])}function _b(Y,q){return Dr.useEffect(Y,mb(q))}var gb=function(q){var ne=q.points,ce=q.bounds,_e=q.zoom,Me=q.options,ee=q.disableRefresh,i=Mt.useRef(),it=Mt.useRef(),vt=Mt.useState([]),Ft=vt[0],Ut=vt[1],Qt=Math.round(_e);return _b(function(){ee!==!0&&((!i.current||!Dp(it.current,ne)||!Dp(i.current.options,Me))&&(i.current=new db(Me),i.current.load(ne)),ce&&Ut(i.current.getClusters(ce,Qt)),it.current=ne)},[ne,ce,Qt,Me,ee]),{clusters:Ft,supercluster:i.current}};const yb=Mt.lazy(()=>Promise.resolve().then(()=>qw)),xb=Mt.lazy(()=>Promise.resolve().then(()=>Hw)),vb=Mt.lazy(()=>Promise.resolve().then(()=>Xw));function bb({markers:Y,markerBoundsPadding:q=.001,onClick:ne,...ce}){const{mapProvider:_e,center:Me,bounds:ee,zoom:i}=Sl(),[it,vt]=Mt.useState(ee);Mt.useEffect(()=>{const Ci=Y.length>0?Y.map(Ri=>[Ri.latitude,Ri.longitude]):[[Me.latitude,Me.longitude]],Sr=ab(ob(Ci));vt(Sr)},[Y,Me]);const Ft=Mt.useMemo(()=>typeof q=="number"?{top:q,bottom:q,left:q,right:q}:q,[q]),{clusters:Ut,supercluster:Qt}=gb({points:Y.map(Ci=>sb([Ci.longitude,Ci.latitude],Ci)),bounds:ee,zoom:i,options:{radius:Wv,minZoom:bf,maxZoom:Hv}}),St=Ci=>{var Sr,Ri,_r;if(!("properties"in Ci))throw new Error("Cluster does not have properties");if((Sr=Ci.properties)!=null&&Sr.cluster&&typeof((Ri=Ci.properties)==null?void 0:Ri.cluster_id)=="number"){ne==null||ne({id:`${Ci.properties.cluster_id}`,latitude:Ci.geometry.coordinates[1],longitude:Ci.geometry.coordinates[0],markers:((_r=Qt==null?void 0:Qt.getLeaves(Ci.properties.cluster_id))==null?void 0:_r.map(gr=>gr.properties))??[]});return}ne==null||ne({id:Ci.properties.id,latitude:Ci.properties.latitude,longitude:Ci.properties.longitude,markers:[Ci.properties]})},Wt=Mt.useMemo(()=>{switch(_e==null?void 0:_e.name){case"maptiler":return yb;case"google":return xb;case"mapbox":return vb;default:return null}},[_e]);return Wt?Pr.jsx(Wt,{clusters:Ut,markerBounds:it,markerBoundsPadding:Ft,onClick:St,...ce}):null}const wb=Mt.lazy(()=>Promise.resolve().then(()=>Kw)),Tb=Mt.lazy(()=>Promise.resolve().then(()=>Qw)),Sb=Mt.lazy(()=>Promise.resolve().then(()=>t2));function Mb({children:Y,...q}){const{mapProvider:ne}=Sl(),ce=Mt.useMemo(()=>{switch(ne==null?void 0:ne.name){case"maptiler":return wb;case"google":return Tb;case"mapbox":return Sb;default:return null}},[ne]);return ce?Pr.jsx(ce,{...q,children:Y}):null}const Eb=Mt.lazy(()=>Promise.resolve().then(()=>n2)),Ib=Mt.lazy(()=>Promise.resolve().then(()=>o2)),Pb=Mt.lazy(()=>Promise.resolve().then(()=>l2));function Ab(Y){const{mapProvider:q}=Sl(),ne=Mt.useMemo(()=>{switch(q==null?void 0:q.name){case"maptiler":return Eb;case"google":return Ib;case"mapbox":return Pb;default:return null}},[q]);return ne?Pr.jsx(ne,{...Y}):null}function Cb(Y){const[q,ne]=Mt.useState(Y.zoom||$a.zoom),[ce,_e]=Mt.useState();return Pr.jsx(Zy.Provider,{value:{...Y,bounds:ce,setBounds:_e,zoom:q,setZoom:ne},children:Y.children})}const zb=Object.freeze(Object.defineProperty({__proto__:null,BaseMap:eb,CenterPin:nb,Layers:Ab,Markers:bb,Popup:Mb,Root:Cb},Symbol.toStringTag,{value:"Module"})),nx=Dr.createContext(null);function sx(){var ce;const Y=(ce=Mt.useContext(nx))==null?void 0:ce.maps,q=Mt.useContext(Lp);return Mt.useMemo(()=>({...Y,current:q==null?void 0:q.map}),[Y,q])}function Db(Y,q){const ne=Array.isArray(Y)?Y[0]:Y?Y.x:0,ce=Array.isArray(Y)?Y[1]:Y?Y.y:0,_e=Array.isArray(q)?q[0]:q?q.x:0,Me=Array.isArray(q)?q[1]:q?q.y:0;return ne===_e&&ce===Me}function ec(Y,q){if(Y===q)return!0;if(!Y||!q)return!1;if(Array.isArray(Y)){if(!Array.isArray(q)||Y.length!==q.length)return!1;for(let ne=0;ne<Y.length;ne++)if(!ec(Y[ne],q[ne]))return!1;return!0}else if(Array.isArray(q))return!1;if(typeof Y=="object"&&typeof q=="object"){const ne=Object.keys(Y),ce=Object.keys(q);if(ne.length!==ce.length)return!1;for(const _e of ne)if(!q.hasOwnProperty(_e)||!ec(Y[_e],q[_e]))return!1;return!0}return!1}function ox(Y){return{longitude:Y.center.lng,latitude:Y.center.lat,zoom:Y.zoom,pitch:Y.pitch,bearing:Y.bearing,padding:Y.padding}}function ax(Y,q){const ne=q.viewState||q,ce={};if("longitude"in ne&&"latitude"in ne&&(ne.longitude!==Y.center.lng||ne.latitude!==Y.center.lat)){const _e=Y.center.constructor;ce.center=new _e(ne.longitude,ne.latitude)}return"zoom"in ne&&ne.zoom!==Y.zoom&&(ce.zoom=ne.zoom),"bearing"in ne&&ne.bearing!==Y.bearing&&(ce.bearing=ne.bearing),"pitch"in ne&&ne.pitch!==Y.pitch&&(ce.pitch=ne.pitch),ne.padding&&Y.padding&&!ec(ne.padding,Y.padding)&&(ce.padding=ne.padding),ce}const Lb=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function lx(Y){if(!Y)return null;if(typeof Y=="string"||("toJS"in Y&&(Y=Y.toJS()),!Y.layers))return Y;const q={};for(const ce of Y.layers)q[ce.id]=ce;const ne=Y.layers.map(ce=>{let _e=null;"interactive"in ce&&(_e=Object.assign({},ce),delete _e.interactive);const Me=q[ce.ref];if(Me){_e=_e||Object.assign({},ce),delete _e.ref;for(const ee of Lb)ee in Me&&(_e[ee]=Me[ee])}return _e||ce});return{...Y,layers:ne}}const cx={version:8,sources:{},layers:[]},ux={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},hx={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},dx={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},Rb=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],kb=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"];class wf{constructor(q,ne,ce){this._map=null,this._internalUpdate=!1,this._hoveredFeatures=null,this._propsedCameraUpdate=null,this._styleComponents={},this._onEvent=_e=>{const Me=this.props[dx[_e.type]];Me?Me(_e):_e.type==="error"&&console.error(_e.error)},this._onCameraEvent=_e=>{if(this._internalUpdate)return;_e.viewState=this._propsedCameraUpdate||ox(this._map.transform);const Me=this.props[hx[_e.type]];Me&&Me(_e)},this._onCameraUpdate=_e=>this._internalUpdate?_e:(this._propsedCameraUpdate=ox(_e),ax(_e,this.props)),this._onPointerEvent=_e=>{(_e.type==="mousemove"||_e.type==="mouseout")&&this._updateHover(_e);const Me=this.props[ux[_e.type]];Me&&(this.props.interactiveLayerIds&&_e.type!=="mouseover"&&_e.type!=="mouseout"&&(_e.features=this._hoveredFeatures||this._queryRenderedFeatures(_e.point)),Me(_e),delete _e.features)},this._MapClass=q,this.props=ne,this._initialize(ce)}get map(){return this._map}setProps(q){const ne=this.props;this.props=q;const ce=this._updateSettings(q,ne),_e=this._updateSize(q),Me=this._updateViewState(q);this._updateStyle(q,ne),this._updateStyleComponents(q),this._updateHandlers(q,ne),(ce||_e||Me&&!this._map.isMoving())&&this.redraw()}static reuse(q,ne){const ce=wf.savedMaps.pop();if(!ce)return null;const _e=ce.map,Me=_e.getContainer();for(ne.className=Me.className;Me.childNodes.length>0;)ne.appendChild(Me.childNodes[0]);_e._container=ne;const ee=_e._resizeObserver;ee&&(ee.disconnect(),ee.observe(ne)),ce.setProps({...q,styleDiffing:!1}),_e.resize();const{initialViewState:i}=q;return i&&(i.bounds?_e.fitBounds(i.bounds,{...i.fitBoundsOptions,duration:0}):ce._updateViewState(i)),_e.isStyleLoaded()?_e.fire("load"):_e.once("style.load",()=>_e.fire("load")),_e._update(),ce}_initialize(q){const{props:ne}=this,{mapStyle:ce=cx}=ne,_e={...ne,...ne.initialViewState,container:q,style:lx(ce)},Me=_e.initialViewState||_e.viewState||_e;if(Object.assign(_e,{center:[Me.longitude||0,Me.latitude||0],zoom:Me.zoom||0,pitch:Me.pitch||0,bearing:Me.bearing||0}),ne.gl){const i=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=i,ne.gl)}const ee=new this._MapClass(_e);Me.padding&&ee.setPadding(Me.padding),ne.cursor&&(ee.getCanvas().style.cursor=ne.cursor),ee.transformCameraUpdate=this._onCameraUpdate,ee.on("style.load",()=>{var i;this._styleComponents={light:ee.getLight(),sky:ee.getSky(),projection:(i=ee.getProjection)==null?void 0:i.call(ee),terrain:ee.getTerrain()},this._updateStyleComponents(this.props)}),ee.on("sourcedata",()=>{this._updateStyleComponents(this.props)});for(const i in ux)ee.on(i,this._onPointerEvent);for(const i in hx)ee.on(i,this._onCameraEvent);for(const i in dx)ee.on(i,this._onEvent);this._map=ee}recycle(){const ne=this.map.getContainer().querySelector("[mapboxgl-children]");ne==null||ne.remove(),wf.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){const q=this._map;q.style&&(q._frame&&(q._frame.cancel(),q._frame=null),q._render())}_updateSize(q){const{viewState:ne}=q;if(ne){const ce=this._map;if(ne.width!==ce.transform.width||ne.height!==ce.transform.height)return ce.resize(),!0}return!1}_updateViewState(q){const ne=this._map,ce=ne.transform;if(!ne.isMoving()){const Me=ax(ce,q);if(Object.keys(Me).length>0)return this._internalUpdate=!0,ne.jumpTo(Me),this._internalUpdate=!1,!0}return!1}_updateSettings(q,ne){const ce=this._map;let _e=!1;for(const Me of Rb)if(Me in q&&!ec(q[Me],ne[Me])){_e=!0;const ee=ce[`set${Me[0].toUpperCase()}${Me.slice(1)}`];ee==null||ee.call(ce,q[Me])}return _e}_updateStyle(q,ne){if(q.cursor!==ne.cursor&&(this._map.getCanvas().style.cursor=q.cursor||""),q.mapStyle!==ne.mapStyle){const{mapStyle:ce=cx,styleDiffing:_e=!0}=q,Me={diff:_e};"localIdeographFontFamily"in q&&(Me.localIdeographFontFamily=q.localIdeographFontFamily),this._map.setStyle(lx(ce),Me)}}_updateStyleComponents({light:q,projection:ne,sky:ce,terrain:_e}){var i,it;const Me=this._map,ee=this._styleComponents;Me.style._loaded&&(q&&!ec(q,ee.light)&&(ee.light=q,Me.setLight(q)),ne&&!ec(ne,ee.projection)&&ne!==((i=ee.projection)==null?void 0:i.type)&&(ee.projection=typeof ne=="string"?{type:ne}:ne,(it=Me.setProjection)==null||it.call(Me,ee.projection)),ce&&!ec(ce,ee.sky)&&(ee.sky=ce,Me.setSky(ce)),_e!==void 0&&!ec(_e,ee.terrain)&&(!_e||Me.getSource(_e.source))&&(ee.terrain=_e,Me.setTerrain(_e)))}_updateHandlers(q,ne){const ce=this._map;for(const _e of kb){const Me=q[_e]??!0,ee=ne[_e]??!0;ec(Me,ee)||(Me?ce[_e].enable(Me):ce[_e].disable())}}_queryRenderedFeatures(q){const ne=this._map,{interactiveLayerIds:ce=[]}=this.props;try{return ne.queryRenderedFeatures(q,{layers:ce.filter(ne.getLayer.bind(ne))})}catch{return[]}}_updateHover(q){var _e;const{props:ne}=this;if(ne.interactiveLayerIds&&(ne.onMouseMove||ne.onMouseEnter||ne.onMouseLeave)){const Me=q.type,ee=((_e=this._hoveredFeatures)==null?void 0:_e.length)>0,i=this._queryRenderedFeatures(q.point),it=i.length>0;!it&&ee&&(q.type="mouseleave",this._onPointerEvent(q)),this._hoveredFeatures=i,it&&!ee&&(q.type="mouseenter",this._onPointerEvent(q)),q.type=Me}else this._hoveredFeatures=null}}wf.savedMaps=[];const Ob=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function Fb(Y){if(!Y)return null;const q=Y.map,ne={getMap:()=>q};for(const ce of Bb(q))!(ce in ne)&&!Ob.includes(ce)&&(ne[ce]=q[ce].bind(q));return ne}function Bb(Y){const q=new Set;let ne=Y;for(;ne;){for(const ce of Object.getOwnPropertyNames(ne))ce[0]!=="_"&&typeof Y[ce]=="function"&&ce!=="fire"&&ce!=="setEventedParent"&&q.add(ce);ne=Object.getPrototypeOf(ne)}return Array.from(q)}const Nb=typeof document<"u"?Mt.useLayoutEffect:Mt.useEffect;function Vb(Y,q){const{RTLTextPlugin:ne,maxParallelImageRequests:ce,workerCount:_e,workerUrl:Me}=q;if(ne&&Y.getRTLTextPluginStatus&&Y.getRTLTextPluginStatus()==="unavailable"){const{pluginUrl:ee,lazy:i=!0}=typeof ne=="string"?{pluginUrl:ne}:ne;Y.setRTLTextPlugin(ee,it=>{it&&console.error(it)},i)}ce!==void 0&&Y.setMaxParallelImageRequests(ce),_e!==void 0&&Y.setWorkerCount(_e),Me!==void 0&&Y.setWorkerUrl(Me)}const Lp=Dr.createContext(null);function jb(Y,q){const ne=Mt.useContext(nx),[ce,_e]=Mt.useState(null),Me=Mt.useRef(),{current:ee}=Mt.useRef({mapLib:null,map:null});Mt.useEffect(()=>{const vt=Y.mapLib;let Ft=!0,Ut;return Promise.resolve(vt||Promise.resolve().then(()=>h2)).then(Qt=>{if(!Ft)return;if(!Qt)throw new Error("Invalid mapLib");const St="Map"in Qt?Qt:Qt.default;if(!St.Map)throw new Error("Invalid mapLib");if(Vb(St,Y),!St.supported||St.supported(Y))Y.reuseMaps&&(Ut=wf.reuse(Y,Me.current)),Ut||(Ut=new wf(St.Map,Y,Me.current)),ee.map=Fb(Ut),ee.mapLib=St,_e(Ut),ne==null||ne.onMapMount(ee.map,Y.id);else throw new Error("Map is not supported by this browser")}).catch(Qt=>{const{onError:St}=Y;St?St({type:"error",target:null,originalEvent:null,error:Qt}):console.error(Qt)}),()=>{Ft=!1,Ut&&(ne==null||ne.onMapUnmount(Y.id),Y.reuseMaps?Ut.recycle():Ut.destroy())}},[]),Nb(()=>{ce&&ce.setProps(Y)}),Mt.useImperativeHandle(q,()=>ee.map,[ce]);const i=Mt.useMemo(()=>({position:"relative",width:"100%",height:"100%",...Y.style}),[Y.style]),it={height:"100%"};return Dr.createElement("div",{id:Y.id,ref:Me,style:i},ce&&Dr.createElement(Lp.Provider,{value:ee},Dr.createElement("div",{"mapboxgl-children":"",style:it},Y.children)))}const Ub=Dr.forwardRef(jb),Gb=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function gd(Y,q){if(!Y||!q)return;const ne=Y.style;for(const ce in q){const _e=q[ce];Number.isFinite(_e)&&!Gb.test(ce)?ne[ce]=`${_e}px`:ne[ce]=_e}}const px=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Lp),_e=Mt.useRef({props:Y});_e.current.props=Y;const Me=Mt.useMemo(()=>{let Ci=!1;Dr.Children.forEach(Y.children,_r=>{_r&&(Ci=!0)});const Sr={...Y,element:Ci?document.createElement("div"):null},Ri=new ce.Marker(Sr);return Ri.setLngLat([Y.longitude,Y.latitude]),Ri.getElement().addEventListener("click",_r=>{var gr,Fi;(Fi=(gr=_e.current.props).onClick)==null||Fi.call(gr,{type:"click",target:Ri,originalEvent:_r})}),Ri.on("dragstart",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragStart)==null||Cr.call(Fi,gr)}),Ri.on("drag",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDrag)==null||Cr.call(Fi,gr)}),Ri.on("dragend",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragEnd)==null||Cr.call(Fi,gr)}),Ri},[]);Mt.useEffect(()=>(Me.addTo(ne.getMap()),()=>{Me.remove()}),[]);const{longitude:ee,latitude:i,offset:it,style:vt,draggable:Ft=!1,popup:Ut=null,rotation:Qt=0,rotationAlignment:St="auto",pitchAlignment:Wt="auto"}=Y;return Mt.useEffect(()=>{gd(Me.getElement(),vt)},[vt]),Mt.useImperativeHandle(q,()=>Me,[]),(Me.getLngLat().lng!==ee||Me.getLngLat().lat!==i)&&Me.setLngLat([ee,i]),it&&!Db(Me.getOffset(),it)&&Me.setOffset(it),Me.isDraggable()!==Ft&&Me.setDraggable(Ft),Me.getRotation()!==Qt&&Me.setRotation(Qt),Me.getRotationAlignment()!==St&&Me.setRotationAlignment(St),Me.getPitchAlignment()!==Wt&&Me.setPitchAlignment(Wt),Me.getPopup()!==Ut&&Me.setPopup(Ut),Cp.createPortal(Y.children,Me.getElement())}));function fx(Y){return new Set(Y?Y.trim().split(/\s+/):[])}const Zb=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Lp),_e=Mt.useMemo(()=>document.createElement("div"),[]),Me=Mt.useRef({props:Y});Me.current.props=Y;const ee=Mt.useMemo(()=>{const i={...Y},it=new ce.Popup(i);return it.setLngLat([Y.longitude,Y.latitude]),it.once("open",vt=>{var Ft,Ut;(Ut=(Ft=Me.current.props).onOpen)==null||Ut.call(Ft,vt)}),it},[]);if(Mt.useEffect(()=>{const i=it=>{var vt,Ft;(Ft=(vt=Me.current.props).onClose)==null||Ft.call(vt,it)};return ee.on("close",i),ee.setDOMContent(_e).addTo(ne.getMap()),()=>{ee.off("close",i),ee.isOpen()&&ee.remove()}},[]),Mt.useEffect(()=>{gd(ee.getElement(),Y.style)},[Y.style]),Mt.useImperativeHandle(q,()=>ee,[]),ee.isOpen()&&((ee.getLngLat().lng!==Y.longitude||ee.getLngLat().lat!==Y.latitude)&&ee.setLngLat([Y.longitude,Y.latitude]),Y.offset&&!ec(ee.options.offset,Y.offset)&&ee.setOffset(Y.offset),(ee.options.anchor!==Y.anchor||ee.options.maxWidth!==Y.maxWidth)&&(ee.options.anchor=Y.anchor,ee.setMaxWidth(Y.maxWidth)),ee.options.className!==Y.className)){const i=fx(ee.options.className),it=fx(Y.className);for(const vt of i)it.has(vt)||ee.removeClassName(vt);for(const vt of it)i.has(vt)||ee.addClassName(vt);ee.options.className=Y.className}return Cp.createPortal(Y.children,_e)}));function Rp(Y,q,ne,ce){const _e=Mt.useContext(Lp),Me=Mt.useMemo(()=>Y(_e),[]);return Mt.useEffect(()=>{const ee=q,i=null,it=typeof q=="function"?q:null,{map:vt}=_e;return vt.hasControl(Me)||(vt.addControl(Me,ee==null?void 0:ee.position),i&&i(_e)),()=>{it&&it(_e),vt.hasControl(Me)&&vt.removeControl(Me)}},[]),Me}function qb(Y){const q=Rp(({mapLib:ne})=>new ne.AttributionControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(qb);function $b(Y){const q=Rp(({mapLib:ne})=>new ne.FullscreenControl({container:Y.containerId&&document.getElementById(Y.containerId)}),{position:Y.position});return Mt.useEffect(()=>{gd(q._controlContainer,Y.style)},[Y.style]),null}Mt.memo($b);function Hb(Y,q){const ne=Mt.useRef({props:Y}),ce=Rp(({mapLib:_e})=>{const Me=new _e.GeolocateControl(Y),ee=Me._setupUI;return Me._setupUI=()=>{Me._container.hasChildNodes()||ee()},Me.on("geolocate",i=>{var it,vt;(vt=(it=ne.current.props).onGeolocate)==null||vt.call(it,i)}),Me.on("error",i=>{var it,vt;(vt=(it=ne.current.props).onError)==null||vt.call(it,i)}),Me.on("outofmaxbounds",i=>{var it,vt;(vt=(it=ne.current.props).onOutOfMaxBounds)==null||vt.call(it,i)}),Me.on("trackuserlocationstart",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationStart)==null||vt.call(it,i)}),Me.on("trackuserlocationend",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationEnd)==null||vt.call(it,i)}),Me},{position:Y.position});return ne.current.props=Y,Mt.useImperativeHandle(q,()=>ce,[]),Mt.useEffect(()=>{gd(ce._container,Y.style)},[Y.style]),null}Mt.memo(Mt.forwardRef(Hb));function Wb(Y){const q=Rp(({mapLib:ne})=>new ne.NavigationControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}const Xb=Mt.memo(Wb);function Yb(Y){const q=Rp(({mapLib:Me})=>new Me.ScaleControl(Y),{position:Y.position}),ne=Mt.useRef(Y),ce=ne.current;ne.current=Y;const{style:_e}=Y;return Y.maxWidth!==void 0&&Y.maxWidth!==ce.maxWidth&&(q.options.maxWidth=Y.maxWidth),Y.unit!==void 0&&Y.unit!==ce.unit&&q.setUnit(Y.unit),Mt.useEffect(()=>{gd(q._container,_e)},[_e]),null}Mt.memo(Yb);function Kb(Y){const q=Rp(({mapLib:ne})=>new ne.TerrainControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(Kb);function Jb(Y){const q=Rp(({mapLib:ne})=>new ne.LogoControl(Y),{position:Y.position});return Mt.useEffect(()=>{gd(q._container,Y.style)},[Y.style]),null}Mt.memo(Jb);function c_(Y,q){if(!Y)throw new Error(q)}let Qb=0;function e1(Y,q,ne){if(Y.style&&Y.style._loaded){const ce={...ne};return delete ce.id,delete ce.children,Y.addSource(q,ce),Y.getSource(q)}return null}function t1(Y,q,ne){var ee,i,it;c_(q.id===ne.id,"source id changed"),c_(q.type===ne.type,"source type changed");let ce="",_e=0;for(const vt in q)vt!=="children"&&vt!=="id"&&!ec(ne[vt],q[vt])&&(ce=vt,_e++);if(!_e)return;const Me=q.type;if(Me==="geojson")Y.setData(q.data);else if(Me==="image")Y.updateImage({url:q.url,coordinates:q.coordinates});else switch(ce){case"coordinates":(ee=Y.setCoordinates)==null||ee.call(Y,q.coordinates);break;case"url":(i=Y.setUrl)==null||i.call(Y,q.url);break;case"tiles":(it=Y.setTiles)==null||it.call(Y,q.tiles);break;default:console.warn(`Unable to update <Source> prop: ${ce}`)}}function i1(Y){const q=Mt.useContext(Lp).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-source-${Qb++}`,[]);Mt.useEffect(()=>{if(q){const ee=()=>setTimeout(()=>ce(i=>i+1),0);return q.on("styledata",ee),ee(),()=>{var i;if(q.off("styledata",ee),q.style&&q.style._loaded&&q.getSource(_e)){const it=(i=q.getStyle())==null?void 0:i.layers;if(it)for(const vt of it)vt.source===_e&&q.removeLayer(vt.id);q.removeSource(_e)}}}},[q]);let Me=q&&q.style&&q.getSource(_e);return Me?t1(Me,Y,ne.current):Me=e1(q,_e,Y),ne.current=Y,Me&&Dr.Children.map(Y.children,ee=>ee&&Mt.cloneElement(ee,{source:_e}))||null}function r1(Y,q,ne,ce){if(c_(ne.id===ce.id,"layer id changed"),c_(ne.type===ce.type,"layer type changed"),ne.type==="custom"||ce.type==="custom")return;const{layout:_e={},paint:Me={},filter:ee,minzoom:i,maxzoom:it,beforeId:vt}=ne;if(vt!==ce.beforeId&&Y.moveLayer(q,vt),_e!==ce.layout){const Ft=ce.layout||{};for(const Ut in _e)ec(_e[Ut],Ft[Ut])||Y.setLayoutProperty(q,Ut,_e[Ut]);for(const Ut in Ft)_e.hasOwnProperty(Ut)||Y.setLayoutProperty(q,Ut,void 0)}if(Me!==ce.paint){const Ft=ce.paint||{};for(const Ut in Me)ec(Me[Ut],Ft[Ut])||Y.setPaintProperty(q,Ut,Me[Ut]);for(const Ut in Ft)Me.hasOwnProperty(Ut)||Y.setPaintProperty(q,Ut,void 0)}ec(ee,ce.filter)||Y.setFilter(q,ee),(i!==ce.minzoom||it!==ce.maxzoom)&&Y.setLayerZoomRange(q,i,it)}function n1(Y,q,ne){if(Y.style&&Y.style._loaded&&(!("source"in ne)||Y.getSource(ne.source))){const ce={...ne,id:q};delete ce.beforeId,Y.addLayer(ce,ne.beforeId)}}let s1=0;function mx(Y){const q=Mt.useContext(Lp).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-layer-${s1++}`,[]);if(Mt.useEffect(()=>{if(q){const ee=()=>ce(i=>i+1);return q.on("styledata",ee),ee(),()=>{q.off("styledata",ee),q.style&&q.style._loaded&&q.getLayer(_e)&&q.removeLayer(_e)}}},[q]),q&&q.style&&q.getLayer(_e))try{r1(q,_e,Y,ne.current)}catch(ee){console.warn(ee)}else n1(q,_e,Y);return ne.current=Y,null}const o1=()=>{const{current:Y}=sx(),{setBounds:q,setZoom:ne}=Sl(),ce=()=>{Y&&(q(Y.getBounds().toArray().flat()),ne(Y.getZoom()))};return Mt.useEffect(()=>{Y&&(ce(),Y.on("move",()=>{ce()}))},[Y]),null};function a1({children:Y}){const{mapProvider:q,center:ne,zoom:ce=$a.zoom,minZoom:_e,maxZoom:Me,pitch:ee=$a.pitch,bearing:i=$a.bearing,cooperativeGestures:it=$a.cooperativeGestures,zoomPosition:vt}=Sl();return q.name!=="maptiler"?null:Pr.jsxs(Ub,{initialViewState:{...ne,zoom:ce,pitch:ee,bearing:i},cooperativeGestures:it,minZoom:_e,maxZoom:Me,mapStyle:`https://api.maptiler.com/maps/${q.theme||lm.maptiler}/style.json?key=${q.apiKey}`,children:[Pr.jsx(o1,{}),vt&&Pr.jsx(Xb,{position:vt}),Y]})}const l1=Object.freeze(Object.defineProperty({__proto__:null,default:a1},Symbol.toStringTag,{value:"Module"}));function kh(){return kh=Object.assign?Object.assign.bind():function(Y){for(var q=1;q<arguments.length;q++){var ne=arguments[q];for(var ce in ne)({}).hasOwnProperty.call(ne,ce)&&(Y[ce]=ne[ce])}return Y},kh.apply(null,arguments)}function kp(Y,q){if(Y==null)return{};var ne={};for(var ce in Y)if({}.hasOwnProperty.call(Y,ce)){if(q.indexOf(ce)!==-1)continue;ne[ce]=Y[ce]}return ne}function c1(Y,q){if(typeof Y!="object"||!Y)return Y;var ne=Y[Symbol.toPrimitive];if(ne!==void 0){var ce=ne.call(Y,q);if(typeof ce!="object")return ce;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Y)}function u1(Y){var q=c1(Y,"string");return typeof q=="symbol"?q:q+""}const yd={NOT_LOADED:"NOT_LOADED",LOADING:"LOADING",LOADED:"LOADED",FAILED:"FAILED",AUTH_FAILURE:"AUTH_FAILURE"},h1="https://maps.googleapis.com/maps/api/js";class hm{static async load(q,ne){var ce;const _e=q.libraries?q.libraries.split(","):[],Me=this.serializeParams(q);this.listeners.push(ne),(ce=window.google)!=null&&(ce=ce.maps)!=null&&ce.importLibrary?(this.serializedApiParams||(this.loadingStatus=yd.LOADED),this.notifyLoadingStatusListeners()):(this.serializedApiParams=Me,this.initImportLibrary(q)),this.serializedApiParams&&this.serializedApiParams!==Me&&console.warn("[google-maps-api-loader] The maps API has already been loaded with different parameters and will not be loaded again. Refresh the page for new values to have effect.");const ee=["maps",..._e];await Promise.all(ee.map(i=>google.maps.importLibrary(i)))}static serializeParams(q){return[q.v,q.key,q.language,q.region,q.authReferrerPolicy,q.solutionChannel].join("/")}static initImportLibrary(q){if(window.google||(window.google={}),window.google.maps||(window.google.maps={}),window.google.maps.importLibrary){console.error("[google-maps-api-loader-internal]: initImportLibrary must only be called once");return}let ne=null;const ce=()=>ne||(ne=new Promise((_e,Me)=>{var ee;const i=document.createElement("script"),it=new URLSearchParams;for(const[vt,Ft]of Object.entries(q)){const Ut=vt.replace(/[A-Z]/g,Qt=>"_"+Qt[0].toLowerCase());it.set(Ut,String(Ft))}it.set("loading","async"),it.set("callback","__googleMapsCallback__"),i.async=!0,i.src=h1+"?"+it.toString(),i.nonce=((ee=document.querySelector("script[nonce]"))==null?void 0:ee.nonce)||"",i.onerror=()=>{this.loadingStatus=yd.FAILED,this.notifyLoadingStatusListeners(),Me(new Error("The Google Maps JavaScript API could not load."))},window.__googleMapsCallback__=()=>{this.loadingStatus=yd.LOADED,this.notifyLoadingStatusListeners(),_e()},window.gm_authFailure=()=>{this.loadingStatus=yd.AUTH_FAILURE,this.notifyLoadingStatusListeners()},this.loadingStatus=yd.LOADING,this.notifyLoadingStatusListeners(),document.head.append(i)}),ne);google.maps.importLibrary=_e=>ce().then(()=>google.maps.importLibrary(_e))}static notifyLoadingStatusListeners(){for(const q of this.listeners)q(this.loadingStatus)}}hm.loadingStatus=yd.NOT_LOADED,hm.serializedApiParams=void 0,hm.listeners=[];const d1=["onLoad","onError","apiKey","version","libraries"],p1=["children"],f1="GMP_visgl_rgmlibrary_v1_default",dm=Mt.createContext(null);function m1(){const[Y,q]=Mt.useState({});return{mapInstances:Y,addMapInstance:(Me,ee="default")=>{q(i=>kh({},i,{[ee]:Me}))},removeMapInstance:(Me="default")=>{q(ee=>kp(ee,[Me].map(u1)))},clearMapInstances:()=>{q({})}}}function _1(Y){const{onLoad:q,onError:ne,apiKey:ce,version:_e,libraries:Me=[]}=Y,ee=kp(Y,d1),[i,it]=Mt.useState(hm.loadingStatus),[vt,Ft]=Mt.useReducer((Wt,Ci)=>Wt[Ci.name]?Wt:kh({},Wt,{[Ci.name]:Ci.value}),{}),Ut=Mt.useMemo(()=>Me==null?void 0:Me.join(","),[Me]),Qt=Mt.useMemo(()=>JSON.stringify(kh({apiKey:ce,version:_e},ee)),[ce,_e,ee]),St=Mt.useCallback(async Wt=>{var Ci;if(vt[Wt])return vt[Wt];if(!((Ci=google)!=null&&(Ci=Ci.maps)!=null&&Ci.importLibrary))throw new Error("[api-provider-internal] importLibrary was called before google.maps.importLibrary was defined.");const Sr=await window.google.maps.importLibrary(Wt);return Ft({name:Wt,value:Sr}),Sr},[vt]);return Mt.useEffect(()=>{(async()=>{try{const Wt=kh({key:ce},ee);_e&&(Wt.v=_e),(Ut==null?void 0:Ut.length)>0&&(Wt.libraries=Ut),(Wt.channel===void 0||Wt.channel<0||Wt.channel>999)&&delete Wt.channel,Wt.solutionChannel===void 0?Wt.solutionChannel=f1:Wt.solutionChannel===""&&delete Wt.solutionChannel,await hm.load(Wt,Ci=>it(Ci));for(const Ci of["core","maps",...Me])await St(Ci);q&&q()}catch(Wt){ne?ne(Wt):console.error("<ApiProvider> failed to load the Google Maps JavaScript API",Wt)}})()},[ce,Ut,Qt]),{status:i,loadedLibraries:vt,importLibrary:St}}const g1=Y=>{const{children:q}=Y,ne=kp(Y,p1),{mapInstances:ce,addMapInstance:_e,removeMapInstance:Me,clearMapInstances:ee}=m1(),{status:i,loadedLibraries:it,importLibrary:vt}=_1(ne),Ft=Mt.useMemo(()=>({mapInstances:ce,addMapInstance:_e,removeMapInstance:Me,clearMapInstances:ee,status:i,loadedLibraries:it,importLibrary:vt}),[ce,_e,Me,ee,i,it,vt]);return Mt.createElement(dm.Provider,{value:Ft},q)};function y1(Y,q){for(const ne of w1){const ce=q[ne],_e=_x[ne];Mt.useEffect(()=>{if(!Y||!ce)return;const Me=google.maps.event.addListener(Y,_e,ee=>{ce(x1(_e,Y,ee))});return()=>Me.remove()},[Y,_e,ce])}}function x1(Y,q,ne){const ce={type:Y,map:q,detail:{},stoppable:!1,stop:()=>{}};if(v1.includes(Y)){const Me=ce,ee=q.getCenter(),i=q.getZoom(),it=q.getHeading()||0,vt=q.getTilt()||0,Ft=q.getBounds();return(!ee||!Ft||!Number.isFinite(i))&&console.warn("[createEvent] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),Me.detail={center:(ee==null?void 0:ee.toJSON())||{lat:0,lng:0},zoom:i||0,heading:it,tilt:vt,bounds:(Ft==null?void 0:Ft.toJSON())||{north:90,east:180,south:-90,west:-180}},Me}else if(b1.includes(Y)){var _e;if(!ne)throw new Error("[createEvent] mouse events must provide a srcEvent");const Me=ce;return Me.domEvent=ne.domEvent,Me.stoppable=!0,Me.stop=()=>ne.stop(),Me.detail={latLng:((_e=ne.latLng)==null?void 0:_e.toJSON())||null,placeId:ne.placeId},Me}return ce}const _x={onBoundsChanged:"bounds_changed",onCenterChanged:"center_changed",onClick:"click",onContextmenu:"contextmenu",onDblclick:"dblclick",onDrag:"drag",onDragend:"dragend",onDragstart:"dragstart",onHeadingChanged:"heading_changed",onIdle:"idle",onIsFractionalZoomEnabledChanged:"isfractionalzoomenabled_changed",onMapCapabilitiesChanged:"mapcapabilities_changed",onMapTypeIdChanged:"maptypeid_changed",onMousemove:"mousemove",onMouseout:"mouseout",onMouseover:"mouseover",onProjectionChanged:"projection_changed",onRenderingTypeChanged:"renderingtype_changed",onTilesLoaded:"tilesloaded",onTiltChanged:"tilt_changed",onZoomChanged:"zoom_changed",onCameraChanged:"bounds_changed"},v1=["bounds_changed","center_changed","heading_changed","tilt_changed","zoom_changed"],b1=["click","contextmenu","dblclick","mousemove","mouseout","mouseover"],w1=Object.keys(_x);function Bg(Y,q){const ne=Mt.useRef(void 0);(!ne.current||!ub(q,ne.current))&&(ne.current=q),Mt.useEffect(Y,ne.current)}const T1=new Set(["backgroundColor","clickableIcons","controlSize","disableDefaultUI","disableDoubleClickZoom","draggable","draggableCursor","draggingCursor","fullscreenControl","fullscreenControlOptions","gestureHandling","headingInteractionEnabled","isFractionalZoomEnabled","keyboardShortcuts","mapTypeControl","mapTypeControlOptions","mapTypeId","maxZoom","minZoom","noClear","panControl","panControlOptions","restriction","rotateControl","rotateControlOptions","scaleControl","scaleControlOptions","scrollwheel","streetView","streetViewControl","streetViewControlOptions","styles","tiltInteractionEnabled","zoomControl","zoomControlOptions"]);function S1(Y,q){const ne={},ce=Object.keys(q);for(const _e of ce)T1.has(_e)&&(ne[_e]=q[_e]);Bg(()=>{Y&&Y.setOptions(ne)},[ne])}function gx(){var Y;return((Y=Mt.useContext(dm))==null?void 0:Y.status)||yd.NOT_LOADED}function M1(Y,q){const{viewport:ne,viewState:ce}=q,_e=!!ne;return Mt.useLayoutEffect(()=>{if(!Y||!ce)return;const{latitude:Me,longitude:ee,bearing:i,pitch:it,zoom:vt}=ce;Y.moveCamera({center:{lat:Me,lng:ee},heading:i,tilt:it,zoom:vt+1})},[Y,ce]),_e}function E1(Y){return!Y||typeof Y!="object"||!("lat"in Y&&"lng"in Y)?!1:Number.isFinite(Y.lat)&&Number.isFinite(Y.lng)}function yx(Y){return E1(Y)?Y:Y.toJSON()}function I1(Y,q,ne){const ce=ne.center?yx(ne.center):null;let _e=null,Me=null;ce&&Number.isFinite(ce.lat)&&Number.isFinite(ce.lng)&&(_e=ce.lat,Me=ce.lng);const ee=Number.isFinite(ne.zoom)?ne.zoom:null,i=Number.isFinite(ne.heading)?ne.heading:null,it=Number.isFinite(ne.tilt)?ne.tilt:null;Mt.useLayoutEffect(()=>{if(!Y)return;const vt={};let Ft=!1;_e!==null&&Me!==null&&(q.current.center.lat!==_e||q.current.center.lng!==Me)&&(vt.center={lat:_e,lng:Me},Ft=!0),ee!==null&&q.current.zoom!==ee&&(vt.zoom=ee,Ft=!0),i!==null&&q.current.heading!==i&&(vt.heading=i,Ft=!0),it!==null&&q.current.tilt!==it&&(vt.tilt=it,Ft=!0),Ft&&Y.moveCamera(vt)})}const P1=()=>{const Y={position:"absolute",top:0,left:0,bottom:0,right:0,zIndex:999,display:"flex",flexFlow:"column nowrap",textAlign:"center",justifyContent:"center",fontSize:".8rem",color:"rgba(0,0,0,0.6)",background:"#dddddd",padding:"1rem 1.5rem"};return Mt.createElement("div",{style:Y},Mt.createElement("h2",null,"Error: AuthFailure"),Mt.createElement("p",null,"A problem with your API key prevents the map from rendering correctly. Please make sure the value of the ",Mt.createElement("code",null,"APIProvider.apiKey")," prop is correct. Check the error-message in the console for further details."))};function A1(){const[Y,q]=Mt.useState(null),ne=Mt.useCallback(ce=>q(ce),[q]);return[Y,ne]}function xx(){return gx()===yd.LOADED}function C1(){const[,Y]=Mt.useReducer(q=>q+1,0);return Y}function z1(Y,q){const ne=Y.getCenter(),ce=Y.getZoom(),_e=Y.getHeading()||0,Me=Y.getTilt()||0,ee=Y.getBounds();(!ne||!ee||!Number.isFinite(ce))&&console.warn("[useTrackedCameraState] at least one of the values from the map returned undefined. This is not expected to happen. Please report an issue at https://github.com/visgl/react-google-maps/issues/new"),Object.assign(q.current,{center:(ne==null?void 0:ne.toJSON())||{lat:0,lng:0},zoom:ce||0,heading:_e,tilt:Me})}function D1(Y){const q=C1(),ne=Mt.useRef({center:{lat:0,lng:0},heading:0,tilt:0,zoom:0});return Mt.useEffect(()=>{if(!Y)return;const ce=google.maps.event.addListener(Y,"bounds_changed",()=>{z1(Y,ne),q()});return()=>ce.remove()},[Y,q]),ne}const L1=["id","defaultBounds","defaultCenter","defaultZoom","defaultHeading","defaultTilt","reuseMaps","renderingType","colorScheme"],R1=["padding"];class u_{static has(q){return this.entries[q]&&this.entries[q].length>0}static pop(q){return this.entries[q]&&this.entries[q].pop()||null}static push(q,ne){this.entries[q]||(this.entries[q]=[]),this.entries[q].push(ne)}}u_.entries={};function k1(Y,q){const ne=xx(),[ce,_e]=Mt.useState(null),[Me,ee]=A1(),i=D1(ce),{id:it,defaultBounds:vt,defaultCenter:Ft,defaultZoom:Ut,defaultHeading:Qt,defaultTilt:St,reuseMaps:Wt,renderingType:Ci,colorScheme:Sr}=Y,Ri=kp(Y,L1),_r=Y.zoom!==void 0||Y.defaultZoom!==void 0,gr=Y.center!==void 0||Y.defaultCenter!==void 0;!vt&&(!_r||!gr)&&console.warn("<Map> component is missing configuration. You have to provide zoom and center (via the `zoom`/`defaultZoom` and `center`/`defaultCenter` props) or specify the region to show using `defaultBounds`. See https://visgl.github.io/react-google-maps/docs/api-reference/components/map#required"),!Ri.center&&Ft&&(Ri.center=Ft),!Ri.zoom&&Number.isFinite(Ut)&&(Ri.zoom=Ut),!Ri.heading&&Number.isFinite(Qt)&&(Ri.heading=Qt),!Ri.tilt&&Number.isFinite(St)&&(Ri.tilt=St);for(const Cr of Object.keys(Ri))Ri[Cr]===void 0&&delete Ri[Cr];const Fi=Mt.useRef(void 0);return Mt.useEffect(()=>{if(!Me||!ne)return;const{addMapInstance:Cr,removeMapInstance:tn}=q,{mapId:Vi}=Y,hn=`${Vi||"default"}:${Ci||"default"}:${Sr||"LIGHT"}`;let fs,rr;if(Wt&&u_.has(hn)?(rr=u_.pop(hn),fs=rr.getDiv(),Me.appendChild(fs),rr.setOptions(Ri),setTimeout(()=>rr.setCenter(rr.getCenter()),0)):(fs=document.createElement("div"),fs.style.height="100%",Me.appendChild(fs),rr=new google.maps.Map(fs,kh({},Ri,Ci?{renderingType:Ci}:{},Sr?{colorScheme:Sr}:{}))),_e(rr),Cr(rr,it),vt){const{padding:pr}=vt,fo=kp(vt,R1);rr.fitBounds(fo,pr)}else(!_r||!gr)&&rr.fitBounds({east:180,west:-180,south:-90,north:90});if(Fi.current){const{mapId:pr,cameraState:fo}=Fi.current;pr!==Vi&&rr.setOptions(fo)}return()=>{Fi.current={mapId:Vi,cameraState:i.current},fs.remove(),Wt?u_.push(hn,rr):google.maps.event.clearInstanceListeners(rr),_e(null),tn(it)}},[Me,ne,it,Y.mapId,Y.renderingType,Y.colorScheme]),[ce,ee,i]}const Ng=Mt.createContext(null),vx=Y=>{const{children:q,id:ne,className:ce,style:_e}=Y,Me=Mt.useContext(dm),ee=gx();if(!Me)throw new Error("<Map> can only be used inside an <ApiProvider> component.");const[i,it,vt]=k1(Y,Me);I1(i,vt,Y),y1(i,Y),S1(i,Y);const Ft=M1(i,Y),Ut=!!Y.controlled;Mt.useEffect(()=>{if(i)return Ft&&i.setOptions({disableDefaultUI:!0}),(Ft||Ut)&&i.setOptions({gestureHandling:"none",keyboardShortcuts:!1}),()=>{i.setOptions({gestureHandling:Y.gestureHandling,keyboardShortcuts:Y.keyboardShortcuts})}},[i,Ft,Ut,Y.gestureHandling,Y.keyboardShortcuts]);const Qt=Y.center?yx(Y.center):null;let St=null,Wt=null;Qt&&Number.isFinite(Qt.lat)&&Number.isFinite(Qt.lng)&&(St=Qt.lat,Wt=Qt.lng);const Ci=Mt.useMemo(()=>{var _r,gr,Fi,Cr,tn;return{center:{lat:(_r=St)!=null?_r:0,lng:(gr=Wt)!=null?gr:0},zoom:(Fi=Y.zoom)!=null?Fi:0,heading:(Cr=Y.heading)!=null?Cr:0,tilt:(tn=Y.tilt)!=null?tn:0}},[St,Wt,Y.zoom,Y.heading,Y.tilt]);Mt.useLayoutEffect(()=>{if(!i||!Ut)return;i.moveCamera(Ci);const _r=i.addListener("bounds_changed",()=>{i.moveCamera(Ci)});return()=>_r.remove()},[i,Ut,Ci]);const Sr=Mt.useMemo(()=>kh({width:"100%",height:"100%",position:"relative",zIndex:Ft?-1:0},_e),[_e,Ft]),Ri=Mt.useMemo(()=>({map:i}),[i]);return ee===yd.AUTH_FAILURE?Mt.createElement("div",{style:kh({position:"relative"},ce?{}:Sr),className:ce},Mt.createElement(P1,null)):Mt.createElement("div",kh({ref:it,"data-testid":"map",style:ce?void 0:Sr,className:ce},ne?{id:ne}:{}),i?Mt.createElement(Ng.Provider,{value:Ri},q):null)};vx.deckGLViewProps=!0;const bx=new Set;function O1(...Y){const q=JSON.stringify(Y);bx.has(q)||(bx.add(q),console.error(...Y))}const Tf=(Y=null)=>{const q=Mt.useContext(dm),{map:ne}=Mt.useContext(Ng)||{};if(q===null)return O1("useMap(): failed to retrieve APIProviderContext. Make sure that the <APIProvider> component exists and that the component you are calling `useMap()` from is a sibling of the <APIProvider>."),null;const{mapInstances:ce}=q;return Y!==null?ce[Y]||null:ne||ce.default||null};function wx(Y){const q=xx(),ne=Mt.useContext(dm);return Mt.useEffect(()=>{!q||!ne||ne.importLibrary(Y)},[q,ne,Y]),(ne==null?void 0:ne.loadedLibraries[Y])||null}function Sf(Y,q,ne){Mt.useEffect(()=>{if(!Y||!q||!ne)return;const ce=google.maps.event.addListener(Y,q,ne);return()=>ce.remove()},[Y,q,ne])}function h_(Y,q,ne){Mt.useEffect(()=>{Y&&(Y[q]=ne)},[Y,q,ne])}function Tx(Y,q,ne){Mt.useEffect(()=>{if(!(!Y||!q||!ne))return Y.addEventListener(q,ne),()=>Y.removeEventListener(q,ne)},[Y,q,ne])}function F1(Y){return Y.content!==void 0}function B1(Y){return Y.nodeType===Node.ELEMENT_NODE}const N1=Mt.createContext(null),V1={BOTTOM:["50%","100%"]},j1=({children:Y,styles:q,className:ne,anchorPoint:ce})=>{const[_e,Me]=ce??V1.BOTTOM;let ee=`-${_e}`,i=`-${Me}`;_e.trimStart().startsWith("-")&&(ee=_e.substring(1)),Me.trimStart().startsWith("-")&&(i=Me.substring(1));const it=`translate(50%, 100%) translate(${ee}, ${i})`;return Mt.createElement("div",{style:{transform:it}},Mt.createElement("div",{className:ne,style:q},Y))};function U1(Y){const[q,ne]=Mt.useState(null),[ce,_e]=Mt.useState(null),Me=Tf(),ee=wx("marker"),{children:i,onClick:it,className:vt,onMouseEnter:Ft,onMouseLeave:Ut,onDrag:Qt,onDragStart:St,onDragEnd:Wt,collisionBehavior:Ci,clickable:Sr,draggable:Ri,position:_r,title:gr,zIndex:Fi}=Y,Cr=Mt.Children.count(i);return Mt.useEffect(()=>{if(!Me||!ee)return;const tn=new ee.AdvancedMarkerElement;tn.map=Me,ne(tn);let Vi=null;return Cr>0&&(Vi=document.createElement("div"),Vi.isCustomMarker=!0,tn.content=Vi,_e(Vi)),()=>{var hn;tn.map=null,(hn=Vi)==null||hn.remove(),ne(null),_e(null)}},[Me,ee,Cr]),Mt.useEffect(()=>{!q||!q.content||Cr>0||(q.content.className=vt||"")},[q,vt,Cr]),h_(q,"position",_r),h_(q,"title",gr??""),h_(q,"zIndex",Fi),h_(q,"collisionBehavior",Ci),Mt.useEffect(()=>{q&&(Ri!==void 0?q.gmpDraggable=Ri:Qt||St||Wt?q.gmpDraggable=!0:q.gmpDraggable=!1)},[q,Ri,Qt,Wt,St]),Mt.useEffect(()=>{if(!q)return;const tn=Sr!==void 0||!!it||!!Ft||!!Ut;q.gmpClickable=tn,tn&&q!=null&&q.content&&B1(q.content)&&(q.content.style.pointerEvents="none",q.content.firstElementChild&&(q.content.firstElementChild.style.pointerEvents="all"))},[q,Sr,it,Ft,Ut]),Sf(q,"click",it),Sf(q,"drag",Qt),Sf(q,"dragstart",St),Sf(q,"dragend",Wt),Tx(q==null?void 0:q.element,"mouseenter",Ft),Tx(q==null?void 0:q.element,"mouseleave",Ut),[q,ce]}const Sx=Mt.forwardRef((Y,q)=>{const{children:ne,style:ce,className:_e,anchorPoint:Me}=Y,[ee,i]=U1(Y),it=Mt.useMemo(()=>ee?{marker:ee}:null,[ee]);return Mt.useImperativeHandle(q,()=>ee,[ee]),i?Mt.createElement(N1.Provider,{value:it},Cp.createPortal(Mt.createElement(j1,{anchorPoint:Me,styles:ce,className:_e},ne),i)):null});function G1(Y,q,ne){if(q!=null&&typeof q!="object")throw new Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");const ce=Y.style;if(ne==null){if(q==null)return;for(const _e in q)q.hasOwnProperty(_e)&&Mx(ce,_e,q[_e]);return}for(const _e in ne)ne.hasOwnProperty(_e)&&(q==null||!q.hasOwnProperty(_e))&&(_e.indexOf("--")===0?ce.setProperty(_e,""):_e==="float"?ce.cssFloat="":ce[_e]="");if(q!=null)for(const _e in q){const Me=q[_e];q.hasOwnProperty(_e)&&ne[_e]!==Me&&Mx(ce,_e,Me)}}function Mx(Y,q,ne){const ce=q.indexOf("--")===0;ne==null||typeof ne=="boolean"||ne===""?ce?Y.setProperty(q,""):q==="float"?Y.cssFloat="":Y[q]="":ce?Y.setProperty(q,ne):typeof ne=="number"&&ne!==0&&!q1(q)?Y[q]=ne+"px":q==="float"?Y.cssFloat=ne:Y[q]=(""+ne).trim()}const Z1=new Set(["animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","scale","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth"]);function q1(Y){return Z1.has(Y)}const $1=["children","headerContent","style","className","pixelOffset","anchor","shouldFocus","onClose","onCloseClick"],H1=Y=>{const{children:q,headerContent:ne,style:ce,className:_e,pixelOffset:Me,anchor:ee,shouldFocus:i,onClose:it,onCloseClick:vt}=Y,Ft=kp(Y,$1),Ut=wx("maps"),[Qt,St]=Mt.useState(null),Wt=Mt.useRef(null),Ci=Mt.useRef(null);Mt.useEffect(()=>{if(!Ut)return;Wt.current=document.createElement("div"),Ci.current=document.createElement("div");const _r=Ft;Me&&(_r.pixelOffset=new google.maps.Size(Me[0],Me[1])),ne&&(_r.headerContent=typeof ne=="string"?ne:Ci.current);const gr=new google.maps.InfoWindow(Ft);return gr.setContent(Wt.current),St(gr),()=>{var Fi,Cr;gr.setContent(null),(Fi=Wt.current)==null||Fi.remove(),(Cr=Ci.current)==null||Cr.remove(),Wt.current=null,Ci.current=null,St(null)}},[Ut]);const Sr=Mt.useRef(null);Mt.useEffect(()=>{!Qt||!Wt.current||(G1(Wt.current,ce||null,Sr.current),Sr.current=ce||null,_e!==Wt.current.className&&(Wt.current.className=_e||""))},[Qt,_e,ce]),Bg(()=>{if(!Qt)return;const _r=Ft;Me?_r.pixelOffset=new google.maps.Size(Me[0],Me[1]):_r.pixelOffset=null,ne?_r.headerContent=typeof ne=="string"?ne:Ci.current:_r.headerContent=null,Qt.setOptions(Ft)},[Ft,Me,ne]),Sf(Qt,"close",it),Sf(Qt,"closeclick",vt);const Ri=Tf();return Bg(()=>{if(!Ri||!Qt||ee===null)return;const _r=!!ee,gr={map:Ri};if(ee&&(gr.anchor=ee,F1(ee)&&ee.content instanceof Element)){const Cr=ee.content,tn=Cr==null?void 0:Cr.getBoundingClientRect();if(tn&&Cr!=null&&Cr.isCustomMarker){var Fi;const Vi=(Fi=ee.content.firstElementChild)==null?void 0:Fi.firstElementChild,hn=Vi==null?void 0:Vi.getBoundingClientRect(),fs=hn.x-tn.x+(hn.width-tn.width)/2,rr=hn.y-tn.y,pr=Ft;pr.pixelOffset=new google.maps.Size(Me?Me[0]+fs:fs,Me?Me[1]+rr:rr),Qt.setOptions(pr)}}return i!==void 0&&(gr.shouldFocus=i),Qt.open(gr),()=>{_r&&Qt.set("anchor",null),Qt.close()}},[Qt,ee,Ri,i,Ft,Me]),Mt.createElement(Mt.Fragment,null,Wt.current&&Cp.createPortal(q,Wt.current),Ci.current!==null&&Cp.createPortal(ne,Ci.current))},d_={LEFT_TOP:5,LEFT_BOTTOM:6,RIGHT_TOP:7,RIGHT_BOTTOM:9},W1=["onClick","onDrag","onDragStart","onDragEnd","onMouseOver","onMouseOut"];function X1(Y){const[q,ne]=Mt.useState(null),ce=Tf(),{onClick:_e,onDrag:Me,onDragStart:ee,onDragEnd:i,onMouseOver:it,onMouseOut:vt}=Y,Ft=kp(Y,W1),{position:Ut,draggable:Qt}=Ft;return Mt.useEffect(()=>{if(!ce){ce===void 0&&console.error("<Marker> has to be inside a Map component.");return}const St=new google.maps.Marker(Ft);return St.setMap(ce),ne(St),()=>{St.setMap(null),ne(null)}},[ce]),Mt.useEffect(()=>{if(!q)return;const St=q,Wt=google.maps.event;return _e&&Wt.addListener(St,"click",_e),Me&&Wt.addListener(St,"drag",Me),ee&&Wt.addListener(St,"dragstart",ee),i&&Wt.addListener(St,"dragend",i),it&&Wt.addListener(St,"mouseover",it),vt&&Wt.addListener(St,"mouseout",vt),q.setDraggable(!!Qt),()=>{Wt.clearInstanceListeners(St)}},[q,Qt,_e,Me,ee,i,it,vt]),Mt.useEffect(()=>{q&&Ft&&q.setOptions(Ft)},[q,Ft]),Mt.useEffect(()=>{Qt||!Ut||!q||q.setPosition(Ut)},[Qt,Ut,q]),q}Mt.forwardRef((Y,q)=>{const ne=X1(Y);return Mt.useImperativeHandle(q,()=>ne,[ne]),Mt.createElement(Mt.Fragment,null)});const Y1={"top-left":d_.LEFT_TOP,"top-right":d_.RIGHT_TOP,"bottom-left":d_.LEFT_BOTTOM,"bottom-right":d_.RIGHT_BOTTOM},K1=({isMapLoaded:Y})=>{const q=Tf(),{setBounds:ne,setZoom:ce}=Sl(),_e=()=>{var i;if(!q)return;const Me=(i=q.getBounds())==null?void 0:i.toJSON(),ee=q.getZoom();Me&&ne([Me.west,Me.south,Me.east,Me.north]),typeof ee<"u"&&ce(ee+1)};return Mt.useEffect(()=>{!Y||!q||(_e(),q.addListener("bounds_changed",()=>{_e()}))},[Y,q]),null};function J1({children:Y}){const[q,ne]=Mt.useState(!1),{mapProvider:ce,center:_e,zoom:Me=$a.zoom+1,minZoom:ee,maxZoom:i,pitch:it=$a.pitch,bearing:vt=$a.bearing,cooperativeGestures:Ft=$a.cooperativeGestures,zoomPosition:Ut}=Sl();if(ce.name!=="google")return null;const Qt=()=>{ne(!0)};return Pr.jsxs(g1,{apiKey:ce.apiKey,children:[Pr.jsx(K1,{isMapLoaded:q}),Pr.jsx(vx,{mapId:ce.theme||lm.google,defaultCenter:{lat:_e.latitude,lng:_e.longitude},defaultZoom:Me,defaultTilt:it,defaultHeading:vt,gestureHandling:Ft?"cooperative":"greedy",streetViewControl:!1,fullscreenControl:!1,clickableIcons:!1,mapTypeControl:!1,zoomControlOptions:{position:Ut&&Y1[Ut]},minZoom:typeof ee=="number"?ee+1:void 0,maxZoom:typeof i=="number"?i+1:void 0,onTilesLoaded:Qt,children:Y})]})}const Q1=Object.freeze(Object.defineProperty({__proto__:null,default:J1},Symbol.toStringTag,{value:"Module"})),Ex=Dr.createContext(null);function Ix(){var ce;const Y=(ce=Mt.useContext(Ex))==null?void 0:ce.maps,q=Mt.useContext(Op);return Mt.useMemo(()=>({...Y,current:q==null?void 0:q.map}),[Y,q])}function ew(Y,q){const ne=Array.isArray(Y)?Y[0]:Y?Y.x:0,ce=Array.isArray(Y)?Y[1]:Y?Y.y:0,_e=Array.isArray(q)?q[0]:q?q.x:0,Me=Array.isArray(q)?q[1]:q?q.y:0;return ne===_e&&ce===Me}function Pc(Y,q){if(Y===q)return!0;if(!Y||!q)return!1;if(Array.isArray(Y)){if(!Array.isArray(q)||Y.length!==q.length)return!1;for(let ne=0;ne<Y.length;ne++)if(!Pc(Y[ne],q[ne]))return!1;return!0}else if(Array.isArray(q))return!1;if(typeof Y=="object"&&typeof q=="object"){const ne=Object.keys(Y),ce=Object.keys(q);if(ne.length!==ce.length)return!1;for(const _e of ne)if(!q.hasOwnProperty(_e)||!Pc(Y[_e],q[_e]))return!1;return!0}return!1}function tw(Y){const q=Y.clone();return q.pixelsToGLUnits=Y.pixelsToGLUnits,q}function Px(Y,q){if(!Y.getProjection)return;const ne=Y.getProjection(),ce=q.getProjection();Pc(ne,ce)||q.setProjection(ne)}function Ax(Y){return{longitude:Y.center.lng,latitude:Y.center.lat,zoom:Y.zoom,pitch:Y.pitch,bearing:Y.bearing,padding:Y.padding}}function Cx(Y,q){const ne=q.viewState||q;let ce=!1;if("zoom"in ne){const _e=Y.zoom;Y.zoom=ne.zoom,ce=ce||_e!==Y.zoom}if("bearing"in ne){const _e=Y.bearing;Y.bearing=ne.bearing,ce=ce||_e!==Y.bearing}if("pitch"in ne){const _e=Y.pitch;Y.pitch=ne.pitch,ce=ce||_e!==Y.pitch}if(ne.padding&&!Y.isPaddingEqual(ne.padding)&&(ce=!0,Y.padding=ne.padding),"longitude"in ne&&"latitude"in ne){const _e=Y.center;Y.center=new _e.constructor(ne.longitude,ne.latitude),ce=ce||_e!==Y.center}return ce}const iw=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function zx(Y){if(!Y)return null;if(typeof Y=="string"||("toJS"in Y&&(Y=Y.toJS()),!Y.layers))return Y;const q={};for(const ce of Y.layers)q[ce.id]=ce;const ne=Y.layers.map(ce=>{let _e=null;"interactive"in ce&&(_e=Object.assign({},ce),delete _e.interactive);const Me=q[ce.ref];if(Me){_e=_e||Object.assign({},ce),delete _e.ref;for(const ee of iw)ee in Me&&(_e[ee]=Me[ee])}return _e||ce});return{...Y,layers:ne}}const Dx={version:8,sources:{},layers:[]},Lx={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},Vg={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},Rx={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},rw=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],nw=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"];class Mf{constructor(q,ne,ce){this._map=null,this._internalUpdate=!1,this._inRender=!1,this._hoveredFeatures=null,this._deferredEvents={move:!1,zoom:!1,pitch:!1,rotate:!1},this._onEvent=_e=>{const Me=this.props[Rx[_e.type]];Me?Me(_e):_e.type==="error"&&console.error(_e.error)},this._onPointerEvent=_e=>{(_e.type==="mousemove"||_e.type==="mouseout")&&this._updateHover(_e);const Me=this.props[Lx[_e.type]];Me&&(this.props.interactiveLayerIds&&_e.type!=="mouseover"&&_e.type!=="mouseout"&&(_e.features=this._hoveredFeatures||this._queryRenderedFeatures(_e.point)),Me(_e),delete _e.features)},this._onCameraEvent=_e=>{if(!this._internalUpdate){const Me=this.props[Vg[_e.type]];Me&&Me(_e)}_e.type in this._deferredEvents&&(this._deferredEvents[_e.type]=!1)},this._MapClass=q,this.props=ne,this._initialize(ce)}get map(){return this._map}get transform(){return this._renderTransform}setProps(q){const ne=this.props;this.props=q;const ce=this._updateSettings(q,ne);ce&&this._createShadowTransform(this._map);const _e=this._updateSize(q),Me=this._updateViewState(q,!0);this._updateStyle(q,ne),this._updateStyleComponents(q,ne),this._updateHandlers(q,ne),(ce||_e||Me&&!this._map.isMoving())&&this.redraw()}static reuse(q,ne){const ce=Mf.savedMaps.pop();if(!ce)return null;const _e=ce.map,Me=_e.getContainer();for(ne.className=Me.className;Me.childNodes.length>0;)ne.appendChild(Me.childNodes[0]);_e._container=ne,ce.setProps({...q,styleDiffing:!1}),_e.resize();const{initialViewState:ee}=q;return ee&&(ee.bounds?_e.fitBounds(ee.bounds,{...ee.fitBoundsOptions,duration:0}):ce._updateViewState(ee,!1)),_e.isStyleLoaded()?_e.fire("load"):_e.once("styledata",()=>_e.fire("load")),_e._update(),ce}_initialize(q){const{props:ne}=this,{mapStyle:ce=Dx}=ne,_e={...ne,...ne.initialViewState,accessToken:ne.mapboxAccessToken||sw()||null,container:q,style:zx(ce)},Me=_e.initialViewState||_e.viewState||_e;if(Object.assign(_e,{center:[Me.longitude||0,Me.latitude||0],zoom:Me.zoom||0,pitch:Me.pitch||0,bearing:Me.bearing||0}),ne.gl){const Ft=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=Ft,ne.gl)}const ee=new this._MapClass(_e);Me.padding&&ee.setPadding(Me.padding),ne.cursor&&(ee.getCanvas().style.cursor=ne.cursor),this._createShadowTransform(ee);const i=ee._render;ee._render=Ft=>{this._inRender=!0,i.call(ee,Ft),this._inRender=!1};const it=ee._renderTaskQueue.run;ee._renderTaskQueue.run=Ft=>{it.call(ee._renderTaskQueue,Ft),this._onBeforeRepaint()},ee.on("render",()=>this._onAfterRepaint());const vt=ee.fire;ee.fire=this._fireEvent.bind(this,vt),ee.on("resize",()=>{this._renderTransform.resize(ee.transform.width,ee.transform.height)}),ee.on("styledata",()=>{this._updateStyleComponents(this.props,{}),Px(ee.transform,this._renderTransform)}),ee.on("sourcedata",()=>this._updateStyleComponents(this.props,{}));for(const Ft in Lx)ee.on(Ft,this._onPointerEvent);for(const Ft in Vg)ee.on(Ft,this._onCameraEvent);for(const Ft in Rx)ee.on(Ft,this._onEvent);this._map=ee}recycle(){const ne=this.map.getContainer().querySelector("[mapboxgl-children]");ne==null||ne.remove(),Mf.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){const q=this._map;!this._inRender&&q.style&&(q._frame&&(q._frame.cancel(),q._frame=null),q._render())}_createShadowTransform(q){const ne=tw(q.transform);q.painter.transform=ne,this._renderTransform=ne}_updateSize(q){const{viewState:ne}=q;if(ne){const ce=this._map;if(ne.width!==ce.transform.width||ne.height!==ce.transform.height)return ce.resize(),!0}return!1}_updateViewState(q,ne){if(this._internalUpdate)return!1;const ce=this._map,_e=this._renderTransform,{zoom:Me,pitch:ee,bearing:i}=_e,it=ce.isMoving();it&&(_e.cameraElevationReference="sea");const vt=Cx(_e,{...Ax(ce.transform),...q});if(it&&(_e.cameraElevationReference="ground"),vt&&ne){const Ft=this._deferredEvents;Ft.move=!0,Ft.zoom||(Ft.zoom=Me!==_e.zoom),Ft.rotate||(Ft.rotate=i!==_e.bearing),Ft.pitch||(Ft.pitch=ee!==_e.pitch)}return it||Cx(ce.transform,q),vt}_updateSettings(q,ne){const ce=this._map;let _e=!1;for(const Me of rw)if(Me in q&&!Pc(q[Me],ne[Me])){_e=!0;const ee=ce[`set${Me[0].toUpperCase()}${Me.slice(1)}`];ee==null||ee.call(ce,q[Me])}return _e}_updateStyle(q,ne){if(q.cursor!==ne.cursor&&(this._map.getCanvas().style.cursor=q.cursor||""),q.mapStyle!==ne.mapStyle){const{mapStyle:ce=Dx,styleDiffing:_e=!0}=q,Me={diff:_e};return"localIdeographFontFamily"in q&&(Me.localIdeographFontFamily=q.localIdeographFontFamily),this._map.setStyle(zx(ce),Me),!0}return!1}_updateStyleComponents(q,ne){const ce=this._map;let _e=!1;return ce.isStyleLoaded()&&("light"in q&&ce.setLight&&!Pc(q.light,ne.light)&&(_e=!0,ce.setLight(q.light)),"fog"in q&&ce.setFog&&!Pc(q.fog,ne.fog)&&(_e=!0,ce.setFog(q.fog)),"terrain"in q&&ce.setTerrain&&!Pc(q.terrain,ne.terrain)&&(!q.terrain||ce.getSource(q.terrain.source))&&(_e=!0,ce.setTerrain(q.terrain))),_e}_updateHandlers(q,ne){const ce=this._map;let _e=!1;for(const Me of nw){const ee=q[Me]??!0,i=ne[Me]??!0;Pc(ee,i)||(_e=!0,ee?ce[Me].enable(ee):ce[Me].disable())}return _e}_queryRenderedFeatures(q){const ne=this._map,ce=ne.transform,{interactiveLayerIds:_e=[]}=this.props;try{return ne.transform=this._renderTransform,ne.queryRenderedFeatures(q,{layers:_e.filter(ne.getLayer.bind(ne))})}catch{return[]}finally{ne.transform=ce}}_updateHover(q){var _e;const{props:ne}=this;if(ne.interactiveLayerIds&&(ne.onMouseMove||ne.onMouseEnter||ne.onMouseLeave)){const Me=q.type,ee=((_e=this._hoveredFeatures)==null?void 0:_e.length)>0,i=this._queryRenderedFeatures(q.point),it=i.length>0;!it&&ee&&(q.type="mouseleave",this._onPointerEvent(q)),this._hoveredFeatures=i,it&&!ee&&(q.type="mouseenter",this._onPointerEvent(q)),q.type=Me}else this._hoveredFeatures=null}_fireEvent(q,ne,ce){const _e=this._map,Me=_e.transform,ee=typeof ne=="string"?ne:ne.type;return ee==="move"&&this._updateViewState(this.props,!1),ee in Vg&&(typeof ne=="object"&&(ne.viewState=Ax(Me)),this._map.isMoving())?(_e.transform=this._renderTransform,q.call(_e,ne,ce),_e.transform=Me,_e):(q.call(_e,ne,ce),_e)}_onBeforeRepaint(){const q=this._map;this._internalUpdate=!0;for(const ce in this._deferredEvents)this._deferredEvents[ce]&&q.fire(ce);this._internalUpdate=!1;const ne=this._map.transform;q.transform=this._renderTransform,this._onAfterRepaint=()=>{Px(this._renderTransform,ne),q.transform=ne}}}Mf.savedMaps=[];function sw(){let Y=null;if(typeof location<"u"){const q=/access_token=([^&\/]*)/.exec(location.search);Y=q&&q[1]}try{Y=Y||process.env.MapboxAccessToken}catch{}try{Y=Y||process.env.REACT_APP_MAPBOX_ACCESS_TOKEN}catch{}return Y}const ow=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function aw(Y){if(!Y)return null;const q=Y.map,ne={getMap:()=>q,getCenter:()=>Y.transform.center,getZoom:()=>Y.transform.zoom,getBearing:()=>Y.transform.bearing,getPitch:()=>Y.transform.pitch,getPadding:()=>Y.transform.padding,getBounds:()=>Y.transform.getBounds(),project:ce=>{const _e=q.transform;q.transform=Y.transform;const Me=q.project(ce);return q.transform=_e,Me},unproject:ce=>{const _e=q.transform;q.transform=Y.transform;const Me=q.unproject(ce);return q.transform=_e,Me},queryTerrainElevation:(ce,_e)=>{const Me=q.transform;q.transform=Y.transform;const ee=q.queryTerrainElevation(ce,_e);return q.transform=Me,ee},queryRenderedFeatures:(ce,_e)=>{const Me=q.transform;q.transform=Y.transform;const ee=q.queryRenderedFeatures(ce,_e);return q.transform=Me,ee}};for(const ce of lw(q))!(ce in ne)&&!ow.includes(ce)&&(ne[ce]=q[ce].bind(q));return ne}function lw(Y){const q=new Set;let ne=Y;for(;ne;){for(const ce of Object.getOwnPropertyNames(ne))ce[0]!=="_"&&typeof Y[ce]=="function"&&ce!=="fire"&&ce!=="setEventedParent"&&q.add(ce);ne=Object.getPrototypeOf(ne)}return Array.from(q)}const cw=typeof document<"u"?Mt.useLayoutEffect:Mt.useEffect,uw=["baseApiUrl","maxParallelImageRequests","workerClass","workerCount","workerUrl"];function hw(Y,q){for(const ce of uw)ce in q&&(Y[ce]=q[ce]);const{RTLTextPlugin:ne="https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-rtl-text/v0.2.3/mapbox-gl-rtl-text.js"}=q;ne&&Y.getRTLTextPluginStatus&&Y.getRTLTextPluginStatus()==="unavailable"&&Y.setRTLTextPlugin(ne,ce=>{ce&&console.error(ce)},!0)}const Op=Dr.createContext(null);function dw(Y,q){const ne=Mt.useContext(Ex),[ce,_e]=Mt.useState(null),Me=Mt.useRef(),{current:ee}=Mt.useRef({mapLib:null,map:null});Mt.useEffect(()=>{const vt=Y.mapLib;let Ft=!0,Ut;return Promise.resolve(vt||Promise.resolve().then(()=>f2)).then(Qt=>{if(!Ft)return;if(!Qt)throw new Error("Invalid mapLib");const St="Map"in Qt?Qt:Qt.default;if(!St.Map)throw new Error("Invalid mapLib");if(hw(St,Y),!St.supported||St.supported(Y))Y.reuseMaps&&(Ut=Mf.reuse(Y,Me.current)),Ut||(Ut=new Mf(St.Map,Y,Me.current)),ee.map=aw(Ut),ee.mapLib=St,_e(Ut),ne==null||ne.onMapMount(ee.map,Y.id);else throw new Error("Map is not supported by this browser")}).catch(Qt=>{const{onError:St}=Y;St?St({type:"error",target:null,error:Qt}):console.error(Qt)}),()=>{Ft=!1,Ut&&(ne==null||ne.onMapUnmount(Y.id),Y.reuseMaps?Ut.recycle():Ut.destroy())}},[]),cw(()=>{ce&&ce.setProps(Y)}),Mt.useImperativeHandle(q,()=>ee.map,[ce]);const i=Mt.useMemo(()=>({position:"relative",width:"100%",height:"100%",...Y.style}),[Y.style]),it={height:"100%"};return Dr.createElement("div",{id:Y.id,ref:Me,style:i},ce&&Dr.createElement(Op.Provider,{value:ee},Dr.createElement("div",{"mapboxgl-children":"",style:it},Y.children)))}const pw=Dr.forwardRef(dw),fw=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function Fp(Y,q){if(!Y||!q)return;const ne=Y.style;for(const ce in q){const _e=q[ce];Number.isFinite(_e)&&!fw.test(ce)?ne[ce]=`${_e}px`:ne[ce]=_e}}const kx=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Op),_e=Mt.useRef({props:Y});_e.current.props=Y;const Me=Mt.useMemo(()=>{let Ci=!1;Dr.Children.forEach(Y.children,_r=>{_r&&(Ci=!0)});const Sr={...Y,element:Ci?document.createElement("div"):null},Ri=new ce.Marker(Sr);return Ri.setLngLat([Y.longitude,Y.latitude]),Ri.getElement().addEventListener("click",_r=>{var gr,Fi;(Fi=(gr=_e.current.props).onClick)==null||Fi.call(gr,{type:"click",target:Ri,originalEvent:_r})}),Ri.on("dragstart",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragStart)==null||Cr.call(Fi,gr)}),Ri.on("drag",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDrag)==null||Cr.call(Fi,gr)}),Ri.on("dragend",_r=>{var Fi,Cr;const gr=_r;gr.lngLat=Me.getLngLat(),(Cr=(Fi=_e.current.props).onDragEnd)==null||Cr.call(Fi,gr)}),Ri},[]);Mt.useEffect(()=>(Me.addTo(ne.getMap()),()=>{Me.remove()}),[]);const{longitude:ee,latitude:i,offset:it,style:vt,draggable:Ft=!1,popup:Ut=null,rotation:Qt=0,rotationAlignment:St="auto",pitchAlignment:Wt="auto"}=Y;return Mt.useEffect(()=>{Fp(Me.getElement(),vt)},[vt]),Mt.useImperativeHandle(q,()=>Me,[]),(Me.getLngLat().lng!==ee||Me.getLngLat().lat!==i)&&Me.setLngLat([ee,i]),it&&!ew(Me.getOffset(),it)&&Me.setOffset(it),Me.isDraggable()!==Ft&&Me.setDraggable(Ft),Me.getRotation()!==Qt&&Me.setRotation(Qt),Me.getRotationAlignment()!==St&&Me.setRotationAlignment(St),Me.getPitchAlignment()!==Wt&&Me.setPitchAlignment(Wt),Me.getPopup()!==Ut&&Me.setPopup(Ut),Cp.createPortal(Y.children,Me.getElement())}));function Ox(Y){return new Set(Y?Y.trim().split(/\s+/):[])}const mw=Mt.memo(Mt.forwardRef((Y,q)=>{const{map:ne,mapLib:ce}=Mt.useContext(Op),_e=Mt.useMemo(()=>document.createElement("div"),[]),Me=Mt.useRef({props:Y});Me.current.props=Y;const ee=Mt.useMemo(()=>{const i={...Y},it=new ce.Popup(i);return it.setLngLat([Y.longitude,Y.latitude]),it.once("open",vt=>{var Ft,Ut;(Ut=(Ft=Me.current.props).onOpen)==null||Ut.call(Ft,vt)}),it},[]);if(Mt.useEffect(()=>{const i=it=>{var vt,Ft;(Ft=(vt=Me.current.props).onClose)==null||Ft.call(vt,it)};return ee.on("close",i),ee.setDOMContent(_e).addTo(ne.getMap()),()=>{ee.off("close",i),ee.isOpen()&&ee.remove()}},[]),Mt.useEffect(()=>{Fp(ee.getElement(),Y.style)},[Y.style]),Mt.useImperativeHandle(q,()=>ee,[]),ee.isOpen()&&((ee.getLngLat().lng!==Y.longitude||ee.getLngLat().lat!==Y.latitude)&&ee.setLngLat([Y.longitude,Y.latitude]),Y.offset&&!Pc(ee.options.offset,Y.offset)&&ee.setOffset(Y.offset),(ee.options.anchor!==Y.anchor||ee.options.maxWidth!==Y.maxWidth)&&(ee.options.anchor=Y.anchor,ee.setMaxWidth(Y.maxWidth)),ee.options.className!==Y.className)){const i=Ox(ee.options.className),it=Ox(Y.className);for(const vt of i)it.has(vt)||ee.removeClassName(vt);for(const vt of it)i.has(vt)||ee.addClassName(vt);ee.options.className=Y.className}return Cp.createPortal(Y.children,_e)}));function pm(Y,q,ne,ce){const _e=Mt.useContext(Op),Me=Mt.useMemo(()=>Y(_e),[]);return Mt.useEffect(()=>{const ee=q,i=null,it=typeof q=="function"?q:null,{map:vt}=_e;return vt.hasControl(Me)||(vt.addControl(Me,ee==null?void 0:ee.position),i&&i(_e)),()=>{it&&it(_e),vt.hasControl(Me)&&vt.removeControl(Me)}},[]),Me}function _w(Y){const q=pm(({mapLib:ne})=>new ne.AttributionControl(Y),{position:Y.position});return Mt.useEffect(()=>{Fp(q._container,Y.style)},[Y.style]),null}Mt.memo(_w);function gw(Y){const q=pm(({mapLib:ne})=>new ne.FullscreenControl({container:Y.containerId&&document.getElementById(Y.containerId)}),{position:Y.position});return Mt.useEffect(()=>{Fp(q._controlContainer,Y.style)},[Y.style]),null}Mt.memo(gw);function yw(Y,q){const ne=Mt.useRef({props:Y}),ce=pm(({mapLib:_e})=>{const Me=new _e.GeolocateControl(Y),ee=Me._setupUI.bind(Me);return Me._setupUI=i=>{Me._container.hasChildNodes()||ee(i)},Me.on("geolocate",i=>{var it,vt;(vt=(it=ne.current.props).onGeolocate)==null||vt.call(it,i)}),Me.on("error",i=>{var it,vt;(vt=(it=ne.current.props).onError)==null||vt.call(it,i)}),Me.on("outofmaxbounds",i=>{var it,vt;(vt=(it=ne.current.props).onOutOfMaxBounds)==null||vt.call(it,i)}),Me.on("trackuserlocationstart",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationStart)==null||vt.call(it,i)}),Me.on("trackuserlocationend",i=>{var it,vt;(vt=(it=ne.current.props).onTrackUserLocationEnd)==null||vt.call(it,i)}),Me},{position:Y.position});return ne.current.props=Y,Mt.useImperativeHandle(q,()=>ce,[]),Mt.useEffect(()=>{Fp(ce._container,Y.style)},[Y.style]),null}Mt.memo(Mt.forwardRef(yw));function xw(Y){const q=pm(({mapLib:ne})=>new ne.NavigationControl(Y),{position:Y.position});return Mt.useEffect(()=>{Fp(q._container,Y.style)},[Y.style]),null}const vw=Mt.memo(xw);function bw(Y){const q=pm(({mapLib:Me})=>new Me.ScaleControl(Y),{position:Y.position}),ne=Mt.useRef(Y),ce=ne.current;ne.current=Y;const{style:_e}=Y;return Y.maxWidth!==void 0&&Y.maxWidth!==ce.maxWidth&&(q.options.maxWidth=Y.maxWidth),Y.unit!==void 0&&Y.unit!==ce.unit&&q.setUnit(Y.unit),Mt.useEffect(()=>{Fp(q._container,_e)},[_e]),null}Mt.memo(bw);function p_(Y,q){if(!Y)throw new Error(q)}let ww=0;function Tw(Y,q,ne){if(Y.style&&Y.style._loaded){const ce={...ne};return delete ce.id,delete ce.children,Y.addSource(q,ce),Y.getSource(q)}return null}function Sw(Y,q,ne){p_(q.id===ne.id,"source id changed"),p_(q.type===ne.type,"source type changed");let ce="",_e=0;for(const ee in q)ee!=="children"&&ee!=="id"&&!Pc(ne[ee],q[ee])&&(ce=ee,_e++);if(!_e)return;const Me=q.type;Me==="geojson"?Y.setData(q.data):Me==="image"?Y.updateImage({url:q.url,coordinates:q.coordinates}):"setCoordinates"in Y&&_e===1&&ce==="coordinates"?Y.setCoordinates(q.coordinates):"setUrl"in Y&&ce==="url"?Y.setUrl(q.url):"setTiles"in Y&&ce==="tiles"?Y.setTiles(q.tiles):console.warn(`Unable to update <Source> prop: ${ce}`)}function Mw(Y){const q=Mt.useContext(Op).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-source-${ww++}`,[]);Mt.useEffect(()=>{if(q){const ee=()=>setTimeout(()=>ce(i=>i+1),0);return q.on("styledata",ee),ee(),()=>{var i;if(q.off("styledata",ee),q.style&&q.style._loaded&&q.getSource(_e)){const it=(i=q.getStyle())==null?void 0:i.layers;if(it)for(const vt of it)vt.source===_e&&q.removeLayer(vt.id);q.removeSource(_e)}}}},[q]);let Me=q&&q.style&&q.getSource(_e);return Me?Sw(Me,Y,ne.current):Me=Tw(q,_e,Y),ne.current=Y,Me&&Dr.Children.map(Y.children,ee=>ee&&Mt.cloneElement(ee,{source:_e}))||null}function Ew(Y,q,ne,ce){if(p_(ne.id===ce.id,"layer id changed"),p_(ne.type===ce.type,"layer type changed"),ne.type==="custom"||ce.type==="custom")return;const{layout:_e={},paint:Me={},filter:ee,minzoom:i,maxzoom:it,beforeId:vt}=ne;if(vt!==ce.beforeId&&Y.moveLayer(q,vt),_e!==ce.layout){const Ft=ce.layout||{};for(const Ut in _e)Pc(_e[Ut],Ft[Ut])||Y.setLayoutProperty(q,Ut,_e[Ut]);for(const Ut in Ft)_e.hasOwnProperty(Ut)||Y.setLayoutProperty(q,Ut,void 0)}if(Me!==ce.paint){const Ft=ce.paint||{};for(const Ut in Me)Pc(Me[Ut],Ft[Ut])||Y.setPaintProperty(q,Ut,Me[Ut]);for(const Ut in Ft)Me.hasOwnProperty(Ut)||Y.setPaintProperty(q,Ut,void 0)}Pc(ee,ce.filter)||Y.setFilter(q,ee),(i!==ce.minzoom||it!==ce.maxzoom)&&Y.setLayerZoomRange(q,i,it)}function Iw(Y,q,ne){if(Y.style&&Y.style._loaded&&(!("source"in ne)||Y.getSource(ne.source))){const ce={...ne,id:q};delete ce.beforeId,Y.addLayer(ce,ne.beforeId)}}let Pw=0;function Fx(Y){const q=Mt.useContext(Op).map.getMap(),ne=Mt.useRef(Y),[,ce]=Mt.useState(0),_e=Mt.useMemo(()=>Y.id||`jsx-layer-${Pw++}`,[]);if(Mt.useEffect(()=>{if(q){const ee=()=>ce(i=>i+1);return q.on("styledata",ee),ee(),()=>{q.off("styledata",ee),q.style&&q.style._loaded&&q.getLayer(_e)&&q.removeLayer(_e)}}},[q]),q&&q.style&&q.getLayer(_e))try{Ew(q,_e,Y,ne.current)}catch(ee){console.warn(ee)}else Iw(q,_e,Y);return ne.current=Y,null}const Aw=()=>{const{current:Y}=Ix(),{setBounds:q,setZoom:ne}=Sl(),ce=()=>{var _e;Y&&(q((_e=Y.getBounds())==null?void 0:_e.toArray().flat()),ne(Y.getZoom()))};return Mt.useEffect(()=>{Y&&(ce(),Y.on("move",()=>{ce()}))},[Y]),null};function Cw({children:Y}){const{mapProvider:q,center:ne,zoom:ce=$a.zoom,minZoom:_e,maxZoom:Me,pitch:ee=$a.pitch,bearing:i=$a.bearing,cooperativeGestures:it=$a.cooperativeGestures,zoomPosition:vt}=Sl();return q.name!=="mapbox"?null:Pr.jsxs(pw,{mapboxAccessToken:q.apiKey,initialViewState:{...ne,zoom:ce,pitch:ee,bearing:i},cooperativeGestures:it,minZoom:_e,maxZoom:Me,mapStyle:`mapbox://styles/${q.theme||lm.mapbox}`,interactiveLayerIds:["road-label","waterway-label"],children:[Pr.jsx(Aw,{}),vt&&Pr.jsx(vw,{position:vt}),Y]})}const zw=Object.freeze(Object.defineProperty({__proto__:null,default:Cw},Symbol.toStringTag,{value:"Module"}));function Dw(){return Pr.jsx("div",{children:"Invalid map provider"})}const Lw=Object.freeze(Object.defineProperty({__proto__:null,default:Dw},Symbol.toStringTag,{value:"Module"})),Rw=new Map([["bold",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,204H228V144a12,12,0,0,0,12.49-19.78L142.14,25.85a20,20,0,0,0-28.28,0L15.51,124.2A12,12,0,0,0,28,144v60H16a12,12,0,0,0,0,24H240a12,12,0,0,0,0-24ZM52,121.65l76-76,76,76V204H164V152a12,12,0,0,0-12-12H104a12,12,0,0,0-12,12v52H52ZM140,204H116V164h24Z"}))],["duotone",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M216,116.69V216H152V152H104v64H40V116.69l82.34-82.35a8,8,0,0,1,11.32,0Z",opacity:"0.2"}),Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16ZM48,120l80-80,80,80v88H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48Zm96,88H112V160h32Z"}))],["fill",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16Zm-88,0H104V160a4,4,0,0,1,4-4h40a4,4,0,0,1,4,4Z"}))],["light",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,210H222V131.17l5.76,5.76a6,6,0,0,0,8.48-8.49L137.9,30.09a14,14,0,0,0-19.8,0L19.76,128.44a6,6,0,0,0,8.48,8.49L34,131.17V210H16a6,6,0,0,0,0,12H240a6,6,0,0,0,0-12ZM46,119.17l80.58-80.59a2,2,0,0,1,2.84,0L210,119.17V210H158V152a6,6,0,0,0-6-6H104a6,6,0,0,0-6,6v58H46ZM146,210H110V158h36Z"}))],["regular",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,208H224V136l2.34,2.34A8,8,0,0,0,237.66,127L139.31,28.68a16,16,0,0,0-22.62,0L18.34,127a8,8,0,0,0,11.32,11.31L32,136v72H16a8,8,0,0,0,0,16H240a8,8,0,0,0,0-16ZM48,120l80-80,80,80v88H160V152a8,8,0,0,0-8-8H104a8,8,0,0,0-8,8v56H48Zm96,88H112V160h32Z"}))],["thin",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M240,212H220V126.34l9.17,9.17a4,4,0,1,0,5.66-5.66L136.49,31.51a12,12,0,0,0-17,0L21.17,129.85a4,4,0,1,0,5.66,5.66L36,126.34V212H16a4,4,0,0,0,0,8H240a4,4,0,0,0,0-8ZM44,118.34l81.17-81.17a4,4,0,0,1,5.66,0L212,118.34V212H156V152a4,4,0,0,0-4-4H104a4,4,0,0,0-4,4v60H44ZM148,212H108V156h40Z"}))]]),kw=new Map([["bold",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,60a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,60Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,124Zm0-112a92.1,92.1,0,0,0-92,92c0,77.36,81.64,135.4,85.12,137.83a12,12,0,0,0,13.76,0,259,259,0,0,0,42.18-39C205.15,170.57,220,136.37,220,104A92.1,92.1,0,0,0,128,12Zm31.3,174.71A249.35,249.35,0,0,1,128,216.89a249.35,249.35,0,0,1-31.3-30.18C80,167.37,60,137.31,60,104a68,68,0,0,1,136,0C196,137.31,176,167.37,159.3,186.71Z"}))],["duotone",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,24a80,80,0,0,0-80,80c0,72,80,128,80,128s80-56,80-128A80,80,0,0,0,128,24Zm0,112a32,32,0,1,1,32-32A32,32,0,0,1,128,136Z",opacity:"0.2"}),Dr.createElement("path",{d:"M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z"}))],["fill",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,16a88.1,88.1,0,0,0-88,88c0,75.3,80,132.17,83.41,134.55a8,8,0,0,0,9.18,0C136,236.17,216,179.3,216,104A88.1,88.1,0,0,0,128,16Zm0,56a32,32,0,1,1-32,32A32,32,0,0,1,128,72Z"}))],["light",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,66a38,38,0,1,0,38,38A38,38,0,0,0,128,66Zm0,64a26,26,0,1,1,26-26A26,26,0,0,1,128,130Zm0-112a86.1,86.1,0,0,0-86,86c0,30.91,14.34,63.74,41.47,94.94a252.32,252.32,0,0,0,41.09,38,6,6,0,0,0,6.88,0,252.32,252.32,0,0,0,41.09-38c27.13-31.2,41.47-64,41.47-94.94A86.1,86.1,0,0,0,128,18Zm0,206.51C113,212.93,54,163.62,54,104a74,74,0,0,1,148,0C202,163.62,143,212.93,128,224.51Z"}))],["regular",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,64a40,40,0,1,0,40,40A40,40,0,0,0,128,64Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,128Zm0-112a88.1,88.1,0,0,0-88,88c0,31.4,14.51,64.68,42,96.25a254.19,254.19,0,0,0,41.45,38.3,8,8,0,0,0,9.18,0A254.19,254.19,0,0,0,174,200.25c27.45-31.57,42-64.85,42-96.25A88.1,88.1,0,0,0,128,16Zm0,206c-16.53-13-72-60.75-72-118a72,72,0,0,1,144,0C200,161.23,144.53,209,128,222Z"}))],["thin",Dr.createElement(Dr.Fragment,null,Dr.createElement("path",{d:"M128,68a36,36,0,1,0,36,36A36,36,0,0,0,128,68Zm0,64a28,28,0,1,1,28-28A28,28,0,0,1,128,132Zm0-112a84.09,84.09,0,0,0-84,84c0,30.42,14.17,62.79,41,93.62a250,250,0,0,0,40.73,37.66,4,4,0,0,0,4.58,0A250,250,0,0,0,171,197.62c26.81-30.83,41-63.2,41-93.62A84.09,84.09,0,0,0,128,20Zm37.1,172.23A254.62,254.62,0,0,1,128,227a254.62,254.62,0,0,1-37.1-34.81C73.15,171.8,52,139.9,52,104a76,76,0,0,1,152,0C204,139.9,182.85,171.8,165.1,192.23Z"}))]]),Ow=Mt.createContext({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),jg=Dr.forwardRef((Y,q)=>{const{alt:ne,color:ce,size:_e,weight:Me,mirrored:ee,children:i,weights:it,...vt}=Y,{color:Ft="currentColor",size:Ut,weight:Qt="regular",mirrored:St=!1,...Wt}=Dr.useContext(Ow);return Dr.createElement("svg",{ref:q,xmlns:"http://www.w3.org/2000/svg",width:_e??Ut,height:_e??Ut,fill:ce??Ft,viewBox:"0 0 256 256",transform:ee||St?"scale(-1, 1)":void 0,...Wt,...vt},!!ne&&Dr.createElement("title",null,ne),i,it.get(Me??Qt))});jg.displayName="IconBase";const f_=Dr.forwardRef((Y,q)=>Dr.createElement(jg,{ref:q,...Y,weights:Rw}));f_.displayName="HouseLineIcon";const Bx=Dr.forwardRef((Y,q)=>Dr.createElement(jg,{ref:q,...Y,weights:kw}));Bx.displayName="MapPinIcon";const Ug=Y=>Dr.createElement("svg",{width:34,height:41,viewBox:"0 0 34 41",fill:"none",xmlns:"http://www.w3.org/2000/svg",...Y},Dr.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M17 0C26.3888 0 34 7.61116 34 17C34 24.1987 29.5256 30.3524 23.2061 32.8316L17.9683 39.991C17.8591 40.1409 17.7141 40.2632 17.5456 40.3476C17.377 40.4321 17.1899 40.4762 17 40.4762C16.8101 40.4762 16.623 40.4321 16.4544 40.3476C16.2859 40.2632 16.1409 40.1409 16.0317 39.991L10.7939 32.8316C4.47445 30.3524 0 24.1987 0 17C0 7.61116 7.61116 0 17 0Z",fill:"#008491"})),Gg=`
2
2
  relative flex items-center justify-center z-10
3
3
  `,Zg=`
4
4
  w-5 h-5 fill-base-white
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Map/Root/BaseMap/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAK7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQ5C,eAAO,MAAM,OAAO,GAAI,cAAc,YAAY,sBA2CjD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Map/Root/BaseMap/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAKvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQ5C,eAAO,MAAM,OAAO,GAAI,cAAc,YAAY,sBA4CjD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@local-logic/maps",
3
- "version": "0.0.10",
3
+ "version": "0.0.11",
4
4
  "description": "This is a maps implementation allowing for the display of Local Logic data on a map.",
5
5
  "author": "Local Logic",
6
6
  "license": "ISC",