vue3-google-map 0.17.1 → 0.18.0
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.
- package/README.md +40 -2
- package/dist/index.cjs.js +5 -5
- package/dist/index.es.js +217 -211
- package/dist/index.umd.js +5 -5
- package/dist/types/components/InfoWindow.vue.d.ts +9 -2
- package/package.json +4 -2
package/dist/index.es.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".mapdiv[data-v-174b771e]{width:100%;height:100%}.info-window-wrapper[data-v-90174664]{display:none}.mapdiv .info-window-wrapper[data-v-90174664]{display:inline-block}.custom-marker-wrapper[data-v-2d2d343a]{display:none}.mapdiv .custom-marker-wrapper[data-v-2d2d343a]{display:inline-block}")),document.head.appendChild(e)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
|
|
2
2
|
var qe = Object.defineProperty;
|
|
3
3
|
var Be = (n, e, t) => e in n ? qe(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
|
|
4
4
|
var se = (n, e, t) => (Be(n, typeof e != "symbol" ? e + "" : e, t), t);
|
|
5
|
-
import { defineComponent as
|
|
5
|
+
import { defineComponent as P, ref as y, provide as G, watch as O, onMounted as Me, onBeforeUnmount as B, markRaw as I, toRef as N, openBlock as Y, createElementBlock as X, createElementVNode as ae, renderSlot as Q, normalizeProps as Ne, guardReactiveProps as Ze, inject as C, computed as J, withDirectives as De, vShow as Ue, Comment as Ee, mergeProps as Pe, createCommentVNode as Oe } from "vue";
|
|
6
6
|
const Z = Symbol("map"), D = Symbol("api"), xe = Symbol("marker"), Le = Symbol("markerCluster"), ee = Symbol("CustomMarker"), Se = Symbol("mapTilesLoaded"), q = [
|
|
7
7
|
"click",
|
|
8
8
|
"dblclick",
|
|
@@ -39,25 +39,25 @@ function Fe(n, e, t, s) {
|
|
|
39
39
|
return new (t || (t = Promise))(function(o, a) {
|
|
40
40
|
function l(u) {
|
|
41
41
|
try {
|
|
42
|
-
|
|
42
|
+
d(s.next(u));
|
|
43
43
|
} catch (c) {
|
|
44
44
|
a(c);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
function i(u) {
|
|
48
48
|
try {
|
|
49
|
-
|
|
49
|
+
d(s.throw(u));
|
|
50
50
|
} catch (c) {
|
|
51
51
|
a(c);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
function
|
|
54
|
+
function d(u) {
|
|
55
55
|
u.done ? o(u.value) : r(u.value).then(l, i);
|
|
56
56
|
}
|
|
57
|
-
|
|
57
|
+
d((s = s.apply(n, e || [])).next());
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
|
-
var
|
|
60
|
+
var Ve = function n(e, t) {
|
|
61
61
|
if (e === t)
|
|
62
62
|
return !0;
|
|
63
63
|
if (e && t && typeof e == "object" && typeof t == "object") {
|
|
@@ -92,12 +92,12 @@ var ze = function n(e, t) {
|
|
|
92
92
|
}
|
|
93
93
|
return e !== e && t !== t;
|
|
94
94
|
};
|
|
95
|
-
const
|
|
95
|
+
const de = "__googleMapsScriptId";
|
|
96
96
|
var R;
|
|
97
97
|
(function(n) {
|
|
98
98
|
n[n.INITIALIZED = 0] = "INITIALIZED", n[n.LOADING = 1] = "LOADING", n[n.SUCCESS = 2] = "SUCCESS", n[n.FAILURE = 3] = "FAILURE";
|
|
99
99
|
})(R || (R = {}));
|
|
100
|
-
class
|
|
100
|
+
class T {
|
|
101
101
|
/**
|
|
102
102
|
* Creates an instance of Loader using [[LoaderOptions]]. No defaults are set
|
|
103
103
|
* using this library, instead the defaults are set by the Google Maps
|
|
@@ -107,13 +107,13 @@ class A {
|
|
|
107
107
|
* const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});
|
|
108
108
|
* ```
|
|
109
109
|
*/
|
|
110
|
-
constructor({ apiKey: e, authReferrerPolicy: t, channel: s, client: r, id: o =
|
|
111
|
-
if (this.callbacks = [], this.done = !1, this.loading = !1, this.errors = [], this.apiKey = e, this.authReferrerPolicy = t, this.channel = s, this.client = r, this.id = o ||
|
|
112
|
-
if (!
|
|
113
|
-
throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(
|
|
114
|
-
return
|
|
110
|
+
constructor({ apiKey: e, authReferrerPolicy: t, channel: s, client: r, id: o = de, language: a, libraries: l = [], mapIds: i, nonce: d, region: u, retries: c = 3, url: h = "https://maps.googleapis.com/maps/api/js", version: p }) {
|
|
111
|
+
if (this.callbacks = [], this.done = !1, this.loading = !1, this.errors = [], this.apiKey = e, this.authReferrerPolicy = t, this.channel = s, this.client = r, this.id = o || de, this.language = a, this.libraries = l, this.mapIds = i, this.nonce = d, this.region = u, this.retries = c, this.url = h, this.version = p, T.instance) {
|
|
112
|
+
if (!Ve(this.options, T.instance.options))
|
|
113
|
+
throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(T.instance.options)}`);
|
|
114
|
+
return T.instance;
|
|
115
115
|
}
|
|
116
|
-
|
|
116
|
+
T.instance = this;
|
|
117
117
|
}
|
|
118
118
|
get options() {
|
|
119
119
|
return {
|
|
@@ -205,19 +205,19 @@ class A {
|
|
|
205
205
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
206
206
|
(o) => !s[o] && delete s[o]
|
|
207
207
|
), !((t = (e = window == null ? void 0 : window.google) === null || e === void 0 ? void 0 : e.maps) === null || t === void 0) && t.importLibrary || ((o) => {
|
|
208
|
-
let a, l, i,
|
|
209
|
-
|
|
210
|
-
const
|
|
208
|
+
let a, l, i, d = "The Google Maps JavaScript API", u = "google", c = "importLibrary", h = "__ib__", p = document, m = window;
|
|
209
|
+
m = m[u] || (m[u] = {});
|
|
210
|
+
const f = m.maps || (m.maps = {}), g = /* @__PURE__ */ new Set(), v = new URLSearchParams(), w = () => (
|
|
211
211
|
// @ts-ignore
|
|
212
|
-
a || (a = new Promise((_,
|
|
213
|
-
var
|
|
212
|
+
a || (a = new Promise((_, E) => Fe(this, void 0, void 0, function* () {
|
|
213
|
+
var b;
|
|
214
214
|
yield l = p.createElement("script"), l.id = this.id, v.set("libraries", [...g] + "");
|
|
215
215
|
for (i in o)
|
|
216
|
-
v.set(i.replace(/[A-Z]/g, (
|
|
217
|
-
v.set("callback", u + ".maps." +
|
|
216
|
+
v.set(i.replace(/[A-Z]/g, (x) => "_" + x[0].toLowerCase()), o[i]);
|
|
217
|
+
v.set("callback", u + ".maps." + h), l.src = this.url + "?" + v, f[h] = _, l.onerror = () => a = E(Error(d + " could not load.")), l.nonce = this.nonce || ((b = p.querySelector("script[nonce]")) === null || b === void 0 ? void 0 : b.nonce) || "", p.head.append(l);
|
|
218
218
|
})))
|
|
219
219
|
);
|
|
220
|
-
|
|
220
|
+
f[c] ? console.warn(d + " only loads once. Ignoring:", o) : f[c] = (_, ...E) => g.add(_) && w().then(() => f[c](_, ...E));
|
|
221
221
|
})(s);
|
|
222
222
|
const r = this.libraries.map((o) => this.importLibrary(o));
|
|
223
223
|
r.length || r.push(this.importLibrary("core")), Promise.all(r).then(() => this.callback(), (o) => {
|
|
@@ -260,7 +260,7 @@ class A {
|
|
|
260
260
|
}
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
|
-
function
|
|
263
|
+
function ze(n) {
|
|
264
264
|
return class extends n.OverlayView {
|
|
265
265
|
constructor(s) {
|
|
266
266
|
super();
|
|
@@ -332,7 +332,7 @@ function Ve(n) {
|
|
|
332
332
|
}
|
|
333
333
|
};
|
|
334
334
|
}
|
|
335
|
-
let
|
|
335
|
+
let he;
|
|
336
336
|
const pe = [
|
|
337
337
|
"bounds_changed",
|
|
338
338
|
"center_changed",
|
|
@@ -353,7 +353,7 @@ const pe = [
|
|
|
353
353
|
"tilesloaded",
|
|
354
354
|
"tilt_changed",
|
|
355
355
|
"zoom_changed"
|
|
356
|
-
], Ge =
|
|
356
|
+
], Ge = P({
|
|
357
357
|
props: {
|
|
358
358
|
apiPromise: {
|
|
359
359
|
type: Promise
|
|
@@ -547,13 +547,13 @@ const pe = [
|
|
|
547
547
|
G(Z, r), G(D, o), G(Se, a);
|
|
548
548
|
const l = () => {
|
|
549
549
|
const c = { ...n };
|
|
550
|
-
Object.keys(c).forEach((
|
|
551
|
-
c[
|
|
550
|
+
Object.keys(c).forEach((f) => {
|
|
551
|
+
c[f] === void 0 && delete c[f];
|
|
552
552
|
});
|
|
553
|
-
const p = (
|
|
553
|
+
const p = (f) => {
|
|
554
554
|
var g;
|
|
555
|
-
return
|
|
556
|
-
},
|
|
555
|
+
return f ? { position: (g = o.value) == null ? void 0 : g.ControlPosition[f] } : {};
|
|
556
|
+
}, m = {
|
|
557
557
|
scaleControlOptions: n.scaleControlStyle ? { style: n.scaleControlStyle } : {},
|
|
558
558
|
panControlOptions: p(n.panControlPosition),
|
|
559
559
|
zoomControlOptions: p(n.zoomControlPosition),
|
|
@@ -562,46 +562,46 @@ const pe = [
|
|
|
562
562
|
fullscreenControlOptions: p(n.fullscreenControlPosition),
|
|
563
563
|
disableDefaultUI: n.disableDefaultUi
|
|
564
564
|
};
|
|
565
|
-
return { ...c, ...
|
|
565
|
+
return { ...c, ...m };
|
|
566
566
|
}, i = O(
|
|
567
567
|
[o, r],
|
|
568
|
-
([c,
|
|
569
|
-
const p = c,
|
|
570
|
-
p &&
|
|
568
|
+
([c, h]) => {
|
|
569
|
+
const p = c, m = h;
|
|
570
|
+
p && m && (p.event.addListenerOnce(m, "tilesloaded", () => {
|
|
571
571
|
a.value = !0;
|
|
572
572
|
}), setTimeout(i, 0));
|
|
573
573
|
},
|
|
574
574
|
{ immediate: !0 }
|
|
575
|
-
),
|
|
575
|
+
), d = () => {
|
|
576
576
|
try {
|
|
577
|
-
const { apiKey: c, region:
|
|
578
|
-
|
|
577
|
+
const { apiKey: c, region: h, version: p, language: m, libraries: f } = n;
|
|
578
|
+
he = new T({ apiKey: c, region: h, version: p, language: m, libraries: f });
|
|
579
579
|
} catch (c) {
|
|
580
580
|
console.error(c);
|
|
581
581
|
}
|
|
582
582
|
}, u = (c) => {
|
|
583
|
-
o.value =
|
|
584
|
-
const
|
|
585
|
-
o.value[ee] =
|
|
586
|
-
var
|
|
587
|
-
(
|
|
583
|
+
o.value = I(c.maps), r.value = I(new c.maps.Map(t.value, l()));
|
|
584
|
+
const h = ze(o.value);
|
|
585
|
+
o.value[ee] = h, pe.forEach((m) => {
|
|
586
|
+
var f;
|
|
587
|
+
(f = r.value) == null || f.addListener(m, (g) => e(m, g));
|
|
588
588
|
}), s.value = !0;
|
|
589
589
|
const p = Object.keys(n).filter(
|
|
590
|
-
(
|
|
591
|
-
).map((
|
|
590
|
+
(m) => !["apiPromise", "apiKey", "version", "libraries", "region", "language", "center", "zoom"].includes(m)
|
|
591
|
+
).map((m) => N(n, m));
|
|
592
592
|
O(
|
|
593
593
|
[() => n.center, () => n.zoom, ...p],
|
|
594
|
-
([
|
|
595
|
-
var
|
|
596
|
-
const { center: w, zoom: _, ...
|
|
597
|
-
(
|
|
598
|
-
const
|
|
599
|
-
|
|
594
|
+
([m, f], [g, v]) => {
|
|
595
|
+
var x, M, F;
|
|
596
|
+
const { center: w, zoom: _, ...E } = l();
|
|
597
|
+
(x = r.value) == null || x.setOptions(E), f !== void 0 && f !== v && ((M = r.value) == null || M.setZoom(f));
|
|
598
|
+
const b = !g || m.lng !== g.lng || m.lat !== g.lat;
|
|
599
|
+
m && b && ((F = r.value) == null || F.panTo(m));
|
|
600
600
|
}
|
|
601
601
|
);
|
|
602
602
|
};
|
|
603
603
|
return Me(() => {
|
|
604
|
-
n.apiPromise && n.apiPromise instanceof Promise ? n.apiPromise.then(u) : (
|
|
604
|
+
n.apiPromise && n.apiPromise instanceof Promise ? n.apiPromise.then(u) : (d(), he.load().then(u));
|
|
605
605
|
}), B(() => {
|
|
606
606
|
var c;
|
|
607
607
|
a.value = !1, r.value && ((c = o.value) == null || c.event.clearInstanceListeners(r.value));
|
|
@@ -662,25 +662,25 @@ var Je = function n(e, t) {
|
|
|
662
662
|
}
|
|
663
663
|
return e !== e && t !== t;
|
|
664
664
|
};
|
|
665
|
-
const
|
|
665
|
+
const $ = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n === ee, U = (n, e, t, s) => {
|
|
666
666
|
const r = y(), o = C(Z, y()), a = C(D, y()), l = C(Le, y()), i = J(
|
|
667
667
|
() => !!(l.value && a.value && (r.value instanceof a.value.Marker || r.value instanceof a.value[ee]))
|
|
668
668
|
);
|
|
669
669
|
return O(
|
|
670
670
|
[o, t],
|
|
671
|
-
(
|
|
672
|
-
var p,
|
|
673
|
-
const
|
|
674
|
-
!o.value || !a.value || !
|
|
671
|
+
(d, [u, c]) => {
|
|
672
|
+
var p, m, f;
|
|
673
|
+
const h = !$(t.value, c) || o.value !== u;
|
|
674
|
+
!o.value || !a.value || !h || (r.value ? (r.value.setOptions(t.value), i.value && ((p = l.value) == null || p.removeMarker(r.value), (m = l.value) == null || m.addMarker(r.value))) : (Ye(n) ? r.value = I(
|
|
675
675
|
new a.value[n](t.value)
|
|
676
|
-
) : Xe(n) ? r.value =
|
|
676
|
+
) : Xe(n) ? r.value = I(
|
|
677
677
|
new a.value[n](t.value)
|
|
678
|
-
) : r.value =
|
|
678
|
+
) : r.value = I(
|
|
679
679
|
new a.value[n]({
|
|
680
680
|
...t.value,
|
|
681
681
|
map: o.value
|
|
682
682
|
})
|
|
683
|
-
), i.value ? (
|
|
683
|
+
), i.value ? (f = l.value) == null || f.addMarker(r.value) : r.value.setMap(o.value), e.forEach((g) => {
|
|
684
684
|
var v;
|
|
685
685
|
(v = r.value) == null || v.addListener(g, (w) => s(g, w));
|
|
686
686
|
})));
|
|
@@ -689,8 +689,8 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
689
689
|
immediate: !0
|
|
690
690
|
}
|
|
691
691
|
), B(() => {
|
|
692
|
-
var
|
|
693
|
-
r.value && ((
|
|
692
|
+
var d, u;
|
|
693
|
+
r.value && ((d = a.value) == null || d.event.clearInstanceListeners(r.value), i.value ? (u = l.value) == null || u.removeMarker(r.value) : r.value.setMap(null));
|
|
694
694
|
}), r;
|
|
695
695
|
}, fe = [
|
|
696
696
|
"animation_changed",
|
|
@@ -716,7 +716,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
716
716
|
"shape_changed",
|
|
717
717
|
"title_changed",
|
|
718
718
|
"visible_changed"
|
|
719
|
-
], xt =
|
|
719
|
+
], xt = P({
|
|
720
720
|
name: "Marker",
|
|
721
721
|
props: {
|
|
722
722
|
options: {
|
|
@@ -732,7 +732,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
732
732
|
return (a = s.default) == null ? void 0 : a.call(s);
|
|
733
733
|
};
|
|
734
734
|
}
|
|
735
|
-
}), Lt =
|
|
735
|
+
}), Lt = P({
|
|
736
736
|
name: "Polyline",
|
|
737
737
|
props: {
|
|
738
738
|
options: {
|
|
@@ -746,7 +746,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
746
746
|
return { polyline: U("Polyline", q, t, e) };
|
|
747
747
|
},
|
|
748
748
|
render: () => null
|
|
749
|
-
}), St =
|
|
749
|
+
}), St = P({
|
|
750
750
|
name: "Polygon",
|
|
751
751
|
props: {
|
|
752
752
|
options: {
|
|
@@ -760,7 +760,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
760
760
|
return { polygon: U("Polygon", q, t, e) };
|
|
761
761
|
},
|
|
762
762
|
render: () => null
|
|
763
|
-
}), me = q.concat(["bounds_changed"]), It =
|
|
763
|
+
}), me = q.concat(["bounds_changed"]), It = P({
|
|
764
764
|
name: "Rectangle",
|
|
765
765
|
props: {
|
|
766
766
|
options: {
|
|
@@ -774,7 +774,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
774
774
|
return { rectangle: U("Rectangle", me, t, e) };
|
|
775
775
|
},
|
|
776
776
|
render: () => null
|
|
777
|
-
}), ge = q.concat(["center_changed", "radius_changed"]), At =
|
|
777
|
+
}), ge = q.concat(["center_changed", "radius_changed"]), At = P({
|
|
778
778
|
name: "Circle",
|
|
779
779
|
props: {
|
|
780
780
|
options: {
|
|
@@ -788,7 +788,7 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
788
788
|
return { circle: U("Circle", ge, t, e) };
|
|
789
789
|
},
|
|
790
790
|
render: () => null
|
|
791
|
-
}), Qe =
|
|
791
|
+
}), Qe = P({
|
|
792
792
|
props: {
|
|
793
793
|
position: {
|
|
794
794
|
type: String,
|
|
@@ -803,8 +803,8 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
803
803
|
setup(n, { emit: e }) {
|
|
804
804
|
const t = y(null), s = C(Z, y()), r = C(D, y()), o = C(Se, y(!1)), a = y(!1), l = O(
|
|
805
805
|
[o, r, t],
|
|
806
|
-
([u, c,
|
|
807
|
-
c && u &&
|
|
806
|
+
([u, c, h]) => {
|
|
807
|
+
c && u && h && (i(n.position), a.value = !0, e("content:loaded"), setTimeout(l, 0));
|
|
808
808
|
},
|
|
809
809
|
{ immediate: !0 }
|
|
810
810
|
), i = (u) => {
|
|
@@ -812,19 +812,19 @@ const T = /* @__PURE__ */ Ke(Je), Ye = (n) => n === "Marker", Xe = (n) => n ===
|
|
|
812
812
|
const c = r.value.ControlPosition[u];
|
|
813
813
|
s.value.controls[c].push(t.value);
|
|
814
814
|
}
|
|
815
|
-
},
|
|
815
|
+
}, d = (u) => {
|
|
816
816
|
if (s.value && r.value) {
|
|
817
817
|
let c = null;
|
|
818
|
-
const
|
|
819
|
-
s.value.controls[
|
|
820
|
-
p === t.value && (c =
|
|
821
|
-
}), c !== null && s.value.controls[
|
|
818
|
+
const h = r.value.ControlPosition[u];
|
|
819
|
+
s.value.controls[h].forEach((p, m) => {
|
|
820
|
+
p === t.value && (c = m);
|
|
821
|
+
}), c !== null && s.value.controls[h].removeAt(c);
|
|
822
822
|
}
|
|
823
823
|
};
|
|
824
|
-
return B(() =>
|
|
824
|
+
return B(() => d(n.position)), O(
|
|
825
825
|
() => n.position,
|
|
826
826
|
(u, c) => {
|
|
827
|
-
|
|
827
|
+
d(c), i(u);
|
|
828
828
|
}
|
|
829
829
|
), O(
|
|
830
830
|
() => n.index,
|
|
@@ -841,56 +841,62 @@ function tt(n, e, t, s, r, o) {
|
|
|
841
841
|
[Ue, n.showContent]
|
|
842
842
|
]);
|
|
843
843
|
}
|
|
844
|
-
const Tt = /* @__PURE__ */ te(Qe, [["render", tt]]), ve = ["closeclick", "content_changed", "domready", "position_changed", "visible", "zindex_changed"], st =
|
|
844
|
+
const Tt = /* @__PURE__ */ te(Qe, [["render", tt]]), ve = ["closeclick", "content_changed", "domready", "position_changed", "visible", "zindex_changed"], st = P({
|
|
845
845
|
inheritAttrs: !1,
|
|
846
846
|
props: {
|
|
847
847
|
options: {
|
|
848
848
|
type: Object,
|
|
849
849
|
default: () => ({})
|
|
850
|
+
},
|
|
851
|
+
modelValue: {
|
|
852
|
+
type: Boolean
|
|
850
853
|
}
|
|
851
854
|
},
|
|
852
|
-
emits: ve,
|
|
855
|
+
emits: [...ve, "update:modelValue"],
|
|
853
856
|
setup(n, { slots: e, emit: t, expose: s }) {
|
|
854
857
|
const r = y(), o = y(), a = C(Z, y()), l = C(D, y()), i = C(xe, y());
|
|
855
|
-
let
|
|
856
|
-
const
|
|
857
|
-
var p;
|
|
858
|
-
return (p = e.default) == null ? void 0 : p.call(e).some((f) => f.type !== Ee);
|
|
859
|
-
}), c = (p) => {
|
|
858
|
+
let d, u = n.modelValue;
|
|
859
|
+
const c = J(() => {
|
|
860
860
|
var f;
|
|
861
|
-
return (f =
|
|
862
|
-
},
|
|
863
|
-
|
|
864
|
-
|
|
861
|
+
return (f = e.default) == null ? void 0 : f.call(e).some((g) => g.type !== Ee);
|
|
862
|
+
}), h = (f) => {
|
|
863
|
+
u = f, t("update:modelValue", f);
|
|
864
|
+
}, p = (f) => {
|
|
865
|
+
r.value && (r.value.open({ map: a.value, anchor: i.value, ...f }), h(!0));
|
|
866
|
+
}, m = () => {
|
|
867
|
+
r.value && (r.value.close(), h(!1));
|
|
865
868
|
};
|
|
866
869
|
return Me(() => {
|
|
867
870
|
O(
|
|
868
871
|
[a, () => n.options],
|
|
869
|
-
([
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
872
|
+
([f, g], [v, w]) => {
|
|
873
|
+
var E;
|
|
874
|
+
const _ = !$(g, w) || a.value !== v;
|
|
875
|
+
a.value && l.value && _ && (r.value ? (r.value.setOptions({
|
|
876
|
+
...g,
|
|
877
|
+
content: c.value ? o.value : g.content
|
|
878
|
+
}), i.value || p()) : (r.value = I(
|
|
875
879
|
new l.value.InfoWindow({
|
|
876
|
-
...
|
|
877
|
-
content:
|
|
880
|
+
...g,
|
|
881
|
+
content: c.value ? o.value : g.content
|
|
878
882
|
})
|
|
879
|
-
), i.value
|
|
880
|
-
|
|
881
|
-
})
|
|
882
|
-
var
|
|
883
|
-
(
|
|
884
|
-
})));
|
|
883
|
+
), i.value && (d = i.value.addListener("click", () => {
|
|
884
|
+
p();
|
|
885
|
+
})), (!i.value || u) && p(), ve.forEach((b) => {
|
|
886
|
+
var x;
|
|
887
|
+
(x = r.value) == null || x.addListener(b, (M) => t(b, M));
|
|
888
|
+
}), (E = r.value) == null || E.addListener("closeclick", () => h(!1))));
|
|
885
889
|
},
|
|
886
890
|
{
|
|
887
891
|
immediate: !0
|
|
888
892
|
}
|
|
889
|
-
)
|
|
893
|
+
), O(() => n.modelValue, (f) => {
|
|
894
|
+
f !== u && (f ? p() : m());
|
|
895
|
+
});
|
|
890
896
|
}), B(() => {
|
|
891
|
-
var
|
|
892
|
-
|
|
893
|
-
}), s({ infoWindow: r, open:
|
|
897
|
+
var f;
|
|
898
|
+
d && d.remove(), r.value && ((f = l.value) == null || f.event.clearInstanceListeners(r.value), m());
|
|
899
|
+
}), s({ infoWindow: r, open: p, close: m }), { infoWindow: r, infoWindowRef: o, hasSlotContent: c, open: p, close: m };
|
|
894
900
|
}
|
|
895
901
|
});
|
|
896
902
|
const rt = {
|
|
@@ -904,7 +910,7 @@ function nt(n, e, t, s, r, o) {
|
|
|
904
910
|
], 16)
|
|
905
911
|
])) : Oe("", !0);
|
|
906
912
|
}
|
|
907
|
-
const $t = /* @__PURE__ */ te(st, [["render", nt], ["__scopeId", "data-v-
|
|
913
|
+
const $t = /* @__PURE__ */ te(st, [["render", nt], ["__scopeId", "data-v-90174664"]]), ye = [
|
|
908
914
|
Int8Array,
|
|
909
915
|
Uint8Array,
|
|
910
916
|
Uint8ClampedArray,
|
|
@@ -914,7 +920,7 @@ const $t = /* @__PURE__ */ te(st, [["render", nt], ["__scopeId", "data-v-45a4606
|
|
|
914
920
|
Uint32Array,
|
|
915
921
|
Float32Array,
|
|
916
922
|
Float64Array
|
|
917
|
-
], re = 1,
|
|
923
|
+
], re = 1, V = 8;
|
|
918
924
|
class le {
|
|
919
925
|
/**
|
|
920
926
|
* Creates an index from raw `ArrayBuffer` data.
|
|
@@ -949,7 +955,7 @@ class le {
|
|
|
949
955
|
const o = ye.indexOf(this.ArrayType), a = e * 2 * this.ArrayType.BYTES_PER_ELEMENT, l = e * this.IndexArrayType.BYTES_PER_ELEMENT, i = (8 - l % 8) % 8;
|
|
950
956
|
if (o < 0)
|
|
951
957
|
throw new Error(`Unexpected typed array class: ${s}.`);
|
|
952
|
-
r && r instanceof ArrayBuffer ? (this.data = r, this.ids = new this.IndexArrayType(this.data,
|
|
958
|
+
r && r instanceof ArrayBuffer ? (this.data = r, this.ids = new this.IndexArrayType(this.data, V, e), this.coords = new this.ArrayType(this.data, V + l + i, e * 2), this._pos = e * 2, this._finished = !0) : (this.data = new ArrayBuffer(V + a + l + i), this.ids = new this.IndexArrayType(this.data, V, e), this.coords = new this.ArrayType(this.data, V + l + i, e * 2), this._pos = 0, this._finished = !1, new Uint8Array(this.data, 0, 2).set([219, (re << 4) + o]), new Uint16Array(this.data, 2, 1)[0] = t, new Uint32Array(this.data, 4, 1)[0] = e);
|
|
953
959
|
}
|
|
954
960
|
/**
|
|
955
961
|
* Add a point to the index.
|
|
@@ -981,20 +987,20 @@ class le {
|
|
|
981
987
|
range(e, t, s, r) {
|
|
982
988
|
if (!this._finished)
|
|
983
989
|
throw new Error("Data not yet indexed - call index.finish().");
|
|
984
|
-
const { ids: o, coords: a, nodeSize: l } = this, i = [0, o.length - 1, 0],
|
|
990
|
+
const { ids: o, coords: a, nodeSize: l } = this, i = [0, o.length - 1, 0], d = [];
|
|
985
991
|
for (; i.length; ) {
|
|
986
|
-
const u = i.pop() || 0, c = i.pop() || 0,
|
|
987
|
-
if (c -
|
|
988
|
-
for (let g =
|
|
992
|
+
const u = i.pop() || 0, c = i.pop() || 0, h = i.pop() || 0;
|
|
993
|
+
if (c - h <= l) {
|
|
994
|
+
for (let g = h; g <= c; g++) {
|
|
989
995
|
const v = a[2 * g], w = a[2 * g + 1];
|
|
990
|
-
v >= e && v <= s && w >= t && w <= r &&
|
|
996
|
+
v >= e && v <= s && w >= t && w <= r && d.push(o[g]);
|
|
991
997
|
}
|
|
992
998
|
continue;
|
|
993
999
|
}
|
|
994
|
-
const p =
|
|
995
|
-
|
|
1000
|
+
const p = h + c >> 1, m = a[2 * p], f = a[2 * p + 1];
|
|
1001
|
+
m >= e && m <= s && f >= t && f <= r && d.push(o[p]), (u === 0 ? e <= m : t <= f) && (i.push(h), i.push(p - 1), i.push(1 - u)), (u === 0 ? s >= m : r >= f) && (i.push(p + 1), i.push(c), i.push(1 - u));
|
|
996
1002
|
}
|
|
997
|
-
return
|
|
1003
|
+
return d;
|
|
998
1004
|
}
|
|
999
1005
|
/**
|
|
1000
1006
|
* Search the index for items within a given radius.
|
|
@@ -1006,16 +1012,16 @@ class le {
|
|
|
1006
1012
|
within(e, t, s) {
|
|
1007
1013
|
if (!this._finished)
|
|
1008
1014
|
throw new Error("Data not yet indexed - call index.finish().");
|
|
1009
|
-
const { ids: r, coords: o, nodeSize: a } = this, l = [0, r.length - 1, 0], i = [],
|
|
1015
|
+
const { ids: r, coords: o, nodeSize: a } = this, l = [0, r.length - 1, 0], i = [], d = s * s;
|
|
1010
1016
|
for (; l.length; ) {
|
|
1011
|
-
const u = l.pop() || 0, c = l.pop() || 0,
|
|
1012
|
-
if (c -
|
|
1013
|
-
for (let g =
|
|
1014
|
-
we(o[2 * g], o[2 * g + 1], e, t) <=
|
|
1017
|
+
const u = l.pop() || 0, c = l.pop() || 0, h = l.pop() || 0;
|
|
1018
|
+
if (c - h <= a) {
|
|
1019
|
+
for (let g = h; g <= c; g++)
|
|
1020
|
+
we(o[2 * g], o[2 * g + 1], e, t) <= d && i.push(r[g]);
|
|
1015
1021
|
continue;
|
|
1016
1022
|
}
|
|
1017
|
-
const p =
|
|
1018
|
-
we(
|
|
1023
|
+
const p = h + c >> 1, m = o[2 * p], f = o[2 * p + 1];
|
|
1024
|
+
we(m, f, e, t) <= d && i.push(r[p]), (u === 0 ? e - s <= m : t - s <= f) && (l.push(h), l.push(p - 1), l.push(1 - u)), (u === 0 ? e + s >= m : t + s >= f) && (l.push(p + 1), l.push(c), l.push(1 - u));
|
|
1019
1025
|
}
|
|
1020
1026
|
return i;
|
|
1021
1027
|
}
|
|
@@ -1029,21 +1035,21 @@ function ie(n, e, t, s, r, o) {
|
|
|
1029
1035
|
function Ie(n, e, t, s, r, o) {
|
|
1030
1036
|
for (; r > s; ) {
|
|
1031
1037
|
if (r - s > 600) {
|
|
1032
|
-
const
|
|
1033
|
-
Ie(n, e, t,
|
|
1038
|
+
const d = r - s + 1, u = t - s + 1, c = Math.log(d), h = 0.5 * Math.exp(2 * c / 3), p = 0.5 * Math.sqrt(c * h * (d - h) / d) * (u - d / 2 < 0 ? -1 : 1), m = Math.max(s, Math.floor(t - u * h / d + p)), f = Math.min(r, Math.floor(t + (d - u) * h / d + p));
|
|
1039
|
+
Ie(n, e, t, m, f, o);
|
|
1034
1040
|
}
|
|
1035
1041
|
const a = e[2 * t + o];
|
|
1036
1042
|
let l = s, i = r;
|
|
1037
|
-
for (
|
|
1038
|
-
for (
|
|
1043
|
+
for (z(n, e, s, t), e[2 * r + o] > a && z(n, e, s, r); l < i; ) {
|
|
1044
|
+
for (z(n, e, l, i), l++, i--; e[2 * l + o] < a; )
|
|
1039
1045
|
l++;
|
|
1040
1046
|
for (; e[2 * i + o] > a; )
|
|
1041
1047
|
i--;
|
|
1042
1048
|
}
|
|
1043
|
-
e[2 * s + o] === a ?
|
|
1049
|
+
e[2 * s + o] === a ? z(n, e, s, i) : (i++, z(n, e, i, r)), i <= t && (s = i + 1), t <= i && (r = i - 1);
|
|
1044
1050
|
}
|
|
1045
1051
|
}
|
|
1046
|
-
function
|
|
1052
|
+
function z(n, e, t, s) {
|
|
1047
1053
|
ne(n, t, s), ne(e, 2 * t, 2 * s), ne(e, 2 * t + 1, 2 * s + 1);
|
|
1048
1054
|
}
|
|
1049
1055
|
function ne(n, e, t) {
|
|
@@ -1077,7 +1083,7 @@ const ot = {
|
|
|
1077
1083
|
// properties to use for individual points when running the reducer
|
|
1078
1084
|
map: (n) => n
|
|
1079
1085
|
// props => ({sum: props.my_value})
|
|
1080
|
-
}, _e = Math.fround || ((n) => (e) => (n[0] = +e, n[0]))(new Float32Array(1)),
|
|
1086
|
+
}, _e = Math.fround || ((n) => (e) => (n[0] = +e, n[0]))(new Float32Array(1)), A = 2, S = 3, oe = 4, L = 5, Ae = 6;
|
|
1081
1087
|
class Te {
|
|
1082
1088
|
constructor(e) {
|
|
1083
1089
|
this.options = Object.assign(Object.create(ot), e), this.trees = new Array(this.options.maxZoom + 1), this.stride = this.options.reduce ? 7 : 6, this.clusterProps = [];
|
|
@@ -1089,12 +1095,12 @@ class Te {
|
|
|
1089
1095
|
t && console.time(o), this.points = e;
|
|
1090
1096
|
const a = [];
|
|
1091
1097
|
for (let i = 0; i < e.length; i++) {
|
|
1092
|
-
const
|
|
1093
|
-
if (!
|
|
1098
|
+
const d = e[i];
|
|
1099
|
+
if (!d.geometry)
|
|
1094
1100
|
continue;
|
|
1095
|
-
const [u, c] =
|
|
1101
|
+
const [u, c] = d.geometry.coordinates, h = _e(W(u)), p = _e(K(c));
|
|
1096
1102
|
a.push(
|
|
1097
|
-
|
|
1103
|
+
h,
|
|
1098
1104
|
p,
|
|
1099
1105
|
// projected point coordinates
|
|
1100
1106
|
1 / 0,
|
|
@@ -1110,8 +1116,8 @@ class Te {
|
|
|
1110
1116
|
let l = this.trees[r + 1] = this._createTree(a);
|
|
1111
1117
|
t && console.timeEnd(o);
|
|
1112
1118
|
for (let i = r; i >= s; i--) {
|
|
1113
|
-
const
|
|
1114
|
-
l = this.trees[i] = this._createTree(this._cluster(l, i)), t && console.log("z%d: %d clusters in %dms", i, l.numItems, +Date.now() -
|
|
1119
|
+
const d = +Date.now();
|
|
1120
|
+
l = this.trees[i] = this._createTree(this._cluster(l, i)), t && console.log("z%d: %d clusters in %dms", i, l.numItems, +Date.now() - d);
|
|
1115
1121
|
}
|
|
1116
1122
|
return t && console.timeEnd("total time"), this;
|
|
1117
1123
|
}
|
|
@@ -1123,13 +1129,13 @@ class Te {
|
|
|
1123
1129
|
if (e[2] - e[0] >= 360)
|
|
1124
1130
|
s = -180, o = 180;
|
|
1125
1131
|
else if (s > o) {
|
|
1126
|
-
const c = this.getClusters([s, r, 180, a], t),
|
|
1127
|
-
return c.concat(
|
|
1132
|
+
const c = this.getClusters([s, r, 180, a], t), h = this.getClusters([-180, r, o, a], t);
|
|
1133
|
+
return c.concat(h);
|
|
1128
1134
|
}
|
|
1129
|
-
const l = this.trees[this._limitZoom(t)], i = l.range(W(s), K(a), W(o), K(r)),
|
|
1135
|
+
const l = this.trees[this._limitZoom(t)], i = l.range(W(s), K(a), W(o), K(r)), d = l.data, u = [];
|
|
1130
1136
|
for (const c of i) {
|
|
1131
|
-
const
|
|
1132
|
-
u.push(h
|
|
1137
|
+
const h = this.stride * c;
|
|
1138
|
+
u.push(d[h + L] > 1 ? ke(d, h, this.clusterProps) : this.points[d[h + S]]);
|
|
1133
1139
|
}
|
|
1134
1140
|
return u;
|
|
1135
1141
|
}
|
|
@@ -1140,10 +1146,10 @@ class Te {
|
|
|
1140
1146
|
const a = o.data;
|
|
1141
1147
|
if (t * this.stride >= a.length)
|
|
1142
1148
|
throw new Error(r);
|
|
1143
|
-
const l = this.options.radius / (this.options.extent * Math.pow(2, s - 1)), i = a[t * this.stride],
|
|
1144
|
-
for (const
|
|
1145
|
-
const p =
|
|
1146
|
-
a[p + oe] === e && c.push(a[p +
|
|
1149
|
+
const l = this.options.radius / (this.options.extent * Math.pow(2, s - 1)), i = a[t * this.stride], d = a[t * this.stride + 1], u = o.within(i, d, l), c = [];
|
|
1150
|
+
for (const h of u) {
|
|
1151
|
+
const p = h * this.stride;
|
|
1152
|
+
a[p + oe] === e && c.push(a[p + L] > 1 ? ke(a, p, this.clusterProps) : this.points[a[p + S]]);
|
|
1147
1153
|
}
|
|
1148
1154
|
if (c.length === 0)
|
|
1149
1155
|
throw new Error(r);
|
|
@@ -1155,25 +1161,25 @@ class Te {
|
|
|
1155
1161
|
return this._appendLeaves(r, e, t, s, 0), r;
|
|
1156
1162
|
}
|
|
1157
1163
|
getTile(e, t, s) {
|
|
1158
|
-
const r = this.trees[this._limitZoom(e)], o = Math.pow(2, e), { extent: a, radius: l } = this.options, i = l / a,
|
|
1164
|
+
const r = this.trees[this._limitZoom(e)], o = Math.pow(2, e), { extent: a, radius: l } = this.options, i = l / a, d = (s - i) / o, u = (s + 1 + i) / o, c = {
|
|
1159
1165
|
features: []
|
|
1160
1166
|
};
|
|
1161
1167
|
return this._addTileFeatures(
|
|
1162
|
-
r.range((t - i) / o,
|
|
1168
|
+
r.range((t - i) / o, d, (t + 1 + i) / o, u),
|
|
1163
1169
|
r.data,
|
|
1164
1170
|
t,
|
|
1165
1171
|
s,
|
|
1166
1172
|
o,
|
|
1167
1173
|
c
|
|
1168
1174
|
), t === 0 && this._addTileFeatures(
|
|
1169
|
-
r.range(1 - i / o,
|
|
1175
|
+
r.range(1 - i / o, d, 1, u),
|
|
1170
1176
|
r.data,
|
|
1171
1177
|
o,
|
|
1172
1178
|
s,
|
|
1173
1179
|
o,
|
|
1174
1180
|
c
|
|
1175
1181
|
), t === o - 1 && this._addTileFeatures(
|
|
1176
|
-
r.range(0,
|
|
1182
|
+
r.range(0, d, i / o, u),
|
|
1177
1183
|
r.data,
|
|
1178
1184
|
-1,
|
|
1179
1185
|
s,
|
|
@@ -1208,70 +1214,70 @@ class Te {
|
|
|
1208
1214
|
}
|
|
1209
1215
|
_addTileFeatures(e, t, s, r, o, a) {
|
|
1210
1216
|
for (const l of e) {
|
|
1211
|
-
const i = l * this.stride,
|
|
1212
|
-
let u, c,
|
|
1213
|
-
if (
|
|
1214
|
-
u = $e(t, i, this.clusterProps), c = t[i],
|
|
1217
|
+
const i = l * this.stride, d = t[i + L] > 1;
|
|
1218
|
+
let u, c, h;
|
|
1219
|
+
if (d)
|
|
1220
|
+
u = $e(t, i, this.clusterProps), c = t[i], h = t[i + 1];
|
|
1215
1221
|
else {
|
|
1216
|
-
const
|
|
1217
|
-
u =
|
|
1218
|
-
const [g, v] =
|
|
1219
|
-
c = W(g),
|
|
1222
|
+
const f = this.points[t[i + S]];
|
|
1223
|
+
u = f.properties;
|
|
1224
|
+
const [g, v] = f.geometry.coordinates;
|
|
1225
|
+
c = W(g), h = K(v);
|
|
1220
1226
|
}
|
|
1221
1227
|
const p = {
|
|
1222
1228
|
type: 1,
|
|
1223
1229
|
geometry: [[
|
|
1224
1230
|
Math.round(this.options.extent * (c * o - s)),
|
|
1225
|
-
Math.round(this.options.extent * (
|
|
1231
|
+
Math.round(this.options.extent * (h * o - r))
|
|
1226
1232
|
]],
|
|
1227
1233
|
tags: u
|
|
1228
1234
|
};
|
|
1229
|
-
let
|
|
1230
|
-
|
|
1235
|
+
let m;
|
|
1236
|
+
d || this.options.generateId ? m = t[i + S] : m = this.points[t[i + S]].id, m !== void 0 && (p.id = m), a.features.push(p);
|
|
1231
1237
|
}
|
|
1232
1238
|
}
|
|
1233
1239
|
_limitZoom(e) {
|
|
1234
1240
|
return Math.max(this.options.minZoom, Math.min(Math.floor(+e), this.options.maxZoom + 1));
|
|
1235
1241
|
}
|
|
1236
1242
|
_cluster(e, t) {
|
|
1237
|
-
const { radius: s, extent: r, reduce: o, minPoints: a } = this.options, l = s / (r * Math.pow(2, t)), i = e.data,
|
|
1243
|
+
const { radius: s, extent: r, reduce: o, minPoints: a } = this.options, l = s / (r * Math.pow(2, t)), i = e.data, d = [], u = this.stride;
|
|
1238
1244
|
for (let c = 0; c < i.length; c += u) {
|
|
1239
|
-
if (i[c +
|
|
1245
|
+
if (i[c + A] <= t)
|
|
1240
1246
|
continue;
|
|
1241
|
-
i[c +
|
|
1242
|
-
const
|
|
1243
|
-
let g =
|
|
1244
|
-
for (const v of
|
|
1247
|
+
i[c + A] = t;
|
|
1248
|
+
const h = i[c], p = i[c + 1], m = e.within(i[c], i[c + 1], l), f = i[c + L];
|
|
1249
|
+
let g = f;
|
|
1250
|
+
for (const v of m) {
|
|
1245
1251
|
const w = v * u;
|
|
1246
|
-
i[w +
|
|
1252
|
+
i[w + A] > t && (g += i[w + L]);
|
|
1247
1253
|
}
|
|
1248
|
-
if (g >
|
|
1249
|
-
let v =
|
|
1250
|
-
const
|
|
1251
|
-
for (const
|
|
1252
|
-
const
|
|
1253
|
-
if (i[
|
|
1254
|
+
if (g > f && g >= a) {
|
|
1255
|
+
let v = h * f, w = p * f, _, E = -1;
|
|
1256
|
+
const b = ((c / u | 0) << 5) + (t + 1) + this.points.length;
|
|
1257
|
+
for (const x of m) {
|
|
1258
|
+
const M = x * u;
|
|
1259
|
+
if (i[M + A] <= t)
|
|
1254
1260
|
continue;
|
|
1255
|
-
i[
|
|
1256
|
-
const F = i[
|
|
1257
|
-
v += i[
|
|
1261
|
+
i[M + A] = t;
|
|
1262
|
+
const F = i[M + L];
|
|
1263
|
+
v += i[M] * F, w += i[M + 1] * F, i[M + oe] = b, o && (_ || (_ = this._map(i, c, !0), E = this.clusterProps.length, this.clusterProps.push(_)), o(_, this._map(i, M)));
|
|
1258
1264
|
}
|
|
1259
|
-
i[c + oe] =
|
|
1265
|
+
i[c + oe] = b, d.push(v / g, w / g, 1 / 0, b, -1, g), o && d.push(E);
|
|
1260
1266
|
} else {
|
|
1261
1267
|
for (let v = 0; v < u; v++)
|
|
1262
|
-
|
|
1268
|
+
d.push(i[c + v]);
|
|
1263
1269
|
if (g > 1)
|
|
1264
|
-
for (const v of
|
|
1270
|
+
for (const v of m) {
|
|
1265
1271
|
const w = v * u;
|
|
1266
|
-
if (!(i[w +
|
|
1267
|
-
i[w +
|
|
1272
|
+
if (!(i[w + A] <= t)) {
|
|
1273
|
+
i[w + A] = t;
|
|
1268
1274
|
for (let _ = 0; _ < u; _++)
|
|
1269
|
-
|
|
1275
|
+
d.push(i[w + _]);
|
|
1270
1276
|
}
|
|
1271
1277
|
}
|
|
1272
1278
|
}
|
|
1273
1279
|
}
|
|
1274
|
-
return
|
|
1280
|
+
return d;
|
|
1275
1281
|
}
|
|
1276
1282
|
// get index of the point from which the cluster originated
|
|
1277
1283
|
_getOriginId(e) {
|
|
@@ -1282,18 +1288,18 @@ class Te {
|
|
|
1282
1288
|
return (e - this.points.length) % 32;
|
|
1283
1289
|
}
|
|
1284
1290
|
_map(e, t, s) {
|
|
1285
|
-
if (e[t +
|
|
1291
|
+
if (e[t + L] > 1) {
|
|
1286
1292
|
const a = this.clusterProps[e[t + Ae]];
|
|
1287
1293
|
return s ? Object.assign({}, a) : a;
|
|
1288
1294
|
}
|
|
1289
|
-
const r = this.points[e[t +
|
|
1295
|
+
const r = this.points[e[t + S]].properties, o = this.options.map(r);
|
|
1290
1296
|
return s && o === r ? Object.assign({}, o) : o;
|
|
1291
1297
|
}
|
|
1292
1298
|
}
|
|
1293
1299
|
function ke(n, e, t) {
|
|
1294
1300
|
return {
|
|
1295
1301
|
type: "Feature",
|
|
1296
|
-
id: n[e +
|
|
1302
|
+
id: n[e + S],
|
|
1297
1303
|
properties: $e(n, e, t),
|
|
1298
1304
|
geometry: {
|
|
1299
1305
|
type: "Point",
|
|
@@ -1302,10 +1308,10 @@ function ke(n, e, t) {
|
|
|
1302
1308
|
};
|
|
1303
1309
|
}
|
|
1304
1310
|
function $e(n, e, t) {
|
|
1305
|
-
const s = n[e +
|
|
1311
|
+
const s = n[e + L], r = s >= 1e4 ? `${Math.round(s / 1e3)}k` : s >= 1e3 ? `${Math.round(s / 100) / 10}k` : s, o = n[e + Ae], a = o === -1 ? {} : Object.assign({}, t[o]);
|
|
1306
1312
|
return Object.assign(a, {
|
|
1307
1313
|
cluster: !0,
|
|
1308
|
-
cluster_id: n[e +
|
|
1314
|
+
cluster_id: n[e + S],
|
|
1309
1315
|
point_count: s,
|
|
1310
1316
|
point_count_abbreviated: r
|
|
1311
1317
|
});
|
|
@@ -1412,14 +1418,14 @@ const lt = (n, e, t, s) => {
|
|
|
1412
1418
|
return t.filter((o) => r.contains(k.getPosition(o)));
|
|
1413
1419
|
}, Re = (n, e, t) => {
|
|
1414
1420
|
const { northEast: s, southWest: r } = ct(n, e), o = ut({ northEast: s, southWest: r }, t);
|
|
1415
|
-
return
|
|
1421
|
+
return dt(o, e);
|
|
1416
1422
|
}, Ce = (n, e, t) => {
|
|
1417
1423
|
const s = Re(n, e, t), r = s.getNorthEast(), o = s.getSouthWest();
|
|
1418
1424
|
return [o.lng(), o.lat(), r.lng(), r.lat()];
|
|
1419
1425
|
}, ct = (n, e) => ({
|
|
1420
1426
|
northEast: e.fromLatLngToDivPixel(n.getNorthEast()),
|
|
1421
1427
|
southWest: e.fromLatLngToDivPixel(n.getSouthWest())
|
|
1422
|
-
}), ut = ({ northEast: n, southWest: e }, t) => (n.x += t, n.y -= t, e.x -= t, e.y += t, { northEast: n, southWest: e }),
|
|
1428
|
+
}), ut = ({ northEast: n, southWest: e }, t) => (n.x += t, n.y -= t, e.x -= t, e.y += t, { northEast: n, southWest: e }), dt = ({ northEast: n, southWest: e }, t) => {
|
|
1423
1429
|
const s = t.fromDivPixelToLatLng(e), r = t.fromDivPixelToLatLng(n);
|
|
1424
1430
|
return new google.maps.LatLngBounds(s, r);
|
|
1425
1431
|
};
|
|
@@ -1443,7 +1449,7 @@ class je {
|
|
|
1443
1449
|
return pt(e);
|
|
1444
1450
|
}
|
|
1445
1451
|
}
|
|
1446
|
-
class
|
|
1452
|
+
class ht extends je {
|
|
1447
1453
|
constructor(e) {
|
|
1448
1454
|
var { viewportPadding: t = 60 } = e, s = ce(e, ["viewportPadding"]);
|
|
1449
1455
|
super(s), this.viewportPadding = 60, this.viewportPadding = t;
|
|
@@ -1475,7 +1481,7 @@ class ft extends je {
|
|
|
1475
1481
|
calculate(e) {
|
|
1476
1482
|
let t = !1;
|
|
1477
1483
|
const s = { zoom: e.map.getZoom() };
|
|
1478
|
-
if (
|
|
1484
|
+
if (!$(e.markers, this.markers)) {
|
|
1479
1485
|
t = !0, this.markers = [...e.markers];
|
|
1480
1486
|
const r = this.markers.map((o) => {
|
|
1481
1487
|
const a = k.getPosition(o);
|
|
@@ -1490,7 +1496,7 @@ class ft extends je {
|
|
|
1490
1496
|
});
|
|
1491
1497
|
this.superCluster.load(r);
|
|
1492
1498
|
}
|
|
1493
|
-
return t || (this.state.zoom <= this.maxZoom || s.zoom <= this.maxZoom) && (t =
|
|
1499
|
+
return t || (this.state.zoom <= this.maxZoom || s.zoom <= this.maxZoom) && (t = !$(this.state, s)), this.state = s, t && (this.clusters = this.cluster(e)), { clusters: this.clusters, changed: t };
|
|
1494
1500
|
}
|
|
1495
1501
|
cluster({ map: e }) {
|
|
1496
1502
|
return this.superCluster.getClusters([-180, -90, 180, 90], Math.round(e.getZoom())).map((t) => this.transformCluster(t));
|
|
@@ -1508,7 +1514,7 @@ class ft extends je {
|
|
|
1508
1514
|
});
|
|
1509
1515
|
}
|
|
1510
1516
|
}
|
|
1511
|
-
class mt extends
|
|
1517
|
+
class mt extends ht {
|
|
1512
1518
|
constructor(e) {
|
|
1513
1519
|
var { maxZoom: t, radius: s = 60, viewportPadding: r = 60 } = e, o = ce(e, ["maxZoom", "radius", "viewportPadding"]);
|
|
1514
1520
|
super({ maxZoom: t, viewportPadding: r }), this.superCluster = new Te(Object.assign({ maxZoom: this.maxZoom, radius: s }, o)), this.state = { zoom: -1, view: [0, 0, 0, 0] };
|
|
@@ -1518,8 +1524,8 @@ class mt extends dt {
|
|
|
1518
1524
|
zoom: Math.round(e.map.getZoom()),
|
|
1519
1525
|
view: Ce(e.map.getBounds(), e.mapCanvasProjection, this.viewportPadding)
|
|
1520
1526
|
};
|
|
1521
|
-
let s =
|
|
1522
|
-
if (
|
|
1527
|
+
let s = !$(this.state, t);
|
|
1528
|
+
if (!$(e.markers, this.markers)) {
|
|
1523
1529
|
s = !0, this.markers = [...e.markers];
|
|
1524
1530
|
const r = this.markers.map((o) => {
|
|
1525
1531
|
const a = k.getPosition(o);
|
|
@@ -1622,16 +1628,16 @@ class vt {
|
|
|
1622
1628
|
u.innerHTML = a;
|
|
1623
1629
|
const c = u.firstElementChild;
|
|
1624
1630
|
c.setAttribute("transform", "translate(0 25)");
|
|
1625
|
-
const
|
|
1631
|
+
const h = {
|
|
1626
1632
|
map: r,
|
|
1627
1633
|
position: t,
|
|
1628
1634
|
zIndex: i,
|
|
1629
1635
|
title: l,
|
|
1630
1636
|
content: c
|
|
1631
1637
|
};
|
|
1632
|
-
return new google.maps.marker.AdvancedMarkerElement(
|
|
1638
|
+
return new google.maps.marker.AdvancedMarkerElement(h);
|
|
1633
1639
|
}
|
|
1634
|
-
const
|
|
1640
|
+
const d = {
|
|
1635
1641
|
position: t,
|
|
1636
1642
|
zIndex: i,
|
|
1637
1643
|
title: l,
|
|
@@ -1640,7 +1646,7 @@ class vt {
|
|
|
1640
1646
|
anchor: new google.maps.Point(25, 25)
|
|
1641
1647
|
}
|
|
1642
1648
|
};
|
|
1643
|
-
return new google.maps.Marker(
|
|
1649
|
+
return new google.maps.Marker(d);
|
|
1644
1650
|
}
|
|
1645
1651
|
}
|
|
1646
1652
|
function yt(n, e) {
|
|
@@ -1730,7 +1736,7 @@ class _t extends ue {
|
|
|
1730
1736
|
});
|
|
1731
1737
|
}
|
|
1732
1738
|
}
|
|
1733
|
-
const be = Object.values(j), Rt =
|
|
1739
|
+
const be = Object.values(j), Rt = P({
|
|
1734
1740
|
name: "MarkerCluster",
|
|
1735
1741
|
props: {
|
|
1736
1742
|
options: {
|
|
@@ -1744,7 +1750,7 @@ const be = Object.values(j), Rt = b({
|
|
|
1744
1750
|
return G(Le, r), O(
|
|
1745
1751
|
o,
|
|
1746
1752
|
() => {
|
|
1747
|
-
o.value && (r.value =
|
|
1753
|
+
o.value && (r.value = I(
|
|
1748
1754
|
new _t({
|
|
1749
1755
|
map: o.value,
|
|
1750
1756
|
// Better perf than the default `SuperClusterAlgorithm`. See:
|
|
@@ -1754,7 +1760,7 @@ const be = Object.values(j), Rt = b({
|
|
|
1754
1760
|
})
|
|
1755
1761
|
), be.forEach((l) => {
|
|
1756
1762
|
var i;
|
|
1757
|
-
(i = r.value) == null || i.addListener(l, (
|
|
1763
|
+
(i = r.value) == null || i.addListener(l, (d) => e(l, d));
|
|
1758
1764
|
}));
|
|
1759
1765
|
},
|
|
1760
1766
|
{
|
|
@@ -1768,7 +1774,7 @@ const be = Object.values(j), Rt = b({
|
|
|
1768
1774
|
return (l = s.default) == null ? void 0 : l.call(s);
|
|
1769
1775
|
};
|
|
1770
1776
|
}
|
|
1771
|
-
}), kt =
|
|
1777
|
+
}), kt = P({
|
|
1772
1778
|
inheritAttrs: !1,
|
|
1773
1779
|
props: {
|
|
1774
1780
|
options: {
|
|
@@ -1779,7 +1785,7 @@ const be = Object.values(j), Rt = b({
|
|
|
1779
1785
|
setup(n, { slots: e, emit: t, expose: s }) {
|
|
1780
1786
|
const r = y(), o = J(() => {
|
|
1781
1787
|
var i;
|
|
1782
|
-
return (i = e.default) == null ? void 0 : i.call(e).some((
|
|
1788
|
+
return (i = e.default) == null ? void 0 : i.call(e).some((d) => d.type !== Ee);
|
|
1783
1789
|
}), a = J(() => ({
|
|
1784
1790
|
...n.options,
|
|
1785
1791
|
element: r.value
|
|
@@ -1803,7 +1809,7 @@ function bt(n, e, t, s, r, o) {
|
|
|
1803
1809
|
], 16)
|
|
1804
1810
|
])) : Oe("", !0);
|
|
1805
1811
|
}
|
|
1806
|
-
const jt = /* @__PURE__ */ te(kt, [["render", bt], ["__scopeId", "data-v-2d2d343a"]]), qt =
|
|
1812
|
+
const jt = /* @__PURE__ */ te(kt, [["render", bt], ["__scopeId", "data-v-2d2d343a"]]), qt = P({
|
|
1807
1813
|
name: "HeatmapLayer",
|
|
1808
1814
|
props: {
|
|
1809
1815
|
options: {
|
|
@@ -1816,15 +1822,15 @@ const jt = /* @__PURE__ */ te(kt, [["render", bt], ["__scopeId", "data-v-2d2d343
|
|
|
1816
1822
|
return O(
|
|
1817
1823
|
[t, () => n.options],
|
|
1818
1824
|
([r, o], [a, l]) => {
|
|
1819
|
-
var
|
|
1820
|
-
const i =
|
|
1825
|
+
var d;
|
|
1826
|
+
const i = !$(o, l) || t.value !== a;
|
|
1821
1827
|
if (t.value && s.value && i) {
|
|
1822
1828
|
const u = structuredClone(o);
|
|
1823
1829
|
if (u.data && !(u.data instanceof s.value.MVCArray)) {
|
|
1824
1830
|
const c = s.value.LatLng;
|
|
1825
|
-
u.data = (
|
|
1831
|
+
u.data = (d = u.data) == null ? void 0 : d.map((h) => h instanceof c || "location" in h && (h.location instanceof c || h.location === null) ? h : "location" in h ? { ...h, location: new c(h.location) } : new c(h));
|
|
1826
1832
|
}
|
|
1827
|
-
e.value ? e.value.setOptions(u) : e.value =
|
|
1833
|
+
e.value ? e.value.setOptions(u) : e.value = I(
|
|
1828
1834
|
new s.value.visualization.HeatmapLayer({
|
|
1829
1835
|
...u,
|
|
1830
1836
|
map: t.value
|