@tracktor/map 1.2.2 → 1.2.3

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.
@@ -8,6 +8,7 @@ interface FitBoundsProps {
8
8
  disableAnimation?: boolean;
9
9
  fitBounds?: boolean;
10
10
  animationKey?: unknown;
11
+ offset?: [number, number];
11
12
  }
12
- declare const FitBounds: ({ markers, features, padding, duration, disableAnimation, fitBounds, animationKey, }: FitBoundsProps) => null;
13
+ declare const FitBounds: ({ markers, features, padding, duration, disableAnimation, fitBounds, animationKey, offset, }: FitBoundsProps) => null;
13
14
  export default FitBounds;
package/dist/main.js CHANGED
@@ -22,16 +22,16 @@ function je() {
22
22
  se = 1;
23
23
  var t = Symbol.for("react.transitional.element"), a = Symbol.for("react.fragment");
24
24
  function s(l, n, i) {
25
- var m = null;
26
- if (i !== void 0 && (m = "" + i), n.key !== void 0 && (m = "" + n.key), "key" in n) {
25
+ var g = null;
26
+ if (i !== void 0 && (g = "" + i), n.key !== void 0 && (g = "" + n.key), "key" in n) {
27
27
  i = {};
28
- for (var b in n)
29
- b !== "key" && (i[b] = n[b]);
28
+ for (var y in n)
29
+ y !== "key" && (i[y] = n[y]);
30
30
  } else i = n;
31
31
  return n = i.ref, {
32
32
  $$typeof: t,
33
33
  type: l,
34
- key: m,
34
+ key: g,
35
35
  ref: n !== void 0 ? n : null,
36
36
  props: i
37
37
  };
@@ -57,7 +57,7 @@ function Se() {
57
57
  return e.$$typeof === w ? null : e.displayName || e.name || null;
58
58
  if (typeof e == "string") return e;
59
59
  switch (e) {
60
- case R:
60
+ case _:
61
61
  return "Fragment";
62
62
  case T:
63
63
  return "Profiler";
@@ -74,7 +74,7 @@ function Se() {
74
74
  switch (typeof e.tag == "number" && console.error(
75
75
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
76
76
  ), e.$$typeof) {
77
- case h:
77
+ case R:
78
78
  return "Portal";
79
79
  case L:
80
80
  return e.displayName || "Context";
@@ -115,7 +115,7 @@ function Se() {
115
115
  }
116
116
  }
117
117
  function l(e) {
118
- if (e === R) return "<>";
118
+ if (e === _) return "<>";
119
119
  if (typeof e == "object" && e !== null && e.$$typeof === A)
120
120
  return "<...>";
121
121
  try {
@@ -126,20 +126,20 @@ function Se() {
126
126
  }
127
127
  }
128
128
  function n() {
129
- var e = x.A;
129
+ var e = v.A;
130
130
  return e === null ? null : e.getOwner();
131
131
  }
132
132
  function i() {
133
133
  return Error("react-stack-top-frame");
134
134
  }
135
- function m(e) {
136
- if (p.call(e, "key")) {
135
+ function g(e) {
136
+ if (m.call(e, "key")) {
137
137
  var r = Object.getOwnPropertyDescriptor(e, "key").get;
138
138
  if (r && r.isReactWarning) return !1;
139
139
  }
140
140
  return e.key !== void 0;
141
141
  }
142
- function b(e, r) {
142
+ function y(e, r) {
143
143
  function o() {
144
144
  B || (B = !0, console.error(
145
145
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
@@ -151,23 +151,23 @@ function Se() {
151
151
  configurable: !0
152
152
  });
153
153
  }
154
- function _() {
154
+ function k() {
155
155
  var e = t(this.type);
156
156
  return U[e] || (U[e] = !0, console.error(
157
157
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
158
158
  )), e = this.props.ref, e !== void 0 ? e : null;
159
159
  }
160
- function v(e, r, o, c, J, H) {
160
+ function h(e, r, o, c, J, H) {
161
161
  var f = o.ref;
162
162
  return e = {
163
- $$typeof: k,
163
+ $$typeof: x,
164
164
  type: e,
165
165
  key: r,
166
166
  props: o,
167
167
  _owner: c
168
168
  }, (f !== void 0 ? f : null) !== null ? Object.defineProperty(e, "ref", {
169
169
  enumerable: !1,
170
- get: _
170
+ get: k
171
171
  }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
172
172
  configurable: !1,
173
173
  enumerable: !1,
@@ -190,20 +190,20 @@ function Se() {
190
190
  value: H
191
191
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
192
192
  }
193
- function g(e, r, o, c, J, H) {
193
+ function p(e, r, o, c, J, H) {
194
194
  var f = r.children;
195
195
  if (f !== void 0)
196
196
  if (c)
197
197
  if (P(f)) {
198
198
  for (c = 0; c < f.length; c++)
199
- y(f[c]);
199
+ E(f[c]);
200
200
  Object.freeze && Object.freeze(f);
201
201
  } else
202
202
  console.error(
203
203
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
204
204
  );
205
- else y(f);
206
- if (p.call(r, "key")) {
205
+ else E(f);
206
+ if (m.call(r, "key")) {
207
207
  f = t(e);
208
208
  var M = Object.keys(r).filter(function(ge) {
209
209
  return ge !== "key";
@@ -221,15 +221,15 @@ React keys must be passed directly to JSX without using spread:
221
221
  f
222
222
  ), V[f + c] = !0);
223
223
  }
224
- if (f = null, o !== void 0 && (s(o), f = "" + o), m(r) && (s(r.key), f = "" + r.key), "key" in r) {
224
+ if (f = null, o !== void 0 && (s(o), f = "" + o), g(r) && (s(r.key), f = "" + r.key), "key" in r) {
225
225
  o = {};
226
226
  for (var K in r)
227
227
  K !== "key" && (o[K] = r[K]);
228
228
  } else o = r;
229
- return f && b(
229
+ return f && y(
230
230
  o,
231
231
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
232
- ), v(
232
+ ), h(
233
233
  e,
234
234
  f,
235
235
  o,
@@ -238,27 +238,27 @@ React keys must be passed directly to JSX without using spread:
238
238
  H
239
239
  );
240
240
  }
241
- function y(e) {
242
- d(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === A && (e._payload.status === "fulfilled" ? d(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
241
+ function E(e) {
242
+ b(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === A && (e._payload.status === "fulfilled" ? b(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
243
243
  }
244
- function d(e) {
245
- return typeof e == "object" && e !== null && e.$$typeof === k;
244
+ function b(e) {
245
+ return typeof e == "object" && e !== null && e.$$typeof === x;
246
246
  }
247
- var E = be, k = Symbol.for("react.transitional.element"), h = Symbol.for("react.portal"), R = Symbol.for("react.fragment"), N = Symbol.for("react.strict_mode"), T = Symbol.for("react.profiler"), j = Symbol.for("react.consumer"), L = Symbol.for("react.context"), S = Symbol.for("react.forward_ref"), $ = Symbol.for("react.suspense"), C = Symbol.for("react.suspense_list"), I = Symbol.for("react.memo"), A = Symbol.for("react.lazy"), Y = Symbol.for("react.activity"), w = Symbol.for("react.client.reference"), x = E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, p = Object.prototype.hasOwnProperty, P = Array.isArray, O = console.createTask ? console.createTask : function() {
247
+ var d = be, x = Symbol.for("react.transitional.element"), R = Symbol.for("react.portal"), _ = Symbol.for("react.fragment"), N = Symbol.for("react.strict_mode"), T = Symbol.for("react.profiler"), j = Symbol.for("react.consumer"), L = Symbol.for("react.context"), S = Symbol.for("react.forward_ref"), $ = Symbol.for("react.suspense"), C = Symbol.for("react.suspense_list"), I = Symbol.for("react.memo"), A = Symbol.for("react.lazy"), Y = Symbol.for("react.activity"), w = Symbol.for("react.client.reference"), v = d.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, m = Object.prototype.hasOwnProperty, P = Array.isArray, O = console.createTask ? console.createTask : function() {
248
248
  return null;
249
249
  };
250
- E = {
250
+ d = {
251
251
  react_stack_bottom_frame: function(e) {
252
252
  return e();
253
253
  }
254
254
  };
255
- var B, U = {}, D = E.react_stack_bottom_frame.bind(
256
- E,
255
+ var B, U = {}, D = d.react_stack_bottom_frame.bind(
256
+ d,
257
257
  i
258
258
  )(), z = O(l(i)), V = {};
259
- G.Fragment = R, G.jsx = function(e, r, o) {
260
- var c = 1e4 > x.recentlyCreatedOwnerStacks++;
261
- return g(
259
+ G.Fragment = _, G.jsx = function(e, r, o) {
260
+ var c = 1e4 > v.recentlyCreatedOwnerStacks++;
261
+ return p(
262
262
  e,
263
263
  r,
264
264
  o,
@@ -267,8 +267,8 @@ React keys must be passed directly to JSX without using spread:
267
267
  c ? O(l(e)) : z
268
268
  );
269
269
  }, G.jsxs = function(e, r, o) {
270
- var c = 1e4 > x.recentlyCreatedOwnerStacks++;
271
- return g(
270
+ var c = 1e4 > v.recentlyCreatedOwnerStacks++;
271
+ return p(
272
272
  e,
273
273
  r,
274
274
  o,
@@ -330,37 +330,40 @@ const Ae = ye({
330
330
  duration: l = 1e3,
331
331
  disableAnimation: n = !1,
332
332
  fitBounds: i = !0,
333
- animationKey: m
333
+ animationKey: g,
334
+ offset: y = [0, 0]
334
335
  }) => {
335
- const { current: b } = he(), _ = ce(""), v = F(() => t.filter(pe), [t]), g = F(() => Fe(a), [a]), y = F(() => {
336
- const d = [...v.map((E) => [E.lng, E.lat]), ...g];
337
- return d.length === 0 ? null : d.reduce((E, [k, h]) => E.extend([k, h]), new ue.LngLatBounds());
338
- }, [v, g]);
336
+ const { current: k } = he(), h = ce(""), p = F(() => t.filter(pe), [t]), E = F(() => Fe(a), [a]), b = F(() => {
337
+ const d = [...p.map((x) => [x.lng, x.lat]), ...E];
338
+ return d.length === 0 ? null : d.reduce((x, [R, _]) => x.extend([R, _]), new ue.LngLatBounds());
339
+ }, [p, E]);
339
340
  return Z(() => {
340
- if (b && i && y) {
341
- if (m !== void 0) {
342
- const d = Pe(m);
343
- if (_.current === d)
341
+ if (k && i && b) {
342
+ if (g !== void 0) {
343
+ const d = Pe(g);
344
+ if (h.current === d)
344
345
  return;
345
- _.current = d;
346
+ h.current = d;
346
347
  }
347
- if (!y.isEmpty()) {
348
- if (v.length === 1 && g.length === 0) {
349
- const d = v[0];
350
- b.flyTo({
348
+ if (!b.isEmpty()) {
349
+ if (p.length === 1 && E.length === 0) {
350
+ const d = p[0];
351
+ k.flyTo({
351
352
  center: [d.lng, d.lat],
352
353
  duration: n ? 0 : l,
354
+ offset: y,
353
355
  zoom: 14
354
356
  });
355
357
  return;
356
358
  }
357
- b.fitBounds([y.getSouthWest().toArray(), y.getNorthEast().toArray()], {
359
+ k.fitBounds([b.getSouthWest().toArray(), b.getNorthEast().toArray()], {
358
360
  duration: n ? 0 : l,
361
+ offset: y,
359
362
  padding: s
360
363
  });
361
364
  }
362
365
  }
363
- }, [b, y, s, l, n, m, i, v, g]), null;
366
+ }, [k, b, s, l, n, g, i, p, E, y]), null;
364
367
  }, Me = async (t, a, s = "driving") => {
365
368
  const n = `https://api.mapbox.com/directions/v5/mapbox/${s}/${t.join(",")};${a.join(",")}?geometries=geojson&overview=full&access_token=undefined`, i = await fetch(n);
366
369
  return i.ok ? {
@@ -400,16 +403,16 @@ const Ae = ye({
400
403
  openPopupOnHover: l,
401
404
  markers: n,
402
405
  baseMapView: i,
403
- mapStyle: m,
404
- projection: b,
405
- cooperativeGestures: _,
406
- doubleClickZoom: v,
407
- theme: g,
408
- from: y,
409
- to: d,
410
- profile: E
406
+ mapStyle: g,
407
+ projection: y,
408
+ cooperativeGestures: k,
409
+ doubleClickZoom: h,
410
+ theme: p,
411
+ from: E,
412
+ to: b,
413
+ profile: d
411
414
  }) => {
412
- const k = fe(), h = ce(null), [R, N] = ae(null), [T, j] = ae(s ?? null), L = F(() => {
415
+ const x = fe(), R = ce(null), [_, N] = ae(null), [T, j] = ae(s ?? null), L = F(() => {
413
416
  if (ne(t))
414
417
  return {
415
418
  latitude: t[1],
@@ -417,33 +420,33 @@ const Ae = ye({
417
420
  zoom: a
418
421
  };
419
422
  }, [t, a]), S = F(
420
- () => m || me(i, g ?? k.palette.mode),
421
- [i, m, g, k.palette.mode]
423
+ () => g || me(i, p ?? x.palette.mode),
424
+ [i, g, p, x.palette.mode]
422
425
  ), {
423
426
  style: $,
424
427
  cooperativeGestures: C,
425
428
  doubleClickZoom: I
426
429
  } = Ne({
427
430
  baseMapView: i,
428
- cooperativeGestures: _,
429
- doubleClickZoom: v,
431
+ cooperativeGestures: k,
432
+ doubleClickZoom: h,
430
433
  mapStyle: S,
431
- theme: g ?? k.palette.mode
434
+ theme: p ?? x.palette.mode
432
435
  }), A = () => {
433
- const p = h.current?.getMap?.();
434
- p && p.setStyle(S);
435
- }, Y = (p, P) => {
436
- !l && P && j(p);
437
- }, w = (p, P) => {
438
- l && j(P ? p : null);
439
- }, x = F(() => T ? n?.find((p) => p.id === T) ?? null : null, [T, n]);
436
+ const m = R.current?.getMap?.();
437
+ m && m.setStyle(S);
438
+ }, Y = (m, P) => {
439
+ !l && P && j(m);
440
+ }, w = (m, P) => {
441
+ l && j(P ? m : null);
442
+ }, v = F(() => T ? n?.find((m) => m.id === T) ?? null : null, [T, n]);
440
443
  return Z(() => {
441
444
  j(s ?? null);
442
445
  }, [s]), Z(() => {
443
- y && d && Me(y, d, E).then((p) => {
444
- p && N(p);
446
+ E && b && Me(E, b, d).then((m) => {
447
+ m && N(m);
445
448
  });
446
- }, [y, E, d]), {
449
+ }, [E, d, b]), {
447
450
  coopGestures: C,
448
451
  coreStyle: $,
449
452
  dblZoom: I,
@@ -451,10 +454,10 @@ const Ae = ye({
451
454
  handleMarkerClick: Y,
452
455
  handleMarkerHover: w,
453
456
  initialCenter: L,
454
- mapRef: h,
455
- route: R,
457
+ mapRef: R,
458
+ route: _,
456
459
  selected: T,
457
- selectedMarker: x,
460
+ selectedMarker: v,
458
461
  setSelected: j
459
462
  };
460
463
  }, $e = "#000000", Ie = "#FFFFFF", oe = {
@@ -517,17 +520,17 @@ const Ae = ye({
517
520
  height: l = 300,
518
521
  width: n = "100%",
519
522
  center: i = [2.3522, 48.8566],
520
- zoom: m = 5,
521
- popupMaxWidth: b,
522
- openPopup: _,
523
- openPopupOnHover: v,
524
- markers: g = [],
525
- fitBounds: y = !0,
526
- fitBoundsPadding: d,
527
- fitBoundDuration: E,
528
- fitBoundsAnimationKey: k,
529
- disableAnimation: h,
530
- mapStyle: R,
523
+ zoom: g = 5,
524
+ popupMaxWidth: y,
525
+ openPopup: k,
526
+ openPopupOnHover: h,
527
+ markers: p = [],
528
+ fitBounds: E = !0,
529
+ fitBoundsPadding: b,
530
+ fitBoundDuration: d,
531
+ fitBoundsAnimationKey: x,
532
+ disableAnimation: R,
533
+ mapStyle: _,
531
534
  onMapClick: N,
532
535
  baseMapView: T,
533
536
  cooperativeGestures: j = !0,
@@ -541,8 +544,8 @@ const Ae = ye({
541
544
  itineraryLineStyle: w
542
545
  }) => {
543
546
  const {
544
- selectedMarker: x,
545
- setSelected: p,
547
+ selectedMarker: v,
548
+ setSelected: m,
546
549
  handleMarkerClick: P,
547
550
  handleMarkerHover: O,
548
551
  handleMapLoad: B,
@@ -558,15 +561,15 @@ const Ae = ye({
558
561
  cooperativeGestures: j,
559
562
  doubleClickZoom: L,
560
563
  from: I,
561
- mapStyle: R,
562
- markers: g,
563
- openPopup: _,
564
- openPopupOnHover: v,
564
+ mapStyle: _,
565
+ markers: p,
566
+ openPopup: k,
567
+ openPopupOnHover: h,
565
568
  profile: Y,
566
569
  projection: S,
567
570
  theme: $,
568
571
  to: A,
569
- zoom: m
572
+ zoom: g
570
573
  });
571
574
  return /* @__PURE__ */ u.jsxs(Q, { "data-testid": "mapbox-container", sx: { height: l, position: "relative", width: n, ...t }, children: [
572
575
  /* @__PURE__ */ u.jsx(ve, { styles: we }),
@@ -600,7 +603,7 @@ const Ae = ye({
600
603
  N?.(o.lngLat.lng, o.lngLat.lat);
601
604
  },
602
605
  children: [
603
- g.filter(pe).map((o) => /* @__PURE__ */ u.jsx(
606
+ p.filter(pe).map((o) => /* @__PURE__ */ u.jsx(
604
607
  Re,
605
608
  {
606
609
  longitude: o.lng,
@@ -624,16 +627,16 @@ const Ae = ye({
624
627
  },
625
628
  o.id
626
629
  )),
627
- x?.Tooltip && /* @__PURE__ */ u.jsx(
630
+ v?.Tooltip && /* @__PURE__ */ u.jsx(
628
631
  Te,
629
632
  {
630
- longitude: re(x.lng) ? x.lng : 0,
631
- latitude: re(x.lat) ? x.lat : 0,
633
+ longitude: re(v.lng) ? v.lng : 0,
634
+ latitude: re(v.lat) ? v.lat : 0,
632
635
  anchor: "top",
633
- onClose: () => p(null),
634
- maxWidth: b,
636
+ onClose: () => m(null),
637
+ maxWidth: y,
635
638
  closeOnClick: !0,
636
- children: x.Tooltip
639
+ children: v.Tooltip
637
640
  }
638
641
  ),
639
642
  r && /* @__PURE__ */ u.jsx(ee, { type: "geojson", data: r, children: /* @__PURE__ */ u.jsx(
@@ -652,19 +655,20 @@ const Ae = ye({
652
655
  }
653
656
  ) }),
654
657
  C && /* @__PURE__ */ u.jsx(Ge, { features: C }),
655
- y && /* @__PURE__ */ u.jsx(
658
+ E && /* @__PURE__ */ u.jsx(
656
659
  Oe,
657
660
  {
658
- markers: g,
661
+ markers: p,
659
662
  features: C,
660
- padding: d,
661
- duration: h ? 0 : E,
662
- animationKey: k
663
+ padding: b,
664
+ duration: R ? 0 : d,
665
+ animationKey: x,
666
+ offset: v ? [0, 80] : [0, 0]
663
667
  }
664
668
  )
665
669
  ]
666
670
  },
667
- `${e}-${D}-${S}-${R}`
671
+ `${e}-${D}-${S}-${_}`
668
672
  )
669
673
  ] });
670
674
  }, Qe = Ee(Be), et = (t, a) => Number.isFinite(t) && Number.isFinite(a) && t >= -90 && t <= 90 && a >= -180 && a <= 180;
package/dist/main.umd.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode(`.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M3.3335 11.6666C3.3335 12.5871 4.07969 13.3333 5.00016 13.3333C5.92064 13.3333 6.66683 12.5871 6.66683 11.6666L6.66683 6.66659L11.6668 6.66659C12.5873 6.66659 13.3335 5.92039 13.3335 4.99992C13.3335 4.07944 12.5873 3.33325 11.6668 3.33325H3.3335V11.6666Z' fill='currentColor'/%3E%3Cpath d='M26.6668 11.6666C26.6668 12.5871 25.9206 13.3333 25.0002 13.3333C24.0797 13.3333 23.3335 12.5871 23.3335 11.6666L23.3335 6.66659L18.3335 6.66659C17.413 6.66659 16.6668 5.92039 16.6668 4.99992C16.6668 4.07944 17.413 3.33325 18.3335 3.33325H26.6668L26.6668 11.6666Z' fill='currentColor'/%3E%3Cpath d='M13.3335 24.9999C13.3335 25.9204 12.5873 26.6666 11.6668 26.6666H3.3335V18.3333C3.3335 17.4128 4.07969 16.6666 5.00016 16.6666C5.92064 16.6666 6.66683 17.4128 6.66683 18.3333V23.3333H11.6668C12.5873 23.3333 13.3335 24.0794 13.3335 24.9999Z' fill='currentColor'/%3E%3Cpath d='M18.3335 26.6666C17.413 26.6666 16.6668 25.9204 16.6668 24.9999C16.6668 24.0794 17.413 23.3333 18.3335 23.3333H23.3335V18.3333C23.3335 17.4128 24.0797 16.6666 25.0002 16.6666C25.9206 16.6666 26.6668 17.4128 26.6668 18.3333V26.6666H18.3335Z' fill='currentColor'/%3E%3C/svg%3E");background-size:26px 26px}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle.mapboxgl-ctrl-level-button-selected .mapboxgl-ctrl-icon{filter:invert(1) brightness(1)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media(-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl-separator{background-color:#e0e0e0;height:1px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{color:#333;font-size:18px;font-weight:700;height:50px;width:50px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:hover{background-color:#f5f5f5}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#4a5568;color:#fff}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#2d3748}`)),document.head.appendChild(o)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
- (function(m,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("react"),require("@mui/x-license"),require("mapbox-gl"),require("@tracktor/design-system"),require("react-map-gl"),require("@tracktor/react-utils")):typeof define=="function"&&define.amd?define(["exports","react","@mui/x-license","mapbox-gl","@tracktor/design-system","react-map-gl","@tracktor/react-utils"],i):(m=typeof globalThis<"u"?globalThis:m||self,i(m["@tracktor/map"]={},m.React,m.muiXLicense,m.mapboxgl,m.designSystem,m.MapboxMap,m.reactUtils))})(this,(function(m,i,ce,oe,w,R,x){"use strict";var Z={exports:{}},Y={};/**
2
+ (function(m,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("react"),require("@mui/x-license"),require("mapbox-gl"),require("@tracktor/design-system"),require("react-map-gl"),require("@tracktor/react-utils")):typeof define=="function"&&define.amd?define(["exports","react","@mui/x-license","mapbox-gl","@tracktor/design-system","react-map-gl","@tracktor/react-utils"],i):(m=typeof globalThis<"u"?globalThis:m||self,i(m["@tracktor/map"]={},m.React,m.muiXLicense,m.mapboxgl,m.designSystem,m.MapboxMap,m.reactUtils))})(this,(function(m,i,ce,oe,w,R,j){"use strict";var Z={exports:{}},Y={};/**
3
3
  * @license React
4
4
  * react-jsx-runtime.production.js
5
5
  *
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * This source code is licensed under the MIT license found in the
9
9
  * LICENSE file in the root directory of this source tree.
10
- */var ne;function ue(){if(ne)return Y;ne=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function s(l,n,c){var y=null;if(c!==void 0&&(y=""+c),n.key!==void 0&&(y=""+n.key),"key"in n){c={};for(var T in n)T!=="key"&&(c[T]=n[T])}else c=n;return n=c.ref,{$$typeof:t,type:l,key:y,ref:n!==void 0?n:null,props:c}}return Y.Fragment=a,Y.jsx=s,Y.jsxs=s,Y}var G={};/**
10
+ */var ne;function ue(){if(ne)return Y;ne=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function s(l,n,c){var g=null;if(c!==void 0&&(g=""+c),n.key!==void 0&&(g=""+n.key),"key"in n){c={};for(var _ in n)_!=="key"&&(c[_]=n[_])}else c=n;return n=c.ref,{$$typeof:t,type:l,key:g,ref:n!==void 0?n:null,props:c}}return Y.Fragment=a,Y.jsx=s,Y.jsxs=s,Y}var G={};/**
11
11
  * @license React
12
12
  * react-jsx-runtime.development.js
13
13
  *
@@ -15,9 +15,9 @@
15
15
  *
16
16
  * This source code is licensed under the MIT license found in the
17
17
  * LICENSE file in the root directory of this source tree.
18
- */var ae;function fe(){return ae||(ae=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===O?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case S:return"Fragment";case A:return"Profiler";case B:return"StrictMode";case V:return"Suspense";case N:return"SuspenseList";case U:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case C:return"Portal";case W:return e.displayName||"Context";case P:return(e._context.displayName||"Context")+".Consumer";case F:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case z:return r=e.displayName||null,r!==null?r:t(e.type)||"Memo";case L:r=e._payload,e=e._init;try{return t(e(r))}catch{}}return null}function a(e){return""+e}function s(e){try{a(e);var r=!1}catch{r=!0}if(r){r=console;var o=r.error,f=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",f),a(e)}}function l(e){if(e===S)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===L)return"<...>";try{var r=t(e);return r?"<"+r+">":"<...>"}catch{return"<...>"}}function n(){var e=k.A;return e===null?null:e.getOwner()}function c(){return Error("react-stack-top-frame")}function y(e){if(E.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function T(e,r){function o(){H||(H=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}function j(){var e=t(this.type);return X[e]||(X[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function v(e,r,o,f,q,te){var d=o.ref;return e={$$typeof:h,type:e,key:r,props:o,_owner:f},(d!==void 0?d:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:j}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:q}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:te}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function g(e,r,o,f,q,te){var d=r.children;if(d!==void 0)if(f)if(M(d)){for(f=0;f<d.length;f++)_(d[f]);Object.freeze&&Object.freeze(d)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else _(d);if(E.call(r,"key")){d=t(e);var I=Object.keys(r).filter(function(Fe){return Fe!=="key"});f=0<I.length?"{key: someKey, "+I.join(": ..., ")+": ...}":"{key: someKey}",Q[d+f]||(I=0<I.length?"{"+I.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
+ */var ae;function fe(){return ae||(ae=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===O?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case x:return"Fragment";case A:return"Profiler";case B:return"StrictMode";case V:return"Suspense";case N:return"SuspenseList";case U:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case S:return"Portal";case W:return e.displayName||"Context";case P:return(e._context.displayName||"Context")+".Consumer";case F:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case z:return r=e.displayName||null,r!==null?r:t(e.type)||"Memo";case L:r=e._payload,e=e._init;try{return t(e(r))}catch{}}return null}function a(e){return""+e}function s(e){try{a(e);var r=!1}catch{r=!0}if(r){r=console;var o=r.error,f=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",f),a(e)}}function l(e){if(e===x)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===L)return"<...>";try{var r=t(e);return r?"<"+r+">":"<...>"}catch{return"<...>"}}function n(){var e=v.A;return e===null?null:e.getOwner()}function c(){return Error("react-stack-top-frame")}function g(e){if(y.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function _(e,r){function o(){H||(H=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}function h(){var e=t(this.type);return X[e]||(X[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function C(e,r,o,f,q,te){var d=o.ref;return e={$$typeof:k,type:e,key:r,props:o,_owner:f},(d!==void 0?d:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:h}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:q}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:te}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function E(e,r,o,f,q,te){var d=r.children;if(d!==void 0)if(f)if(M(d)){for(f=0;f<d.length;f++)b(d[f]);Object.freeze&&Object.freeze(d)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else b(d);if(y.call(r,"key")){d=t(e);var I=Object.keys(r).filter(function(Fe){return Fe!=="key"});f=0<I.length?"{key: someKey, "+I.join(": ..., ")+": ...}":"{key: someKey}",Q[d+f]||(I=0<I.length?"{"+I.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
19
19
  let props = %s;
20
20
  <%s {...props} />
21
21
  React keys must be passed directly to JSX without using spread:
22
22
  let props = %s;
23
- <%s key={someKey} {...props} />`,f,d,I,d),Q[d+f]=!0)}if(d=null,o!==void 0&&(s(o),d=""+o),y(r)&&(s(r.key),d=""+r.key),"key"in r){o={};for(var re in r)re!=="key"&&(o[re]=r[re])}else o=r;return d&&T(o,typeof e=="function"?e.displayName||e.name||"Unknown":e),v(e,d,o,n(),q,te)}function _(e){p(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===L&&(e._payload.status==="fulfilled"?p(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function p(e){return typeof e=="object"&&e!==null&&e.$$typeof===h}var b=i,h=Symbol.for("react.transitional.element"),C=Symbol.for("react.portal"),S=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),A=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),W=Symbol.for("react.context"),F=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),N=Symbol.for("react.suspense_list"),z=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),U=Symbol.for("react.activity"),O=Symbol.for("react.client.reference"),k=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,E=Object.prototype.hasOwnProperty,M=Array.isArray,D=console.createTask?console.createTask:function(){return null};b={react_stack_bottom_frame:function(e){return e()}};var H,X={},J=b.react_stack_bottom_frame.bind(b,c)(),K=D(l(c)),Q={};G.Fragment=S,G.jsx=function(e,r,o){var f=1e4>k.recentlyCreatedOwnerStacks++;return g(e,r,o,!1,f?Error("react-stack-top-frame"):J,f?D(l(e)):K)},G.jsxs=function(e,r,o){var f=1e4>k.recentlyCreatedOwnerStacks++;return g(e,r,o,!0,f?Error("react-stack-top-frame"):J,f?D(l(e)):K)}})()),G}var se;function de(){return se||(se=1,process.env.NODE_ENV==="production"?Z.exports=ue():Z.exports=fe()),Z.exports}var u=de();const pe=i.createContext({licenceMapbox:"",licenseMuiX:""}),me=({children:t,licenseMuiX:a,licenceMapbox:s})=>{i.useEffect(()=>{a&&ce.LicenseInfo.setLicenseKey(a)},[a]);const l=i.useMemo(()=>({licenceMapbox:s,licenseMuiX:a}),[a,s]);return s&&(oe.accessToken=s),u.jsx(pe.Provider,{value:l,children:t})},Ee=t=>({".mapboxgl-popup-close-button":{color:t.palette.mode==="dark"?"#fff !important":"#000 !important",fontSize:"20px !important"},".mapboxgl-popup-content":{backgroundColor:"transparent!important",borderRadius:"0px !important",boxShadow:"none!important",padding:"0px 0px!important",width:"fit-content!important"},".mapboxgl-popup-tip":{borderTopColor:`${t.palette.mode==="dark"?"#1e1e1e":"#ffffff"} !important`}}),le=t=>Number.isFinite(t.lng)&&Number.isFinite(t.lat),ye=t=>x.isString(t)||x.isNumber(t)?String(t):JSON.stringify(t),ge=t=>{if(!t)return[];const a=x.isArray(t)?t:t.type==="FeatureCollection"?t.features:[t],s=[];for(const l of a){const n=l.geometry;n.type==="Point"&&s.push(n.coordinates),n.type==="LineString"&&s.push(...n.coordinates),n.type==="Polygon"&&s.push(...n.coordinates[0])}return s},Te=({markers:t=[],features:a,padding:s=50,duration:l=1e3,disableAnimation:n=!1,fitBounds:c=!0,animationKey:y})=>{const{current:T}=R.useMap(),j=i.useRef(""),v=i.useMemo(()=>t.filter(le),[t]),g=i.useMemo(()=>ge(a),[a]),_=i.useMemo(()=>{const p=[...v.map(b=>[b.lng,b.lat]),...g];return p.length===0?null:p.reduce((b,[h,C])=>b.extend([h,C]),new oe.LngLatBounds)},[v,g]);return i.useEffect(()=>{if(T&&c&&_){if(y!==void 0){const p=ye(y);if(j.current===p)return;j.current=p}if(!_.isEmpty()){if(v.length===1&&g.length===0){const p=v[0];T.flyTo({center:[p.lng,p.lat],duration:n?0:l,zoom:14});return}T.fitBounds([_.getSouthWest().toArray(),_.getNorthEast().toArray()],{duration:n?0:l,padding:s})}}},[T,_,s,l,n,y,c,v,g]),null},_e=async(t,a,s="driving")=>{const n=`https://api.mapbox.com/directions/v5/mapbox/${s}/${t.join(",")};${a.join(",")}?geometries=geojson&overview=full&access_token=undefined`,c=await fetch(n);return c.ok?{geometry:(await c.json()).routes[0].geometry,properties:{},type:"Feature"}:null},$={satellite:"mapbox://styles/mapbox/satellite-streets-v12",street:{dark:"mapbox://styles/mapbox/dark-v11",light:"mapbox://styles/mapbox/streets-v12"}},ie=(t,a)=>{const s=a==="dark";switch(t){case"satellite":return $.satellite;default:return s?$.street.dark:$.street.light}},be=({mapStyle:t,theme:a,baseMapView:s,doubleClickZoom:l,cooperativeGestures:n})=>({cooperativeGestures:n,doubleClickZoom:l,failIfMajorPerformanceCaveat:!1,style:t??ie(s,a)}),ke=({center:t,zoom:a,openPopup:s,openPopupOnHover:l,markers:n,baseMapView:c,mapStyle:y,projection:T,cooperativeGestures:j,doubleClickZoom:v,theme:g,from:_,to:p,profile:b})=>{const h=w.useTheme(),C=i.useRef(null),[S,B]=i.useState(null),[A,P]=i.useState(s??null),W=i.useMemo(()=>{if(x.isArray(t))return{latitude:t[1],longitude:t[0],zoom:a}},[t,a]),F=i.useMemo(()=>y||ie(c,g??h.palette.mode),[c,y,g,h.palette.mode]),{style:V,cooperativeGestures:N,doubleClickZoom:z}=be({baseMapView:c,cooperativeGestures:j,doubleClickZoom:v,mapStyle:F,theme:g??h.palette.mode}),L=()=>{const E=C.current?.getMap?.();E&&E.setStyle(F)},U=(E,M)=>{!l&&M&&P(E)},O=(E,M)=>{l&&P(M?E:null)},k=i.useMemo(()=>A?n?.find(E=>E.id===A)??null:null,[A,n]);return i.useEffect(()=>{P(s??null)},[s]),i.useEffect(()=>{_&&p&&_e(_,p,b).then(E=>{E&&B(E)})},[_,b,p]),{coopGestures:N,coreStyle:V,dblZoom:z,handleMapLoad:L,handleMarkerClick:U,handleMarkerHover:O,initialCenter:W,mapRef:C,route:S,selected:A,selectedMarker:k,setSelected:P}},ve="#000000",Re="#FFFFFF",ee={default:"#009ba6",primary:"#3F83F8",secondary:"#9C27B0",success:"#4CAF50",warning:"#FF9800"},he=t=>t in ee,xe=({color:t,variant:a})=>{const{palette:s}=w.useTheme(),l=s.mode==="dark"?ve:Re,n=a&&he(a)&&ee[a]||t||(x.isString(a)?a:ee.default);return u.jsx(w.Box,{component:"div",style:{backgroundColor:l,border:`7px solid ${n}`,borderRadius:"50%",boxShadow:"0 0 4px rgba(0,0,0,0.3)",height:28,width:28}})},je=t=>x.isArray(t)?{features:t,type:"FeatureCollection"}:t.type==="FeatureCollection"?t:{features:[t],type:"FeatureCollection"},Ce=({features:t})=>{if(!t)return null;const a=je(t),s=a.features.filter(n=>n.geometry.type==="Polygon"||n.geometry.type==="MultiPolygon"),l=a.features.filter(n=>n.geometry.type==="LineString"||n.geometry.type==="MultiLineString");return u.jsxs(u.Fragment,{children:[s.length>0&&u.jsx(R.Source,{id:"features-polygon",type:"geojson",data:{features:s,type:"FeatureCollection"},children:u.jsx(R.Layer,{id:"polygon-fill",type:"fill",paint:{"fill-color":["coalesce",["get","color"],"#4ADE80"],"fill-opacity":.4}})}),l.length>0&&u.jsx(R.Source,{id:"features-line",type:"geojson",data:{features:l,type:"FeatureCollection"},children:u.jsx(R.Layer,{id:"line-stroke",type:"line",paint:{"line-color":["coalesce",["get","color"],"#3B82F6"],"line-opacity":.9,"line-width":3}})})]})},Se=({containerStyle:t,square:a,loading:s,height:l=300,width:n="100%",center:c=[2.3522,48.8566],zoom:y=5,popupMaxWidth:T,openPopup:j,openPopupOnHover:v,markers:g=[],fitBounds:_=!0,fitBoundsPadding:p,fitBoundDuration:b,fitBoundsAnimationKey:h,disableAnimation:C,mapStyle:S,onMapClick:B,baseMapView:A,cooperativeGestures:P=!0,doubleClickZoom:W=!0,projection:F,theme:V,features:N,from:z,to:L,profile:U="driving",itineraryLineStyle:O})=>{const{selectedMarker:k,setSelected:E,handleMarkerClick:M,handleMarkerHover:D,handleMapLoad:H,mapRef:X,dblZoom:J,initialCenter:K,coreStyle:Q,coopGestures:e,route:r}=ke({baseMapView:A,center:c,cooperativeGestures:P,doubleClickZoom:W,from:z,mapStyle:S,markers:g,openPopup:j,openPopupOnHover:v,profile:U,projection:F,theme:V,to:L,zoom:y});return u.jsxs(w.Box,{"data-testid":"mapbox-container",sx:{height:l,position:"relative",width:n,...t},children:[u.jsx(w.GlobalStyles,{styles:Ee}),s&&u.jsx(w.Skeleton,{"data-testid":"skeleton-loader",width:n,height:l,variant:a?"rectangular":"rounded",sx:{inset:0,position:"absolute",zIndex:2}}),!s&&u.jsxs(R,{ref:X,onLoad:H,cooperativeGestures:e,doubleClickZoom:J,mapStyle:Q,projection:F,initialViewState:K,style:{height:"100%",width:"100%"},mapboxAccessToken:void 0,onClick:o=>{B?.(o.lngLat.lng,o.lngLat.lat)},children:[g.filter(le).map(o=>u.jsx(R.Marker,{longitude:o.lng,latitude:o.lat,anchor:"bottom",onClick:f=>{f.originalEvent.stopPropagation(),o.id&&M(o.id,!!o.Tooltip)},children:u.jsx(w.Box,{component:"div",onMouseEnter:()=>{o.id&&D(o.id,!!o.Tooltip)},onMouseLeave:()=>D(null),style:{cursor:o.Tooltip?"pointer":"default"},children:o.IconComponent?u.jsx(o.IconComponent,{...o.iconProps}):u.jsx(xe,{color:o.color,variant:o.variant})})},o.id)),k?.Tooltip&&u.jsx(R.Popup,{longitude:x.isNumber(k.lng)?k.lng:0,latitude:x.isNumber(k.lat)?k.lat:0,anchor:"top",onClose:()=>E(null),maxWidth:T,closeOnClick:!0,children:k.Tooltip}),r&&u.jsx(R.Source,{type:"geojson",data:r,children:u.jsx(R.Layer,{type:"line",paint:{"line-color":O?.color??"#9c3333","line-opacity":O?.opacity??.8,"line-width":O?.width??4},layout:{"line-cap":"round","line-join":"round"}})}),N&&u.jsx(Ce,{features:N}),_&&u.jsx(Te,{markers:g,features:N,padding:p,duration:C?0:b,animationKey:h})]},`${e}-${J}-${F}-${S}`)]})},Ae=i.memo(Se),Pe=(t,a)=>Number.isFinite(t)&&Number.isFinite(a)&&t>=-90&&t<=90&&a>=-180&&a<=180;m.DEFAULT_CENTER_LAT=46.8677,m.DEFAULT_CENTER_LNG=2.333,m.MapProvider=me,m.MarkerMap=Ae,m.isValidLatLng=Pe,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
23
+ <%s key={someKey} {...props} />`,f,d,I,d),Q[d+f]=!0)}if(d=null,o!==void 0&&(s(o),d=""+o),g(r)&&(s(r.key),d=""+r.key),"key"in r){o={};for(var re in r)re!=="key"&&(o[re]=r[re])}else o=r;return d&&_(o,typeof e=="function"?e.displayName||e.name||"Unknown":e),C(e,d,o,n(),q,te)}function b(e){T(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===L&&(e._payload.status==="fulfilled"?T(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function T(e){return typeof e=="object"&&e!==null&&e.$$typeof===k}var p=i,k=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),x=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),A=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),W=Symbol.for("react.context"),F=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),N=Symbol.for("react.suspense_list"),z=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),U=Symbol.for("react.activity"),O=Symbol.for("react.client.reference"),v=p.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,y=Object.prototype.hasOwnProperty,M=Array.isArray,D=console.createTask?console.createTask:function(){return null};p={react_stack_bottom_frame:function(e){return e()}};var H,X={},J=p.react_stack_bottom_frame.bind(p,c)(),K=D(l(c)),Q={};G.Fragment=x,G.jsx=function(e,r,o){var f=1e4>v.recentlyCreatedOwnerStacks++;return E(e,r,o,!1,f?Error("react-stack-top-frame"):J,f?D(l(e)):K)},G.jsxs=function(e,r,o){var f=1e4>v.recentlyCreatedOwnerStacks++;return E(e,r,o,!0,f?Error("react-stack-top-frame"):J,f?D(l(e)):K)}})()),G}var se;function de(){return se||(se=1,process.env.NODE_ENV==="production"?Z.exports=ue():Z.exports=fe()),Z.exports}var u=de();const pe=i.createContext({licenceMapbox:"",licenseMuiX:""}),me=({children:t,licenseMuiX:a,licenceMapbox:s})=>{i.useEffect(()=>{a&&ce.LicenseInfo.setLicenseKey(a)},[a]);const l=i.useMemo(()=>({licenceMapbox:s,licenseMuiX:a}),[a,s]);return s&&(oe.accessToken=s),u.jsx(pe.Provider,{value:l,children:t})},Ee=t=>({".mapboxgl-popup-close-button":{color:t.palette.mode==="dark"?"#fff !important":"#000 !important",fontSize:"20px !important"},".mapboxgl-popup-content":{backgroundColor:"transparent!important",borderRadius:"0px !important",boxShadow:"none!important",padding:"0px 0px!important",width:"fit-content!important"},".mapboxgl-popup-tip":{borderTopColor:`${t.palette.mode==="dark"?"#1e1e1e":"#ffffff"} !important`}}),le=t=>Number.isFinite(t.lng)&&Number.isFinite(t.lat),ye=t=>j.isString(t)||j.isNumber(t)?String(t):JSON.stringify(t),ge=t=>{if(!t)return[];const a=j.isArray(t)?t:t.type==="FeatureCollection"?t.features:[t],s=[];for(const l of a){const n=l.geometry;n.type==="Point"&&s.push(n.coordinates),n.type==="LineString"&&s.push(...n.coordinates),n.type==="Polygon"&&s.push(...n.coordinates[0])}return s},Te=({markers:t=[],features:a,padding:s=50,duration:l=1e3,disableAnimation:n=!1,fitBounds:c=!0,animationKey:g,offset:_=[0,0]})=>{const{current:h}=R.useMap(),C=i.useRef(""),E=i.useMemo(()=>t.filter(le),[t]),b=i.useMemo(()=>ge(a),[a]),T=i.useMemo(()=>{const p=[...E.map(k=>[k.lng,k.lat]),...b];return p.length===0?null:p.reduce((k,[S,x])=>k.extend([S,x]),new oe.LngLatBounds)},[E,b]);return i.useEffect(()=>{if(h&&c&&T){if(g!==void 0){const p=ye(g);if(C.current===p)return;C.current=p}if(!T.isEmpty()){if(E.length===1&&b.length===0){const p=E[0];h.flyTo({center:[p.lng,p.lat],duration:n?0:l,offset:_,zoom:14});return}h.fitBounds([T.getSouthWest().toArray(),T.getNorthEast().toArray()],{duration:n?0:l,offset:_,padding:s})}}},[h,T,s,l,n,g,c,E,b,_]),null},_e=async(t,a,s="driving")=>{const n=`https://api.mapbox.com/directions/v5/mapbox/${s}/${t.join(",")};${a.join(",")}?geometries=geojson&overview=full&access_token=undefined`,c=await fetch(n);return c.ok?{geometry:(await c.json()).routes[0].geometry,properties:{},type:"Feature"}:null},$={satellite:"mapbox://styles/mapbox/satellite-streets-v12",street:{dark:"mapbox://styles/mapbox/dark-v11",light:"mapbox://styles/mapbox/streets-v12"}},ie=(t,a)=>{const s=a==="dark";switch(t){case"satellite":return $.satellite;default:return s?$.street.dark:$.street.light}},be=({mapStyle:t,theme:a,baseMapView:s,doubleClickZoom:l,cooperativeGestures:n})=>({cooperativeGestures:n,doubleClickZoom:l,failIfMajorPerformanceCaveat:!1,style:t??ie(s,a)}),ke=({center:t,zoom:a,openPopup:s,openPopupOnHover:l,markers:n,baseMapView:c,mapStyle:g,projection:_,cooperativeGestures:h,doubleClickZoom:C,theme:E,from:b,to:T,profile:p})=>{const k=w.useTheme(),S=i.useRef(null),[x,B]=i.useState(null),[A,P]=i.useState(s??null),W=i.useMemo(()=>{if(j.isArray(t))return{latitude:t[1],longitude:t[0],zoom:a}},[t,a]),F=i.useMemo(()=>g||ie(c,E??k.palette.mode),[c,g,E,k.palette.mode]),{style:V,cooperativeGestures:N,doubleClickZoom:z}=be({baseMapView:c,cooperativeGestures:h,doubleClickZoom:C,mapStyle:F,theme:E??k.palette.mode}),L=()=>{const y=S.current?.getMap?.();y&&y.setStyle(F)},U=(y,M)=>{!l&&M&&P(y)},O=(y,M)=>{l&&P(M?y:null)},v=i.useMemo(()=>A?n?.find(y=>y.id===A)??null:null,[A,n]);return i.useEffect(()=>{P(s??null)},[s]),i.useEffect(()=>{b&&T&&_e(b,T,p).then(y=>{y&&B(y)})},[b,p,T]),{coopGestures:N,coreStyle:V,dblZoom:z,handleMapLoad:L,handleMarkerClick:U,handleMarkerHover:O,initialCenter:W,mapRef:S,route:x,selected:A,selectedMarker:v,setSelected:P}},ve="#000000",Re="#FFFFFF",ee={default:"#009ba6",primary:"#3F83F8",secondary:"#9C27B0",success:"#4CAF50",warning:"#FF9800"},he=t=>t in ee,xe=({color:t,variant:a})=>{const{palette:s}=w.useTheme(),l=s.mode==="dark"?ve:Re,n=a&&he(a)&&ee[a]||t||(j.isString(a)?a:ee.default);return u.jsx(w.Box,{component:"div",style:{backgroundColor:l,border:`7px solid ${n}`,borderRadius:"50%",boxShadow:"0 0 4px rgba(0,0,0,0.3)",height:28,width:28}})},je=t=>j.isArray(t)?{features:t,type:"FeatureCollection"}:t.type==="FeatureCollection"?t:{features:[t],type:"FeatureCollection"},Ce=({features:t})=>{if(!t)return null;const a=je(t),s=a.features.filter(n=>n.geometry.type==="Polygon"||n.geometry.type==="MultiPolygon"),l=a.features.filter(n=>n.geometry.type==="LineString"||n.geometry.type==="MultiLineString");return u.jsxs(u.Fragment,{children:[s.length>0&&u.jsx(R.Source,{id:"features-polygon",type:"geojson",data:{features:s,type:"FeatureCollection"},children:u.jsx(R.Layer,{id:"polygon-fill",type:"fill",paint:{"fill-color":["coalesce",["get","color"],"#4ADE80"],"fill-opacity":.4}})}),l.length>0&&u.jsx(R.Source,{id:"features-line",type:"geojson",data:{features:l,type:"FeatureCollection"},children:u.jsx(R.Layer,{id:"line-stroke",type:"line",paint:{"line-color":["coalesce",["get","color"],"#3B82F6"],"line-opacity":.9,"line-width":3}})})]})},Se=({containerStyle:t,square:a,loading:s,height:l=300,width:n="100%",center:c=[2.3522,48.8566],zoom:g=5,popupMaxWidth:_,openPopup:h,openPopupOnHover:C,markers:E=[],fitBounds:b=!0,fitBoundsPadding:T,fitBoundDuration:p,fitBoundsAnimationKey:k,disableAnimation:S,mapStyle:x,onMapClick:B,baseMapView:A,cooperativeGestures:P=!0,doubleClickZoom:W=!0,projection:F,theme:V,features:N,from:z,to:L,profile:U="driving",itineraryLineStyle:O})=>{const{selectedMarker:v,setSelected:y,handleMarkerClick:M,handleMarkerHover:D,handleMapLoad:H,mapRef:X,dblZoom:J,initialCenter:K,coreStyle:Q,coopGestures:e,route:r}=ke({baseMapView:A,center:c,cooperativeGestures:P,doubleClickZoom:W,from:z,mapStyle:x,markers:E,openPopup:h,openPopupOnHover:C,profile:U,projection:F,theme:V,to:L,zoom:g});return u.jsxs(w.Box,{"data-testid":"mapbox-container",sx:{height:l,position:"relative",width:n,...t},children:[u.jsx(w.GlobalStyles,{styles:Ee}),s&&u.jsx(w.Skeleton,{"data-testid":"skeleton-loader",width:n,height:l,variant:a?"rectangular":"rounded",sx:{inset:0,position:"absolute",zIndex:2}}),!s&&u.jsxs(R,{ref:X,onLoad:H,cooperativeGestures:e,doubleClickZoom:J,mapStyle:Q,projection:F,initialViewState:K,style:{height:"100%",width:"100%"},mapboxAccessToken:void 0,onClick:o=>{B?.(o.lngLat.lng,o.lngLat.lat)},children:[E.filter(le).map(o=>u.jsx(R.Marker,{longitude:o.lng,latitude:o.lat,anchor:"bottom",onClick:f=>{f.originalEvent.stopPropagation(),o.id&&M(o.id,!!o.Tooltip)},children:u.jsx(w.Box,{component:"div",onMouseEnter:()=>{o.id&&D(o.id,!!o.Tooltip)},onMouseLeave:()=>D(null),style:{cursor:o.Tooltip?"pointer":"default"},children:o.IconComponent?u.jsx(o.IconComponent,{...o.iconProps}):u.jsx(xe,{color:o.color,variant:o.variant})})},o.id)),v?.Tooltip&&u.jsx(R.Popup,{longitude:j.isNumber(v.lng)?v.lng:0,latitude:j.isNumber(v.lat)?v.lat:0,anchor:"top",onClose:()=>y(null),maxWidth:_,closeOnClick:!0,children:v.Tooltip}),r&&u.jsx(R.Source,{type:"geojson",data:r,children:u.jsx(R.Layer,{type:"line",paint:{"line-color":O?.color??"#9c3333","line-opacity":O?.opacity??.8,"line-width":O?.width??4},layout:{"line-cap":"round","line-join":"round"}})}),N&&u.jsx(Ce,{features:N}),b&&u.jsx(Te,{markers:E,features:N,padding:T,duration:S?0:p,animationKey:k,offset:v?[0,80]:[0,0]})]},`${e}-${J}-${F}-${x}`)]})},Ae=i.memo(Se),Pe=(t,a)=>Number.isFinite(t)&&Number.isFinite(a)&&t>=-90&&t<=90&&a>=-180&&a<=180;m.DEFAULT_CENTER_LAT=46.8677,m.DEFAULT_CENTER_LNG=2.333,m.MapProvider=me,m.MarkerMap=Ae,m.isValidLatLng=Pe,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "A React library to easily display map with multiple tools",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
- "version": "1.2.2",
6
+ "version": "1.2.3",
7
7
  "type": "module",
8
8
  "main": "dist/main.umd.cjs",
9
9
  "module": "dist/main.js",