@opengis/partsmap 0.0.75 → 0.0.76
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/dist/PartsMap.js +558 -557
- package/dist/PartsMap.umd.cjs +9 -9
- package/package.json +1 -1
package/dist/PartsMap.js
CHANGED
@@ -1,17 +1,17 @@
|
|
1
|
-
import { openBlock as it, createElementBlock as mt, createStaticVNode as pp, Fragment as ls, renderList as
|
2
|
-
var
|
3
|
-
function
|
1
|
+
import { openBlock as it, createElementBlock as mt, createStaticVNode as pp, Fragment as ls, renderList as Wo, normalizeClass as Zs, createElementVNode as Re, toDisplayString as Mr, resolveComponent as ii, createBlock as gr, withCtx as _r, createVNode as Ji, createTextVNode as Xo, createCommentVNode as ci, withDirectives as Hs, vShow as Jo, pushScopeId as fp, popScopeId as mp, vModelRadio as qm, normalizeStyle as Xh, Teleport as Zm, Transition as Hd, renderSlot as Ho, defineComponent as Gm } from "vue";
|
2
|
+
var Ws = {};
|
3
|
+
function Wd(f) {
|
4
4
|
return Math.floor(Math.abs(f) + 0.5) * (f >= 0 ? 1 : -1);
|
5
5
|
}
|
6
6
|
function Tc(f, v, I) {
|
7
|
-
f =
|
7
|
+
f = Wd(f * I), v = Wd(v * I);
|
8
8
|
var C = (f - v) * 2;
|
9
9
|
C < 0 && (C = -C - 1);
|
10
10
|
for (var L = ""; C >= 32; )
|
11
11
|
L += String.fromCharCode((32 | C & 31) + 63), C /= 32;
|
12
12
|
return L += String.fromCharCode((C | 0) + 63), L;
|
13
13
|
}
|
14
|
-
|
14
|
+
Ws.decode = function(f, v) {
|
15
15
|
for (var I = 0, C = 0, L = 0, q = [], T = 0, c = 0, pe = null, fe, xe, ae = Math.pow(10, Number.isInteger(v) ? v : 5); I < f.length; ) {
|
16
16
|
pe = null, T = 1, c = 0;
|
17
17
|
do
|
@@ -25,7 +25,7 @@ Xs.decode = function(f, v) {
|
|
25
25
|
}
|
26
26
|
return q;
|
27
27
|
};
|
28
|
-
|
28
|
+
Ws.encode = function(f, v) {
|
29
29
|
if (!f.length)
|
30
30
|
return "";
|
31
31
|
for (var I = Math.pow(10, Number.isInteger(v) ? v : 5), C = Tc(f[0][0], 0, I) + Tc(f[0][1], 0, I), L = 1; L < f.length; L++) {
|
@@ -41,20 +41,20 @@ function gp(f) {
|
|
41
41
|
}
|
42
42
|
return v;
|
43
43
|
}
|
44
|
-
|
44
|
+
Ws.fromGeoJSON = function(f, v) {
|
45
45
|
if (f && f.type === "Feature" && (f = f.geometry), !f || f.type !== "LineString")
|
46
46
|
throw new Error("Input must be a GeoJSON LineString");
|
47
|
-
return
|
47
|
+
return Ws.encode(gp(f.coordinates), v);
|
48
48
|
};
|
49
|
-
|
50
|
-
var I =
|
49
|
+
Ws.toGeoJSON = function(f, v) {
|
50
|
+
var I = Ws.decode(f, v);
|
51
51
|
return {
|
52
52
|
type: "LineString",
|
53
53
|
coordinates: gp(I)
|
54
54
|
};
|
55
55
|
};
|
56
56
|
var Hm = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
57
|
-
function
|
57
|
+
function Wm(f) {
|
58
58
|
return f && f.__esModule && Object.prototype.hasOwnProperty.call(f, "default") ? f.default : f;
|
59
59
|
}
|
60
60
|
var _p = { exports: {} };
|
@@ -283,8 +283,8 @@ var _p = { exports: {} };
|
|
283
283
|
if (!p || !p.startsWith("BGR") && !p.startsWith("RGB")) throw new Error(`Unrecognized format ${p}`);
|
284
284
|
const m = p.startsWith("BGR"), _ = new Uint8ClampedArray(s * l * 4);
|
285
285
|
if (yield d.copyTo(_, function(x, S, P, E, D) {
|
286
|
-
const B = 4 * Math.max(-S, 0), O = (Math.max(0, P) - P) * E * 4 + B, U = 4 * E,
|
287
|
-
return { rect: { x:
|
286
|
+
const B = 4 * Math.max(-S, 0), O = (Math.max(0, P) - P) * E * 4 + B, U = 4 * E, X = Math.max(0, S), oe = Math.max(0, P);
|
287
|
+
return { rect: { x: X, y: oe, width: Math.min(x.width, S + E) - X, height: Math.min(x.height, P + D) - oe }, layout: [{ offset: O, stride: U }] };
|
288
288
|
}(i, e, r, s, l)), m) for (let x = 0; x < _.length; x += 4) {
|
289
289
|
const S = _[x];
|
290
290
|
_[x] = _[x + 2], _[x + 2] = S;
|
@@ -300,9 +300,9 @@ var _p = { exports: {} };
|
|
300
300
|
function Ln() {
|
301
301
|
return new Error(rr);
|
302
302
|
}
|
303
|
-
const
|
303
|
+
const Wr = { MAX_PARALLEL_IMAGE_REQUESTS: 16, MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME: 8, MAX_TILE_CACHE_ZOOM_LEVELS: 5, REGISTERED_PROTOCOLS: {}, WORKER_URL: "" };
|
304
304
|
function vr(i) {
|
305
|
-
return
|
305
|
+
return Wr.REGISTERED_PROTOCOLS[i.substring(0, i.indexOf("://"))];
|
306
306
|
}
|
307
307
|
const Rn = "global-dispatcher";
|
308
308
|
class $i extends Error {
|
@@ -377,12 +377,12 @@ var _p = { exports: {} };
|
|
377
377
|
s !== -1 && r[i].splice(s, 1);
|
378
378
|
}
|
379
379
|
}
|
380
|
-
class
|
380
|
+
class Xr {
|
381
381
|
constructor(e, r = {}) {
|
382
382
|
Ut(this, r), this.type = e;
|
383
383
|
}
|
384
384
|
}
|
385
|
-
class Jr extends
|
385
|
+
class Jr extends Xr {
|
386
386
|
constructor(e, r = {}) {
|
387
387
|
super("error", Ut({ error: e }, r));
|
388
388
|
}
|
@@ -398,7 +398,7 @@ var _p = { exports: {} };
|
|
398
398
|
return r ? (this._oneTimeListeners = this._oneTimeListeners || {}, cs(e, r, this._oneTimeListeners), this) : new Promise((s) => this.once(e, s));
|
399
399
|
}
|
400
400
|
fire(e, r) {
|
401
|
-
typeof e == "string" && (e = new
|
401
|
+
typeof e == "string" && (e = new Xr(e, r || {}));
|
402
402
|
const s = e.type;
|
403
403
|
if (this.listens(s)) {
|
404
404
|
e.target = this;
|
@@ -533,7 +533,7 @@ var _p = { exports: {} };
|
|
533
533
|
function re(i, e) {
|
534
534
|
return i.kind === "array" && e.kind === "array" ? i.itemType.kind === e.itemType.kind && typeof i.N == "number" : i.kind === e.kind;
|
535
535
|
}
|
536
|
-
const J = 0.96422, de = 0.82521, ye = 4 / 29, ce = 6 / 29, Ie = 3 * ce * ce, Ge = ce * ce * ce,
|
536
|
+
const J = 0.96422, de = 0.82521, ye = 4 / 29, ce = 6 / 29, Ie = 3 * ce * ce, Ge = ce * ce * ce, We = Math.PI / 180, st = 180 / Math.PI;
|
537
537
|
function _t(i) {
|
538
538
|
return (i %= 360) < 0 && (i += 360), i;
|
539
539
|
}
|
@@ -595,11 +595,11 @@ var _p = { exports: {} };
|
|
595
595
|
if (s.startsWith("rgb")) {
|
596
596
|
const p = s.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);
|
597
597
|
if (p) {
|
598
|
-
const [m, _, x, S, P, E, D, B, O, U,
|
598
|
+
const [m, _, x, S, P, E, D, B, O, U, X, oe] = p, Y = [S || " ", D || " ", U].join("");
|
599
599
|
if (Y === " " || Y === " /" || Y === ",," || Y === ",,,") {
|
600
600
|
const ie = [x, E, O].join(""), ue = ie === "%%%" ? 100 : ie === "" ? 255 : 0;
|
601
601
|
if (ue) {
|
602
|
-
const ve = [pi(+_ / ue, 0, 1), pi(+P / ue, 0, 1), pi(+B / ue, 0, 1),
|
602
|
+
const ve = [pi(+_ / ue, 0, 1), pi(+P / ue, 0, 1), pi(+B / ue, 0, 1), X ? ri(+X, oe) : 1];
|
603
603
|
if (fi(ve)) return ve;
|
604
604
|
}
|
605
605
|
}
|
@@ -611,12 +611,12 @@ var _p = { exports: {} };
|
|
611
611
|
const [p, m, _, x, S, P, E, D, B] = d, O = [_ || " ", S || " ", E].join("");
|
612
612
|
if (O === " " || O === " /" || O === ",," || O === ",,,") {
|
613
613
|
const U = [+m, pi(+x, 0, 100), pi(+P, 0, 100), D ? ri(+D, B) : 1];
|
614
|
-
if (fi(U)) return function([
|
614
|
+
if (fi(U)) return function([X, oe, Y, ie]) {
|
615
615
|
function ue(ve) {
|
616
|
-
const De = (ve +
|
617
|
-
return Y -
|
616
|
+
const De = (ve + X / 30) % 12, Xe = oe * Math.min(Y, 1 - Y);
|
617
|
+
return Y - Xe * Math.max(-1, Math.min(De - 3, 9 - De, 1));
|
618
618
|
}
|
619
|
-
return
|
619
|
+
return X = _t(X), oe /= 100, Y /= 100, [ue(0), ue(8), ue(4), ie];
|
620
620
|
}(U);
|
621
621
|
}
|
622
622
|
}
|
@@ -1349,10 +1349,10 @@ var _p = { exports: {} };
|
|
1349
1349
|
let oe = _ - l;
|
1350
1350
|
_ > l && oe > 180 ? oe -= 360 : _ < l && l - _ > 180 && (oe += 360), E = l + r * oe;
|
1351
1351
|
}
|
1352
|
-
const [B, O, U,
|
1353
|
-
return oe = isNaN(oe) ? 0 : oe *
|
1352
|
+
const [B, O, U, X] = function([oe, Y, ie, ue]) {
|
1353
|
+
return oe = isNaN(oe) ? 0 : oe * We, Qt([ie, Math.cos(oe) * Y, Math.sin(oe) * Y, ue]);
|
1354
1354
|
}([E, D ?? rn(d, x, r), rn(p, S, r), rn(m, P, r)]);
|
1355
|
-
return new St(B, O, U,
|
1355
|
+
return new St(B, O, U, X, !1);
|
1356
1356
|
}
|
1357
1357
|
case "lab": {
|
1358
1358
|
const [l, d, p, m] = Qt(vs(i.lab, e.lab, r));
|
@@ -1899,8 +1899,8 @@ var _p = { exports: {} };
|
|
1899
1899
|
function Hc(i, e) {
|
1900
1900
|
return i < e ? -1 : i > e ? 1 : 0;
|
1901
1901
|
}
|
1902
|
-
function
|
1903
|
-
zl(i, e, r, s || i.length - 1, l ||
|
1902
|
+
function Wc(i, e, r, s, l) {
|
1903
|
+
zl(i, e, r, s || i.length - 1, l || Xc);
|
1904
1904
|
}
|
1905
1905
|
function zl(i, e, r, s, l) {
|
1906
1906
|
for (; s > r; ) {
|
@@ -1920,7 +1920,7 @@ var _p = { exports: {} };
|
|
1920
1920
|
var s = i[e];
|
1921
1921
|
i[e] = i[r], i[r] = s;
|
1922
1922
|
}
|
1923
|
-
function
|
1923
|
+
function Xc(i, e) {
|
1924
1924
|
return i < e ? -1 : i > e ? 1 : 0;
|
1925
1925
|
}
|
1926
1926
|
function co(i, e) {
|
@@ -1931,7 +1931,7 @@ var _p = { exports: {} };
|
|
1931
1931
|
const p = Kc(d);
|
1932
1932
|
p !== 0 && (d.area = Math.abs(p), l === void 0 && (l = p < 0), l === p < 0 ? (s && r.push(s), s = [d]) : s.push(d));
|
1933
1933
|
}
|
1934
|
-
if (s && r.push(s), e > 1) for (let d = 0; d < r.length; d++) r[d].length <= e || (
|
1934
|
+
if (s && r.push(s), e > 1) for (let d = 0; d < r.length; d++) r[d].length <= e || (Wc(r[d], e, 1, r[d].length - 1, Jc), r[d] = r[d].slice(0, e));
|
1935
1935
|
return r;
|
1936
1936
|
}
|
1937
1937
|
function Jc(i, e) {
|
@@ -2074,9 +2074,9 @@ var _p = { exports: {} };
|
|
2074
2074
|
for (const m of i) for (let _ = 0, x = m.length, S = x - 1; _ < x; S = _++) {
|
2075
2075
|
const P = m[S], E = m[_];
|
2076
2076
|
for (const D of e) for (let B = 0, O = D.length, U = O - 1; B < O; U = B++) {
|
2077
|
-
const
|
2078
|
-
if (lo(P, E,
|
2079
|
-
p = Math.min(p, da(P, E,
|
2077
|
+
const X = D[U], oe = D[B];
|
2078
|
+
if (lo(P, E, X, oe)) return 0;
|
2079
|
+
p = Math.min(p, da(P, E, X, oe, r));
|
2080
2080
|
}
|
2081
2081
|
}
|
2082
2082
|
return p;
|
@@ -2775,16 +2775,16 @@ var _p = { exports: {} };
|
|
2775
2775
|
return As(In(O[1])) ? B.concat([new Te(`${U}[1]`, O[1], "expressions are not allowed in function stops.")]) : B.concat(D.validateSpec({ key: `${U}[1]`, value: O[1], valueSpec: e, validateSpec: D.validateSpec, style: D.style, styleSpec: D.styleSpec }));
|
2776
2776
|
}
|
2777
2777
|
function E(D, B) {
|
2778
|
-
const O = yt(D.value), U = Lt(D.value),
|
2778
|
+
const O = yt(D.value), U = Lt(D.value), X = D.value !== null ? D.value : B;
|
2779
2779
|
if (s) {
|
2780
|
-
if (O !== s) return [new Te(D.key,
|
2780
|
+
if (O !== s) return [new Te(D.key, X, `${O} stop domain type must match previous stop domain type ${s}`)];
|
2781
2781
|
} else s = O;
|
2782
|
-
if (O !== "number" && O !== "string" && O !== "boolean") return [new Te(D.key,
|
2782
|
+
if (O !== "number" && O !== "string" && O !== "boolean") return [new Te(D.key, X, "stop domain value must be a number, string, or boolean")];
|
2783
2783
|
if (O !== "number" && r !== "categorical") {
|
2784
2784
|
let oe = `number expected, ${O} found`;
|
2785
|
-
return wn(e) && r === void 0 && (oe += '\nIf you intended to use a categorical function, specify `"type": "categorical"`.'), [new Te(D.key,
|
2785
|
+
return wn(e) && r === void 0 && (oe += '\nIf you intended to use a categorical function, specify `"type": "categorical"`.'), [new Te(D.key, X, oe)];
|
2786
2786
|
}
|
2787
|
-
return r !== "categorical" || O !== "number" || isFinite(U) && Math.floor(U) === U ? r !== "categorical" && O === "number" && l !== void 0 && U < l ? [new Te(D.key,
|
2787
|
+
return r !== "categorical" || O !== "number" || isFinite(U) && Math.floor(U) === U ? r !== "categorical" && O === "number" && l !== void 0 && U < l ? [new Te(D.key, X, "stop domain values must appear in ascending order")] : (l = U, r === "categorical" && U in p ? [new Te(D.key, X, "stop domain values must be unique")] : (p[U] = !0, [])) : [new Te(D.key, X, `integer expected, found ${U}`)];
|
2788
2788
|
}
|
2789
2789
|
}
|
2790
2790
|
function Pn(i) {
|
@@ -2912,8 +2912,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
2912
2912
|
const U = yt(P);
|
2913
2913
|
if (P === void 0) return O;
|
2914
2914
|
if (U !== "object") return O.push(new Te("source_raster_dem", P, `object expected, ${U} found`)), O;
|
2915
|
-
const
|
2916
|
-
for (const ie in P) !
|
2915
|
+
const X = Lt(P.encoding) === "custom", oe = ["redFactor", "greenFactor", "blueFactor", "baseShift"], Y = _.value.encoding ? `"${_.value.encoding}"` : "Default";
|
2916
|
+
for (const ie in P) !X && oe.includes(ie) ? O.push(new Te(ie, P[ie], `In "${S}": "${ie}" is only valid when "encoding" is set to "custom". ${Y} encoding found`)) : D[ie] ? O = O.concat(_.validateSpec({ key: ie, value: P[ie], valueSpec: D[ie], validateSpec: _.validateSpec, style: B, styleSpec: E })) : O.push(new Te(ie, P[ie], `unknown property "${ie}"`));
|
2917
2917
|
return O;
|
2918
2918
|
}({ sourceName: r, value: e, style: i.style, styleSpec: s, validateSpec: d }), m;
|
2919
2919
|
case "geojson":
|
@@ -3137,7 +3137,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3137
3137
|
function $a(i) {
|
3138
3138
|
return i.$name || i.constructor._classRegistryKey;
|
3139
3139
|
}
|
3140
|
-
function
|
3140
|
+
function Wl(i) {
|
3141
3141
|
return !function(e) {
|
3142
3142
|
if (e === null || typeof e != "object") return !1;
|
3143
3143
|
const r = $a(e);
|
@@ -3145,7 +3145,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3145
3145
|
}(i) && (i == null || typeof i == "boolean" || typeof i == "number" || typeof i == "string" || i instanceof Boolean || i instanceof Number || i instanceof String || i instanceof Date || i instanceof RegExp || i instanceof Blob || i instanceof Error || Hl(i) || xr(i) || ArrayBuffer.isView(i) || i instanceof ImageData);
|
3146
3146
|
}
|
3147
3147
|
function Rs(i, e) {
|
3148
|
-
if (
|
3148
|
+
if (Wl(i)) return (Hl(i) || xr(i)) && e && e.push(i), ArrayBuffer.isView(i) && e && e.push(i.buffer), i instanceof ImageData && e && e.push(i.data.buffer), i;
|
3149
3149
|
if (Array.isArray(i)) {
|
3150
3150
|
const d = [];
|
3151
3151
|
for (const p of i) d.push(Rs(p, e));
|
@@ -3170,7 +3170,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3170
3170
|
return r !== "Object" && (l.$name = r), l;
|
3171
3171
|
}
|
3172
3172
|
function kr(i) {
|
3173
|
-
if (
|
3173
|
+
if (Wl(i)) return i;
|
3174
3174
|
if (Array.isArray(i)) return i.map(kr);
|
3175
3175
|
if (typeof i != "object") throw new Error("can't deserialize object of type " + typeof i);
|
3176
3176
|
const e = $a(i) || "Object";
|
@@ -3186,7 +3186,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3186
3186
|
}
|
3187
3187
|
return s;
|
3188
3188
|
}
|
3189
|
-
class
|
3189
|
+
class Xl {
|
3190
3190
|
constructor() {
|
3191
3191
|
this.first = !0;
|
3192
3192
|
}
|
@@ -3250,7 +3250,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3250
3250
|
}();
|
3251
3251
|
class Mt {
|
3252
3252
|
constructor(e, r) {
|
3253
|
-
this.zoom = e, r ? (this.now = r.now, this.fadeDuration = r.fadeDuration, this.zoomHistory = r.zoomHistory, this.transition = r.transition) : (this.now = 0, this.fadeDuration = 0, this.zoomHistory = new
|
3253
|
+
this.zoom = e, r ? (this.now = r.now, this.fadeDuration = r.fadeDuration, this.zoomHistory = r.zoomHistory, this.transition = r.transition) : (this.now = 0, this.fadeDuration = 0, this.zoomHistory = new Xl(), this.transition = {});
|
3254
3254
|
}
|
3255
3255
|
isSupportedScript(e) {
|
3256
3256
|
return function(r, s) {
|
@@ -3299,7 +3299,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3299
3299
|
return new Ql(this.property, this.value, null, {}, 0);
|
3300
3300
|
}
|
3301
3301
|
}
|
3302
|
-
class
|
3302
|
+
class Wn {
|
3303
3303
|
constructor(e) {
|
3304
3304
|
this._properties = e, this._values = Object.create(e.defaultTransitionablePropertyValues);
|
3305
3305
|
}
|
@@ -3530,7 +3530,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3530
3530
|
class h extends Bn {
|
3531
3531
|
constructor(e, r) {
|
3532
3532
|
if (super(), this.id = e.id, this.type = e.type, this._featureFilter = { filter: () => !0, needGeometry: !1 }, e.type !== "custom" && (this.metadata = e.metadata, this.minzoom = e.minzoom, this.maxzoom = e.maxzoom, e.type !== "background" && (this.source = e.source, this.sourceLayer = e["source-layer"], this.filter = e.filter), r.layout && (this._unevaluatedLayout = new Bs(r.layout)), r.paint)) {
|
3533
|
-
this._transitionablePaint = new
|
3533
|
+
this._transitionablePaint = new Wn(r.paint);
|
3534
3534
|
for (const s in e.paint) this.setPaintProperty(s, e.paint[s], { validate: !1 });
|
3535
3535
|
for (const s in e.layout) this.setLayoutProperty(s, e.layout[s], { validate: !1 });
|
3536
3536
|
this._transitioningPaint = this._transitionablePaint.untransitioned(), this.paint = new Ao(r.paint);
|
@@ -3732,7 +3732,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3732
3732
|
}
|
3733
3733
|
}
|
3734
3734
|
j.prototype.bytesPerElement = 8, Fe("StructArrayLayout2f8", j);
|
3735
|
-
class
|
3735
|
+
class W extends b {
|
3736
3736
|
_refreshViews() {
|
3737
3737
|
this.uint8 = new Uint8Array(this.arrayBuffer), this.uint16 = new Uint16Array(this.arrayBuffer);
|
3738
3738
|
}
|
@@ -3745,7 +3745,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3745
3745
|
return this.uint16[E + 0] = r, this.uint16[E + 1] = s, this.uint16[E + 2] = l, this.uint16[E + 3] = d, this.uint16[E + 4] = p, this.uint16[E + 5] = m, this.uint16[E + 6] = _, this.uint16[E + 7] = x, this.uint16[E + 8] = S, this.uint16[E + 9] = P, e;
|
3746
3746
|
}
|
3747
3747
|
}
|
3748
|
-
|
3748
|
+
W.prototype.bytesPerElement = 20, Fe("StructArrayLayout10ui20", W);
|
3749
3749
|
class K extends b {
|
3750
3750
|
_refreshViews() {
|
3751
3751
|
this.uint8 = new Uint8Array(this.arrayBuffer), this.int16 = new Int16Array(this.arrayBuffer), this.uint16 = new Uint16Array(this.arrayBuffer);
|
@@ -3861,13 +3861,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3861
3861
|
_refreshViews() {
|
3862
3862
|
this.uint8 = new Uint8Array(this.arrayBuffer), this.int16 = new Int16Array(this.arrayBuffer), this.uint16 = new Uint16Array(this.arrayBuffer), this.uint32 = new Uint32Array(this.arrayBuffer), this.float32 = new Float32Array(this.arrayBuffer);
|
3863
3863
|
}
|
3864
|
-
emplaceBack(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3864
|
+
emplaceBack(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X) {
|
3865
3865
|
const oe = this.length;
|
3866
|
-
return this.resize(oe + 1), this.emplace(oe, e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3866
|
+
return this.resize(oe + 1), this.emplace(oe, e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X);
|
3867
3867
|
}
|
3868
|
-
emplace(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3868
|
+
emplace(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X, oe) {
|
3869
3869
|
const Y = 24 * e, ie = 12 * e, ue = 48 * e;
|
3870
|
-
return this.int16[Y + 0] = r, this.int16[Y + 1] = s, this.uint16[Y + 2] = l, this.uint16[Y + 3] = d, this.uint32[ie + 2] = p, this.uint32[ie + 3] = m, this.uint32[ie + 4] = _, this.uint16[Y + 10] = x, this.uint16[Y + 11] = S, this.uint16[Y + 12] = P, this.float32[ie + 7] = E, this.float32[ie + 8] = D, this.uint8[ue + 36] = B, this.uint8[ue + 37] = O, this.uint8[ue + 38] = U, this.uint32[ie + 10] =
|
3870
|
+
return this.int16[Y + 0] = r, this.int16[Y + 1] = s, this.uint16[Y + 2] = l, this.uint16[Y + 3] = d, this.uint32[ie + 2] = p, this.uint32[ie + 3] = m, this.uint32[ie + 4] = _, this.uint16[Y + 10] = x, this.uint16[Y + 11] = S, this.uint16[Y + 12] = P, this.float32[ie + 7] = E, this.float32[ie + 8] = D, this.uint8[ue + 36] = B, this.uint8[ue + 37] = O, this.uint8[ue + 38] = U, this.uint32[ie + 10] = X, this.int16[Y + 22] = oe, e;
|
3871
3871
|
}
|
3872
3872
|
}
|
3873
3873
|
Le.prototype.bytesPerElement = 48, Fe("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48", Le);
|
@@ -3875,13 +3875,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
3875
3875
|
_refreshViews() {
|
3876
3876
|
this.uint8 = new Uint8Array(this.arrayBuffer), this.int16 = new Int16Array(this.arrayBuffer), this.uint16 = new Uint16Array(this.arrayBuffer), this.uint32 = new Uint32Array(this.arrayBuffer), this.float32 = new Float32Array(this.arrayBuffer);
|
3877
3877
|
}
|
3878
|
-
emplaceBack(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3878
|
+
emplaceBack(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X, oe, Y, ie, ue, ve, De, Xe, Ee, Ae, Ue, Ve) {
|
3879
3879
|
const Be = this.length;
|
3880
|
-
return this.resize(Be + 1), this.emplace(Be, e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3880
|
+
return this.resize(Be + 1), this.emplace(Be, e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X, oe, Y, ie, ue, ve, De, Xe, Ee, Ae, Ue, Ve);
|
3881
3881
|
}
|
3882
|
-
emplace(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U,
|
3882
|
+
emplace(e, r, s, l, d, p, m, _, x, S, P, E, D, B, O, U, X, oe, Y, ie, ue, ve, De, Xe, Ee, Ae, Ue, Ve, Be) {
|
3883
3883
|
const ge = 32 * e, Ze = 16 * e;
|
3884
|
-
return this.int16[ge + 0] = r, this.int16[ge + 1] = s, this.int16[ge + 2] = l, this.int16[ge + 3] = d, this.int16[ge + 4] = p, this.int16[ge + 5] = m, this.int16[ge + 6] = _, this.int16[ge + 7] = x, this.uint16[ge + 8] = S, this.uint16[ge + 9] = P, this.uint16[ge + 10] = E, this.uint16[ge + 11] = D, this.uint16[ge + 12] = B, this.uint16[ge + 13] = O, this.uint16[ge + 14] = U, this.uint16[ge + 15] =
|
3884
|
+
return this.int16[ge + 0] = r, this.int16[ge + 1] = s, this.int16[ge + 2] = l, this.int16[ge + 3] = d, this.int16[ge + 4] = p, this.int16[ge + 5] = m, this.int16[ge + 6] = _, this.int16[ge + 7] = x, this.uint16[ge + 8] = S, this.uint16[ge + 9] = P, this.uint16[ge + 10] = E, this.uint16[ge + 11] = D, this.uint16[ge + 12] = B, this.uint16[ge + 13] = O, this.uint16[ge + 14] = U, this.uint16[ge + 15] = X, this.uint16[ge + 16] = oe, this.uint16[ge + 17] = Y, this.uint16[ge + 18] = ie, this.uint16[ge + 19] = ue, this.uint16[ge + 20] = ve, this.uint16[ge + 21] = De, this.uint16[ge + 22] = Xe, this.uint32[Ze + 12] = Ee, this.float32[Ze + 13] = Ae, this.float32[Ze + 14] = Ue, this.uint16[ge + 30] = Ve, this.uint16[ge + 31] = Be, e;
|
3885
3885
|
}
|
3886
3886
|
}
|
3887
3887
|
we.prototype.bytesPerElement = 64, Fe("StructArrayLayout8i15ui1ul2f2ui64", we);
|
@@ -4229,7 +4229,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4229
4229
|
}
|
4230
4230
|
class Co extends A {
|
4231
4231
|
}
|
4232
|
-
class
|
4232
|
+
class Xn extends A {
|
4233
4233
|
}
|
4234
4234
|
class An extends N {
|
4235
4235
|
}
|
@@ -4237,7 +4237,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4237
4237
|
}
|
4238
4238
|
class Ga extends j {
|
4239
4239
|
}
|
4240
|
-
class hi extends
|
4240
|
+
class hi extends W {
|
4241
4241
|
}
|
4242
4242
|
class hr extends K {
|
4243
4243
|
}
|
@@ -4291,8 +4291,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4291
4291
|
}
|
4292
4292
|
return l ^= i.length, l = 2246822507 * (65535 & (l ^= l >>> 16)) + ((2246822507 * (l >>> 16) & 65535) << 16) & 4294967295, l = 3266489909 * (65535 & (l ^= l >>> 13)) + ((3266489909 * (l >>> 16) & 65535) << 16) & 4294967295, (l ^= l >>> 16) >>> 0;
|
4293
4293
|
};
|
4294
|
-
var tc = ln.exports,
|
4295
|
-
|
4294
|
+
var tc = ln.exports, Wa = { exports: {} };
|
4295
|
+
Wa.exports = function(i, e) {
|
4296
4296
|
for (var r, s = i.length, l = e ^ s, d = 0; s >= 4; ) r = 1540483477 * (65535 & (r = 255 & i.charCodeAt(d) | (255 & i.charCodeAt(++d)) << 8 | (255 & i.charCodeAt(++d)) << 16 | (255 & i.charCodeAt(++d)) << 24)) + ((1540483477 * (r >>> 16) & 65535) << 16), l = 1540483477 * (65535 & l) + ((1540483477 * (l >>> 16) & 65535) << 16) ^ (r = 1540483477 * (65535 & (r ^= r >>> 24)) + ((1540483477 * (r >>> 16) & 65535) << 16)), s -= 4, ++d;
|
4297
4297
|
switch (s) {
|
4298
4298
|
case 3:
|
@@ -4304,8 +4304,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4304
4304
|
}
|
4305
4305
|
return l = 1540483477 * (65535 & (l ^= l >>> 13)) + ((1540483477 * (l >>> 16) & 65535) << 16), (l ^= l >>> 15) >>> 0;
|
4306
4306
|
};
|
4307
|
-
var
|
4308
|
-
zo.exports =
|
4307
|
+
var Xa = tc, Ja = Wa.exports;
|
4308
|
+
zo.exports = Xa, zo.exports.murmur3 = Xa, zo.exports.murmur2 = Ja;
|
4309
4309
|
var Do = pe(zo.exports);
|
4310
4310
|
class Yn {
|
4311
4311
|
constructor() {
|
@@ -4823,8 +4823,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4823
4823
|
return i[0] = 1, i[1] = 0, i[2] = 0, i[3] = 0, i[4] = 0, i[5] = 1, i[6] = 0, i[7] = 0, i[8] = 0, i[9] = 0, i[10] = 1, i[11] = 0, i[12] = 0, i[13] = 0, i[14] = 0, i[15] = 1, i;
|
4824
4824
|
}
|
4825
4825
|
function bu(i, e, r) {
|
4826
|
-
var s = e[0], l = e[1], d = e[2], p = e[3], m = e[4], _ = e[5], x = e[6], S = e[7], P = e[8], E = e[9], D = e[10], B = e[11], O = e[12], U = e[13],
|
4827
|
-
return i[0] = Y * s + ie * m + ue * P + ve * O, i[1] = Y * l + ie * _ + ue * E + ve * U, i[2] = Y * d + ie * x + ue * D + ve *
|
4826
|
+
var s = e[0], l = e[1], d = e[2], p = e[3], m = e[4], _ = e[5], x = e[6], S = e[7], P = e[8], E = e[9], D = e[10], B = e[11], O = e[12], U = e[13], X = e[14], oe = e[15], Y = r[0], ie = r[1], ue = r[2], ve = r[3];
|
4827
|
+
return i[0] = Y * s + ie * m + ue * P + ve * O, i[1] = Y * l + ie * _ + ue * E + ve * U, i[2] = Y * d + ie * x + ue * D + ve * X, i[3] = Y * p + ie * S + ue * B + ve * oe, i[4] = (Y = r[4]) * s + (ie = r[5]) * m + (ue = r[6]) * P + (ve = r[7]) * O, i[5] = Y * l + ie * _ + ue * E + ve * U, i[6] = Y * d + ie * x + ue * D + ve * X, i[7] = Y * p + ie * S + ue * B + ve * oe, i[8] = (Y = r[8]) * s + (ie = r[9]) * m + (ue = r[10]) * P + (ve = r[11]) * O, i[9] = Y * l + ie * _ + ue * E + ve * U, i[10] = Y * d + ie * x + ue * D + ve * X, i[11] = Y * p + ie * S + ue * B + ve * oe, i[12] = (Y = r[12]) * s + (ie = r[13]) * m + (ue = r[14]) * P + (ve = r[15]) * O, i[13] = Y * l + ie * _ + ue * E + ve * U, i[14] = Y * d + ie * x + ue * D + ve * X, i[15] = Y * p + ie * S + ue * B + ve * oe, i;
|
4828
4828
|
}
|
4829
4829
|
Math.hypot || (Math.hypot = function() {
|
4830
4830
|
for (var i = 0, e = arguments.length; e--; ) i += arguments[e] * arguments[e];
|
@@ -4853,9 +4853,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4853
4853
|
}(x, _), D = P ? S * m : S;
|
4854
4854
|
for (const B of l) for (const O of B) {
|
4855
4855
|
const U = P ? O : wu(O, _);
|
4856
|
-
let
|
4856
|
+
let X = D;
|
4857
4857
|
const oe = ac([], [O.x, O.y, 0, 1], _);
|
4858
|
-
if (this.paint.get("circle-pitch-scale") === "viewport" && this.paint.get("circle-pitch-alignment") === "map" ?
|
4858
|
+
if (this.paint.get("circle-pitch-scale") === "viewport" && this.paint.get("circle-pitch-alignment") === "map" ? X *= oe[3] / p.cameraToCenterDistance : this.paint.get("circle-pitch-scale") === "map" && this.paint.get("circle-pitch-alignment") === "viewport" && (X *= p.cameraToCenterDistance / oe[3]), Qp(E, U, X)) return !0;
|
4859
4859
|
}
|
4860
4860
|
return !1;
|
4861
4861
|
}
|
@@ -4990,8 +4990,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
4990
4990
|
if (s && (d = function(S, P, E, D) {
|
4991
4991
|
const B = [];
|
4992
4992
|
for (let O = 0, U = P.length; O < U; O++) {
|
4993
|
-
const
|
4994
|
-
|
4993
|
+
const X = Cu(S, P[O] * D, O < U - 1 ? P[O + 1] * D : S.length, D, !1);
|
4994
|
+
X === X.next && (X.steiner = !0), B.push(vf(X));
|
4995
4995
|
}
|
4996
4996
|
B.sort(_f);
|
4997
4997
|
for (let O = 0; O < B.length; O++) E = yf(B[O], E);
|
@@ -5040,16 +5040,16 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5040
5040
|
E.prevZ.nextZ = null, E.prevZ = null, function(D) {
|
5041
5041
|
let B, O = 1;
|
5042
5042
|
do {
|
5043
|
-
let U,
|
5043
|
+
let U, X = D;
|
5044
5044
|
D = null;
|
5045
5045
|
let oe = null;
|
5046
|
-
for (B = 0;
|
5046
|
+
for (B = 0; X; ) {
|
5047
5047
|
B++;
|
5048
|
-
let Y =
|
5048
|
+
let Y = X, ie = 0;
|
5049
5049
|
for (let ve = 0; ve < O && (ie++, Y = Y.nextZ, Y); ve++) ;
|
5050
5050
|
let ue = O;
|
5051
|
-
for (; ie > 0 || ue > 0 && Y; ) ie !== 0 && (ue === 0 || !Y ||
|
5052
|
-
|
5051
|
+
for (; ie > 0 || ue > 0 && Y; ) ie !== 0 && (ue === 0 || !Y || X.z <= Y.z) ? (U = X, X = X.nextZ, ie--) : (U = Y, Y = Y.nextZ, ue--), oe ? oe.nextZ = U : D = U, U.prevZ = oe, oe = U;
|
5052
|
+
X = Y;
|
5053
5053
|
}
|
5054
5054
|
oe.nextZ = null, O *= 2;
|
5055
5055
|
} while (B > 1);
|
@@ -5079,13 +5079,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5079
5079
|
function ff(i, e, r, s) {
|
5080
5080
|
const l = i.prev, d = i, p = i.next;
|
5081
5081
|
if (Yt(l, d, p) >= 0) return !1;
|
5082
|
-
const m = l.x, _ = d.x, x = p.x, S = l.y, P = d.y, E = p.y, D = m < _ ? m < x ? m : x : _ < x ? _ : x, B = S < P ? S < E ? S : E : P < E ? P : E, O = m > _ ? m > x ? m : x : _ > x ? _ : x, U = S > P ? S > E ? S : E : P > E ? P : E,
|
5082
|
+
const m = l.x, _ = d.x, x = p.x, S = l.y, P = d.y, E = p.y, D = m < _ ? m < x ? m : x : _ < x ? _ : x, B = S < P ? S < E ? S : E : P < E ? P : E, O = m > _ ? m > x ? m : x : _ > x ? _ : x, U = S > P ? S > E ? S : E : P > E ? P : E, X = uh(D, B, e, r, s), oe = uh(O, U, e, r, s);
|
5083
5083
|
let Y = i.prevZ, ie = i.nextZ;
|
5084
|
-
for (; Y && Y.z >=
|
5084
|
+
for (; Y && Y.z >= X && ie && ie.z <= oe; ) {
|
5085
5085
|
if (Y.x >= D && Y.x <= O && Y.y >= B && Y.y <= U && Y !== l && Y !== p && Fo(m, S, _, P, x, E, Y.x, Y.y) && Yt(Y.prev, Y, Y.next) >= 0 || (Y = Y.prevZ, ie.x >= D && ie.x <= O && ie.y >= B && ie.y <= U && ie !== l && ie !== p && Fo(m, S, _, P, x, E, ie.x, ie.y) && Yt(ie.prev, ie, ie.next) >= 0)) return !1;
|
5086
5086
|
ie = ie.nextZ;
|
5087
5087
|
}
|
5088
|
-
for (; Y && Y.z >=
|
5088
|
+
for (; Y && Y.z >= X; ) {
|
5089
5089
|
if (Y.x >= D && Y.x <= O && Y.y >= B && Y.y <= U && Y !== l && Y !== p && Fo(m, S, _, P, x, E, Y.x, Y.y) && Yt(Y.prev, Y, Y.next) >= 0) return !1;
|
5090
5090
|
Y = Y.prevZ;
|
5091
5091
|
}
|
@@ -5239,7 +5239,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5239
5239
|
}
|
5240
5240
|
class mh {
|
5241
5241
|
constructor(e) {
|
5242
|
-
this.zoom = e.zoom, this.overscaling = e.overscaling, this.layers = e.layers, this.layerIds = this.layers.map((r) => r.id), this.index = e.index, this.hasPattern = !1, this.patternFeatures = [], this.layoutVertexArray = new
|
5242
|
+
this.zoom = e.zoom, this.overscaling = e.overscaling, this.layers = e.layers, this.layerIds = this.layers.map((r) => r.id), this.index = e.index, this.hasPattern = !1, this.patternFeatures = [], this.layoutVertexArray = new Xn(), this.indexArray = new oi(), this.indexArray2 = new jt(), this.programConfigurations = new Os(e.layers, e.zoom), this.segments = new ni(), this.segments2 = new ni(), this.stateDependentLayerIds = this.layers.filter((r) => r.isStateDependent()).map((r) => r.id);
|
5243
5243
|
}
|
5244
5244
|
populate(e, r, s) {
|
5245
5245
|
this.hasPattern = ph("fill", this.layers, r);
|
@@ -5392,11 +5392,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5392
5392
|
for (_ = function(D) {
|
5393
5393
|
var B = D.length;
|
5394
5394
|
if (B <= 1) return [D];
|
5395
|
-
for (var O, U,
|
5395
|
+
for (var O, U, X = [], oe = 0; oe < B; oe++) {
|
5396
5396
|
var Y = Cf(D[oe]);
|
5397
|
-
Y !== 0 && (U === void 0 && (U = Y < 0), U === Y < 0 ? (O &&
|
5397
|
+
Y !== 0 && (U === void 0 && (U = Y < 0), U === Y < 0 ? (O && X.push(O), O = [D[oe]]) : O.push(D[oe]));
|
5398
5398
|
}
|
5399
|
-
return O &&
|
5399
|
+
return O && X.push(O), X;
|
5400
5400
|
}(_), s = 0; s < _.length; s++) for (l = 0; l < _[s].length; l++) S(_[s][l]);
|
5401
5401
|
}
|
5402
5402
|
_.length === 1 ? _ = _[0] : x = "Multi" + x;
|
@@ -5480,13 +5480,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5480
5480
|
if (B.length === 0 || Bf(B)) continue;
|
5481
5481
|
let O = 0;
|
5482
5482
|
for (let U = 0; U < B.length; U++) {
|
5483
|
-
const
|
5483
|
+
const X = B[U];
|
5484
5484
|
if (U >= 1) {
|
5485
5485
|
const oe = B[U - 1];
|
5486
|
-
if (!Rf(
|
5486
|
+
if (!Rf(X, oe)) {
|
5487
5487
|
x.vertexLength + 4 > ni.MAX_VERTEX_ARRAY_LENGTH && (x = this.segments.prepareSegment(4, this.layoutVertexArray, this.indexArray));
|
5488
|
-
const Y =
|
5489
|
-
O + ie > 32768 && (O = 0), nl(this.layoutVertexArray,
|
5488
|
+
const Y = X.sub(oe)._perp()._unit(), ie = oe.dist(X);
|
5489
|
+
O + ie > 32768 && (O = 0), nl(this.layoutVertexArray, X.x, X.y, Y.x, Y.y, 0, 0, O), nl(this.layoutVertexArray, X.x, X.y, Y.x, Y.y, 0, 1, O), m.x += 2 * X.x, m.y += 2 * X.y, m.vertexCount += 2, O += ie, nl(this.layoutVertexArray, oe.x, oe.y, Y.x, Y.y, 0, 0, O), nl(this.layoutVertexArray, oe.x, oe.y, Y.x, Y.y, 0, 1, O), m.x += 2 * oe.x, m.y += 2 * oe.y, m.vertexCount += 2;
|
5490
5490
|
const ue = x.vertexLength;
|
5491
5491
|
this.indexArray.emplaceBack(ue, ue + 2, ue + 1), this.indexArray.emplaceBack(ue + 1, ue + 2, ue + 3), x.vertexLength += 4, x.primitiveLength += 2;
|
5492
5492
|
}
|
@@ -5538,38 +5538,38 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5538
5538
|
return !0;
|
5539
5539
|
}
|
5540
5540
|
queryIntersectsFeature(e, r, s, l, d, p, m, _) {
|
5541
|
-
const x = oc(e, this.paint.get("fill-extrusion-translate"), this.paint.get("fill-extrusion-translate-anchor"), p.angle, m), S = this.paint.get("fill-extrusion-height").evaluate(r, s), P = this.paint.get("fill-extrusion-base").evaluate(r, s), E = function(B, O, U,
|
5541
|
+
const x = oc(e, this.paint.get("fill-extrusion-translate"), this.paint.get("fill-extrusion-translate-anchor"), p.angle, m), S = this.paint.get("fill-extrusion-height").evaluate(r, s), P = this.paint.get("fill-extrusion-base").evaluate(r, s), E = function(B, O, U, X) {
|
5542
5542
|
const oe = [];
|
5543
5543
|
for (const Y of B) {
|
5544
5544
|
const ie = [Y.x, Y.y, 0, 1];
|
5545
5545
|
ac(ie, ie, O), oe.push(new ae(ie[0] / ie[3], ie[1] / ie[3]));
|
5546
5546
|
}
|
5547
5547
|
return oe;
|
5548
|
-
}(x, _), D = function(B, O, U,
|
5549
|
-
const oe = [], Y = [], ie =
|
5548
|
+
}(x, _), D = function(B, O, U, X) {
|
5549
|
+
const oe = [], Y = [], ie = X[8] * O, ue = X[9] * O, ve = X[10] * O, De = X[11] * O, Xe = X[8] * U, Ee = X[9] * U, Ae = X[10] * U, Ue = X[11] * U;
|
5550
5550
|
for (const Ve of B) {
|
5551
5551
|
const Be = [], ge = [];
|
5552
5552
|
for (const Ze of Ve) {
|
5553
|
-
const $e = Ze.x, et = Ze.y, At =
|
5553
|
+
const $e = Ze.x, et = Ze.y, At = X[0] * $e + X[4] * et + X[12], kt = X[1] * $e + X[5] * et + X[13], ai = X[2] * $e + X[6] * et + X[14], Cr = X[3] * $e + X[7] * et + X[15], wi = ai + ve, Ht = Cr + De, Fi = At + Xe, Oi = kt + Ee, Vi = ai + Ae, Wt = Cr + Ue, li = new ae((At + ie) / Ht, (kt + ue) / Ht);
|
5554
5554
|
li.z = wi / Ht, Be.push(li);
|
5555
|
-
const Ei = new ae(Fi /
|
5556
|
-
Ei.z = Vi /
|
5555
|
+
const Ei = new ae(Fi / Wt, Oi / Wt);
|
5556
|
+
Ei.z = Vi / Wt, ge.push(Ei);
|
5557
5557
|
}
|
5558
5558
|
oe.push(Be), Y.push(ge);
|
5559
5559
|
}
|
5560
5560
|
return [oe, Y];
|
5561
5561
|
}(l, P, S, _);
|
5562
5562
|
return function(B, O, U) {
|
5563
|
-
let
|
5564
|
-
gu(U, O) && (
|
5563
|
+
let X = 1 / 0;
|
5564
|
+
gu(U, O) && (X = Vu(U, O[0]));
|
5565
5565
|
for (let oe = 0; oe < O.length; oe++) {
|
5566
5566
|
const Y = O[oe], ie = B[oe];
|
5567
5567
|
for (let ue = 0; ue < Y.length - 1; ue++) {
|
5568
5568
|
const ve = Y[ue], De = [ve, Y[ue + 1], ie[ue + 1], ie[ue], ve];
|
5569
|
-
mu(U, De) && (
|
5569
|
+
mu(U, De) && (X = Math.min(X, Vu(U, De)));
|
5570
5570
|
}
|
5571
5571
|
}
|
5572
|
-
return
|
5572
|
+
return X !== 1 / 0 && X;
|
5573
5573
|
}(D[0], D[1], E);
|
5574
5574
|
}
|
5575
5575
|
}
|
@@ -5583,7 +5583,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5583
5583
|
let l;
|
5584
5584
|
for (; !l || s.equals(l); ) if (l = e[r++], !l) return 1 / 0;
|
5585
5585
|
for (; r < e.length; r++) {
|
5586
|
-
const d = e[r], p = i[0], m = l.sub(s), _ = d.sub(s), x = p.sub(s), S = sl(m, m), P = sl(m, _), E = sl(_, _), D = sl(x, m), B = sl(x, _), O = S * E - P * P, U = (E * D - P * B) / O,
|
5586
|
+
const d = e[r], p = i[0], m = l.sub(s), _ = d.sub(s), x = p.sub(s), S = sl(m, m), P = sl(m, _), E = sl(_, _), D = sl(x, m), B = sl(x, _), O = S * E - P * P, U = (E * D - P * B) / O, X = (S * B - P * D) / O, oe = s.z * (1 - U - X) + l.z * U + d.z * X;
|
5587
5587
|
if (isFinite(oe)) return oe;
|
5588
5588
|
}
|
5589
5589
|
return 1 / 0;
|
@@ -5650,7 +5650,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5650
5650
|
addLine(e, r, s, l, d, p) {
|
5651
5651
|
if (this.distance = 0, this.scaledDistance = 0, this.totalDistance = 0, this.lineClips) {
|
5652
5652
|
this.lineClipsArray.push(this.lineClips);
|
5653
|
-
for (let
|
5653
|
+
for (let X = 0; X < e.length - 1; X++) this.totalDistance += e[X].dist(e[X + 1]);
|
5654
5654
|
this.updateScaledDistance(), this.maxLineLength = Math.max(this.maxLineLength, this.totalDistance);
|
5655
5655
|
}
|
5656
5656
|
const m = Uf[r.type] === "Polygon";
|
@@ -5663,13 +5663,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5663
5663
|
const S = this.overscaling <= 16 ? 15 * ti / (512 * this.overscaling) : 0, P = this.segments.prepareSegment(10 * _, this.layoutVertexArray, this.indexArray);
|
5664
5664
|
let E, D, B, O, U;
|
5665
5665
|
this.e1 = this.e2 = -1, m && (E = e[_ - 2], U = e[x].sub(E)._unit()._perp());
|
5666
|
-
for (let
|
5667
|
-
if (B =
|
5668
|
-
U && (O = U), E && (D = E), E = e[
|
5666
|
+
for (let X = x; X < _; X++) {
|
5667
|
+
if (B = X === _ - 1 ? m ? e[x + 1] : void 0 : e[X + 1], B && e[X].equals(B)) continue;
|
5668
|
+
U && (O = U), E && (D = E), E = e[X], U = B ? B.sub(E)._unit()._perp() : O, O = O || U;
|
5669
5669
|
let oe = O.add(U);
|
5670
5670
|
oe.x === 0 && oe.y === 0 || oe._unit();
|
5671
|
-
const Y = O.x * U.x + O.y * U.y, ie = oe.x * U.x + oe.y * U.y, ue = ie !== 0 ? 1 / ie : 1 / 0, ve = 2 * Math.sqrt(2 - 2 * ie), De = ie < qf && D && B,
|
5672
|
-
if (De &&
|
5671
|
+
const Y = O.x * U.x + O.y * U.y, ie = oe.x * U.x + oe.y * U.y, ue = ie !== 0 ? 1 / ie : 1 / 0, ve = 2 * Math.sqrt(2 - 2 * ie), De = ie < qf && D && B, Xe = O.x * U.y - O.y * U.x > 0;
|
5672
|
+
if (De && X > x) {
|
5673
5673
|
const Ue = E.dist(D);
|
5674
5674
|
if (Ue > 2 * S) {
|
5675
5675
|
const Ve = E.sub(E.sub(D)._mult(S / Ue)._round());
|
@@ -5683,11 +5683,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5683
5683
|
if (ue > 100) oe = U.mult(-1);
|
5684
5684
|
else {
|
5685
5685
|
const Ue = ue * O.add(U).mag() / O.sub(U).mag();
|
5686
|
-
oe._perp()._mult(Ue * (
|
5686
|
+
oe._perp()._mult(Ue * (Xe ? -1 : 1));
|
5687
5687
|
}
|
5688
5688
|
this.addCurrentVertex(E, oe, 0, 0, P), this.addCurrentVertex(E, oe.mult(-1), 0, 0, P);
|
5689
5689
|
} else if (Ae === "bevel" || Ae === "fakeround") {
|
5690
|
-
const Ue = -Math.sqrt(ue * ue - 1), Ve =
|
5690
|
+
const Ue = -Math.sqrt(ue * ue - 1), Ve = Xe ? Ue : 0, Be = Xe ? 0 : Ue;
|
5691
5691
|
if (D && this.addCurrentVertex(E, O, Ve, Be, P), Ae === "fakeround") {
|
5692
5692
|
const ge = Math.round(180 * ve / Math.PI / 20);
|
5693
5693
|
for (let Ze = 1; Ze < ge; Ze++) {
|
@@ -5696,8 +5696,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5696
5696
|
const At = $e - 0.5;
|
5697
5697
|
$e += $e * At * ($e - 1) * ((1.0904 + Y * (Y * (3.55645 - 1.43519 * Y) - 3.2452)) * At * At + (0.848013 + Y * (0.215638 * Y - 1.06021)));
|
5698
5698
|
}
|
5699
|
-
const et = U.sub(O)._mult($e)._add(O)._unit()._mult(
|
5700
|
-
this.addHalfVertex(E, et.x, et.y, !1,
|
5699
|
+
const et = U.sub(O)._mult($e)._add(O)._unit()._mult(Xe ? -1 : 1);
|
5700
|
+
this.addHalfVertex(E, et.x, et.y, !1, Xe, 0, P);
|
5701
5701
|
}
|
5702
5702
|
}
|
5703
5703
|
B && this.addCurrentVertex(E, U, -Ve, -Be, P);
|
@@ -5706,7 +5706,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5706
5706
|
const Ue = D ? 1 : -1;
|
5707
5707
|
this.addCurrentVertex(E, oe, Ue, Ue, P);
|
5708
5708
|
} else Ae === "round" && (D && (this.addCurrentVertex(E, O, 0, 0, P), this.addCurrentVertex(E, O, 1, 1, P, !0)), B && (this.addCurrentVertex(E, U, -1, -1, P, !0), this.addCurrentVertex(E, U, 0, 0, P)));
|
5709
|
-
if (De &&
|
5709
|
+
if (De && X < _ - 1) {
|
5710
5710
|
const Ue = E.dist(B);
|
5711
5711
|
if (Ue > 2 * S) {
|
5712
5712
|
const Ve = E.add(B.sub(E)._mult(S / Ue)._round());
|
@@ -5779,9 +5779,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5779
5779
|
const D = [];
|
5780
5780
|
for (let B = 0; B < P.length; B++) {
|
5781
5781
|
const O = P[B], U = [];
|
5782
|
-
for (let
|
5783
|
-
const oe = O[
|
5784
|
-
|
5782
|
+
for (let X = 0; X < O.length; X++) {
|
5783
|
+
const oe = O[X - 1], Y = O[X], ie = O[X + 1], ue = X === 0 ? new ae(0, 0) : Y.sub(oe)._unit()._perp(), ve = X === O.length - 1 ? new ae(0, 0) : ie.sub(Y)._unit()._perp(), De = ue._add(ve)._unit(), Xe = De.x * ve.x + De.y * ve.y;
|
5784
|
+
Xe !== 0 && De._mult(1 / Xe), U.push(De._mult(E)._add(Y));
|
5785
5785
|
}
|
5786
5786
|
D.push(U);
|
5787
5787
|
}
|
@@ -5804,9 +5804,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5804
5804
|
function qu(i, e) {
|
5805
5805
|
return e > 0 ? e + 2 * i : i;
|
5806
5806
|
}
|
5807
|
-
const Hf = w([{ name: "a_pos_offset", components: 4, type: "Int16" }, { name: "a_data", components: 4, type: "Uint16" }, { name: "a_pixeloffset", components: 4, type: "Int16" }], 4),
|
5807
|
+
const Hf = w([{ name: "a_pos_offset", components: 4, type: "Int16" }, { name: "a_data", components: 4, type: "Uint16" }, { name: "a_pixeloffset", components: 4, type: "Int16" }], 4), Wf = w([{ name: "a_projected_pos", components: 3, type: "Float32" }], 4);
|
5808
5808
|
w([{ name: "a_fade_opacity", components: 1, type: "Uint32" }], 4);
|
5809
|
-
const
|
5809
|
+
const Xf = w([{ name: "a_placed", components: 2, type: "Uint8" }, { name: "a_shift", components: 2, type: "Float32" }, { name: "a_box_real", components: 2, type: "Int16" }]);
|
5810
5810
|
w([{ type: "Int16", name: "anchorPointX" }, { type: "Int16", name: "anchorPointY" }, { type: "Int16", name: "x1" }, { type: "Int16", name: "y1" }, { type: "Int16", name: "x2" }, { type: "Int16", name: "y2" }, { type: "Uint32", name: "featureIndex" }, { type: "Uint16", name: "sourceLayerIndex" }, { type: "Uint16", name: "bucketIndex" }]);
|
5811
5811
|
const Zu = w([{ name: "a_pos", components: 2, type: "Int16" }, { name: "a_anchor_pos", components: 2, type: "Int16" }, { name: "a_extrude", components: 2, type: "Int16" }], 4), Jf = w([{ name: "a_pos", components: 2, type: "Float32" }, { name: "a_radius", components: 1, type: "Float32" }, { name: "a_flags", components: 2, type: "Int16" }], 4);
|
5812
5812
|
function Kf(i, e, r) {
|
@@ -5829,7 +5829,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5829
5829
|
p += Math.pow(2, s), d -= x;
|
5830
5830
|
}
|
5831
5831
|
return (D ? -1 : 1) * p * Math.pow(2, d - s);
|
5832
|
-
},
|
5832
|
+
}, Wu = function(i, e, r, s, l, d) {
|
5833
5833
|
var p, m, _, x = 8 * d - l - 1, S = (1 << x) - 1, P = S >> 1, E = l === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, D = 0, B = 1, O = e < 0 || e === 0 && 1 / e < 0 ? 1 : 0;
|
5834
5834
|
for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (m = isNaN(e) ? 1 : 0, p = S) : (p = Math.floor(Math.log(e) / Math.LN2), e * (_ = Math.pow(2, -p)) < 1 && (p--, _ *= 2), (e += p + P >= 1 ? E / _ : E * Math.pow(2, 1 - P)) * _ >= 2 && (p++, _ /= 2), p + P >= S ? (m = 0, p = S) : p + P >= 1 ? (m = (e * _ - 1) * Math.pow(2, l), p += P) : (m = e * Math.pow(2, P - 1) * Math.pow(2, l), p = 0)); l >= 8; i[r + D] = 255 & m, D += B, m /= 256, l -= 8) ;
|
5835
5835
|
for (p = p << l | m, x += l; x > 0; i[r + D] = 255 & p, D += B, p /= 256, x -= 8) ;
|
@@ -5839,7 +5839,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
5839
5839
|
this.buf = ArrayBuffer.isView && ArrayBuffer.isView(i) ? i : new Uint8Array(i || 0), this.pos = 0, this.type = 0, this.length = this.buf.length;
|
5840
5840
|
}
|
5841
5841
|
Pt.Varint = 0, Pt.Fixed64 = 1, Pt.Bytes = 2, Pt.Fixed32 = 5;
|
5842
|
-
var xh = 4294967296,
|
5842
|
+
var xh = 4294967296, Xu = 1 / xh, Ju = typeof TextDecoder > "u" ? null : new TextDecoder("utf-8");
|
5843
5843
|
function En(i) {
|
5844
5844
|
return i.type === Pt.Bytes ? i.readVarint() + i.pos : i.pos + 1;
|
5845
5845
|
}
|
@@ -6013,9 +6013,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6013
6013
|
}, writeSFixed32: function(i) {
|
6014
6014
|
this.realloc(4), No(this.buf, i, this.pos), this.pos += 4;
|
6015
6015
|
}, writeFixed64: function(i) {
|
6016
|
-
this.realloc(8), No(this.buf, -1 & i, this.pos), No(this.buf, Math.floor(i *
|
6016
|
+
this.realloc(8), No(this.buf, -1 & i, this.pos), No(this.buf, Math.floor(i * Xu), this.pos + 4), this.pos += 8;
|
6017
6017
|
}, writeSFixed64: function(i) {
|
6018
|
-
this.realloc(8), No(this.buf, -1 & i, this.pos), No(this.buf, Math.floor(i *
|
6018
|
+
this.realloc(8), No(this.buf, -1 & i, this.pos), No(this.buf, Math.floor(i * Xu), this.pos + 4), this.pos += 8;
|
6019
6019
|
}, writeVarint: function(i) {
|
6020
6020
|
(i = +i || 0) > 268435455 || i < 0 ? function(e, r) {
|
6021
6021
|
var s, l;
|
@@ -6054,9 +6054,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6054
6054
|
var r = this.pos - e;
|
6055
6055
|
r >= 128 && Ku(e, r, this), this.pos = e - 1, this.writeVarint(r), this.pos += r;
|
6056
6056
|
}, writeFloat: function(i) {
|
6057
|
-
this.realloc(4),
|
6057
|
+
this.realloc(4), Wu(this.buf, i, this.pos, !0, 23, 4), this.pos += 4;
|
6058
6058
|
}, writeDouble: function(i) {
|
6059
|
-
this.realloc(8),
|
6059
|
+
this.realloc(8), Wu(this.buf, i, this.pos, !0, 52, 8), this.pos += 8;
|
6060
6060
|
}, writeBytes: function(i) {
|
6061
6061
|
var e = i.length;
|
6062
6062
|
this.writeVarint(e), this.realloc(e);
|
@@ -6143,22 +6143,22 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6143
6143
|
}
|
6144
6144
|
return { w: l, h: d, fill: e / (l * d) || 0 };
|
6145
6145
|
}
|
6146
|
-
const
|
6146
|
+
const Wi = 1;
|
6147
6147
|
class wh {
|
6148
6148
|
constructor(e, { pixelRatio: r, version: s, stretchX: l, stretchY: d, content: p, textFitWidth: m, textFitHeight: _ }) {
|
6149
6149
|
this.paddedRect = e, this.pixelRatio = r, this.stretchX = l, this.stretchY = d, this.content = p, this.version = s, this.textFitWidth = m, this.textFitHeight = _;
|
6150
6150
|
}
|
6151
6151
|
get tl() {
|
6152
|
-
return [this.paddedRect.x +
|
6152
|
+
return [this.paddedRect.x + Wi, this.paddedRect.y + Wi];
|
6153
6153
|
}
|
6154
6154
|
get br() {
|
6155
|
-
return [this.paddedRect.x + this.paddedRect.w -
|
6155
|
+
return [this.paddedRect.x + this.paddedRect.w - Wi, this.paddedRect.y + this.paddedRect.h - Wi];
|
6156
6156
|
}
|
6157
6157
|
get tlbr() {
|
6158
6158
|
return this.tl.concat(this.br);
|
6159
6159
|
}
|
6160
6160
|
get displaySize() {
|
6161
|
-
return [(this.paddedRect.w - 2 *
|
6161
|
+
return [(this.paddedRect.w - 2 * Wi) / this.pixelRatio, (this.paddedRect.h - 2 * Wi) / this.pixelRatio];
|
6162
6162
|
}
|
6163
6163
|
}
|
6164
6164
|
class td {
|
@@ -6170,17 +6170,17 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6170
6170
|
const { w: p, h: m } = ed(d), _ = new ur({ width: p || 1, height: m || 1 });
|
6171
6171
|
for (const x in e) {
|
6172
6172
|
const S = e[x], P = s[x].paddedRect;
|
6173
|
-
ur.copy(S.data, _, { x: 0, y: 0 }, { x: P.x +
|
6173
|
+
ur.copy(S.data, _, { x: 0, y: 0 }, { x: P.x + Wi, y: P.y + Wi }, S.data);
|
6174
6174
|
}
|
6175
6175
|
for (const x in r) {
|
6176
|
-
const S = r[x], P = l[x].paddedRect, E = P.x +
|
6176
|
+
const S = r[x], P = l[x].paddedRect, E = P.x + Wi, D = P.y + Wi, B = S.data.width, O = S.data.height;
|
6177
6177
|
ur.copy(S.data, _, { x: 0, y: 0 }, { x: E, y: D }, S.data), ur.copy(S.data, _, { x: 0, y: O - 1 }, { x: E, y: D - 1 }, { width: B, height: 1 }), ur.copy(S.data, _, { x: 0, y: 0 }, { x: E, y: D + O }, { width: B, height: 1 }), ur.copy(S.data, _, { x: B - 1, y: 0 }, { x: E - 1, y: D }, { width: 1, height: O }), ur.copy(S.data, _, { x: 0, y: 0 }, { x: E + B, y: D }, { width: 1, height: O });
|
6178
6178
|
}
|
6179
6179
|
this.image = _, this.iconPositions = s, this.patternPositions = l;
|
6180
6180
|
}
|
6181
6181
|
addImages(e, r, s) {
|
6182
6182
|
for (const l in e) {
|
6183
|
-
const d = e[l], p = { x: 0, y: 0, w: d.data.width + 2 *
|
6183
|
+
const d = e[l], p = { x: 0, y: 0, w: d.data.width + 2 * Wi, h: d.data.height + 2 * Wi };
|
6184
6184
|
s.push(p), r[l] = new wh(p, d), d.hasRenderCallback && this.haveRenderCallbacks.push(l);
|
6185
6185
|
}
|
6186
6186
|
}
|
@@ -6281,14 +6281,14 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6281
6281
|
const O = $o.fromFeature(i, l);
|
6282
6282
|
let U;
|
6283
6283
|
P === T.ai.vertical && O.verticalizePunctuation();
|
6284
|
-
const { processBidirectionalText:
|
6285
|
-
if (
|
6284
|
+
const { processBidirectionalText: X, processStyledBidirectionalText: oe } = on;
|
6285
|
+
if (X && O.sections.length === 1) {
|
6286
6286
|
U = [];
|
6287
|
-
const ue =
|
6287
|
+
const ue = X(O.toString(), Sh(O, x, d, e, s, D));
|
6288
6288
|
for (const ve of ue) {
|
6289
6289
|
const De = new $o();
|
6290
6290
|
De.text = ve, De.sections = O.sections;
|
6291
|
-
for (let
|
6291
|
+
for (let Xe = 0; Xe < ve.length; Xe++) De.sectionIndex.push(0);
|
6292
6292
|
U.push(De);
|
6293
6293
|
}
|
6294
6294
|
} else if (oe) {
|
@@ -6299,36 +6299,36 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6299
6299
|
De.text = ve[0], De.sectionIndex = ve[1], De.sections = O.sections, U.push(De);
|
6300
6300
|
}
|
6301
6301
|
} else U = function(ue, ve) {
|
6302
|
-
const De = [],
|
6302
|
+
const De = [], Xe = ue.text;
|
6303
6303
|
let Ee = 0;
|
6304
6304
|
for (const Ae of ve) De.push(ue.substring(Ee, Ae)), Ee = Ae;
|
6305
|
-
return Ee <
|
6305
|
+
return Ee < Xe.length && De.push(ue.substring(Ee, Xe.length)), De;
|
6306
6306
|
}(O, Sh(O, x, d, e, s, D));
|
6307
6307
|
const Y = [], ie = { positionedLines: Y, text: O.toString(), top: S[1], bottom: S[1], left: S[0], right: S[0], writingMode: P, iconsInText: !1, verticalizable: !1 };
|
6308
|
-
return function(ue, ve, De,
|
6308
|
+
return function(ue, ve, De, Xe, Ee, Ae, Ue, Ve, Be, ge, Ze, $e) {
|
6309
6309
|
let et = 0, At = al, kt = 0, ai = 0;
|
6310
6310
|
const Cr = Ve === "right" ? 1 : Ve === "left" ? 0 : 0.5;
|
6311
6311
|
let wi = 0;
|
6312
|
-
for (const
|
6313
|
-
|
6314
|
-
const li =
|
6312
|
+
for (const Wt of Ee) {
|
6313
|
+
Wt.trim();
|
6314
|
+
const li = Wt.getMaxScale(), Ei = (li - 1) * si, Si = { positionedGlyphs: [], lineOffset: 0 };
|
6315
6315
|
ue.positionedLines[wi] = Si;
|
6316
6316
|
const Ni = Si.positionedGlyphs;
|
6317
6317
|
let Ti = 0;
|
6318
|
-
if (!
|
6318
|
+
if (!Wt.length()) {
|
6319
6319
|
At += Ae, ++wi;
|
6320
6320
|
continue;
|
6321
6321
|
}
|
6322
|
-
for (let
|
6323
|
-
const xt =
|
6322
|
+
for (let Xi = 0; Xi < Wt.length(); Xi++) {
|
6323
|
+
const xt = Wt.getSection(Xi), zt = Wt.getSectionIndex(Xi), Ot = Wt.getCharCode(Xi);
|
6324
6324
|
let tr = 0, Gt = null, Zo = null, hn = null, un = si;
|
6325
6325
|
const Er = !(Be === T.ai.horizontal || !Ze && !Ua(Ot) || Ze && (fc[Ot] || (Ht = Ot, Me.Arabic(Ht) || Me["Arabic Supplement"](Ht) || Me["Arabic Extended-A"](Ht) || Me["Arabic Presentation Forms-A"](Ht) || Me["Arabic Presentation Forms-B"](Ht))));
|
6326
6326
|
if (xt.imageName) {
|
6327
|
-
const fr =
|
6327
|
+
const fr = Xe[xt.imageName];
|
6328
6328
|
if (!fr) continue;
|
6329
6329
|
hn = xt.imageName, ue.iconsInText = ue.iconsInText || !0, Zo = fr.paddedRect;
|
6330
6330
|
const ui = fr.displaySize;
|
6331
|
-
xt.scale = xt.scale * si / $e, Gt = { width: ui[0], height: ui[1], left:
|
6331
|
+
xt.scale = xt.scale * si / $e, Gt = { width: ui[0], height: ui[1], left: Wi, top: -Qu, advance: Er ? ui[1] : ui[0] }, tr = Ei + (si - ui[1] * xt.scale), un = Gt.advance;
|
6332
6332
|
const Mn = Er ? ui[0] * xt.scale - si * li : ui[1] * xt.scale - si * li;
|
6333
6333
|
Mn > 0 && Mn > Ti && (Ti = Mn);
|
6334
6334
|
} else {
|
@@ -6349,11 +6349,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6349
6349
|
}
|
6350
6350
|
var Ht;
|
6351
6351
|
const Fi = At - al, { horizontalAlign: Oi, verticalAlign: Vi } = Th(Ue);
|
6352
|
-
(function(
|
6352
|
+
(function(Wt, li, Ei, Si, Ni, Ti, pr, Xi, xt) {
|
6353
6353
|
const zt = (li - Ei) * Ni;
|
6354
6354
|
let Ot = 0;
|
6355
|
-
Ot = Ti !== pr ? -
|
6356
|
-
for (const tr of
|
6355
|
+
Ot = Ti !== pr ? -Xi * Si - al : (-Si * xt + 0.5) * pr;
|
6356
|
+
for (const tr of Wt) for (const Gt of tr.positionedGlyphs) Gt.x += zt, Gt.y += Ot;
|
6357
6357
|
})(ue.positionedLines, Cr, Oi, Vi, kt, ai, Ae, Fi, Ee.length), ue.top += -Vi * Fi, ue.bottom = ue.top + Fi, ue.left += -Oi * kt, ue.right = ue.left + kt;
|
6358
6358
|
}(ie, e, r, s, U, p, m, _, P, x, E, B), !function(ue) {
|
6359
6359
|
for (const ve of ue) if (ve.positionedGlyphs.length !== 0) return !1;
|
@@ -6393,12 +6393,12 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6393
6393
|
function Sh(i, e, r, s, l, d) {
|
6394
6394
|
if (!i) return [];
|
6395
6395
|
const p = [], m = function(P, E, D, B, O, U) {
|
6396
|
-
let
|
6396
|
+
let X = 0;
|
6397
6397
|
for (let oe = 0; oe < P.length(); oe++) {
|
6398
6398
|
const Y = P.getSection(oe);
|
6399
|
-
|
6399
|
+
X += id(P.getCharCode(oe), Y, B, O, E, U);
|
6400
6400
|
}
|
6401
|
-
return
|
6401
|
+
return X / Math.max(1, Math.ceil(X / D));
|
6402
6402
|
}(i, e, r, s, l, d), _ = i.text.indexOf("") >= 0;
|
6403
6403
|
let x = 0;
|
6404
6404
|
for (let P = 0; P < i.length(); P++) {
|
@@ -6465,8 +6465,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6465
6465
|
const p = i.image;
|
6466
6466
|
let m;
|
6467
6467
|
if (p.content) {
|
6468
|
-
const U = p.content,
|
6469
|
-
m = [U[0] /
|
6468
|
+
const U = p.content, X = p.pixelRatio || 1;
|
6469
|
+
m = [U[0] / X, U[1] / X, p.displaySize[0] - U[2] / X, p.displaySize[1] - U[3] / X];
|
6470
6470
|
}
|
6471
6471
|
const _ = e.left * d, x = e.right * d;
|
6472
6472
|
let S, P, E, D;
|
@@ -6516,7 +6516,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6516
6516
|
return this.layoutVertexArray.length === 0 && this.indexArray.length === 0 && this.dynamicLayoutVertexArray.length === 0 && this.opacityVertexArray.length === 0;
|
6517
6517
|
}
|
6518
6518
|
upload(e, r, s, l) {
|
6519
|
-
this.isEmpty() || (s && (this.layoutVertexBuffer = e.createVertexBuffer(this.layoutVertexArray, Hf.members), this.indexBuffer = e.createIndexBuffer(this.indexArray, r), this.dynamicLayoutVertexBuffer = e.createVertexBuffer(this.dynamicLayoutVertexArray,
|
6519
|
+
this.isEmpty() || (s && (this.layoutVertexBuffer = e.createVertexBuffer(this.layoutVertexArray, Hf.members), this.indexBuffer = e.createIndexBuffer(this.indexArray, r), this.dynamicLayoutVertexBuffer = e.createVertexBuffer(this.dynamicLayoutVertexArray, Wf.members, !0), this.opacityVertexBuffer = e.createVertexBuffer(this.opacityVertexArray, gm, !0), this.opacityVertexBuffer.itemSize = 1), (s || l) && this.programConfigurations.upload(e));
|
6520
6520
|
}
|
6521
6521
|
destroy() {
|
6522
6522
|
this.layoutVertexBuffer && (this.layoutVertexBuffer.destroy(), this.indexBuffer.destroy(), this.programConfigurations.destroy(), this.segments.destroy(), this.dynamicLayoutVertexBuffer.destroy(), this.opacityVertexBuffer.destroy());
|
@@ -6528,7 +6528,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6528
6528
|
this.layoutVertexArray = new e(), this.layoutAttributes = r, this.indexArray = new s(), this.segments = new ni(), this.collisionVertexArray = new vi();
|
6529
6529
|
}
|
6530
6530
|
upload(e) {
|
6531
|
-
this.layoutVertexBuffer = e.createVertexBuffer(this.layoutVertexArray, this.layoutAttributes), this.indexBuffer = e.createIndexBuffer(this.indexArray), this.collisionVertexBuffer = e.createVertexBuffer(this.collisionVertexArray,
|
6531
|
+
this.layoutVertexBuffer = e.createVertexBuffer(this.layoutVertexArray, this.layoutAttributes), this.indexBuffer = e.createIndexBuffer(this.indexArray), this.collisionVertexBuffer = e.createVertexBuffer(this.collisionVertexArray, Xf.members, !0);
|
6532
6532
|
}
|
6533
6533
|
destroy() {
|
6534
6534
|
this.layoutVertexBuffer && (this.layoutVertexBuffer.destroy(), this.indexBuffer.destroy(), this.segments.destroy(), this.collisionVertexBuffer.destroy());
|
@@ -6556,7 +6556,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6556
6556
|
const l = this.layers[0], d = l.layout, p = d.get("text-font"), m = d.get("text-field"), _ = d.get("icon-image"), x = (m.value.kind !== "constant" || m.value.value instanceof ji && !m.value.value.isEmpty() || m.value.value.toString().length > 0) && (p.value.kind !== "constant" || p.value.value.length > 0), S = _.value.kind !== "constant" || !!_.value.value || Object.keys(_.parameters).length > 0, P = d.get("symbol-sort-key");
|
6557
6557
|
if (this.features = [], !x && !S) return;
|
6558
6558
|
const E = r.iconDependencies, D = r.glyphDependencies, B = r.availableImages, O = new Mt(this.zoom);
|
6559
|
-
for (const { feature: U, id:
|
6559
|
+
for (const { feature: U, id: X, index: oe, sourceLayerIndex: Y } of e) {
|
6560
6560
|
const ie = l._featureFilter.needGeometry, ue = Ns(U, ie);
|
6561
6561
|
if (!l._featureFilter.filter(O, ue, s)) continue;
|
6562
6562
|
let ve, De;
|
@@ -6569,8 +6569,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6569
6569
|
De = Ee instanceof mi ? Ee : mi.fromString(Ee);
|
6570
6570
|
}
|
6571
6571
|
if (!ve && !De) continue;
|
6572
|
-
const
|
6573
|
-
if (this.features.push({ id:
|
6572
|
+
const Xe = this.sortFeaturesByKey ? P.evaluate(ue, {}, s) : void 0;
|
6573
|
+
if (this.features.push({ id: X, text: ve, icon: De, index: oe, sourceLayerIndex: Y, geometry: ue.geometry, properties: U.properties, type: mm[U.type], sortKey: Xe }), De && (E[De.name] = !0), ve) {
|
6574
6574
|
const Ee = p.evaluate(ue, {}, s).join(","), Ae = d.get("text-rotation-alignment") !== "viewport" && d.get("symbol-placement") !== "point";
|
6575
6575
|
this.allowVerticalPlacement = this.writingModes && this.writingModes.indexOf(T.ai.vertical) >= 0;
|
6576
6576
|
for (const Ue of ve.sections) if (Ue.image) E[Ue.image.name] = !0;
|
@@ -6581,7 +6581,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6581
6581
|
}
|
6582
6582
|
}
|
6583
6583
|
d.get("symbol-placement") === "line" && (this.features = function(U) {
|
6584
|
-
const
|
6584
|
+
const X = {}, oe = {}, Y = [];
|
6585
6585
|
let ie = 0;
|
6586
6586
|
function ue(Ee) {
|
6587
6587
|
Y.push(U[Ee]), ie++;
|
@@ -6591,10 +6591,10 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6591
6591
|
return delete oe[Ee], oe[Ae] = Ve, Y[Ve].geometry[0].pop(), Y[Ve].geometry[0] = Y[Ve].geometry[0].concat(Ue[0]), Ve;
|
6592
6592
|
}
|
6593
6593
|
function De(Ee, Ae, Ue) {
|
6594
|
-
const Ve =
|
6595
|
-
return delete
|
6594
|
+
const Ve = X[Ae];
|
6595
|
+
return delete X[Ae], X[Ee] = Ve, Y[Ve].geometry[0].shift(), Y[Ve].geometry[0] = Ue[0].concat(Y[Ve].geometry[0]), Ve;
|
6596
6596
|
}
|
6597
|
-
function
|
6597
|
+
function Xe(Ee, Ae, Ue) {
|
6598
6598
|
const Ve = Ue ? Ae[0][Ae[0].length - 1] : Ae[0][0];
|
6599
6599
|
return `${Ee}:${Ve.x}:${Ve.y}`;
|
6600
6600
|
}
|
@@ -6604,14 +6604,14 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6604
6604
|
ue(Ee);
|
6605
6605
|
continue;
|
6606
6606
|
}
|
6607
|
-
const Be =
|
6608
|
-
if (Be in oe && ge in
|
6607
|
+
const Be = Xe(Ve, Ue), ge = Xe(Ve, Ue, !0);
|
6608
|
+
if (Be in oe && ge in X && oe[Be] !== X[ge]) {
|
6609
6609
|
const Ze = De(Be, ge, Ue), $e = ve(Be, ge, Y[Ze].geometry);
|
6610
|
-
delete
|
6611
|
-
} else Be in oe ? ve(Be, ge, Ue) : ge in
|
6610
|
+
delete X[Be], delete oe[ge], oe[Xe(Ve, Y[$e].geometry, !0)] = $e, Y[Ze].geometry = null;
|
6611
|
+
} else Be in oe ? ve(Be, ge, Ue) : ge in X ? De(Be, ge, Ue) : (ue(Ee), X[Be] = ie - 1, oe[ge] = ie - 1);
|
6612
6612
|
}
|
6613
6613
|
return Y.filter((Ee) => Ee.geometry);
|
6614
|
-
}(this.features)), this.sortFeaturesByKey && this.features.sort((U,
|
6614
|
+
}(this.features)), this.sortFeaturesByKey && this.features.sort((U, X) => U.sortKey - X.sortKey);
|
6615
6615
|
}
|
6616
6616
|
update(e, r, s) {
|
6617
6617
|
this.stateDependentLayers.length && (this.text.programConfigurations.updatePaintArrays(e, r, this.layers, s), this.icon.programConfigurations.updatePaintArrays(e, r, this.layers, s));
|
@@ -6646,12 +6646,12 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
6646
6646
|
return { lineStartIndex: s, lineLength: this.lineVertexArray.length - s };
|
6647
6647
|
}
|
6648
6648
|
addSymbols(e, r, s, l, d, p, m, _, x, S, P, E) {
|
6649
|
-
const D = e.indexArray, B = e.layoutVertexArray, O = e.segments.prepareSegment(4 * r.length, B, D, this.canOverlap ? p.sortKey : void 0), U = this.glyphOffsetArray.length,
|
6649
|
+
const D = e.indexArray, B = e.layoutVertexArray, O = e.segments.prepareSegment(4 * r.length, B, D, this.canOverlap ? p.sortKey : void 0), U = this.glyphOffsetArray.length, X = O.vertexLength, oe = this.allowVerticalPlacement && m === T.ai.vertical ? Math.PI / 2 : 0, Y = p.text && p.text.sections;
|
6650
6650
|
for (let ie = 0; ie < r.length; ie++) {
|
6651
|
-
const { tl: ue, tr: ve, bl: De, br:
|
6652
|
-
mc(B, _.x, _.y, ue.x, At + ue.y, Ee.x, Ee.y, s, Ze, Ae.x, Ae.y, Ve, Be), mc(B, _.x, _.y, ve.x, At + ve.y, Ee.x + Ee.w, Ee.y, s, Ze, Ue.x, Ae.y, Ve, Be), mc(B, _.x, _.y, De.x, At + De.y, Ee.x, Ee.y + Ee.h, s, Ze, Ae.x, Ue.y, Ve, Be), mc(B, _.x, _.y,
|
6651
|
+
const { tl: ue, tr: ve, bl: De, br: Xe, tex: Ee, pixelOffsetTL: Ae, pixelOffsetBR: Ue, minFontScaleX: Ve, minFontScaleY: Be, glyphOffset: ge, isSDF: Ze, sectionIndex: $e } = r[ie], et = O.vertexLength, At = ge[1];
|
6652
|
+
mc(B, _.x, _.y, ue.x, At + ue.y, Ee.x, Ee.y, s, Ze, Ae.x, Ae.y, Ve, Be), mc(B, _.x, _.y, ve.x, At + ve.y, Ee.x + Ee.w, Ee.y, s, Ze, Ue.x, Ae.y, Ve, Be), mc(B, _.x, _.y, De.x, At + De.y, Ee.x, Ee.y + Ee.h, s, Ze, Ae.x, Ue.y, Ve, Be), mc(B, _.x, _.y, Xe.x, At + Xe.y, Ee.x + Ee.w, Ee.y + Ee.h, s, Ze, Ue.x, Ue.y, Ve, Be), Ph(e.dynamicLayoutVertexArray, _, oe), D.emplaceBack(et, et + 1, et + 2), D.emplaceBack(et + 1, et + 2, et + 3), O.vertexLength += 4, O.primitiveLength += 2, this.glyphOffsetArray.emplaceBack(ge[0]), ie !== r.length - 1 && $e === r[ie + 1].sectionIndex || e.programConfigurations.populatePaintArrays(B.length, p, p.index, {}, E, Y && Y[$e]);
|
6653
6653
|
}
|
6654
|
-
e.placedSymbolArray.emplaceBack(_.x, _.y, U, this.glyphOffsetArray.length - U,
|
6654
|
+
e.placedSymbolArray.emplaceBack(_.x, _.y, U, this.glyphOffsetArray.length - U, X, x, S, _.segment, s ? s[0] : 0, s ? s[1] : 0, l[0], l[1], m, 0, !1, 0, P);
|
6655
6655
|
}
|
6656
6656
|
_addCollisionDebugVertex(e, r, s, l, d, p) {
|
6657
6657
|
return r.emplaceBack(0, 0), e.emplaceBack(s.x, s.y, l, d, Math.round(p.x), Math.round(p.y));
|
@@ -7173,24 +7173,24 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7173
7173
|
}
|
7174
7174
|
query(e, r, s, l) {
|
7175
7175
|
this.loadVTLayers();
|
7176
|
-
const d = e.params || {}, p = ti / e.tileSize / e.scale, m = Ai(d.filter), _ = e.queryGeometry, x = e.queryPadding * p, S = Pd(_), P = this.grid.query(S.minX - x, S.minY - x, S.maxX + x, S.maxY + x), E = Pd(e.cameraQueryGeometry), D = this.grid3D.query(E.minX - x, E.minY - x, E.maxX + x, E.maxY + x, (U,
|
7177
|
-
for (const Ae of ie) if (ue <= Ae.x && ve <= Ae.y && De >= Ae.x &&
|
7178
|
-
const Ee = [new ae(ue, ve), new ae(ue,
|
7176
|
+
const d = e.params || {}, p = ti / e.tileSize / e.scale, m = Ai(d.filter), _ = e.queryGeometry, x = e.queryPadding * p, S = Pd(_), P = this.grid.query(S.minX - x, S.minY - x, S.maxX + x, S.maxY + x), E = Pd(e.cameraQueryGeometry), D = this.grid3D.query(E.minX - x, E.minY - x, E.maxX + x, E.maxY + x, (U, X, oe, Y) => function(ie, ue, ve, De, Xe) {
|
7177
|
+
for (const Ae of ie) if (ue <= Ae.x && ve <= Ae.y && De >= Ae.x && Xe >= Ae.y) return !0;
|
7178
|
+
const Ee = [new ae(ue, ve), new ae(ue, Xe), new ae(De, Xe), new ae(De, ve)];
|
7179
7179
|
if (ie.length > 2) {
|
7180
7180
|
for (const Ae of Ee) if (Ro(ie, Ae)) return !0;
|
7181
7181
|
}
|
7182
7182
|
for (let Ae = 0; Ae < ie.length - 1; Ae++) if (rf(ie[Ae], ie[Ae + 1], Ee)) return !0;
|
7183
7183
|
return !1;
|
7184
|
-
}(e.cameraQueryGeometry, U - x,
|
7184
|
+
}(e.cameraQueryGeometry, U - x, X - x, oe + x, Y + x));
|
7185
7185
|
for (const U of D) P.push(U);
|
7186
7186
|
P.sort(Tm);
|
7187
7187
|
const B = {};
|
7188
7188
|
let O;
|
7189
7189
|
for (let U = 0; U < P.length; U++) {
|
7190
|
-
const
|
7191
|
-
if (
|
7192
|
-
O =
|
7193
|
-
const oe = this.featureIndexArray.get(
|
7190
|
+
const X = P[U];
|
7191
|
+
if (X === O) continue;
|
7192
|
+
O = X;
|
7193
|
+
const oe = this.featureIndexArray.get(X);
|
7194
7194
|
let Y = null;
|
7195
7195
|
this.loadMatchingFeature(B, oe.bucketIndex, oe.sourceLayerIndex, oe.featureIndex, m, d.layers, d.availableImages, r, s, l, (ie, ue, ve) => (Y || (Y = Vs(ie)), ue.queryIntersectsFeature(_, ie, ve, Y, this.z, e.transform, p, e.pixelPosMatrix)));
|
7196
7196
|
}
|
@@ -7198,8 +7198,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7198
7198
|
}
|
7199
7199
|
loadMatchingFeature(e, r, s, l, d, p, m, _, x, S, P) {
|
7200
7200
|
const E = this.bucketLayerIDs[r];
|
7201
|
-
if (p && !function(U,
|
7202
|
-
for (let oe = 0; oe < U.length; oe++) if (
|
7201
|
+
if (p && !function(U, X) {
|
7202
|
+
for (let oe = 0; oe < U.length; oe++) if (X.indexOf(U[oe]) >= 0) return !0;
|
7203
7203
|
return !1;
|
7204
7204
|
}(p, E)) return;
|
7205
7205
|
const D = this.sourceLayerCoder.decode(s), B = this.vtLayers[D].feature(l);
|
@@ -7209,20 +7209,20 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7209
7209
|
} else if (!d.filter(new Mt(this.tileID.overscaledZ), B)) return;
|
7210
7210
|
const O = this.getId(B, D);
|
7211
7211
|
for (let U = 0; U < E.length; U++) {
|
7212
|
-
const
|
7213
|
-
if (p && p.indexOf(
|
7214
|
-
const oe = _[
|
7212
|
+
const X = E[U];
|
7213
|
+
if (p && p.indexOf(X) < 0) continue;
|
7214
|
+
const oe = _[X];
|
7215
7215
|
if (!oe) continue;
|
7216
7216
|
let Y = {};
|
7217
7217
|
O && S && (Y = S.getState(oe.sourceLayer || "_geojsonTileLayer", O));
|
7218
|
-
const ie = Ut({}, x[
|
7218
|
+
const ie = Ut({}, x[X]);
|
7219
7219
|
ie.paint = Id(ie.paint, oe.paint, B, Y, m), ie.layout = Id(ie.layout, oe.layout, B, Y, m);
|
7220
7220
|
const ue = !P || P(B, oe, Y);
|
7221
7221
|
if (!ue) continue;
|
7222
7222
|
const ve = new Sd(B, this.z, this.x, this.y, O);
|
7223
7223
|
ve.layer = ie;
|
7224
|
-
let De = e[
|
7225
|
-
De === void 0 && (De = e[
|
7224
|
+
let De = e[X];
|
7225
|
+
De === void 0 && (De = e[X] = []), De.push({ featureIndex: l, feature: ve, intersectionZ: ue });
|
7226
7226
|
}
|
7227
7227
|
}
|
7228
7228
|
lookupSymbolFeatures(e, r, s, l, d, p, m, _) {
|
@@ -7314,8 +7314,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7314
7314
|
for (let S = 0; S < i.length - 1; S++) {
|
7315
7315
|
const P = i[S], E = i[S + 1], D = P.dist(E);
|
7316
7316
|
if (_ + D > x) {
|
7317
|
-
const B = (x - _) / D, O = Zi.number(P.x, E.x, B), U = Zi.number(P.y, E.y, B),
|
7318
|
-
return
|
7317
|
+
const B = (x - _) / D, O = Zi.number(P.x, E.x, B), U = Zi.number(P.y, E.y, B), X = new ns(O, U, E.angleTo(P), S);
|
7318
|
+
return X._round(), !p || Ad(i, X, m, p, e) ? X : void 0;
|
7319
7319
|
}
|
7320
7320
|
_ += D;
|
7321
7321
|
}
|
@@ -7328,38 +7328,38 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7328
7328
|
const x = d / 2, S = Cd(i);
|
7329
7329
|
let P = 0, E = e - r, D = [];
|
7330
7330
|
for (let B = 0; B < i.length - 1; B++) {
|
7331
|
-
const O = i[B], U = i[B + 1],
|
7332
|
-
for (; E + r < P +
|
7331
|
+
const O = i[B], U = i[B + 1], X = O.dist(U), oe = U.angleTo(O);
|
7332
|
+
for (; E + r < P + X; ) {
|
7333
7333
|
E += r;
|
7334
|
-
const Y = (E - P) /
|
7334
|
+
const Y = (E - P) / X, ie = Zi.number(O.x, U.x, Y), ue = Zi.number(O.y, U.y, Y);
|
7335
7335
|
if (ie >= 0 && ie < _ && ue >= 0 && ue < _ && E - x >= 0 && E + x <= S) {
|
7336
7336
|
const ve = new ns(ie, ue, oe, B);
|
7337
7337
|
ve._round(), s && !Ad(i, ve, d, s, l) || D.push(ve);
|
7338
7338
|
}
|
7339
7339
|
}
|
7340
|
-
P +=
|
7340
|
+
P += X;
|
7341
7341
|
}
|
7342
7342
|
return m || D.length || p || (D = zd(i, P / 2, r, s, l, d, p, !0, _)), D;
|
7343
7343
|
}
|
7344
7344
|
Fe("Anchor", ns);
|
7345
|
-
const Uo =
|
7345
|
+
const Uo = Wi;
|
7346
7346
|
function Dd(i, e, r, s) {
|
7347
7347
|
const l = [], d = i.image, p = d.pixelRatio, m = d.paddedRect.w - 2 * Uo, _ = d.paddedRect.h - 2 * Uo;
|
7348
7348
|
let x = { x1: i.left, y1: i.top, x2: i.right, y2: i.bottom };
|
7349
7349
|
const S = d.stretchX || [[0, m]], P = d.stretchY || [[0, _]], E = (ge, Ze) => ge + Ze[1] - Ze[0], D = S.reduce(E, 0), B = P.reduce(E, 0), O = m - D, U = _ - B;
|
7350
|
-
let
|
7350
|
+
let X = 0, oe = D, Y = 0, ie = B, ue = 0, ve = O, De = 0, Xe = U;
|
7351
7351
|
if (d.content && s) {
|
7352
7352
|
const ge = d.content, Ze = ge[2] - ge[0], $e = ge[3] - ge[1];
|
7353
|
-
(d.textFitWidth || d.textFitHeight) && (x = od(i)),
|
7353
|
+
(d.textFitWidth || d.textFitHeight) && (x = od(i)), X = yc(S, 0, ge[0]), Y = yc(P, 0, ge[1]), oe = yc(S, ge[0], ge[2]), ie = yc(P, ge[1], ge[3]), ue = ge[0] - X, De = ge[1] - Y, ve = Ze - oe, Xe = $e - ie;
|
7354
7354
|
}
|
7355
7355
|
const Ee = x.x1, Ae = x.y1, Ue = x.x2 - Ee, Ve = x.y2 - Ae, Be = (ge, Ze, $e, et) => {
|
7356
|
-
const At = xc(ge.stretch -
|
7356
|
+
const At = xc(ge.stretch - X, oe, Ue, Ee), kt = vc(ge.fixed - ue, ve, ge.stretch, D), ai = xc(Ze.stretch - Y, ie, Ve, Ae), Cr = vc(Ze.fixed - De, Xe, Ze.stretch, B), wi = xc($e.stretch - X, oe, Ue, Ee), Ht = vc($e.fixed - ue, ve, $e.stretch, D), Fi = xc(et.stretch - Y, ie, Ve, Ae), Oi = vc(et.fixed - De, Xe, et.stretch, B), Vi = new ae(At, ai), Wt = new ae(wi, ai), li = new ae(wi, Fi), Ei = new ae(At, Fi), Si = new ae(kt / p, Cr / p), Ni = new ae(Ht / p, Oi / p), Ti = e * Math.PI / 180;
|
7357
7357
|
if (Ti) {
|
7358
7358
|
const xt = Math.sin(Ti), zt = Math.cos(Ti), Ot = [zt, -xt, xt, zt];
|
7359
|
-
Vi._matMult(Ot),
|
7359
|
+
Vi._matMult(Ot), Wt._matMult(Ot), Ei._matMult(Ot), li._matMult(Ot);
|
7360
7360
|
}
|
7361
|
-
const pr = ge.stretch + ge.fixed,
|
7362
|
-
return { tl: Vi, tr:
|
7361
|
+
const pr = ge.stretch + ge.fixed, Xi = Ze.stretch + Ze.fixed;
|
7362
|
+
return { tl: Vi, tr: Wt, bl: Ei, br: li, tex: { x: d.paddedRect.x + Uo + pr, y: d.paddedRect.y + Uo + Xi, w: $e.stretch + $e.fixed - pr, h: et.stretch + et.fixed - Xi }, writingMode: void 0, glyphOffset: [0, 0], sectionIndex: 0, pixelOffsetTL: Si, pixelOffsetBR: Ni, minFontScaleX: ve / p / Ue, minFontScaleY: Xe / p / Ve, isSDF: r };
|
7363
7363
|
};
|
7364
7364
|
if (s && (d.stretchX || d.stretchY)) {
|
7365
7365
|
const ge = Ld(S, O, D), Ze = Ld(P, U, B);
|
@@ -7403,8 +7403,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7403
7403
|
E.y1 = E.y1 * m - _[0], E.y2 = E.y2 * m + _[2], E.x1 = E.x1 * m - _[3], E.x2 = E.x2 * m + _[1];
|
7404
7404
|
const D = p.collisionPadding;
|
7405
7405
|
if (D && (E.x1 -= D[0] * m, E.y1 -= D[1] * m, E.x2 += D[2] * m, E.y2 += D[3] * m), S) {
|
7406
|
-
const B = new ae(E.x1, E.y1), O = new ae(E.x2, E.y1), U = new ae(E.x1, E.y2),
|
7407
|
-
B._rotate(oe), O._rotate(oe), U._rotate(oe),
|
7406
|
+
const B = new ae(E.x1, E.y1), O = new ae(E.x2, E.y1), U = new ae(E.x1, E.y2), X = new ae(E.x2, E.y2), oe = S * Math.PI / 180;
|
7407
|
+
B._rotate(oe), O._rotate(oe), U._rotate(oe), X._rotate(oe), E.x1 = Math.min(B.x, O.x, U.x, X.x), E.x2 = Math.max(B.x, O.x, U.x, X.x), E.y1 = Math.min(B.y, O.y, U.y, X.y), E.y2 = Math.max(B.y, O.y, U.y, X.y);
|
7408
7408
|
}
|
7409
7409
|
e.emplaceBack(r.x, r.y, E.x1, E.y1, E.x2, E.y2, s, l, d);
|
7410
7410
|
}
|
@@ -7460,9 +7460,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7460
7460
|
for (let D = s; D < d; D += _) for (let B = l; B < p; B += _) S.push(new qo(D + x, B + x, x, i));
|
7461
7461
|
let P = function(D) {
|
7462
7462
|
let B = 0, O = 0, U = 0;
|
7463
|
-
const
|
7464
|
-
for (let oe = 0, Y =
|
7465
|
-
const ue =
|
7463
|
+
const X = D[0];
|
7464
|
+
for (let oe = 0, Y = X.length, ie = Y - 1; oe < Y; ie = oe++) {
|
7465
|
+
const ue = X[oe], ve = X[ie], De = ue.x * ve.y - ve.x * ue.y;
|
7466
7466
|
O += (ue.x + ve.x) * De, U += (ue.y + ve.y) * De, B += 3 * De;
|
7467
7467
|
}
|
7468
7468
|
return new qo(O / B, U / B, 0, D);
|
@@ -7592,28 +7592,28 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7592
7592
|
function Em(i, e, r, s, l, d, p, m, _, x, S) {
|
7593
7593
|
let P = d.textMaxSize.evaluate(e, {});
|
7594
7594
|
P === void 0 && (P = p);
|
7595
|
-
const E = i.layers[0].layout, D = E.get("icon-offset").evaluate(e, {}, S), B = Od(r.horizontal), O = p / 24, U = i.tilePixelRatio * O,
|
7595
|
+
const E = i.layers[0].layout, D = E.get("icon-offset").evaluate(e, {}, S), B = Od(r.horizontal), O = p / 24, U = i.tilePixelRatio * O, X = i.tilePixelRatio * P / 24, oe = i.tilePixelRatio * m, Y = i.tilePixelRatio * E.get("symbol-spacing"), ie = E.get("text-padding") * i.tilePixelRatio, ue = function(ge, Ze, $e, et = 1) {
|
7596
7596
|
const At = ge.get("icon-padding").evaluate(Ze, {}, $e), kt = At && At.values;
|
7597
7597
|
return [kt[0] * et, kt[1] * et, kt[2] * et, kt[3] * et];
|
7598
|
-
}(E, e, S, i.tilePixelRatio), ve = E.get("text-max-angle") / 180 * Math.PI, De = E.get("text-rotation-alignment") !== "viewport" && E.get("symbol-placement") !== "point",
|
7598
|
+
}(E, e, S, i.tilePixelRatio), ve = E.get("text-max-angle") / 180 * Math.PI, De = E.get("text-rotation-alignment") !== "viewport" && E.get("symbol-placement") !== "point", Xe = E.get("icon-rotation-alignment") === "map" && E.get("symbol-placement") !== "point", Ee = E.get("symbol-placement"), Ae = Y / 2, Ue = E.get("icon-text-fit");
|
7599
7599
|
let Ve;
|
7600
7600
|
s && Ue !== "none" && (i.allowVerticalPlacement && r.vertical && (Ve = ad(s, r.vertical, Ue, E.get("icon-text-fit-padding"), D, O)), B && (s = ad(s, B, Ue, E.get("icon-text-fit-padding"), D, O)));
|
7601
7601
|
const Be = (ge, Ze) => {
|
7602
|
-
Ze.x < 0 || Ze.x >= ti || Ze.y < 0 || Ze.y >= ti || function($e, et, At, kt, ai, Cr, wi, Ht, Fi, Oi, Vi,
|
7602
|
+
Ze.x < 0 || Ze.x >= ti || Ze.y < 0 || Ze.y >= ti || function($e, et, At, kt, ai, Cr, wi, Ht, Fi, Oi, Vi, Wt, li, Ei, Si, Ni, Ti, pr, Xi, xt, zt, Ot, tr, Gt, Zo) {
|
7603
7603
|
const hn = $e.addToLineVertexArray(et, At);
|
7604
7604
|
let un, Er, fr, ui, Mn = 0, pl = 0, jd = 0, Ud = 0, jh = -1, Uh = -1;
|
7605
7605
|
const zn = {};
|
7606
7606
|
let qd = Do("");
|
7607
7607
|
if ($e.allowVerticalPlacement && kt.vertical) {
|
7608
7608
|
const Mi = Ht.layout.get("text-rotate").evaluate(zt, {}, Gt) + 90;
|
7609
|
-
fr = new bc(Fi, et, Oi, Vi,
|
7609
|
+
fr = new bc(Fi, et, Oi, Vi, Wt, kt.vertical, li, Ei, Si, Mi), wi && (ui = new bc(Fi, et, Oi, Vi, Wt, wi, Ti, pr, Si, Mi));
|
7610
7610
|
}
|
7611
7611
|
if (ai) {
|
7612
7612
|
const Mi = Ht.layout.get("icon-rotate").evaluate(zt, {}), mr = Ht.layout.get("icon-text-fit") !== "none", js = Dd(ai, Mi, tr, mr), Ur = wi ? Dd(wi, Mi, tr, mr) : void 0;
|
7613
|
-
Er = new bc(Fi, et, Oi, Vi,
|
7613
|
+
Er = new bc(Fi, et, Oi, Vi, Wt, ai, Ti, pr, !1, Mi), Mn = 4 * js.length;
|
7614
7614
|
const Us = $e.iconSizeData;
|
7615
7615
|
let dn = null;
|
7616
|
-
Us.kind === "source" ? (dn = [cn * Ht.layout.get("icon-size").evaluate(zt, {})], dn[0] > is && di(`${$e.layerIds[0]}: Value for "icon-size" is >= ${cl}. Reduce your "icon-size".`)) : Us.kind === "composite" && (dn = [cn * Ot.compositeIconSizes[0].evaluate(zt, {}, Gt), cn * Ot.compositeIconSizes[1].evaluate(zt, {}, Gt)], (dn[0] > is || dn[1] > is) && di(`${$e.layerIds[0]}: Value for "icon-size" is >= ${cl}. Reduce your "icon-size".`)), $e.addSymbols($e.icon, js, dn, xt,
|
7616
|
+
Us.kind === "source" ? (dn = [cn * Ht.layout.get("icon-size").evaluate(zt, {})], dn[0] > is && di(`${$e.layerIds[0]}: Value for "icon-size" is >= ${cl}. Reduce your "icon-size".`)) : Us.kind === "composite" && (dn = [cn * Ot.compositeIconSizes[0].evaluate(zt, {}, Gt), cn * Ot.compositeIconSizes[1].evaluate(zt, {}, Gt)], (dn[0] > is || dn[1] > is) && di(`${$e.layerIds[0]}: Value for "icon-size" is >= ${cl}. Reduce your "icon-size".`)), $e.addSymbols($e.icon, js, dn, xt, Xi, zt, T.ai.none, et, hn.lineStartIndex, hn.lineLength, -1, Gt), jh = $e.icon.placedSymbolArray.length - 1, Ur && (pl = 4 * Ur.length, $e.addSymbols($e.icon, Ur, dn, xt, Xi, zt, T.ai.vertical, et, hn.lineStartIndex, hn.lineLength, -1, Gt), Uh = $e.icon.placedSymbolArray.length - 1);
|
7617
7617
|
}
|
7618
7618
|
const Zd = Object.keys(kt.horizontal);
|
7619
7619
|
for (const Mi of Zd) {
|
@@ -7621,7 +7621,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7621
7621
|
if (!un) {
|
7622
7622
|
qd = Do(mr.text);
|
7623
7623
|
const Ur = Ht.layout.get("text-rotate").evaluate(zt, {}, Gt);
|
7624
|
-
un = new bc(Fi, et, Oi, Vi,
|
7624
|
+
un = new bc(Fi, et, Oi, Vi, Wt, mr, li, Ei, Si, Ur);
|
7625
7625
|
}
|
7626
7626
|
const js = mr.positionedLines.length === 1;
|
7627
7627
|
if (jd += Fd($e, et, mr, Cr, Ht, Si, zt, Ni, hn, kt.vertical ? T.ai.horizontal : T.ai.horizontalOnly, js ? Zd : [Mi], zn, jh, Ot, Gt), js) break;
|
@@ -7642,15 +7642,15 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7642
7642
|
return [js, Mi.length];
|
7643
7643
|
}($e.textAnchorOffsets, $m);
|
7644
7644
|
$e.symbolInstances.emplaceBack(et.x, et.y, zn.right >= 0 ? zn.right : -1, zn.center >= 0 ? zn.center : -1, zn.left >= 0 ? zn.left : -1, zn.vertical || -1, jh, Uh, qd, Dm, Lm, Rm, Bm, Fm, Om, Vm, Nm, Oi, jd, Ud, Mn, pl, Gd, 0, li, jr, jm, Um);
|
7645
|
-
}(i, Ze, ge, r, s, l, Ve, i.layers[0], i.collisionBoxArray, e.index, e.sourceLayerIndex, i.index, U, [ie, ie, ie, ie], De, _, oe, ue,
|
7645
|
+
}(i, Ze, ge, r, s, l, Ve, i.layers[0], i.collisionBoxArray, e.index, e.sourceLayerIndex, i.index, U, [ie, ie, ie, ie], De, _, oe, ue, Xe, D, e, d, x, S, p);
|
7646
7646
|
};
|
7647
7647
|
if (Ee === "line") for (const ge of kd(e.geometry, 0, 0, ti, ti)) {
|
7648
|
-
const Ze = Pm(ge, Y, ve, r.vertical || B, s, 24,
|
7648
|
+
const Ze = Pm(ge, Y, ve, r.vertical || B, s, 24, X, i.overscaling, ti);
|
7649
7649
|
for (const $e of Ze) B && Mm(i, B.text, Ae, $e) || Be(ge, $e);
|
7650
7650
|
}
|
7651
7651
|
else if (Ee === "line-center") {
|
7652
7652
|
for (const ge of e.geometry) if (ge.length > 1) {
|
7653
|
-
const Ze = Im(ge, ve, r.vertical || B, s, 24,
|
7653
|
+
const Ze = Im(ge, ve, r.vertical || B, s, 24, X);
|
7654
7654
|
Ze && Be(ge, Ze);
|
7655
7655
|
}
|
7656
7656
|
} else if (e.type === "Polygon") for (const ge of co(e.geometry, 0)) {
|
@@ -7661,7 +7661,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7661
7661
|
else if (e.type === "Point") for (const ge of e.geometry) for (const Ze of ge) Be([Ze], new ns(Ze.x, Ze.y, 0));
|
7662
7662
|
}
|
7663
7663
|
function Fd(i, e, r, s, l, d, p, m, _, x, S, P, E, D, B) {
|
7664
|
-
const O = function(oe, Y, ie, ue, ve, De,
|
7664
|
+
const O = function(oe, Y, ie, ue, ve, De, Xe, Ee) {
|
7665
7665
|
const Ae = ue.layout.get("text-rotate").evaluate(De, {}) * Math.PI / 180, Ue = [];
|
7666
7666
|
for (const Ve of Y.positionedLines) for (const Be of Ve.positionedGlyphs) {
|
7667
7667
|
if (!Be.rect) continue;
|
@@ -7669,13 +7669,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7669
7669
|
let Ze = Qu + 1, $e = !0, et = 1, At = 0;
|
7670
7670
|
const kt = (ve || Ee) && Be.vertical, ai = Be.metrics.advance * Be.scale / 2;
|
7671
7671
|
if (Ee && Y.verticalizable && (At = Ve.lineOffset / 2 - (Be.imageName ? -(si - Be.metrics.width * Be.scale) / 2 : (Be.scale - 1) * si)), Be.imageName) {
|
7672
|
-
const xt =
|
7673
|
-
$e = xt.sdf, et = xt.pixelRatio, Ze =
|
7672
|
+
const xt = Xe[Be.imageName];
|
7673
|
+
$e = xt.sdf, et = xt.pixelRatio, Ze = Wi / et;
|
7674
7674
|
}
|
7675
7675
|
const Cr = ve ? [Be.x + ai, Be.y] : [0, 0];
|
7676
7676
|
let wi = ve ? [0, 0] : [Be.x + ai + ie[0], Be.y + ie[1] - At], Ht = [0, 0];
|
7677
7677
|
kt && (Ht = wi, wi = [0, 0]);
|
7678
|
-
const Fi = Be.metrics.isDoubleResolution ? 2 : 1, Oi = (Be.metrics.left - Ze) * Be.scale - ai + wi[0], Vi = (-Be.metrics.top - Ze) * Be.scale + wi[1],
|
7678
|
+
const Fi = Be.metrics.isDoubleResolution ? 2 : 1, Oi = (Be.metrics.left - Ze) * Be.scale - ai + wi[0], Vi = (-Be.metrics.top - Ze) * Be.scale + wi[1], Wt = Oi + ge.w / Fi * Be.scale / et, li = Vi + ge.h / Fi * Be.scale / et, Ei = new ae(Oi, Vi), Si = new ae(Wt, Vi), Ni = new ae(Oi, li), Ti = new ae(Wt, li);
|
7679
7679
|
if (kt) {
|
7680
7680
|
const xt = new ae(-ai, ai - al), zt = -Math.PI / 2, Ot = si / 2 - ai, tr = new ae(5 - al - Ot, -(Be.imageName ? Ot : 0)), Gt = new ae(...Ht);
|
7681
7681
|
Ei._rotateAround(zt, xt)._add(tr)._add(Gt), Si._rotateAround(zt, xt)._add(tr)._add(Gt), Ni._rotateAround(zt, xt)._add(tr)._add(Gt), Ti._rotateAround(zt, xt)._add(tr)._add(Gt);
|
@@ -7684,13 +7684,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7684
7684
|
const xt = Math.sin(Ae), zt = Math.cos(Ae), Ot = [zt, -xt, xt, zt];
|
7685
7685
|
Ei._matMult(Ot), Si._matMult(Ot), Ni._matMult(Ot), Ti._matMult(Ot);
|
7686
7686
|
}
|
7687
|
-
const pr = new ae(0, 0),
|
7688
|
-
Ue.push({ tl: Ei, tr: Si, bl: Ni, br: Ti, tex: ge, writingMode: Y.writingMode, glyphOffset: Cr, sectionIndex: Be.sectionIndex, isSDF: $e, pixelOffsetTL: pr, pixelOffsetBR:
|
7687
|
+
const pr = new ae(0, 0), Xi = new ae(0, 0);
|
7688
|
+
Ue.push({ tl: Ei, tr: Si, bl: Ni, br: Ti, tex: ge, writingMode: Y.writingMode, glyphOffset: Cr, sectionIndex: Be.sectionIndex, isSDF: $e, pixelOffsetTL: pr, pixelOffsetBR: Xi, minFontScaleX: 0, minFontScaleY: 0 });
|
7689
7689
|
}
|
7690
7690
|
return Ue;
|
7691
7691
|
}(0, r, m, l, d, p, s, i.allowVerticalPlacement), U = i.textSizeData;
|
7692
|
-
let
|
7693
|
-
U.kind === "source" ? (
|
7692
|
+
let X = null;
|
7693
|
+
U.kind === "source" ? (X = [cn * l.layout.get("text-size").evaluate(p, {})], X[0] > is && di(`${i.layerIds[0]}: Value for "text-size" is >= ${cl}. Reduce your "text-size".`)) : U.kind === "composite" && (X = [cn * D.compositeTextSizes[0].evaluate(p, {}, B), cn * D.compositeTextSizes[1].evaluate(p, {}, B)], (X[0] > is || X[1] > is) && di(`${i.layerIds[0]}: Value for "text-size" is >= ${cl}. Reduce your "text-size".`)), i.addSymbols(i.text, O, X, m, d, p, x, e, _.lineStartIndex, _.lineLength, E, B);
|
7694
7694
|
for (const oe of S) P[oe] = i.text.placedSymbolArray.length - 1;
|
7695
7695
|
return 4 * O.length;
|
7696
7696
|
}
|
@@ -7742,8 +7742,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7742
7742
|
const S = _.pop() || 0, P = _.pop() || 0, E = _.pop() || 0;
|
7743
7743
|
if (P - E <= m) {
|
7744
7744
|
for (let U = E; U <= P; U++) {
|
7745
|
-
const
|
7746
|
-
|
7745
|
+
const X = p[2 * U], oe = p[2 * U + 1];
|
7746
|
+
X >= e && X <= s && oe >= r && oe <= l && x.push(d[U]);
|
7747
7747
|
}
|
7748
7748
|
continue;
|
7749
7749
|
}
|
@@ -7891,8 +7891,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7891
7891
|
var i = new Bo(16);
|
7892
7892
|
return Bo != Float32Array && (i[1] = 0, i[2] = 0, i[3] = 0, i[4] = 0, i[6] = 0, i[7] = 0, i[8] = 0, i[9] = 0, i[11] = 0, i[12] = 0, i[13] = 0, i[14] = 0), i[0] = 1, i[5] = 1, i[10] = 1, i[15] = 1, i;
|
7893
7893
|
}, T.I = wh, T.J = function(i, e, r) {
|
7894
|
-
var s, l, d, p, m, _, x, S, P, E, D, B, O = r[0], U = r[1],
|
7895
|
-
return e === i ? (i[12] = e[0] * O + e[4] * U + e[8] *
|
7894
|
+
var s, l, d, p, m, _, x, S, P, E, D, B, O = r[0], U = r[1], X = r[2];
|
7895
|
+
return e === i ? (i[12] = e[0] * O + e[4] * U + e[8] * X + e[12], i[13] = e[1] * O + e[5] * U + e[9] * X + e[13], i[14] = e[2] * O + e[6] * U + e[10] * X + e[14], i[15] = e[3] * O + e[7] * U + e[11] * X + e[15]) : (l = e[1], d = e[2], p = e[3], m = e[4], _ = e[5], x = e[6], S = e[7], P = e[8], E = e[9], D = e[10], B = e[11], i[0] = s = e[0], i[1] = l, i[2] = d, i[3] = p, i[4] = m, i[5] = _, i[6] = x, i[7] = S, i[8] = P, i[9] = E, i[10] = D, i[11] = B, i[12] = s * O + m * U + P * X + e[12], i[13] = l * O + _ * U + E * X + e[13], i[14] = d * O + x * U + D * X + e[14], i[15] = p * O + S * U + B * X + e[15]), i;
|
7896
7896
|
}, T.K = function(i, e, r) {
|
7897
7897
|
var s = r[0], l = r[1], d = r[2];
|
7898
7898
|
return i[0] = e[0] * s, i[1] = e[1] * s, i[2] = e[2] * s, i[3] = e[3] * s, i[4] = e[4] * l, i[5] = e[5] * l, i[6] = e[6] * l, i[7] = e[7] * l, i[8] = e[8] * d, i[9] = e[9] * d, i[10] = e[10] * d, i[11] = e[11] * d, i[12] = e[12], i[13] = e[13], i[14] = e[14], i[15] = e[15], i;
|
@@ -7903,9 +7903,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7903
7903
|
l in i && (r[l] = i[l]);
|
7904
7904
|
}
|
7905
7905
|
return r;
|
7906
|
-
}, T.N = rs, T.O = gd, T.P = ae, T.Q = _d, T.R = ur, T.S = dr, T.T =
|
7907
|
-
var r = i[0], s = i[1], l = i[2], d = i[3], p = i[4], m = i[5], _ = i[6], x = i[7], S = i[8], P = i[9], E = i[10], D = i[11], B = i[12], O = i[13], U = i[14],
|
7908
|
-
return Math.abs(r - oe) <= Bi * Math.max(1, Math.abs(r), Math.abs(oe)) && Math.abs(s - Y) <= Bi * Math.max(1, Math.abs(s), Math.abs(Y)) && Math.abs(l - ie) <= Bi * Math.max(1, Math.abs(l), Math.abs(ie)) && Math.abs(d - ue) <= Bi * Math.max(1, Math.abs(d), Math.abs(ue)) && Math.abs(p - ve) <= Bi * Math.max(1, Math.abs(p), Math.abs(ve)) && Math.abs(m - De) <= Bi * Math.max(1, Math.abs(m), Math.abs(De)) && Math.abs(_ -
|
7906
|
+
}, T.N = rs, T.O = gd, T.P = ae, T.Q = _d, T.R = ur, T.S = dr, T.T = Wn, T.U = gt, T.V = ot, T.W = pn, T.X = ti, T.Y = w, T.Z = _c, T._ = c, T.a = Wr, T.a$ = function(i, e) {
|
7907
|
+
var r = i[0], s = i[1], l = i[2], d = i[3], p = i[4], m = i[5], _ = i[6], x = i[7], S = i[8], P = i[9], E = i[10], D = i[11], B = i[12], O = i[13], U = i[14], X = i[15], oe = e[0], Y = e[1], ie = e[2], ue = e[3], ve = e[4], De = e[5], Xe = e[6], Ee = e[7], Ae = e[8], Ue = e[9], Ve = e[10], Be = e[11], ge = e[12], Ze = e[13], $e = e[14], et = e[15];
|
7908
|
+
return Math.abs(r - oe) <= Bi * Math.max(1, Math.abs(r), Math.abs(oe)) && Math.abs(s - Y) <= Bi * Math.max(1, Math.abs(s), Math.abs(Y)) && Math.abs(l - ie) <= Bi * Math.max(1, Math.abs(l), Math.abs(ie)) && Math.abs(d - ue) <= Bi * Math.max(1, Math.abs(d), Math.abs(ue)) && Math.abs(p - ve) <= Bi * Math.max(1, Math.abs(p), Math.abs(ve)) && Math.abs(m - De) <= Bi * Math.max(1, Math.abs(m), Math.abs(De)) && Math.abs(_ - Xe) <= Bi * Math.max(1, Math.abs(_), Math.abs(Xe)) && Math.abs(x - Ee) <= Bi * Math.max(1, Math.abs(x), Math.abs(Ee)) && Math.abs(S - Ae) <= Bi * Math.max(1, Math.abs(S), Math.abs(Ae)) && Math.abs(P - Ue) <= Bi * Math.max(1, Math.abs(P), Math.abs(Ue)) && Math.abs(E - Ve) <= Bi * Math.max(1, Math.abs(E), Math.abs(Ve)) && Math.abs(D - Be) <= Bi * Math.max(1, Math.abs(D), Math.abs(Be)) && Math.abs(B - ge) <= Bi * Math.max(1, Math.abs(B), Math.abs(ge)) && Math.abs(O - Ze) <= Bi * Math.max(1, Math.abs(O), Math.abs(Ze)) && Math.abs(U - $e) <= Bi * Math.max(1, Math.abs(U), Math.abs($e)) && Math.abs(X - et) <= Bi * Math.max(1, Math.abs(X), Math.abs(et));
|
7909
7909
|
}, T.a0 = ni, T.a1 = zh, T.a2 = Te, T.a3 = (i) => {
|
7910
7910
|
const e = window.document.createElement("video");
|
7911
7911
|
return e.muted = !0, new Promise((r) => {
|
@@ -7965,13 +7965,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
7965
7965
|
}), r = r.concat(l), function(p, m, _) {
|
7966
7966
|
m = m || [];
|
7967
7967
|
const x = (p = p || []).map(ds), S = m.map(ds), P = p.reduce(ps, {}), E = m.reduce(ps, {}), D = x.slice(), B = /* @__PURE__ */ Object.create(null);
|
7968
|
-
let O, U,
|
7968
|
+
let O, U, X, oe, Y;
|
7969
7969
|
for (let ie = 0, ue = 0; ie < x.length; ie++) O = x[ie], Object.prototype.hasOwnProperty.call(E, O) ? ue++ : (qt(_, { command: "removeLayer", args: [O] }), D.splice(D.indexOf(O, ue), 1));
|
7970
7970
|
for (let ie = 0, ue = 0; ie < S.length; ie++) O = S[S.length - 1 - ie], D[D.length - 1 - ie] !== O && (Object.prototype.hasOwnProperty.call(P, O) ? (qt(_, { command: "removeLayer", args: [O] }), D.splice(D.lastIndexOf(O, D.length - ue), 1)) : ue++, oe = D[D.length - ie], qt(_, { command: "addLayer", args: [E[O], oe] }), D.splice(D.length - ie, 0, O), B[O] = !0);
|
7971
|
-
for (let ie = 0; ie < S.length; ie++) if (O = S[ie], U = P[O],
|
7972
|
-
for (Y in Yi(U.layout,
|
7973
|
-
for (Y in
|
7974
|
-
} else qt(_, { command: "removeLayer", args: [O] }), oe = D[D.lastIndexOf(O) + 1], qt(_, { command: "addLayer", args: [
|
7971
|
+
for (let ie = 0; ie < S.length; ie++) if (O = S[ie], U = P[O], X = E[O], !B[O] && !vt(U, X)) if (vt(U.source, X.source) && vt(U["source-layer"], X["source-layer"]) && vt(U.type, X.type)) {
|
7972
|
+
for (Y in Yi(U.layout, X.layout, _, O, null, "setLayoutProperty"), Yi(U.paint, X.paint, _, O, null, "setPaintProperty"), vt(U.filter, X.filter) || qt(_, { command: "setFilter", args: [O, X.filter] }), vt(U.minzoom, X.minzoom) && vt(U.maxzoom, X.maxzoom) || qt(_, { command: "setLayerZoomRange", args: [O, X.minzoom, X.maxzoom] }), U) Object.prototype.hasOwnProperty.call(U, Y) && Y !== "layout" && Y !== "paint" && Y !== "filter" && Y !== "metadata" && Y !== "minzoom" && Y !== "maxzoom" && (Y.indexOf("paint.") === 0 ? Yi(U[Y], X[Y], _, O, Y.slice(6), "setPaintProperty") : vt(U[Y], X[Y]) || qt(_, { command: "setLayerProperty", args: [O, Y, X[Y]] }));
|
7973
|
+
for (Y in X) Object.prototype.hasOwnProperty.call(X, Y) && !Object.prototype.hasOwnProperty.call(U, Y) && Y !== "layout" && Y !== "paint" && Y !== "filter" && Y !== "metadata" && Y !== "minzoom" && Y !== "maxzoom" && (Y.indexOf("paint.") === 0 ? Yi(U[Y], X[Y], _, O, Y.slice(6), "setPaintProperty") : vt(U[Y], X[Y]) || qt(_, { command: "setLayerProperty", args: [O, Y, X[Y]] }));
|
7974
|
+
} else qt(_, { command: "removeLayer", args: [O] }), oe = D[D.lastIndexOf(O) + 1], qt(_, { command: "addLayer", args: [X, oe] });
|
7975
7975
|
}(d, e.layers, r);
|
7976
7976
|
} catch (s) {
|
7977
7977
|
console.warn("Unable to compute style diff:", s), r = [{ command: "setStyle", args: [e] }];
|
@@ -8074,8 +8074,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8074
8074
|
for (const d of i) e = Math.min(e, d.x), r = Math.min(r, d.y), s = Math.max(s, d.x), l = Math.max(l, d.y);
|
8075
8075
|
return [e, r, s, l];
|
8076
8076
|
}, T.aq = si, T.as = Ih, T.at = function(i, e) {
|
8077
|
-
var r = e[0], s = e[1], l = e[2], d = e[3], p = e[4], m = e[5], _ = e[6], x = e[7], S = e[8], P = e[9], E = e[10], D = e[11], B = e[12], O = e[13], U = e[14],
|
8078
|
-
return ge ? (i[0] = (m * Be - _ * Ve + x * Ue) * (ge = 1 / ge), i[1] = (l * Ve - s * Be - d * Ue) * ge, i[2] = (O * De - U * ve +
|
8077
|
+
var r = e[0], s = e[1], l = e[2], d = e[3], p = e[4], m = e[5], _ = e[6], x = e[7], S = e[8], P = e[9], E = e[10], D = e[11], B = e[12], O = e[13], U = e[14], X = e[15], oe = r * m - s * p, Y = r * _ - l * p, ie = r * x - d * p, ue = s * _ - l * m, ve = s * x - d * m, De = l * x - d * _, Xe = S * O - P * B, Ee = S * U - E * B, Ae = S * X - D * B, Ue = P * U - E * O, Ve = P * X - D * O, Be = E * X - D * U, ge = oe * Be - Y * Ve + ie * Ue + ue * Ae - ve * Ee + De * Xe;
|
8078
|
+
return ge ? (i[0] = (m * Be - _ * Ve + x * Ue) * (ge = 1 / ge), i[1] = (l * Ve - s * Be - d * Ue) * ge, i[2] = (O * De - U * ve + X * ue) * ge, i[3] = (E * ve - P * De - D * ue) * ge, i[4] = (_ * Ae - p * Be - x * Ee) * ge, i[5] = (r * Be - l * Ae + d * Ee) * ge, i[6] = (U * ie - B * De - X * Y) * ge, i[7] = (S * De - E * ie + D * Y) * ge, i[8] = (p * Ve - m * Ae + x * Xe) * ge, i[9] = (s * Ae - r * Ve - d * Xe) * ge, i[10] = (B * ve - O * ie + X * oe) * ge, i[11] = (P * ie - S * ve - D * oe) * ge, i[12] = (m * Ee - p * Ue - _ * Xe) * ge, i[13] = (r * Ue - s * Ee + l * Xe) * ge, i[14] = (O * Y - B * ue - U * oe) * ge, i[15] = (S * ue - P * Y + E * oe) * ge, i) : null;
|
8079
8079
|
}, T.au = Lh, T.av = Th, T.aw = Rh, T.ax = function() {
|
8080
8080
|
const i = {}, e = he.$version;
|
8081
8081
|
for (const r in he.$root) {
|
@@ -8086,7 +8086,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8086
8086
|
}
|
8087
8087
|
}
|
8088
8088
|
return i;
|
8089
|
-
}, T.ay =
|
8089
|
+
}, T.ay = Xl, T.az = nr, T.b = xr, T.b0 = function(i, e) {
|
8090
8090
|
return i[0] = e[0], i[1] = e[1], i[2] = e[2], i[3] = e[3], i[4] = e[4], i[5] = e[5], i[6] = e[6], i[7] = e[7], i[8] = e[8], i[9] = e[9], i[10] = e[10], i[11] = e[11], i[12] = e[12], i[13] = e[13], i[14] = e[14], i[15] = e[15], i;
|
8091
8091
|
}, T.b1 = function(i, e, r) {
|
8092
8092
|
return i[0] = e[0] * r[0], i[1] = e[1] * r[1], i[2] = e[2] * r[2], i[3] = e[3] * r[3], i;
|
@@ -8106,9 +8106,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8106
8106
|
return i[0] = e[0], i[1] = 0, i[2] = 0, i[3] = 0, i[4] = 0, i[5] = e[1], i[6] = 0, i[7] = 0, i[8] = 0, i[9] = 0, i[10] = e[2], i[11] = 0, i[12] = 0, i[13] = 0, i[14] = 0, i[15] = 1, i;
|
8107
8107
|
}, T.bc = class extends R {
|
8108
8108
|
}, T.bd = Eh, T.be = zm, T.bg = $i, T.bh = function(i, e) {
|
8109
|
-
|
8109
|
+
Wr.REGISTERED_PROTOCOLS[i] = e;
|
8110
8110
|
}, T.bi = function(i) {
|
8111
|
-
delete
|
8111
|
+
delete Wr.REGISTERED_PROTOCOLS[i];
|
8112
8112
|
}, T.bj = function(i, e) {
|
8113
8113
|
const r = {};
|
8114
8114
|
for (let l = 0; l < i.length; l++) {
|
@@ -8134,32 +8134,32 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8134
8134
|
const d = r.get("text-line-height") * si, p = r.get("text-rotation-alignment") !== "viewport" && r.get("symbol-placement") !== "point", m = r.get("text-keep-upright"), _ = r.get("text-size");
|
8135
8135
|
for (const x of i.bucket.features) {
|
8136
8136
|
const S = r.get("text-font").evaluate(x, {}, i.canonical).join(","), P = _.evaluate(x, {}, i.canonical), E = l.layoutTextSize.evaluate(x, {}, i.canonical), D = l.layoutIconSize.evaluate(x, {}, i.canonical), B = { horizontal: {}, vertical: void 0 }, O = x.text;
|
8137
|
-
let U,
|
8137
|
+
let U, X = [0, 0];
|
8138
8138
|
if (O) {
|
8139
|
-
const ie = O.toString(), ue = r.get("text-letter-spacing").evaluate(x, {}, i.canonical) * si, ve = th(ie) ? ue : 0, De = r.get("text-anchor").evaluate(x, {}, i.canonical),
|
8140
|
-
if (!
|
8139
|
+
const ie = O.toString(), ue = r.get("text-letter-spacing").evaluate(x, {}, i.canonical) * si, ve = th(ie) ? ue : 0, De = r.get("text-anchor").evaluate(x, {}, i.canonical), Xe = Bd(e, x, i.canonical);
|
8140
|
+
if (!Xe) {
|
8141
8141
|
const Ve = r.get("text-radial-offset").evaluate(x, {}, i.canonical);
|
8142
|
-
|
8142
|
+
X = Ve ? Rd(De, [Ve * si, Dh]) : r.get("text-offset").evaluate(x, {}, i.canonical).map((Be) => Be * si);
|
8143
8143
|
}
|
8144
8144
|
let Ee = p ? "center" : r.get("text-justify").evaluate(x, {}, i.canonical);
|
8145
8145
|
const Ae = r.get("symbol-placement") === "point" ? r.get("text-max-width").evaluate(x, {}, i.canonical) * si : 1 / 0, Ue = () => {
|
8146
|
-
i.bucket.allowVerticalPlacement && ja(ie) && (B.vertical = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, "left", ve,
|
8146
|
+
i.bucket.allowVerticalPlacement && ja(ie) && (B.vertical = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, "left", ve, X, T.ai.vertical, !0, E, P));
|
8147
8147
|
};
|
8148
|
-
if (!p &&
|
8148
|
+
if (!p && Xe) {
|
8149
8149
|
const Ve = /* @__PURE__ */ new Set();
|
8150
|
-
if (Ee === "auto") for (let ge = 0; ge <
|
8150
|
+
if (Ee === "auto") for (let ge = 0; ge < Xe.values.length; ge += 2) Ve.add(Lh(Xe.values[ge]));
|
8151
8151
|
else Ve.add(Ee);
|
8152
8152
|
let Be = !1;
|
8153
8153
|
for (const ge of Ve) if (!B.horizontal[ge]) if (Be) B.horizontal[ge] = B.horizontal[0];
|
8154
8154
|
else {
|
8155
|
-
const Ze = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, "center", ge, ve,
|
8155
|
+
const Ze = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, "center", ge, ve, X, T.ai.horizontal, !1, E, P);
|
8156
8156
|
Ze && (B.horizontal[ge] = Ze, Be = Ze.positionedLines.length === 1);
|
8157
8157
|
}
|
8158
8158
|
Ue();
|
8159
8159
|
} else {
|
8160
8160
|
Ee === "auto" && (Ee = Lh(De));
|
8161
|
-
const Ve = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, Ee, ve,
|
8162
|
-
Ve && (B.horizontal[Ee] = Ve), Ue(), ja(ie) && p && m && (B.vertical = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, Ee, ve,
|
8161
|
+
const Ve = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, Ee, ve, X, T.ai.horizontal, !1, E, P);
|
8162
|
+
Ve && (B.horizontal[Ee] = Ve), Ue(), ja(ie) && p && m && (B.vertical = pc(O, i.glyphMap, i.glyphPositions, i.imagePositions, S, Ae, d, De, Ee, ve, X, T.ai.vertical, !1, E, P));
|
8163
8163
|
}
|
8164
8164
|
}
|
8165
8165
|
let oe = !1;
|
@@ -8168,7 +8168,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8168
8168
|
ie && (U = fm(i.imagePositions[x.icon.name], r.get("icon-offset").evaluate(x, {}, i.canonical), r.get("icon-anchor").evaluate(x, {}, i.canonical)), oe = !!ie.sdf, i.bucket.sdfIcons === void 0 ? i.bucket.sdfIcons = oe : i.bucket.sdfIcons !== oe && di("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"), (ie.pixelRatio !== i.bucket.pixelRatio || r.get("icon-rotate").constantOr(1) !== 0) && (i.bucket.iconsNeedLinear = !0));
|
8169
8169
|
}
|
8170
8170
|
const Y = Od(B.horizontal) || B.vertical;
|
8171
|
-
i.bucket.iconsInText = !!Y && Y.iconsInText, (Y || U) && Em(i.bucket, x, B, U, i.imageMap, l, E, D,
|
8171
|
+
i.bucket.iconsInText = !!Y && Y.iconsInText, (Y || U) && Em(i.bucket, x, B, U, i.imageMap, l, E, D, X, oe, i.canonical);
|
8172
8172
|
}
|
8173
8173
|
i.showCollisionBoxes && i.bucket.generateCollisionDebugBuffers();
|
8174
8174
|
}, T.bp = yh, T.bq = mh, T.br = _h, T.bs = es, T.bt = vh, T.bu = class {
|
@@ -8210,7 +8210,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8210
8210
|
}, s.onerror = () => r(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));
|
8211
8211
|
const l = new Blob([new Uint8Array(i)], { type: "image/png" });
|
8212
8212
|
s.src = i.byteLength ? URL.createObjectURL(l) : Ks;
|
8213
|
-
}), T.g = vr, T.h = (i, e) => fn(Ut(i, { type: "json" }), e), T.i = zr, T.j = Jr, T.k =
|
8213
|
+
}), T.g = vr, T.h = (i, e) => fn(Ut(i, { type: "json" }), e), T.i = zr, T.j = Jr, T.k = Xr, T.l = (i, e) => fn(Ut(i, { type: "arrayBuffer" }), e), T.m = fn, T.n = function(i) {
|
8214
8214
|
return new vh(i).readFields(am, []);
|
8215
8215
|
}, T.o = el, T.p = ed, T.q = o, T.r = Yc, T.s = mn, T.t = Na, T.u = Me, T.v = he, T.w = di, T.x = Nr, T.y = function([i, e, r]) {
|
8216
8216
|
return e += 90, e *= Math.PI / 180, r *= Math.PI / 180, { x: i * Math.cos(e) * Math.sin(r), y: i * Math.sin(e) * Math.sin(r), z: i * Math.cos(r) };
|
@@ -8307,11 +8307,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8307
8307
|
const ct = new AbortController();
|
8308
8308
|
this.inFlightDependencies.push(ct), Ge = Z.sendAsync({ type: "GI", data: { icons: Ie, source: this.source, tileID: this.tileID, type: "icons" } }, ct);
|
8309
8309
|
}
|
8310
|
-
const
|
8310
|
+
const We = Object.keys(J.patternDependencies);
|
8311
8311
|
let st = Promise.resolve({});
|
8312
|
-
if (
|
8312
|
+
if (We.length) {
|
8313
8313
|
const ct = new AbortController();
|
8314
|
-
this.inFlightDependencies.push(ct), st = Z.sendAsync({ type: "GI", data: { icons:
|
8314
|
+
this.inFlightDependencies.push(ct), st = Z.sendAsync({ type: "GI", data: { icons: We, source: this.source, tileID: this.tileID, type: "patterns" } }, ct);
|
8315
8315
|
}
|
8316
8316
|
const [_t, nt, Ct] = yield Promise.all([ce, Ge, st]), Zt = new pe(_t), Qt = new T.bn(nt, Ct);
|
8317
8317
|
for (const ct in re) {
|
@@ -8530,7 +8530,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8530
8530
|
const Ks = { minZoom: 0, maxZoom: 16, minPoints: 2, radius: 40, extent: 512, nodeSize: 64, log: !1, generateId: !1, reduce: null, map: (H) => H }, pn = Math.fround || (Dr = new Float32Array(1), (H) => (Dr[0] = +H, Dr[0]));
|
8531
8531
|
var Dr;
|
8532
8532
|
const zi = 3, rr = 5, Ln = 6;
|
8533
|
-
class
|
8533
|
+
class Wr {
|
8534
8534
|
constructor(z) {
|
8535
8535
|
this.options = Object.assign(Object.create(Ks), z), this.trees = new Array(this.options.maxZoom + 1), this.stride = this.options.reduce ? 7 : 6, this.clusterProps = [];
|
8536
8536
|
}
|
@@ -8626,8 +8626,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8626
8626
|
ce = $i(_t), Ie = nr(nt);
|
8627
8627
|
}
|
8628
8628
|
const Ge = { type: 1, geometry: [[Math.round(this.options.extent * (ce * Q - V)), Math.round(this.options.extent * (Ie * Q - Z))]], tags: ye };
|
8629
|
-
let
|
8630
|
-
|
8629
|
+
let We;
|
8630
|
+
We = de || this.options.generateId ? M[J + zi] : this.points[M[J + zi]].id, We !== void 0 && (Ge.id = We), te.features.push(Ge);
|
8631
8631
|
}
|
8632
8632
|
}
|
8633
8633
|
_limitZoom(z) {
|
@@ -8638,16 +8638,16 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8638
8638
|
for (let ce = 0; ce < J.length; ce += ye) {
|
8639
8639
|
if (J[ce + 2] <= M) continue;
|
8640
8640
|
J[ce + 2] = M;
|
8641
|
-
const Ie = J[ce], Ge = J[ce + 1],
|
8641
|
+
const Ie = J[ce], Ge = J[ce + 1], We = z.within(J[ce], J[ce + 1], re), st = J[ce + rr];
|
8642
8642
|
let _t = st;
|
8643
|
-
for (const nt of
|
8643
|
+
for (const nt of We) {
|
8644
8644
|
const Ct = nt * ye;
|
8645
8645
|
J[Ct + 2] > M && (_t += J[Ct + rr]);
|
8646
8646
|
}
|
8647
8647
|
if (_t > st && _t >= te) {
|
8648
8648
|
let nt, Ct = Ie * st, Zt = Ge * st, Qt = -1;
|
8649
8649
|
const ct = ((ce / ye | 0) << 5) + (M + 1) + this.points.length;
|
8650
|
-
for (const wt of
|
8650
|
+
for (const wt of We) {
|
8651
8651
|
const Nt = wt * ye;
|
8652
8652
|
if (J[Nt + 2] <= M) continue;
|
8653
8653
|
J[Nt + 2] = M;
|
@@ -8657,7 +8657,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8657
8657
|
J[ce + 4] = ct, de.push(Ct / _t, Zt / _t, 1 / 0, ct, -1, _t), Q && de.push(Qt);
|
8658
8658
|
} else {
|
8659
8659
|
for (let nt = 0; nt < ye; nt++) de.push(J[ce + nt]);
|
8660
|
-
if (_t > 1) for (const nt of
|
8660
|
+
if (_t > 1) for (const nt of We) {
|
8661
8661
|
const Ct = nt * ye;
|
8662
8662
|
if (!(J[Ct + 2] <= M)) {
|
8663
8663
|
J[Ct + 2] = M;
|
@@ -8711,8 +8711,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8711
8711
|
const Ge = cs(H[Ie], H[Ie + 1], J, de, ye, ce);
|
8712
8712
|
if (Ge > Z) te = Ie, Z = Ge;
|
8713
8713
|
else if (Ge === Z) {
|
8714
|
-
const
|
8715
|
-
|
8714
|
+
const We = Math.abs(Ie - Q);
|
8715
|
+
We < re && (te = Ie, re = We);
|
8716
8716
|
}
|
8717
8717
|
}
|
8718
8718
|
Z > V && (te - z > 3 && mn(H, z, te, V), H[te + 2] = Z, M - te > 3 && mn(H, te, M, V));
|
@@ -8727,13 +8727,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8727
8727
|
}
|
8728
8728
|
function Lr(H, z, M, V) {
|
8729
8729
|
const Z = { id: H ?? null, type: z, geometry: M, tags: V, minX: 1 / 0, minY: 1 / 0, maxX: -1 / 0, maxY: -1 / 0 };
|
8730
|
-
if (z === "Point" || z === "MultiPoint" || z === "LineString")
|
8731
|
-
else if (z === "Polygon")
|
8732
|
-
else if (z === "MultiLineString") for (const Q of M)
|
8733
|
-
else if (z === "MultiPolygon") for (const Q of M)
|
8730
|
+
if (z === "Point" || z === "MultiPoint" || z === "LineString") Xr(Z, M);
|
8731
|
+
else if (z === "Polygon") Xr(Z, M[0]);
|
8732
|
+
else if (z === "MultiLineString") for (const Q of M) Xr(Z, Q);
|
8733
|
+
else if (z === "MultiPolygon") for (const Q of M) Xr(Z, Q[0]);
|
8734
8734
|
return Z;
|
8735
8735
|
}
|
8736
|
-
function
|
8736
|
+
function Xr(H, z) {
|
8737
8737
|
for (let M = 0; M < z.length; M += 3) H.minX = Math.min(H.minX, z[M]), H.minY = Math.min(H.minY, z[M + 1]), H.maxX = Math.max(H.maxX, z[M]), H.maxY = Math.max(H.maxY, z[M + 1]);
|
8738
8738
|
}
|
8739
8739
|
function Jr(H, z, M, V) {
|
@@ -8805,21 +8805,21 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8805
8805
|
continue;
|
8806
8806
|
}
|
8807
8807
|
if (Ge < M || Ie >= V) continue;
|
8808
|
-
let
|
8809
|
-
if (ce === "Point" || ce === "MultiPoint") us(ye,
|
8810
|
-
else if (ce === "LineString") Kr(ye,
|
8811
|
-
else if (ce === "MultiLineString") Fn(ye,
|
8812
|
-
else if (ce === "Polygon") Fn(ye,
|
8808
|
+
let We = [];
|
8809
|
+
if (ce === "Point" || ce === "MultiPoint") us(ye, We, M, V, Z);
|
8810
|
+
else if (ce === "LineString") Kr(ye, We, M, V, Z, !1, re.lineMetrics);
|
8811
|
+
else if (ce === "MultiLineString") Fn(ye, We, M, V, Z, !1);
|
8812
|
+
else if (ce === "Polygon") Fn(ye, We, M, V, Z, !0);
|
8813
8813
|
else if (ce === "MultiPolygon") for (const st of ye) {
|
8814
8814
|
const _t = [];
|
8815
|
-
Fn(st, _t, M, V, Z, !0), _t.length &&
|
8815
|
+
Fn(st, _t, M, V, Z, !0), _t.length && We.push(_t);
|
8816
8816
|
}
|
8817
|
-
if (
|
8817
|
+
if (We.length) {
|
8818
8818
|
if (re.lineMetrics && ce === "LineString") {
|
8819
|
-
for (const st of
|
8819
|
+
for (const st of We) J.push(Lr(de.id, ce, st, de.tags));
|
8820
8820
|
continue;
|
8821
8821
|
}
|
8822
|
-
ce !== "LineString" && ce !== "MultiLineString" || (
|
8822
|
+
ce !== "LineString" && ce !== "MultiLineString" || (We.length === 1 ? (ce = "LineString", We = We[0]) : ce = "MultiLineString"), ce !== "Point" && ce !== "MultiPoint" || (ce = We.length === 3 ? "Point" : "MultiPoint"), J.push(Lr(de.id, ce, We, de.tags));
|
8823
8823
|
}
|
8824
8824
|
}
|
8825
8825
|
return J.length ? J : null;
|
@@ -8840,8 +8840,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8840
8840
|
te && (de = Math.sqrt(Math.pow(nt - Qt, 2) + Math.pow(Ct - ct, 2))), wt < M ? Nt > M && (ye = J(re, nt, Ct, Qt, ct, M), te && (re.start = ce + de * ye)) : wt > V ? Nt < V && (ye = J(re, nt, Ct, Qt, ct, V), te && (re.start = ce + de * ye)) : Yi(re, nt, Ct, Zt), Nt < M && wt >= M && (ye = J(re, nt, Ct, Qt, ct, M), ri = !0), Nt > V && wt <= V && (ye = J(re, nt, Ct, Qt, ct, V), ri = !0), !Q && ri && (te && (re.end = ce + de * ye), z.push(re), re = Rr(H)), te && (ce += de);
|
8841
8841
|
}
|
8842
8842
|
let Ie = H.length - 3;
|
8843
|
-
const Ge = H[Ie],
|
8844
|
-
st >= M && st <= V && Yi(re, Ge,
|
8843
|
+
const Ge = H[Ie], We = H[Ie + 1], st = Z === 0 ? Ge : We;
|
8844
|
+
st >= M && st <= V && Yi(re, Ge, We, H[Ie + 2]), Ie = re.length - 3, Q && Ie >= 3 && (re[Ie] !== re[0] || re[Ie + 1] !== re[1]) && Yi(re, re[0], re[1], re[2]), re.length && z.push(re);
|
8845
8845
|
}
|
8846
8846
|
function Rr(H) {
|
8847
8847
|
const z = [];
|
@@ -8939,8 +8939,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8939
8939
|
let ye = 0;
|
8940
8940
|
for (let ce = 0, Ie = J.length, Ge = Ie - 2; ce < Ie; Ge = ce, ce += 2) ye += (J[ce] - J[Ge]) * (J[ce + 1] + J[Ge + 1]);
|
8941
8941
|
if (ye > 0 === de) for (let ce = 0, Ie = J.length; ce < Ie / 2; ce += 2) {
|
8942
|
-
const Ge = J[ce],
|
8943
|
-
J[ce] = J[Ie - 2 - ce], J[ce + 1] = J[Ie - 1 - ce], J[Ie - 2 - ce] = Ge, J[Ie - 1 - ce] =
|
8942
|
+
const Ge = J[ce], We = J[ce + 1];
|
8943
|
+
J[ce] = J[Ie - 2 - ce], J[ce + 1] = J[Ie - 1 - ce], J[Ie - 2 - ce] = Ge, J[Ie - 1 - ce] = We;
|
8944
8944
|
}
|
8945
8945
|
}(re, Q), H.push(re);
|
8946
8946
|
}
|
@@ -8988,9 +8988,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
8988
8988
|
}
|
8989
8989
|
if (Ge.source = null, z.length === 0) continue;
|
8990
8990
|
ye > 1 && console.time("clipping");
|
8991
|
-
const
|
8992
|
-
let Ct = null, Zt = null, Qt = null, ct = null, wt = qt(z, ce, V -
|
8993
|
-
z = null, wt && (Ct = qt(wt, ce, Z -
|
8991
|
+
const We = 0.5 * de.buffer / de.extent, st = 0.5 - We, _t = 0.5 + We, nt = 1 + We;
|
8992
|
+
let Ct = null, Zt = null, Qt = null, ct = null, wt = qt(z, ce, V - We, V + _t, 0, Ge.minX, Ge.maxX, de), Nt = qt(z, ce, V + st, V + nt, 0, Ge.minX, Ge.maxX, de);
|
8993
|
+
z = null, wt && (Ct = qt(wt, ce, Z - We, Z + _t, 1, Ge.minY, Ge.maxY, de), Zt = qt(wt, ce, Z + st, Z + nt, 1, Ge.minY, Ge.maxY, de), wt = null), Nt && (Qt = qt(Nt, ce, Z - We, Z + _t, 1, Ge.minY, Ge.maxY, de), ct = qt(Nt, ce, Z + st, Z + nt, 1, Ge.minY, Ge.maxY, de), Nt = null), ye > 1 && console.timeEnd("clipping"), J.push(Ct || [], M + 1, 2 * V, 2 * Z), J.push(Zt || [], M + 1, 2 * V, 2 * Z + 1), J.push(Qt || [], M + 1, 2 * V + 1, 2 * Z), J.push(ct || [], M + 1, 2 * V + 1, 2 * Z + 1);
|
8994
8994
|
}
|
8995
8995
|
}
|
8996
8996
|
getTile(z, M, V) {
|
@@ -9083,20 +9083,20 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9083
9083
|
const V = !!(z && z.request && z.request.collectResourceTiming) && new T.bu(z.request);
|
9084
9084
|
this._pendingRequest = new AbortController();
|
9085
9085
|
try {
|
9086
|
-
this._pendingData = this.loadAndProcessGeoJSON(z, this._pendingRequest), this._geoJSONIndex = z.cluster ? new
|
9086
|
+
this._pendingData = this.loadAndProcessGeoJSON(z, this._pendingRequest), this._geoJSONIndex = z.cluster ? new Wr(function({ superclusterOptions: te, clusterProperties: re }) {
|
9087
9087
|
if (!re || !te) return te;
|
9088
9088
|
const J = {}, de = {}, ye = { accumulated: null, zoom: 0 }, ce = { properties: null }, Ie = Object.keys(re);
|
9089
9089
|
for (const Ge of Ie) {
|
9090
|
-
const [
|
9090
|
+
const [We, st] = re[Ge], _t = T.bB(st), nt = T.bB(typeof We == "string" ? [We, ["accumulated"], ["get", Ge]] : We);
|
9091
9091
|
J[Ge] = _t.value, de[Ge] = nt.value;
|
9092
9092
|
}
|
9093
9093
|
return te.map = (Ge) => {
|
9094
9094
|
ce.properties = Ge;
|
9095
|
-
const
|
9096
|
-
for (const st of Ie)
|
9097
|
-
return
|
9098
|
-
}, te.reduce = (Ge,
|
9099
|
-
ce.properties =
|
9095
|
+
const We = {};
|
9096
|
+
for (const st of Ie) We[st] = J[st].evaluate(ye, ce);
|
9097
|
+
return We;
|
9098
|
+
}, te.reduce = (Ge, We) => {
|
9099
|
+
ce.properties = We;
|
9100
9100
|
for (const st of Ie) ye.accumulated = Ge[st], Ge[st] = de[st].evaluate(ye, ce);
|
9101
9101
|
}, te;
|
9102
9102
|
}(z)).load((yield this._pendingData).features) : (Z = yield this._pendingData, new Di(Z, z.geojsonVtOptions)), this.loaded = {};
|
@@ -9161,8 +9161,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9161
9161
|
if (Ie == null) continue;
|
9162
9162
|
const Ge = !ce.removeAllProperties && (((re = ce.removeProperties) === null || re === void 0 ? void 0 : re.length) > 0 || ((J = ce.addOrUpdateProperties) === null || J === void 0 ? void 0 : J.length) > 0);
|
9163
9163
|
if ((ce.newGeometry || ce.removeAllProperties || Ge) && (Ie = Object.assign({}, Ie), Z.set(ce.id, Ie), Ge && (Ie.properties = Object.assign({}, Ie.properties))), ce.newGeometry && (Ie.geometry = ce.newGeometry), ce.removeAllProperties) Ie.properties = {};
|
9164
|
-
else if (((de = ce.removeProperties) === null || de === void 0 ? void 0 : de.length) > 0) for (const
|
9165
|
-
if (((ye = ce.addOrUpdateProperties) === null || ye === void 0 ? void 0 : ye.length) > 0) for (const { key:
|
9164
|
+
else if (((de = ce.removeProperties) === null || de === void 0 ? void 0 : de.length) > 0) for (const We of ce.removeProperties) Object.prototype.hasOwnProperty.call(Ie.properties, We) && delete Ie.properties[We];
|
9165
|
+
if (((ye = ce.addOrUpdateProperties) === null || ye === void 0 ? void 0 : ye.length) > 0) for (const { key: We, value: st } of ce.addOrUpdateProperties) Ie.properties[We] = st;
|
9166
9166
|
}
|
9167
9167
|
}(this._dataUpdateable, z.dataDiff, V), { type: "FeatureCollection", features: Array.from(this._dataUpdateable.values()) };
|
9168
9168
|
});
|
@@ -9379,14 +9379,14 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9379
9379
|
});
|
9380
9380
|
const h = (b) => c._(this, void 0, void 0, function* () {
|
9381
9381
|
b.state = "running";
|
9382
|
-
const { requestParameters: w, supportImageRefresh: k, onError: A, onSuccess: R, abortController: F } = b, N = k === !1 && !c.i(self) && !c.g(w.url) && (!w.headers || Object.keys(w.headers).reduce((
|
9382
|
+
const { requestParameters: w, supportImageRefresh: k, onError: A, onSuccess: R, abortController: F } = b, N = k === !1 && !c.i(self) && !c.g(w.url) && (!w.headers || Object.keys(w.headers).reduce((W, K) => W && K === "accept", !0));
|
9383
9383
|
n++;
|
9384
9384
|
const G = N ? y(w, F) : c.m(w, F);
|
9385
9385
|
try {
|
9386
|
-
const
|
9387
|
-
delete b.abortController, b.state = "completed",
|
9388
|
-
} catch (
|
9389
|
-
delete b.abortController, A(
|
9386
|
+
const W = yield G;
|
9387
|
+
delete b.abortController, b.state = "completed", W.data instanceof HTMLImageElement || c.b(W.data) ? R(W) : W.data && R({ data: yield (j = W.data, typeof createImageBitmap == "function" ? c.d(j) : c.f(j)), cacheControl: W.cacheControl, expires: W.expires });
|
9388
|
+
} catch (W) {
|
9389
|
+
delete b.abortController, A(W);
|
9390
9390
|
} finally {
|
9391
9391
|
n--, g();
|
9392
9392
|
}
|
@@ -9691,23 +9691,23 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9691
9691
|
draw(u) {
|
9692
9692
|
const { width: t, actualBoundingBoxAscent: n, actualBoundingBoxDescent: o, actualBoundingBoxLeft: a, actualBoundingBoxRight: h } = this.ctx.measureText(u), g = Math.ceil(n), y = Math.max(0, Math.min(this.size - this.buffer, Math.ceil(h - a))), b = Math.min(this.size - this.buffer, g + Math.ceil(o)), w = y + 2 * this.buffer, k = b + 2 * this.buffer, A = Math.max(w * k, 0), R = new Uint8ClampedArray(A), F = { data: R, width: w, height: k, glyphWidth: y, glyphHeight: b, glyphTop: g, glyphLeft: 0, glyphAdvance: t };
|
9693
9693
|
if (y === 0 || b === 0) return F;
|
9694
|
-
const { ctx: N, buffer: G, gridInner: j, gridOuter:
|
9694
|
+
const { ctx: N, buffer: G, gridInner: j, gridOuter: W } = this;
|
9695
9695
|
N.clearRect(G, G, y, b), N.fillText(u, G, G + g);
|
9696
9696
|
const K = N.getImageData(G, G, y, b);
|
9697
|
-
|
9697
|
+
W.fill(Pi, 0, A), j.fill(0, 0, A);
|
9698
9698
|
for (let $ = 0; $ < b; $++) for (let ee = 0; ee < y; ee++) {
|
9699
9699
|
const ne = K.data[4 * ($ * y + ee) + 3] / 255;
|
9700
9700
|
if (ne === 0) continue;
|
9701
9701
|
const le = ($ + G) * w + ee + G;
|
9702
|
-
if (ne === 1)
|
9702
|
+
if (ne === 1) W[le] = 0, j[le] = Pi;
|
9703
9703
|
else {
|
9704
9704
|
const _e = 0.5 - ne;
|
9705
|
-
|
9705
|
+
W[le] = _e > 0 ? _e * _e : 0, j[le] = _e < 0 ? _e * _e : 0;
|
9706
9706
|
}
|
9707
9707
|
}
|
9708
|
-
zr(
|
9708
|
+
zr(W, 0, 0, w, k, w, this.f, this.v, this.z), zr(j, G, G, y, b, w, this.f, this.v, this.z);
|
9709
9709
|
for (let $ = 0; $ < A; $++) {
|
9710
|
-
const ee = Math.sqrt(
|
9710
|
+
const ee = Math.sqrt(W[$]) - Math.sqrt(j[$]);
|
9711
9711
|
R[$] = Math.round(255 - 255 * (ee / this.radius + this.cutoff));
|
9712
9712
|
}
|
9713
9713
|
return F;
|
@@ -9851,7 +9851,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9851
9851
|
this.texture ? (n.bindTexture(n.TEXTURE_2D, this.texture), this.dirty && (this.dirty = !1, n.texSubImage2D(n.TEXTURE_2D, 0, 0, 0, this.width, this.height, n.ALPHA, n.UNSIGNED_BYTE, this.data))) : (this.texture = n.createTexture(), n.bindTexture(n.TEXTURE_2D, this.texture), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_S, n.REPEAT), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_T, n.REPEAT), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MIN_FILTER, n.LINEAR), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MAG_FILTER, n.LINEAR), n.texImage2D(n.TEXTURE_2D, 0, n.ALPHA, this.width, this.height, 0, n.ALPHA, n.UNSIGNED_BYTE, this.data));
|
9852
9852
|
}
|
9853
9853
|
}
|
9854
|
-
const
|
9854
|
+
const Wr = "maplibre_preloaded_worker_pool";
|
9855
9855
|
class vr {
|
9856
9856
|
constructor() {
|
9857
9857
|
this.active = {};
|
@@ -9866,7 +9866,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9866
9866
|
}), this.workers = null);
|
9867
9867
|
}
|
9868
9868
|
isPreloaded() {
|
9869
|
-
return !!this.active[
|
9869
|
+
return !!this.active[Wr];
|
9870
9870
|
}
|
9871
9871
|
numActive() {
|
9872
9872
|
return Object.keys(this.active).length;
|
@@ -9912,7 +9912,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9912
9912
|
const n = c.H();
|
9913
9913
|
return c.J(n, n, [1, 1, 0]), c.K(n, n, [0.5 * u.width, 0.5 * u.height, 1]), c.L(n, n, u.calculatePosMatrix(t.toUnwrapped()));
|
9914
9914
|
}
|
9915
|
-
function
|
9915
|
+
function Xr(u, t, n, o, a, h) {
|
9916
9916
|
const g = function(A, R, F) {
|
9917
9917
|
if (A) for (const N of A) {
|
9918
9918
|
const G = R[N];
|
@@ -9930,9 +9930,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
9930
9930
|
const k = function(A) {
|
9931
9931
|
const R = {}, F = {};
|
9932
9932
|
for (const N of A) {
|
9933
|
-
const G = N.queryResults, j = N.wrappedTileID,
|
9933
|
+
const G = N.queryResults, j = N.wrappedTileID, W = F[j] = F[j] || {};
|
9934
9934
|
for (const K in G) {
|
9935
|
-
const $ = G[K], ee =
|
9935
|
+
const $ = G[K], ee = W[K] = W[K] || {}, ne = R[K] = R[K] || [];
|
9936
9936
|
for (const le of $) ee[le.featureIndex] || (ee[le.featureIndex] = !0, ne.push(le));
|
9937
9937
|
}
|
9938
9938
|
}
|
@@ -11017,10 +11017,10 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11017
11017
|
this._tiles[N[0].key] && this._tiles[N[1].key] && this._tiles[N[2].key] && this._tiles[N[3].key] && (A[N[0].key] = t[N[0].key] = N[0], A[N[1].key] = t[N[1].key] = N[1], A[N[2].key] = t[N[2].key] = N[2], A[N[3].key] = t[N[3].key] = N[3], delete R[F]);
|
11018
11018
|
}
|
11019
11019
|
for (const F in R) {
|
11020
|
-
const N = R[F], G = this.findLoadedParent(N, this._source.minzoom), j = this.findLoadedSibling(N),
|
11021
|
-
if (
|
11022
|
-
A[
|
11023
|
-
for (const K in A) A[K].isChildOf(
|
11020
|
+
const N = R[F], G = this.findLoadedParent(N, this._source.minzoom), j = this.findLoadedSibling(N), W = G || j || null;
|
11021
|
+
if (W) {
|
11022
|
+
A[W.tileID.key] = t[W.tileID.key] = W.tileID;
|
11023
|
+
for (const K in A) A[K].isChildOf(W.tileID) && delete A[K];
|
11024
11024
|
}
|
11025
11025
|
}
|
11026
11026
|
for (const F in this._tiles) A[F] || (this._coveredTiles[F] = !0);
|
@@ -11150,10 +11150,10 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11150
11150
|
for (let N = 0; N < w.length; N++) {
|
11151
11151
|
const G = this._tiles[w[N]];
|
11152
11152
|
if (G.holdingForFade()) continue;
|
11153
|
-
const j = G.tileID,
|
11153
|
+
const j = G.tileID, W = Math.pow(2, h.zoom - G.tileID.overscaledZ), K = n * G.queryPadding * c.X / G.tileSize / W, $ = [j.getTilePoint(new c.Z(k, A)), j.getTilePoint(new c.Z(R, F))];
|
11154
11154
|
if ($[0].x - K < c.X && $[0].y - K < c.X && $[1].x + K >= 0 && $[1].y + K >= 0) {
|
11155
11155
|
const ee = y.map((le) => j.getTilePoint(le)), ne = b.map((le) => j.getTilePoint(le));
|
11156
|
-
a.push({ tile: G, tileID: j, queryGeometry: ee, cameraQueryGeometry: ne, scale:
|
11156
|
+
a.push({ tile: G, tileID: j, queryGeometry: ee, cameraQueryGeometry: ne, scale: W });
|
11157
11157
|
}
|
11158
11158
|
}
|
11159
11159
|
return a;
|
@@ -11273,8 +11273,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11273
11273
|
const N = this.bboxes;
|
11274
11274
|
for (const G of R) if (!w.box[G]) {
|
11275
11275
|
w.box[G] = !0;
|
11276
|
-
const j = 4 * G,
|
11277
|
-
if (t <= N[j + 2] && n <= N[j + 3] && o >= N[j + 0] && a >= N[j + 1] && (!b || b(
|
11276
|
+
const j = 4 * G, W = this.boxKeys[G];
|
11277
|
+
if (t <= N[j + 2] && n <= N[j + 3] && o >= N[j + 0] && a >= N[j + 1] && (!b || b(W)) && (!k || !Sr(A, W.overlapMode)) && (g.push({ key: W, x1: N[j], y1: N[j + 1], x2: N[j + 2], y2: N[j + 3] }), k)) return !0;
|
11278
11278
|
}
|
11279
11279
|
}
|
11280
11280
|
const F = this.circleCells[h];
|
@@ -11282,10 +11282,10 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11282
11282
|
const N = this.circles;
|
11283
11283
|
for (const G of F) if (!w.circle[G]) {
|
11284
11284
|
w.circle[G] = !0;
|
11285
|
-
const j = 3 * G,
|
11286
|
-
if (this._circleAndRectCollide(N[j], N[j + 1], N[j + 2], t, n, o, a) && (!b || b(
|
11285
|
+
const j = 3 * G, W = this.circleKeys[G];
|
11286
|
+
if (this._circleAndRectCollide(N[j], N[j + 1], N[j + 2], t, n, o, a) && (!b || b(W)) && (!k || !Sr(A, W.overlapMode))) {
|
11287
11287
|
const K = N[j], $ = N[j + 1], ee = N[j + 2];
|
11288
|
-
if (g.push({ key:
|
11288
|
+
if (g.push({ key: W, x1: K - ee, y1: $ - ee, x2: K + ee, y2: $ + ee }), k) return !0;
|
11289
11289
|
}
|
11290
11290
|
}
|
11291
11291
|
}
|
@@ -11297,8 +11297,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11297
11297
|
const N = this.bboxes;
|
11298
11298
|
for (const G of R) if (!k.box[G]) {
|
11299
11299
|
k.box[G] = !0;
|
11300
|
-
const j = 4 * G,
|
11301
|
-
if (this._circleAndRectCollide(w.x, w.y, w.radius, N[j + 0], N[j + 1], N[j + 2], N[j + 3]) && (!b || b(
|
11300
|
+
const j = 4 * G, W = this.boxKeys[G];
|
11301
|
+
if (this._circleAndRectCollide(w.x, w.y, w.radius, N[j + 0], N[j + 1], N[j + 2], N[j + 3]) && (!b || b(W)) && !Sr(A, W.overlapMode)) return g.push(!0), !0;
|
11302
11302
|
}
|
11303
11303
|
}
|
11304
11304
|
const F = this.circleCells[h];
|
@@ -11306,8 +11306,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11306
11306
|
const N = this.circles;
|
11307
11307
|
for (const G of F) if (!k.circle[G]) {
|
11308
11308
|
k.circle[G] = !0;
|
11309
|
-
const j = 3 * G,
|
11310
|
-
if (this._circlesCollide(N[j], N[j + 1], N[j + 2], w.x, w.y, w.radius) && (!b || b(
|
11309
|
+
const j = 3 * G, W = this.circleKeys[G];
|
11310
|
+
if (this._circlesCollide(N[j], N[j + 1], N[j + 2], w.x, w.y, w.radius) && (!b || b(W)) && !Sr(A, W.overlapMode)) return g.push(!0), !0;
|
11311
11311
|
}
|
11312
11312
|
}
|
11313
11313
|
}
|
@@ -11362,24 +11362,24 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11362
11362
|
return u.x >= -t[0] && u.x <= t[0] && u.y >= -t[1] && u.y <= t[1];
|
11363
11363
|
}
|
11364
11364
|
function V(u, t, n, o, a, h, g, y, b, w, k, A, R, F, N) {
|
11365
|
-
const G = o ? u.textSizeData : u.iconSizeData, j = c.ah(G, n.transform.zoom),
|
11365
|
+
const G = o ? u.textSizeData : u.iconSizeData, j = c.ah(G, n.transform.zoom), W = [256 / n.width * 2 + 1, 256 / n.height * 2 + 1], K = o ? u.text.dynamicLayoutVertexArray : u.icon.dynamicLayoutVertexArray;
|
11366
11366
|
K.clear();
|
11367
11367
|
const $ = u.lineVertexArray, ee = o ? u.text.placedSymbolArray : u.icon.placedSymbolArray, ne = n.transform.width / n.transform.height;
|
11368
11368
|
let le = !1;
|
11369
11369
|
for (let _e = 0; _e < ee.length; _e++) {
|
11370
11370
|
const be = ee.get(_e);
|
11371
11371
|
if (be.hidden || be.writingMode === c.ai.vertical && !le) {
|
11372
|
-
|
11372
|
+
We(be.numGlyphs, K);
|
11373
11373
|
continue;
|
11374
11374
|
}
|
11375
11375
|
le = !1;
|
11376
11376
|
const ze = H(new c.P(be.anchorX, be.anchorY), t, N);
|
11377
|
-
if (!M(ze.point,
|
11378
|
-
|
11377
|
+
if (!M(ze.point, W)) {
|
11378
|
+
We(be.numGlyphs, K);
|
11379
11379
|
continue;
|
11380
11380
|
}
|
11381
11381
|
const Le = z(n.transform.cameraToCenterDistance, ze.signedDistanceFromCamera), we = c.aj(G, j, be), Se = g ? we / Le : we * Le, Ne = { getElevation: N, labelPlaneMatrix: a, lineVertexArray: $, pitchWithMap: g, projectionCache: { projections: {}, offsets: {}, cachedAnchorPoint: void 0, anyProjectionOccluded: !1 }, projection: w, tileAnchorPoint: new c.P(be.anchorX, be.anchorY), unwrappedTileID: k, width: A, height: R, translation: F }, tt = te(Ne, be, Se, !1, y, t, h, u.glyphOffsetArray, K, ne, b);
|
11382
|
-
le = tt.useVertical, (tt.notEnoughRoom || le || tt.needsFlipping && te(Ne, be, Se, !0, y, t, h, u.glyphOffsetArray, K, ne, b).notEnoughRoom) &&
|
11382
|
+
le = tt.useVertical, (tt.notEnoughRoom || le || tt.needsFlipping && te(Ne, be, Se, !0, y, t, h, u.glyphOffsetArray, K, ne, b).notEnoughRoom) && We(be.numGlyphs, K);
|
11383
11383
|
}
|
11384
11384
|
o ? u.text.dynamicLayoutVertexBuffer.updateData(K) : u.icon.dynamicLayoutVertexBuffer.updateData(K);
|
11385
11385
|
}
|
@@ -11396,7 +11396,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11396
11396
|
const A = n / 24, R = t.lineOffsetX * A, F = t.lineOffsetY * A;
|
11397
11397
|
let N;
|
11398
11398
|
if (t.numGlyphs > 1) {
|
11399
|
-
const G = t.glyphStartIndex + t.numGlyphs, j = t.lineStartIndex,
|
11399
|
+
const G = t.glyphStartIndex + t.numGlyphs, j = t.lineStartIndex, W = t.lineStartIndex + t.lineLength, K = Z(A, y, R, F, o, t, k, u);
|
11400
11400
|
if (!K) return { notEnoughRoom: !0 };
|
11401
11401
|
const $ = H(K.first.point, g, u.getElevation).point, ee = H(K.last.point, g, u.getElevation).point;
|
11402
11402
|
if (a && !o) {
|
@@ -11404,11 +11404,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11404
11404
|
if (ne) return ne;
|
11405
11405
|
}
|
11406
11406
|
N = [K.first];
|
11407
|
-
for (let ne = t.glyphStartIndex + 1; ne < G - 1; ne++) N.push(Ie(A * y.getoffsetX(ne), R, F, o, t.segment, j,
|
11407
|
+
for (let ne = t.glyphStartIndex + 1; ne < G - 1; ne++) N.push(Ie(A * y.getoffsetX(ne), R, F, o, t.segment, j, W, u, k));
|
11408
11408
|
N.push(K.last);
|
11409
11409
|
} else {
|
11410
11410
|
if (a && !o) {
|
11411
|
-
const j = H(u.tileAnchorPoint, h, u.getElevation).point,
|
11411
|
+
const j = H(u.tileAnchorPoint, h, u.getElevation).point, W = t.lineStartIndex + t.segment + 1, K = new c.P(u.lineVertexArray.getx(W), u.lineVertexArray.gety(W)), $ = H(K, h, u.getElevation), ee = $.signedDistanceFromCamera > 0 ? $.point : function(le, _e, be, ze, Le, we) {
|
11412
11412
|
return re(le, _e, be, 1, Le, we);
|
11413
11413
|
}(u.tileAnchorPoint, K, j, 0, h, u), ne = Q(t.writingMode, j, ee, w);
|
11414
11414
|
if (ne) return ne;
|
@@ -11455,26 +11455,26 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11455
11455
|
o && (k *= -1, A = Math.PI), k < 0 && (A += Math.PI);
|
11456
11456
|
let R, F = k > 0 ? h + a : h + a + 1;
|
11457
11457
|
y.projectionCache.cachedAnchorPoint ? R = y.projectionCache.cachedAnchorPoint : (R = de(y.tileAnchorPoint.x, y.tileAnchorPoint.y, y).point, y.projectionCache.cachedAnchorPoint = R);
|
11458
|
-
let N, G, j = R,
|
11458
|
+
let N, G, j = R, W = R, K = 0, $ = 0;
|
11459
11459
|
const ee = Math.abs(w), ne = [];
|
11460
11460
|
let le;
|
11461
11461
|
for (; K + $ <= ee; ) {
|
11462
11462
|
if (F += k, F < h || F >= g) return null;
|
11463
|
-
K += $,
|
11464
|
-
const ze = { absOffsetX: ee, direction: k, distanceFromAnchor: K, previousVertex:
|
11465
|
-
if (j = J(F, y, ze), n === 0) ne.push(
|
11463
|
+
K += $, W = j, G = N;
|
11464
|
+
const ze = { absOffsetX: ee, direction: k, distanceFromAnchor: K, previousVertex: W };
|
11465
|
+
if (j = J(F, y, ze), n === 0) ne.push(W), le = j.sub(W);
|
11466
11466
|
else {
|
11467
11467
|
let Le;
|
11468
|
-
const we = j.sub(
|
11469
|
-
Le = we.mag() === 0 ? ye(J(F + k, y, ze).sub(j), n, k) : ye(we, n, k), G || (G =
|
11468
|
+
const we = j.sub(W);
|
11469
|
+
Le = we.mag() === 0 ? ye(J(F + k, y, ze).sub(j), n, k) : ye(we, n, k), G || (G = W.add(Le)), N = ce(F, Le, j, h, g, G, n, y, ze), ne.push(G), le = N.sub(G);
|
11470
11470
|
}
|
11471
11471
|
$ = le.mag();
|
11472
11472
|
}
|
11473
|
-
const _e = le._mult((ee - K) / $)._add(G ||
|
11473
|
+
const _e = le._mult((ee - K) / $)._add(G || W), be = A + Math.atan2(j.y - W.y, j.x - W.x);
|
11474
11474
|
return ne.push(_e), { point: _e, angle: b ? be : 0, path: ne };
|
11475
11475
|
}
|
11476
11476
|
const Ge = new Float32Array([-1 / 0, -1 / 0, 0, -1 / 0, -1 / 0, 0, -1 / 0, -1 / 0, 0, -1 / 0, -1 / 0, 0]);
|
11477
|
-
function
|
11477
|
+
function We(u, t) {
|
11478
11478
|
for (let n = 0; n < u; n++) {
|
11479
11479
|
const o = t.length;
|
11480
11480
|
t.resize(o + 4), t.float32.set(Ge, 3 * o);
|
@@ -11486,11 +11486,11 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11486
11486
|
this.transform = t, this.mapProjection = n, this.grid = o, this.ignoredGrid = a, this.pitchFactor = Math.cos(t._pitch) * t.cameraToCenterDistance, this.screenRightBoundary = t.width + st, this.screenBottomBoundary = t.height + st, this.gridRightBoundary = t.width + 200, this.gridBottomBoundary = t.height + 200, this.perspectiveRatioCutoff = 0.6;
|
11487
11487
|
}
|
11488
11488
|
placeCollisionBox(t, n, o, a, h, g, y, b, w, k, A) {
|
11489
|
-
const R = t.anchorPointX + b[0], F = t.anchorPointY + b[1], N = this.projectAndGetPerspectiveRatio(a, R, F, h, k), G = this._projectCollisionBox(t, o, a, h, g, y, b, N, k, A), [j,
|
11490
|
-
return this.mapProjection.useSpecialProjectionForSymbols && (g ? G.allPointsOccluded : this.mapProjection.isOccluded(R, F, h)) || N.perspectiveRatio < this.perspectiveRatioCutoff || !this.isInsideGrid(j,
|
11489
|
+
const R = t.anchorPointX + b[0], F = t.anchorPointY + b[1], N = this.projectAndGetPerspectiveRatio(a, R, F, h, k), G = this._projectCollisionBox(t, o, a, h, g, y, b, N, k, A), [j, W, K, $] = G.box;
|
11490
|
+
return this.mapProjection.useSpecialProjectionForSymbols && (g ? G.allPointsOccluded : this.mapProjection.isOccluded(R, F, h)) || N.perspectiveRatio < this.perspectiveRatioCutoff || !this.isInsideGrid(j, W, K, $) || n !== "always" && this.grid.hitTest(j, W, K, $, n, w) ? { box: [j, W, K, $], placeable: !1, offscreen: !1 } : { box: [j, W, K, $], placeable: !0, offscreen: this.isOffscreen(j, W, K, $) };
|
11491
11491
|
}
|
11492
11492
|
placeCollisionCircles(t, n, o, a, h, g, y, b, w, k, A, R, F, N, G, j) {
|
11493
|
-
const
|
11493
|
+
const W = [], K = new c.P(n.anchorX, n.anchorY), $ = this.getPerspectiveRatio(g, K.x, K.y, y, j), ee = (A ? h / $ : h * $) / c.aq, ne = { getElevation: j, labelPlaneMatrix: b, lineVertexArray: o, pitchWithMap: A, projectionCache: { projections: {}, offsets: {}, cachedAnchorPoint: void 0, anyProjectionOccluded: !1 }, projection: this.mapProjection, tileAnchorPoint: K, unwrappedTileID: y, width: this.transform.width, height: this.transform.height, translation: G }, le = Z(ee, a, n.lineOffsetX * ee, n.lineOffsetY * ee, !1, n, !1, ne);
|
11494
11494
|
let _e = !1, be = !1, ze = !0;
|
11495
11495
|
if (le) {
|
11496
11496
|
const Le = 0.5 * F * $ + N, we = new c.P(-100, -100), Se = new c.P(this.screenRightBoundary, this.screenBottomBoundary), Ne = new rt(), tt = le.first, Pe = le.last;
|
@@ -11514,13 +11514,13 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11514
11514
|
pt = Ne.length <= 0.5 * Le ? 1 : Math.ceil(Ne.paddedLength / Qe) + 1;
|
11515
11515
|
for (let Bt = 0; Bt < pt; Bt++) {
|
11516
11516
|
const gi = Bt / Math.max(pt - 1, 1), lr = Ne.lerp(gi), Ft = lr.x + st, Ri = lr.y + st;
|
11517
|
-
|
11517
|
+
W.push(Ft, Ri, Le, 0);
|
11518
11518
|
const Ci = Ft - Le, _i = Ri - Le, yi = Ft + Le, cr = Ri + Le;
|
11519
11519
|
if (ze = ze && this.isOffscreen(Ci, _i, yi, cr), be = be || this.isInsideGrid(Ci, _i, yi, cr), t !== "always" && this.grid.hitTestCircle(Ft, Ri, Le, t, R) && (_e = !0, !k)) return { circles: [], offscreen: !1, collisionDetected: _e };
|
11520
11520
|
}
|
11521
11521
|
}
|
11522
11522
|
}
|
11523
|
-
return { circles: !k && _e || !be || $ < this.perspectiveRatioCutoff ? [] :
|
11523
|
+
return { circles: !k && _e || !be || $ < this.perspectiveRatioCutoff ? [] : W, offscreen: ze, collisionDetected: _e };
|
11524
11524
|
}
|
11525
11525
|
projectPathToScreenSpace(t, n, o) {
|
11526
11526
|
return t.map((a) => H(a, o, n.getElevation));
|
@@ -11585,7 +11585,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11585
11585
|
j = Math.pow(2, -Le), j *= this.mapProjection.getPitchedTextCorrection(this.transform, N, a), k || (j *= c.ad(0.5 + b.signedDistanceFromCamera / this.transform.cameraToCenterDistance * 0.5, 0, 4));
|
11586
11586
|
}
|
11587
11587
|
k && (G = G.add(R.mult(k.x * j)).add(F.mult(k.y * j)));
|
11588
|
-
const
|
11588
|
+
const W = t.x1 * j, K = t.x2 * j, $ = (W + K) / 2, ee = t.y1 * j, ne = t.y2 * j, le = (ee + ne) / 2, _e = [{ offsetX: W, offsetY: ee }, { offsetX: $, offsetY: ee }, { offsetX: K, offsetY: ee }, { offsetX: K, offsetY: le }, { offsetX: K, offsetY: ne }, { offsetX: $, offsetY: ne }, { offsetX: W, offsetY: ne }, { offsetX: W, offsetY: le }];
|
11589
11589
|
let be = [];
|
11590
11590
|
for (const { offsetX: Le, offsetY: we } of _e) be.push(new c.P(G.x + R.x * Le + F.x * we, G.y + R.y * Le + F.y * we));
|
11591
11591
|
let ze = !1;
|
@@ -11658,30 +11658,30 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11658
11658
|
getBucketParts(t, n, o, a) {
|
11659
11659
|
const h = o.getBucket(n), g = o.latestFeatureIndex;
|
11660
11660
|
if (!h || !g || n.id !== h.layerIds[0]) return;
|
11661
|
-
const y = o.collisionBoxArray, b = h.layers[0].layout, w = h.layers[0].paint, k = Math.pow(2, this.transform.zoom - o.tileID.overscaledZ), A = o.tileSize / c.X, R = o.tileID.toUnwrapped(), F = this.transform.calculatePosMatrix(R), N = b.get("text-pitch-alignment") === "map", G = b.get("text-rotation-alignment") === "map", j = nt(o, 1, this.transform.zoom),
|
11661
|
+
const y = o.collisionBoxArray, b = h.layers[0].layout, w = h.layers[0].paint, k = Math.pow(2, this.transform.zoom - o.tileID.overscaledZ), A = o.tileSize / c.X, R = o.tileID.toUnwrapped(), F = this.transform.calculatePosMatrix(R), N = b.get("text-pitch-alignment") === "map", G = b.get("text-rotation-alignment") === "map", j = nt(o, 1, this.transform.zoom), W = this.collisionIndex.mapProjection.translatePosition(this.transform, o, w.get("text-translate"), w.get("text-translate-anchor")), K = this.collisionIndex.mapProjection.translatePosition(this.transform, o, w.get("icon-translate"), w.get("icon-translate-anchor")), $ = Qr(F, N, G, this.transform, j);
|
11662
11662
|
let ee = null;
|
11663
11663
|
if (N) {
|
11664
11664
|
const le = Tr(F, N, G, this.transform, j);
|
11665
11665
|
ee = c.L([], this.transform.labelPlaneMatrix, le);
|
11666
11666
|
}
|
11667
11667
|
this.retainedQueryData[h.bucketInstanceId] = new wt(h.bucketInstanceId, g, h.sourceLayerIndex, h.index, o.tileID);
|
11668
|
-
const ne = { bucket: h, layout: b, translationText:
|
11668
|
+
const ne = { bucket: h, layout: b, translationText: W, translationIcon: K, posMatrix: F, unwrappedTileID: R, textLabelPlaneMatrix: $, labelToScreenMatrix: ee, scale: k, textPixelRatio: A, holdingForFade: o.holdingForFade(), collisionBoxArray: y, partiallyEvaluatedTextSize: c.ah(h.textSizeData, this.transform.zoom), collisionGroup: this.collisionGroups.get(h.sourceID) };
|
11669
11669
|
if (a) for (const le of h.sortKeyRanges) {
|
11670
11670
|
const { sortKey: _e, symbolInstanceStart: be, symbolInstanceEnd: ze } = le;
|
11671
11671
|
t.push({ sortKey: _e, symbolInstanceStart: be, symbolInstanceEnd: ze, parameters: ne });
|
11672
11672
|
}
|
11673
11673
|
else t.push({ symbolInstanceStart: 0, symbolInstanceEnd: h.symbolInstances.length, parameters: ne });
|
11674
11674
|
}
|
11675
|
-
attemptAnchorPlacement(t, n, o, a, h, g, y, b, w, k, A, R, F, N, G, j,
|
11675
|
+
attemptAnchorPlacement(t, n, o, a, h, g, y, b, w, k, A, R, F, N, G, j, W, K, $) {
|
11676
11676
|
const ee = c.ar[t.textAnchor], ne = [t.textOffset0, t.textOffset1], le = ri(ee, o, a, ne, h), _e = this.collisionIndex.placeCollisionBox(n, R, b, w, k, y, g, j, A.predicate, $, le);
|
11677
|
-
if ((!K || this.collisionIndex.placeCollisionBox(K, R, b, w, k, y, g,
|
11677
|
+
if ((!K || this.collisionIndex.placeCollisionBox(K, R, b, w, k, y, g, W, A.predicate, $, le).placeable) && _e.placeable) {
|
11678
11678
|
let be;
|
11679
11679
|
if (this.prevPlacement && this.prevPlacement.variableOffsets[F.crossTileID] && this.prevPlacement.placements[F.crossTileID] && this.prevPlacement.placements[F.crossTileID].text && (be = this.prevPlacement.variableOffsets[F.crossTileID].anchor), F.crossTileID === 0) throw new Error("symbolInstance.crossTileID can't be 0");
|
11680
11680
|
return this.variableOffsets[F.crossTileID] = { textOffset: ne, width: o, height: a, anchor: ee, textBoxScale: h, prevAnchor: be }, this.markUsedJustification(N, ee, F, G), N.allowVerticalPlacement && (this.markUsedOrientation(N, G, F), this.placedOrientations[F.crossTileID] = G), { shift: le, placedGlyphBoxes: _e };
|
11681
11681
|
}
|
11682
11682
|
}
|
11683
11683
|
placeLayerBucketPart(t, n, o) {
|
11684
|
-
const { bucket: a, layout: h, translationText: g, translationIcon: y, posMatrix: b, unwrappedTileID: w, textLabelPlaneMatrix: k, labelToScreenMatrix: A, textPixelRatio: R, holdingForFade: F, collisionBoxArray: N, partiallyEvaluatedTextSize: G, collisionGroup: j } = t.parameters,
|
11684
|
+
const { bucket: a, layout: h, translationText: g, translationIcon: y, posMatrix: b, unwrappedTileID: w, textLabelPlaneMatrix: k, labelToScreenMatrix: A, textPixelRatio: R, holdingForFade: F, collisionBoxArray: N, partiallyEvaluatedTextSize: G, collisionGroup: j } = t.parameters, W = h.get("text-optional"), K = h.get("icon-optional"), $ = c.as(h, "text-overlap", "text-allow-overlap"), ee = $ === "always", ne = c.as(h, "icon-overlap", "icon-allow-overlap"), le = ne === "always", _e = h.get("text-rotation-alignment") === "map", be = h.get("text-pitch-alignment") === "map", ze = h.get("icon-text-fit") !== "none", Le = h.get("symbol-z-order") === "viewport-y", we = ee && (le || !a.hasIconData() || K), Se = le && (ee || !a.hasTextData() || W);
|
11685
11685
|
!a.collisionArrays && N && a.deserializeCollisionBoxes(N);
|
11686
11686
|
const Ne = this._getTerrainElevationFunc(this.retainedQueryData[a.bucketInstanceId].tileID), tt = (Pe, Ce, Qe) => {
|
11687
11687
|
var Rt, at;
|
@@ -11689,8 +11689,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11689
11689
|
if (F) return void (this.placements[Pe.crossTileID] = new Qt(!1, !1, !1));
|
11690
11690
|
let pt = !1, Bt = !1, gi = !0, lr = null, Ft = { box: null, placeable: !1, offscreen: null }, Ri = { box: null, placeable: !1, offscreen: null }, Ci = null, _i = null, yi = null, cr = 0, kn = 0, Co = 0;
|
11691
11691
|
Ce.textFeatureIndex ? cr = Ce.textFeatureIndex : Pe.useRuntimeCollisionCircles && (cr = Pe.featureIndex), Ce.verticalTextFeatureIndex && (kn = Ce.verticalTextFeatureIndex);
|
11692
|
-
const
|
11693
|
-
if (
|
11692
|
+
const Xn = Ce.textBox;
|
11693
|
+
if (Xn) {
|
11694
11694
|
const hi = (xi) => {
|
11695
11695
|
let vi = c.ai.horizontal;
|
11696
11696
|
if (a.allowVerticalPlacement && !xi && this.prevPlacement) {
|
@@ -11708,7 +11708,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11708
11708
|
const jt = this.collisionIndex.placeCollisionBox(vi, $, R, b, w, be, _e, g, j.predicate, Ne);
|
11709
11709
|
return jt && jt.placeable && (this.markUsedOrientation(a, oi, Pe), this.placedOrientations[Pe.crossTileID] = oi), jt;
|
11710
11710
|
};
|
11711
|
-
hr(() => xi(
|
11711
|
+
hr(() => xi(Xn, c.ai.horizontal), () => {
|
11712
11712
|
const vi = Ce.verticalTextBox;
|
11713
11713
|
return a.allowVerticalPlacement && Pe.numVerticalGlyphVertices > 0 && vi ? xi(vi, c.ai.vertical) : { box: null, offscreen: null };
|
11714
11714
|
}), hi(Ft && Ft.placeable);
|
@@ -11716,20 +11716,20 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11716
11716
|
let xi = c.ar[(at = (Rt = this.prevPlacement) === null || Rt === void 0 ? void 0 : Rt.variableOffsets[Pe.crossTileID]) === null || at === void 0 ? void 0 : at.anchor];
|
11717
11717
|
const vi = (jt, Kn, Ha) => {
|
11718
11718
|
const ni = jt.x2 - jt.x1, ec = jt.y2 - jt.y1, Mo = Pe.textBoxScale, zo = ze && ne === "never" ? Kn : null;
|
11719
|
-
let ln = null, tc = $ === "never" ? 1 : 2,
|
11719
|
+
let ln = null, tc = $ === "never" ? 1 : 2, Wa = "never";
|
11720
11720
|
xi && tc++;
|
11721
|
-
for (let
|
11721
|
+
for (let Xa = 0; Xa < tc; Xa++) {
|
11722
11722
|
for (let Ja = an; Ja < Jn; Ja++) {
|
11723
11723
|
const Do = a.textAnchorOffsets.get(Ja);
|
11724
11724
|
if (xi && Do.textAnchor !== xi) continue;
|
11725
|
-
const Yn = this.attemptAnchorPlacement(Do, jt, ni, ec, Mo, _e, be, R, b, w, j,
|
11725
|
+
const Yn = this.attemptAnchorPlacement(Do, jt, ni, ec, Mo, _e, be, R, b, w, j, Wa, Pe, a, Ha, g, y, zo, Ne);
|
11726
11726
|
if (Yn && (ln = Yn.placedGlyphBoxes, ln && ln.placeable)) return pt = !0, lr = Yn.shift, ln;
|
11727
11727
|
}
|
11728
|
-
xi ? xi = null :
|
11728
|
+
xi ? xi = null : Wa = $;
|
11729
11729
|
}
|
11730
|
-
return o && !ln && (ln = { box: this.collisionIndex.placeCollisionBox(
|
11730
|
+
return o && !ln && (ln = { box: this.collisionIndex.placeCollisionBox(Xn, "always", R, b, w, be, _e, g, j.predicate, Ne, new c.P(0, 0)).box, offscreen: !1, placeable: !1 }), ln;
|
11731
11731
|
};
|
11732
|
-
hr(() => vi(
|
11732
|
+
hr(() => vi(Xn, Ce.iconBox, c.ai.horizontal), () => {
|
11733
11733
|
const jt = Ce.verticalTextBox;
|
11734
11734
|
return a.allowVerticalPlacement && (!Ft || !Ft.placeable) && Pe.numVerticalGlyphVertices > 0 && jt ? vi(jt, Ce.verticalIconBox, c.ai.vertical) : { box: null, occluded: !0, offscreen: null };
|
11735
11735
|
}), Ft && (pt = Ft.placeable, gi = Ft.offscreen);
|
@@ -11748,7 +11748,7 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11748
11748
|
const hi = (hr) => this.collisionIndex.placeCollisionBox(hr, ne, R, b, w, be, _e, y, j.predicate, Ne, ze && lr ? lr : void 0);
|
11749
11749
|
Ri && Ri.placeable && Ce.verticalIconBox ? (yi = hi(Ce.verticalIconBox), Bt = yi.placeable) : (yi = hi(Ce.iconBox), Bt = yi.placeable), gi = gi && yi.offscreen;
|
11750
11750
|
}
|
11751
|
-
const An =
|
11751
|
+
const An = W || Pe.numHorizontalGlyphVertices === 0 && Pe.numVerticalGlyphVertices === 0, Eo = K || Pe.numIconVertices === 0;
|
11752
11752
|
An || Eo ? Eo ? An || (Bt = Bt && pt) : pt = Bt && pt : Bt = pt = Bt && pt;
|
11753
11753
|
const Ga = Bt && yi.placeable;
|
11754
11754
|
if (pt && Ci.placeable && this.collisionIndex.insertCollisionBox(Ci.box, $, h.get("text-ignore-placement"), a.bucketInstanceId, Ri && Ri.placeable && kn ? kn : cr, j.ID), Ga && this.collisionIndex.insertCollisionBox(yi.box, ne, h.get("icon-ignore-placement"), a.bucketInstanceId, Co, j.ID), _i && pt && this.collisionIndex.insertCollisionCircles(_i.circles, $, h.get("text-ignore-placement"), a.bucketInstanceId, cr, j.ID), o && this.storeCollisionData(a.bucketInstanceId, Qe, Ce, Ci, yi, _i), Pe.crossTileID === 0) throw new Error("symbolInstance.crossTileID can't be 0");
|
@@ -11824,12 +11824,12 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11824
11824
|
t.hasTextData() && (t.text.opacityVertexArray.clear(), t.text.hasVisibleVertices = !1), t.hasIconData() && (t.icon.opacityVertexArray.clear(), t.icon.hasVisibleVertices = !1), t.hasIconCollisionBoxData() && t.iconCollisionBox.collisionVertexArray.clear(), t.hasTextCollisionBoxData() && t.textCollisionBox.collisionVertexArray.clear();
|
11825
11825
|
const h = t.layers[0], g = h.layout, y = new Zt(null, 0, !1, !1, !0), b = g.get("text-allow-overlap"), w = g.get("icon-allow-overlap"), k = h._unevaluatedLayout.hasValue("text-variable-anchor") || h._unevaluatedLayout.hasValue("text-variable-anchor-offset"), A = g.get("text-rotation-alignment") === "map", R = g.get("text-pitch-alignment") === "map", F = g.get("icon-text-fit") !== "none", N = new Zt(null, 0, b && (w || !t.hasIconData() || g.get("icon-optional")), w && (b || !t.hasTextData() || g.get("text-optional")), !0);
|
11826
11826
|
!t.collisionArrays && a && (t.hasIconCollisionBoxData() || t.hasTextCollisionBoxData()) && t.deserializeCollisionBoxes(a);
|
11827
|
-
const G = (
|
11828
|
-
for (let ee = 0; ee < K / 4; ee++)
|
11829
|
-
|
11827
|
+
const G = (W, K, $) => {
|
11828
|
+
for (let ee = 0; ee < K / 4; ee++) W.opacityVertexArray.emplaceBack($);
|
11829
|
+
W.hasVisibleVertices = W.hasVisibleVertices || $ !== mi;
|
11830
11830
|
}, j = this.collisionBoxArrays.get(t.bucketInstanceId);
|
11831
|
-
for (let
|
11832
|
-
const K = t.symbolInstances.get(
|
11831
|
+
for (let W = 0; W < t.symbolInstances.length; W++) {
|
11832
|
+
const K = t.symbolInstances.get(W), { numHorizontalGlyphVertices: $, numVerticalGlyphVertices: ee, crossTileID: ne } = K;
|
11833
11833
|
let le = this.opacities[ne];
|
11834
11834
|
o[ne] ? le = y : le || (le = N, this.opacities[ne] = le), o[ne] = !0;
|
11835
11835
|
const _e = K.numIconVertices > 0, be = this.placedOrientations[K.crossTileID], ze = be === c.ai.vertical, Le = be === c.ai.horizontal || be === c.ai.horizontalOnly;
|
@@ -11849,9 +11849,9 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11849
11849
|
const Se = qi(le.icon), Ne = !(F && K.verticalPlacedIconSymbolIndex && ze);
|
11850
11850
|
K.placedIconSymbolIndex >= 0 && (G(t.icon, K.numIconVertices, Ne ? Se : mi), t.icon.placedSymbolArray.get(K.placedIconSymbolIndex).hidden = le.icon.isHidden()), K.verticalPlacedIconSymbolIndex >= 0 && (G(t.icon, K.numVerticalIconVertices, Ne ? mi : Se), t.icon.placedSymbolArray.get(K.verticalPlacedIconSymbolIndex).hidden = le.icon.isHidden());
|
11851
11851
|
}
|
11852
|
-
const we = j && j.has(
|
11852
|
+
const we = j && j.has(W) ? j.get(W) : { text: null, icon: null };
|
11853
11853
|
if (t.hasIconCollisionBoxData() || t.hasTextCollisionBoxData()) {
|
11854
|
-
const Se = t.collisionArrays[
|
11854
|
+
const Se = t.collisionArrays[W];
|
11855
11855
|
if (Se) {
|
11856
11856
|
let Ne = new c.P(0, 0);
|
11857
11857
|
if (Se.textBox || Se.verticalTextBox) {
|
@@ -11876,8 +11876,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
11876
11876
|
if (t.sortFeatures(this.transform.angle), this.retainedQueryData[t.bucketInstanceId] && (this.retainedQueryData[t.bucketInstanceId].featureSortOrder = t.featureSortOrder), t.hasTextData() && t.text.opacityVertexBuffer && t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray), t.hasIconData() && t.icon.opacityVertexBuffer && t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray), t.hasIconCollisionBoxData() && t.iconCollisionBox.collisionVertexBuffer && t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray), t.hasTextCollisionBoxData() && t.textCollisionBox.collisionVertexBuffer && t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray), t.text.opacityVertexArray.length !== t.text.layoutVertexArray.length / 4) throw new Error(`bucket.text.opacityVertexArray.length (= ${t.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${t.text.layoutVertexArray.length}) / 4`);
|
11877
11877
|
if (t.icon.opacityVertexArray.length !== t.icon.layoutVertexArray.length / 4) throw new Error(`bucket.icon.opacityVertexArray.length (= ${t.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${t.icon.layoutVertexArray.length}) / 4`);
|
11878
11878
|
if (t.bucketInstanceId in this.collisionCircleArrays) {
|
11879
|
-
const
|
11880
|
-
t.placementInvProjMatrix =
|
11879
|
+
const W = this.collisionCircleArrays[t.bucketInstanceId];
|
11880
|
+
t.placementInvProjMatrix = W.invProjMatrix, t.placementViewportMatrix = W.viewportMatrix, t.collisionCircleArray = W.circles, delete this.collisionCircleArrays[t.bucketInstanceId];
|
11881
11881
|
}
|
11882
11882
|
}
|
11883
11883
|
symbolFadeChange(t) {
|
@@ -12169,10 +12169,10 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
12169
12169
|
const G = {};
|
12170
12170
|
for (const j in F) {
|
12171
12171
|
G[j] = {};
|
12172
|
-
const
|
12172
|
+
const W = ae.getImageCanvasContext((yield N[j]).data), K = (yield F[j]).data;
|
12173
12173
|
for (const $ in K) {
|
12174
12174
|
const { width: ee, height: ne, x: le, y: _e, sdf: be, pixelRatio: ze, stretchX: Le, stretchY: we, content: Se, textFitWidth: Ne, textFitHeight: tt } = K[$];
|
12175
|
-
G[j][$] = { data: null, pixelRatio: ze, sdf: be, stretchX: Le, stretchY: we, content: Se, textFitWidth: Ne, textFitHeight: tt, spriteData: { width: ee, height: ne, x: le, y: _e, context:
|
12175
|
+
G[j][$] = { data: null, pixelRatio: ze, sdf: be, stretchX: Le, stretchY: we, content: Se, textFitWidth: Ne, textFitHeight: tt, spriteData: { width: ee, height: ne, x: le, y: _e, context: W } };
|
12176
12176
|
}
|
12177
12177
|
}
|
12178
12178
|
return G;
|
@@ -12558,17 +12558,17 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
12558
12558
|
const h = [];
|
12559
12559
|
n.availableImages = this._availableImages;
|
12560
12560
|
const g = this._serializedAllLayers();
|
12561
|
-
for (const y in this.sourceCaches) n.layers && !a[y] || h.push(
|
12561
|
+
for (const y in this.sourceCaches) n.layers && !a[y] || h.push(Xr(this.sourceCaches[y], this._layers, g, t, n, o));
|
12562
12562
|
return this.placement && h.push(function(y, b, w, k, A, R, F) {
|
12563
12563
|
const N = {}, G = R.queryRenderedSymbols(k), j = [];
|
12564
|
-
for (const
|
12564
|
+
for (const W of Object.keys(G).map(Number)) j.push(F[W]);
|
12565
12565
|
j.sort(Jr);
|
12566
|
-
for (const
|
12567
|
-
const K =
|
12566
|
+
for (const W of j) {
|
12567
|
+
const K = W.featureIndex.lookupSymbolFeatures(G[W.bucketInstanceId], b, W.bucketIndex, W.sourceLayerIndex, A.filter, A.layers, A.availableImages, y);
|
12568
12568
|
for (const $ in K) {
|
12569
12569
|
const ee = N[$] = N[$] || [], ne = K[$];
|
12570
12570
|
ne.sort((le, _e) => {
|
12571
|
-
const be =
|
12571
|
+
const be = W.featureSortOrder;
|
12572
12572
|
if (be) {
|
12573
12573
|
const ze = be.indexOf(le.featureIndex);
|
12574
12574
|
return be.indexOf(_e.featureIndex) - ze;
|
@@ -12578,8 +12578,8 @@ Use an identity property function instead: \`{ "type": "identity", "property": $
|
|
12578
12578
|
for (const le of ne) ee.push(le);
|
12579
12579
|
}
|
12580
12580
|
}
|
12581
|
-
for (const
|
12582
|
-
const $ = K.feature, ee = w[y[
|
12581
|
+
for (const W in N) N[W].forEach((K) => {
|
12582
|
+
const $ = K.feature, ee = w[y[W].source].getFeatureState($.layer["source-layer"], $.id);
|
12583
12583
|
$.source = $.layer.source, $.layer["source-layer"] && ($.sourceLayer = $.layer["source-layer"]), $.state = ee;
|
12584
12584
|
});
|
12585
12585
|
return N;
|
@@ -13336,11 +13336,11 @@ uniform ${k} ${A} u_${R};
|
|
13336
13336
|
for (const le of N) G.indexOf(le) < 0 && G.push(le);
|
13337
13337
|
const j = o ? o.defines() : [];
|
13338
13338
|
h && j.push("#define OVERDRAW_INSPECTOR;"), g && j.push("#define TERRAIN3D;");
|
13339
|
-
const
|
13339
|
+
const W = j.concat(tn.prelude.fragmentSource, n.fragmentSource).join(`
|
13340
13340
|
`), K = j.concat(tn.prelude.vertexSource, n.vertexSource).join(`
|
13341
13341
|
`), $ = y.createShader(y.FRAGMENT_SHADER);
|
13342
13342
|
if (y.isContextLost()) return void (this.failedToCreate = !0);
|
13343
|
-
if (y.shaderSource($,
|
13343
|
+
if (y.shaderSource($, W), y.compileShader($), !y.getShaderParameter($, y.COMPILE_STATUS)) throw new Error(`Could not compile fragment shader: ${y.getShaderInfoLog($)}`);
|
13344
13344
|
y.attachShader(this.program, $);
|
13345
13345
|
const ee = y.createShader(y.VERTEX_SHADER);
|
13346
13346
|
if (y.isContextLost()) return void (this.failedToCreate = !0);
|
@@ -13360,7 +13360,7 @@ uniform ${k} ${A} u_${R};
|
|
13360
13360
|
}
|
13361
13361
|
this.fixedUniforms = a(t, ne), this.terrainUniforms = ((le, _e) => ({ u_depth: new c.aI(le, _e.u_depth), u_terrain: new c.aI(le, _e.u_terrain), u_terrain_dim: new c.aJ(le, _e.u_terrain_dim), u_terrain_matrix: new c.aK(le, _e.u_terrain_matrix), u_terrain_unpack: new c.aL(le, _e.u_terrain_unpack), u_terrain_exaggeration: new c.aJ(le, _e.u_terrain_exaggeration) }))(t, ne), this.binderUniforms = o ? o.getUniforms(t, ne) : [];
|
13362
13362
|
}
|
13363
|
-
draw(t, n, o, a, h, g, y, b, w, k, A, R, F, N, G, j,
|
13363
|
+
draw(t, n, o, a, h, g, y, b, w, k, A, R, F, N, G, j, W, K) {
|
13364
13364
|
const $ = t.gl;
|
13365
13365
|
if (this.failedToCreate) return;
|
13366
13366
|
if (t.program.set(this.program), t.setDepthMode(o), t.setStencilMode(a), t.setColorMode(h), t.setCullFace(g), b) {
|
@@ -13382,7 +13382,7 @@ uniform ${k} ${A} u_${R};
|
|
13382
13382
|
}
|
13383
13383
|
for (const ne of R.get()) {
|
13384
13384
|
const le = ne.vaos || (ne.vaos = {});
|
13385
|
-
(le[w] || (le[w] = new eo())).bind(t, this, k, G ? G.getPaintVertexBuffers() : [], A, ne.vertexOffset, j,
|
13385
|
+
(le[w] || (le[w] = new eo())).bind(t, this, k, G ? G.getPaintVertexBuffers() : [], A, ne.vertexOffset, j, W, K), $.drawElements(n, ne.primitiveLength * ee, $.UNSIGNED_SHORT, ne.primitiveOffset * ee * 2);
|
13386
13386
|
}
|
13387
13387
|
}
|
13388
13388
|
}
|
@@ -13449,8 +13449,8 @@ uniform ${k} ${A} u_${R};
|
|
13449
13449
|
const G = g.transform;
|
13450
13450
|
return c.e(Sl(u, t, n, o, a, h, g, y, b, w, k, A, R, N), { u_gamma_scale: o ? Math.cos(G._pitch) * G.cameraToCenterDistance : 1, u_device_pixel_ratio: g.pixelRatio, u_is_halo: +F });
|
13451
13451
|
}, jc = (u, t, n, o, a, h, g, y, b, w, k, A, R, F) => c.e(Tl(u, t, n, o, a, h, g, y, b, w, k, !0, A, !0, F), { u_texsize_icon: R, u_texture_icon: 1 }), oo = (u, t, n) => ({ u_matrix: u, u_opacity: t, u_color: n }), ra = (u, t, n, o, a, h) => c.e(function(g, y, b, w) {
|
13452
|
-
const k = b.imageManager.getPattern(g.from.toString()), A = b.imageManager.getPattern(g.to.toString()), { width: R, height: F } = b.imageManager.getPixelSize(), N = Math.pow(2, w.tileID.overscaledZ), G = w.tileSize * Math.pow(2, b.transform.tileZoom) / N, j = G * (w.tileID.canonical.x + w.tileID.wrap * N),
|
13453
|
-
return { u_image: 0, u_pattern_tl_a: k.tl, u_pattern_br_a: k.br, u_pattern_tl_b: A.tl, u_pattern_br_b: A.br, u_texsize: [R, F], u_mix: y.t, u_pattern_size_a: k.displaySize, u_pattern_size_b: A.displaySize, u_scale_a: y.fromScale, u_scale_b: y.toScale, u_tile_units_to_pixels: 1 / nt(w, 1, b.transform.tileZoom), u_pixel_coord_upper: [j >> 16,
|
13452
|
+
const k = b.imageManager.getPattern(g.from.toString()), A = b.imageManager.getPattern(g.to.toString()), { width: R, height: F } = b.imageManager.getPixelSize(), N = Math.pow(2, w.tileID.overscaledZ), G = w.tileSize * Math.pow(2, b.transform.tileZoom) / N, j = G * (w.tileID.canonical.x + w.tileID.wrap * N), W = G * w.tileID.canonical.y;
|
13453
|
+
return { u_image: 0, u_pattern_tl_a: k.tl, u_pattern_br_a: k.br, u_pattern_tl_b: A.tl, u_pattern_br_b: A.br, u_texsize: [R, F], u_mix: y.t, u_pattern_size_a: k.displaySize, u_pattern_size_b: A.displaySize, u_scale_a: y.fromScale, u_scale_b: y.toScale, u_tile_units_to_pixels: 1 / nt(w, 1, b.transform.tileZoom), u_pixel_coord_upper: [j >> 16, W >> 16], u_pixel_coord_lower: [65535 & j, 65535 & W] };
|
13454
13454
|
}(o, h, n, a), { u_matrix: u, u_opacity: t }), ao = { fillExtrusion: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_lightpos: new c.aO(u, t.u_lightpos), u_lightintensity: new c.aJ(u, t.u_lightintensity), u_lightcolor: new c.aO(u, t.u_lightcolor), u_vertical_gradient: new c.aJ(u, t.u_vertical_gradient), u_opacity: new c.aJ(u, t.u_opacity) }), fillExtrusionPattern: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_lightpos: new c.aO(u, t.u_lightpos), u_lightintensity: new c.aJ(u, t.u_lightintensity), u_lightcolor: new c.aO(u, t.u_lightcolor), u_vertical_gradient: new c.aJ(u, t.u_vertical_gradient), u_height_factor: new c.aJ(u, t.u_height_factor), u_image: new c.aI(u, t.u_image), u_texsize: new c.aP(u, t.u_texsize), u_pixel_coord_upper: new c.aP(u, t.u_pixel_coord_upper), u_pixel_coord_lower: new c.aP(u, t.u_pixel_coord_lower), u_scale: new c.aO(u, t.u_scale), u_fade: new c.aJ(u, t.u_fade), u_opacity: new c.aJ(u, t.u_opacity) }), fill: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix) }), fillPattern: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_image: new c.aI(u, t.u_image), u_texsize: new c.aP(u, t.u_texsize), u_pixel_coord_upper: new c.aP(u, t.u_pixel_coord_upper), u_pixel_coord_lower: new c.aP(u, t.u_pixel_coord_lower), u_scale: new c.aO(u, t.u_scale), u_fade: new c.aJ(u, t.u_fade) }), fillOutline: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_world: new c.aP(u, t.u_world) }), fillOutlinePattern: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_world: new c.aP(u, t.u_world), u_image: new c.aI(u, t.u_image), u_texsize: new c.aP(u, t.u_texsize), u_pixel_coord_upper: new c.aP(u, t.u_pixel_coord_upper), u_pixel_coord_lower: new c.aP(u, t.u_pixel_coord_lower), u_scale: new c.aO(u, t.u_scale), u_fade: new c.aJ(u, t.u_fade) }), circle: (u, t) => ({ u_camera_to_center_distance: new c.aJ(u, t.u_camera_to_center_distance), u_scale_with_map: new c.aI(u, t.u_scale_with_map), u_pitch_with_map: new c.aI(u, t.u_pitch_with_map), u_extrude_scale: new c.aP(u, t.u_extrude_scale), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_matrix: new c.aK(u, t.u_matrix) }), collisionBox: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_pixel_extrude_scale: new c.aP(u, t.u_pixel_extrude_scale) }), collisionCircle: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_inv_matrix: new c.aK(u, t.u_inv_matrix), u_camera_to_center_distance: new c.aJ(u, t.u_camera_to_center_distance), u_viewport_size: new c.aP(u, t.u_viewport_size) }), debug: (u, t) => ({ u_color: new c.aM(u, t.u_color), u_matrix: new c.aK(u, t.u_matrix), u_overlay: new c.aI(u, t.u_overlay), u_overlay_scale: new c.aJ(u, t.u_overlay_scale) }), clippingMask: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix) }), heatmap: (u, t) => ({ u_extrude_scale: new c.aJ(u, t.u_extrude_scale), u_intensity: new c.aJ(u, t.u_intensity), u_matrix: new c.aK(u, t.u_matrix) }), heatmapTexture: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_world: new c.aP(u, t.u_world), u_image: new c.aI(u, t.u_image), u_color_ramp: new c.aI(u, t.u_color_ramp), u_opacity: new c.aJ(u, t.u_opacity) }), hillshade: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_image: new c.aI(u, t.u_image), u_latrange: new c.aP(u, t.u_latrange), u_light: new c.aP(u, t.u_light), u_shadow: new c.aM(u, t.u_shadow), u_highlight: new c.aM(u, t.u_highlight), u_accent: new c.aM(u, t.u_accent) }), hillshadePrepare: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_image: new c.aI(u, t.u_image), u_dimension: new c.aP(u, t.u_dimension), u_zoom: new c.aJ(u, t.u_zoom), u_unpack: new c.aL(u, t.u_unpack) }), line: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_ratio: new c.aJ(u, t.u_ratio), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_units_to_pixels: new c.aP(u, t.u_units_to_pixels) }), lineGradient: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_ratio: new c.aJ(u, t.u_ratio), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_units_to_pixels: new c.aP(u, t.u_units_to_pixels), u_image: new c.aI(u, t.u_image), u_image_height: new c.aJ(u, t.u_image_height) }), linePattern: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_texsize: new c.aP(u, t.u_texsize), u_ratio: new c.aJ(u, t.u_ratio), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_image: new c.aI(u, t.u_image), u_units_to_pixels: new c.aP(u, t.u_units_to_pixels), u_scale: new c.aO(u, t.u_scale), u_fade: new c.aJ(u, t.u_fade) }), lineSDF: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_ratio: new c.aJ(u, t.u_ratio), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_units_to_pixels: new c.aP(u, t.u_units_to_pixels), u_patternscale_a: new c.aP(u, t.u_patternscale_a), u_patternscale_b: new c.aP(u, t.u_patternscale_b), u_sdfgamma: new c.aJ(u, t.u_sdfgamma), u_image: new c.aI(u, t.u_image), u_tex_y_a: new c.aJ(u, t.u_tex_y_a), u_tex_y_b: new c.aJ(u, t.u_tex_y_b), u_mix: new c.aJ(u, t.u_mix) }), raster: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_tl_parent: new c.aP(u, t.u_tl_parent), u_scale_parent: new c.aJ(u, t.u_scale_parent), u_buffer_scale: new c.aJ(u, t.u_buffer_scale), u_fade_t: new c.aJ(u, t.u_fade_t), u_opacity: new c.aJ(u, t.u_opacity), u_image0: new c.aI(u, t.u_image0), u_image1: new c.aI(u, t.u_image1), u_brightness_low: new c.aJ(u, t.u_brightness_low), u_brightness_high: new c.aJ(u, t.u_brightness_high), u_saturation_factor: new c.aJ(u, t.u_saturation_factor), u_contrast_factor: new c.aJ(u, t.u_contrast_factor), u_spin_weights: new c.aO(u, t.u_spin_weights) }), symbolIcon: (u, t) => ({ u_is_size_zoom_constant: new c.aI(u, t.u_is_size_zoom_constant), u_is_size_feature_constant: new c.aI(u, t.u_is_size_feature_constant), u_size_t: new c.aJ(u, t.u_size_t), u_size: new c.aJ(u, t.u_size), u_camera_to_center_distance: new c.aJ(u, t.u_camera_to_center_distance), u_pitch: new c.aJ(u, t.u_pitch), u_rotate_symbol: new c.aI(u, t.u_rotate_symbol), u_aspect_ratio: new c.aJ(u, t.u_aspect_ratio), u_fade_change: new c.aJ(u, t.u_fade_change), u_matrix: new c.aK(u, t.u_matrix), u_label_plane_matrix: new c.aK(u, t.u_label_plane_matrix), u_coord_matrix: new c.aK(u, t.u_coord_matrix), u_is_text: new c.aI(u, t.u_is_text), u_pitch_with_map: new c.aI(u, t.u_pitch_with_map), u_is_along_line: new c.aI(u, t.u_is_along_line), u_is_variable_anchor: new c.aI(u, t.u_is_variable_anchor), u_texsize: new c.aP(u, t.u_texsize), u_texture: new c.aI(u, t.u_texture), u_translation: new c.aP(u, t.u_translation), u_pitched_scale: new c.aJ(u, t.u_pitched_scale) }), symbolSDF: (u, t) => ({ u_is_size_zoom_constant: new c.aI(u, t.u_is_size_zoom_constant), u_is_size_feature_constant: new c.aI(u, t.u_is_size_feature_constant), u_size_t: new c.aJ(u, t.u_size_t), u_size: new c.aJ(u, t.u_size), u_camera_to_center_distance: new c.aJ(u, t.u_camera_to_center_distance), u_pitch: new c.aJ(u, t.u_pitch), u_rotate_symbol: new c.aI(u, t.u_rotate_symbol), u_aspect_ratio: new c.aJ(u, t.u_aspect_ratio), u_fade_change: new c.aJ(u, t.u_fade_change), u_matrix: new c.aK(u, t.u_matrix), u_label_plane_matrix: new c.aK(u, t.u_label_plane_matrix), u_coord_matrix: new c.aK(u, t.u_coord_matrix), u_is_text: new c.aI(u, t.u_is_text), u_pitch_with_map: new c.aI(u, t.u_pitch_with_map), u_is_along_line: new c.aI(u, t.u_is_along_line), u_is_variable_anchor: new c.aI(u, t.u_is_variable_anchor), u_texsize: new c.aP(u, t.u_texsize), u_texture: new c.aI(u, t.u_texture), u_gamma_scale: new c.aJ(u, t.u_gamma_scale), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_is_halo: new c.aI(u, t.u_is_halo), u_translation: new c.aP(u, t.u_translation), u_pitched_scale: new c.aJ(u, t.u_pitched_scale) }), symbolTextAndIcon: (u, t) => ({ u_is_size_zoom_constant: new c.aI(u, t.u_is_size_zoom_constant), u_is_size_feature_constant: new c.aI(u, t.u_is_size_feature_constant), u_size_t: new c.aJ(u, t.u_size_t), u_size: new c.aJ(u, t.u_size), u_camera_to_center_distance: new c.aJ(u, t.u_camera_to_center_distance), u_pitch: new c.aJ(u, t.u_pitch), u_rotate_symbol: new c.aI(u, t.u_rotate_symbol), u_aspect_ratio: new c.aJ(u, t.u_aspect_ratio), u_fade_change: new c.aJ(u, t.u_fade_change), u_matrix: new c.aK(u, t.u_matrix), u_label_plane_matrix: new c.aK(u, t.u_label_plane_matrix), u_coord_matrix: new c.aK(u, t.u_coord_matrix), u_is_text: new c.aI(u, t.u_is_text), u_pitch_with_map: new c.aI(u, t.u_pitch_with_map), u_is_along_line: new c.aI(u, t.u_is_along_line), u_is_variable_anchor: new c.aI(u, t.u_is_variable_anchor), u_texsize: new c.aP(u, t.u_texsize), u_texsize_icon: new c.aP(u, t.u_texsize_icon), u_texture: new c.aI(u, t.u_texture), u_texture_icon: new c.aI(u, t.u_texture_icon), u_gamma_scale: new c.aJ(u, t.u_gamma_scale), u_device_pixel_ratio: new c.aJ(u, t.u_device_pixel_ratio), u_is_halo: new c.aI(u, t.u_is_halo), u_translation: new c.aP(u, t.u_translation), u_pitched_scale: new c.aJ(u, t.u_pitched_scale) }), background: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_opacity: new c.aJ(u, t.u_opacity), u_color: new c.aM(u, t.u_color) }), backgroundPattern: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_opacity: new c.aJ(u, t.u_opacity), u_image: new c.aI(u, t.u_image), u_pattern_tl_a: new c.aP(u, t.u_pattern_tl_a), u_pattern_br_a: new c.aP(u, t.u_pattern_br_a), u_pattern_tl_b: new c.aP(u, t.u_pattern_tl_b), u_pattern_br_b: new c.aP(u, t.u_pattern_br_b), u_texsize: new c.aP(u, t.u_texsize), u_mix: new c.aJ(u, t.u_mix), u_pattern_size_a: new c.aP(u, t.u_pattern_size_a), u_pattern_size_b: new c.aP(u, t.u_pattern_size_b), u_scale_a: new c.aJ(u, t.u_scale_a), u_scale_b: new c.aJ(u, t.u_scale_b), u_pixel_coord_upper: new c.aP(u, t.u_pixel_coord_upper), u_pixel_coord_lower: new c.aP(u, t.u_pixel_coord_lower), u_tile_units_to_pixels: new c.aJ(u, t.u_tile_units_to_pixels) }), terrain: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_texture: new c.aI(u, t.u_texture), u_ele_delta: new c.aJ(u, t.u_ele_delta), u_fog_matrix: new c.aK(u, t.u_fog_matrix), u_fog_color: new c.aM(u, t.u_fog_color), u_fog_ground_blend: new c.aJ(u, t.u_fog_ground_blend), u_fog_ground_blend_opacity: new c.aJ(u, t.u_fog_ground_blend_opacity), u_horizon_color: new c.aM(u, t.u_horizon_color), u_horizon_fog_blend: new c.aJ(u, t.u_horizon_fog_blend) }), terrainDepth: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_ele_delta: new c.aJ(u, t.u_ele_delta) }), terrainCoords: (u, t) => ({ u_matrix: new c.aK(u, t.u_matrix), u_texture: new c.aI(u, t.u_texture), u_terrain_coords_id: new c.aJ(u, t.u_terrain_coords_id), u_ele_delta: new c.aJ(u, t.u_ele_delta) }), sky: (u, t) => ({ u_sky_color: new c.aM(u, t.u_sky_color), u_horizon_color: new c.aM(u, t.u_horizon_color), u_horizon: new c.aJ(u, t.u_horizon), u_sky_horizon_blend: new c.aJ(u, t.u_sky_horizon_blend) }) };
|
13455
13455
|
class na {
|
13456
13456
|
constructor(t, n, o) {
|
@@ -13679,7 +13679,7 @@ uniform ${k} ${A} u_${R};
|
|
13679
13679
|
t ? n.enable(n.CULL_FACE) : n.disable(n.CULL_FACE), this.current = t, this.dirty = !1;
|
13680
13680
|
}
|
13681
13681
|
}
|
13682
|
-
class
|
13682
|
+
class Wc extends ft {
|
13683
13683
|
getDefault() {
|
13684
13684
|
return this.gl.BACK;
|
13685
13685
|
}
|
@@ -13703,7 +13703,7 @@ uniform ${k} ${A} u_${R};
|
|
13703
13703
|
(t !== this.current || this.dirty) && (this.gl.useProgram(t), this.current = t, this.dirty = !1);
|
13704
13704
|
}
|
13705
13705
|
}
|
13706
|
-
class
|
13706
|
+
class Xc extends ft {
|
13707
13707
|
getDefault() {
|
13708
13708
|
return this.gl.TEXTURE0;
|
13709
13709
|
}
|
@@ -13872,7 +13872,7 @@ uniform ${k} ${A} u_${R};
|
|
13872
13872
|
class da {
|
13873
13873
|
constructor(t) {
|
13874
13874
|
var n, o;
|
13875
|
-
if (this.gl = t, this.clearColor = new ws(this), this.clearDepth = new Uc(this), this.clearStencil = new lo(this), this.colorMask = new qc(this), this.depthMask = new Nn(this), this.stencilMask = new Zc(this), this.stencilFunc = new Il(this), this.stencilOp = new Gc(this), this.stencilTest = new Pl(this), this.depthRange = new aa(this), this.depthTest = new kl(this), this.depthFunc = new Al(this), this.blend = new Cl(this), this.blendFunc = new El(this), this.blendColor = new xn(this), this.blendEquation = new Ml(this), this.cullFace = new Hc(this), this.cullFaceSide = new
|
13875
|
+
if (this.gl = t, this.clearColor = new ws(this), this.clearDepth = new Uc(this), this.clearStencil = new lo(this), this.colorMask = new qc(this), this.depthMask = new Nn(this), this.stencilMask = new Zc(this), this.stencilFunc = new Il(this), this.stencilOp = new Gc(this), this.stencilTest = new Pl(this), this.depthRange = new aa(this), this.depthTest = new kl(this), this.depthFunc = new Al(this), this.blend = new Cl(this), this.blendFunc = new El(this), this.blendColor = new xn(this), this.blendEquation = new Ml(this), this.cullFace = new Hc(this), this.cullFaceSide = new Wc(this), this.frontFace = new zl(this), this.program = new Ss(this), this.activeTexture = new Xc(this), this.viewport = new co(this), this.bindFramebuffer = new Jc(this), this.bindRenderbuffer = new Kc(this), this.bindTexture = new Dl(this), this.bindVertexBuffer = new Ll(this), this.bindElementBuffer = new Rl(this), this.bindVertexArray = new la(this), this.pixelStoreUnpack = new Bl(this), this.pixelStoreUnpackPremultiplyAlpha = new ho(this), this.pixelStoreUnpackFlipY = new Or(this), this.extTextureFilterAnisotropic = t.getExtension("EXT_texture_filter_anisotropic") || t.getExtension("MOZ_EXT_texture_filter_anisotropic") || t.getExtension("WEBKIT_EXT_texture_filter_anisotropic"), this.extTextureFilterAnisotropic && (this.extTextureFilterAnisotropicMax = t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)), this.maxTextureSize = t.getParameter(t.MAX_TEXTURE_SIZE), Vn(t)) {
|
13876
13876
|
this.HALF_FLOAT = t.HALF_FLOAT;
|
13877
13877
|
const a = t.getExtension("EXT_color_buffer_half_float");
|
13878
13878
|
this.RGBA16F = (n = t.RGBA16F) !== null && n !== void 0 ? n : a == null ? void 0 : a.RGBA16F_EXT, this.RGB16F = (o = t.RGB16F) !== null && o !== void 0 ? o : a == null ? void 0 : a.RGB16F_EXT, t.getExtension("EXT_color_buffer_float");
|
@@ -13952,8 +13952,8 @@ uniform ${k} ${A} u_${R};
|
|
13952
13952
|
function Ol(u, t, n, o, a) {
|
13953
13953
|
const h = u.context, g = h.gl, y = u.useProgram("collisionBox"), b = [];
|
13954
13954
|
let w = 0, k = 0;
|
13955
|
-
for (let
|
13956
|
-
const K = o[
|
13955
|
+
for (let W = 0; W < o.length; W++) {
|
13956
|
+
const K = o[W], $ = t.getTile(K).getBucket(n);
|
13957
13957
|
if (!$) continue;
|
13958
13958
|
const ee = a ? $.textCollisionBox : $.iconCollisionBox, ne = $.collisionCircleArray;
|
13959
13959
|
if (ne.length > 0) {
|
@@ -13967,12 +13967,12 @@ uniform ${k} ${A} u_${R};
|
|
13967
13967
|
const R = u.useProgram("collisionCircle"), F = new c.aS();
|
13968
13968
|
F.resize(4 * w), F._trim();
|
13969
13969
|
let N = 0;
|
13970
|
-
for (const
|
13971
|
-
const $ = 4 * K, ee =
|
13970
|
+
for (const W of b) for (let K = 0; K < W.circleArray.length / 4; K++) {
|
13971
|
+
const $ = 4 * K, ee = W.circleArray[$ + 0], ne = W.circleArray[$ + 1], le = W.circleArray[$ + 2], _e = W.circleArray[$ + 3];
|
13972
13972
|
F.emplace(N++, ee, ne, le, _e, 0), F.emplace(N++, ee, ne, le, _e, 1), F.emplace(N++, ee, ne, le, _e, 2), F.emplace(N++, ee, ne, le, _e, 3);
|
13973
13973
|
}
|
13974
|
-
(!Is || Is.length < 2 * w) && (Is = function(
|
13975
|
-
const K = 2 *
|
13974
|
+
(!Is || Is.length < 2 * w) && (Is = function(W) {
|
13975
|
+
const K = 2 * W, $ = new c.aU();
|
13976
13976
|
$.resize(K), $._trim();
|
13977
13977
|
for (let ee = 0; ee < K; ee++) {
|
13978
13978
|
const ne = 6 * ee;
|
@@ -13981,9 +13981,9 @@ uniform ${k} ${A} u_${R};
|
|
13981
13981
|
return $;
|
13982
13982
|
}(w));
|
13983
13983
|
const G = h.createIndexBuffer(Is, !0), j = h.createVertexBuffer(F, c.aT.members, !0);
|
13984
|
-
for (const
|
13985
|
-
const K = Vc(
|
13986
|
-
R.draw(h, g.TRIANGLES, dt.disabled, $t.disabled, u.colorModeForRenderPass(), Dt.disabled, K, u.style.map.terrain && u.style.map.terrain.getTerrainData(
|
13984
|
+
for (const W of b) {
|
13985
|
+
const K = Vc(W.transform, W.invTransform, u.transform);
|
13986
|
+
R.draw(h, g.TRIANGLES, dt.disabled, $t.disabled, u.colorModeForRenderPass(), Dt.disabled, K, u.style.map.terrain && u.style.map.terrain.getTerrainData(W.coord), n.id, j, G, c.a0.simpleSegment(0, 2 * W.circleOffset, W.circleArray.length, W.circleArray.length / 2), null, u.transform.zoom, null, null, null);
|
13987
13987
|
}
|
13988
13988
|
j.destroy(), G.destroy();
|
13989
13989
|
}
|
@@ -14006,7 +14006,7 @@ uniform ${k} ${A} u_${R};
|
|
14006
14006
|
return u.add(o);
|
14007
14007
|
}
|
14008
14008
|
function fo(u, t, n, o, a, h, g, y, b, w, k, A, R, F) {
|
14009
|
-
const N = u.text.placedSymbolArray, G = u.text.dynamicLayoutVertexArray, j = u.icon.dynamicLayoutVertexArray,
|
14009
|
+
const N = u.text.placedSymbolArray, G = u.text.dynamicLayoutVertexArray, j = u.icon.dynamicLayoutVertexArray, W = {};
|
14010
14010
|
G.clear();
|
14011
14011
|
for (let K = 0; K < N.length; K++) {
|
14012
14012
|
const $ = N.get(K), ee = $.hidden || !$.crossTileID || u.allowVerticalPlacement && !$.placedOrientation ? null : o[$.crossTileID];
|
@@ -14016,19 +14016,19 @@ uniform ${k} ${A} u_${R};
|
|
14016
14016
|
n && (ze *= u.tilePixelRatio / y);
|
14017
14017
|
const { width: Le, height: we, anchor: Se, textOffset: Ne, textBoxScale: tt } = ee, Pe = uo(Se, Le, we, Ne, tt, ze), Ce = k.getPitchedTextCorrection(a, ne.add(new c.P(A[0], A[1])), R), Qe = po(_e.point, le, t, Pe, a.angle, Ce), Rt = u.allowVerticalPlacement && $.placedOrientation === c.ai.vertical ? Math.PI / 2 : 0;
|
14018
14018
|
for (let at = 0; at < $.numGlyphs; at++) c.ak(G, Qe, Rt);
|
14019
|
-
w && $.associatedIconIndex >= 0 && (
|
14020
|
-
} else
|
14019
|
+
w && $.associatedIconIndex >= 0 && (W[$.associatedIconIndex] = { shiftedAnchor: Qe, angle: Rt });
|
14020
|
+
} else We($.numGlyphs, G);
|
14021
14021
|
}
|
14022
14022
|
if (w) {
|
14023
14023
|
j.clear();
|
14024
14024
|
const K = u.icon.placedSymbolArray;
|
14025
14025
|
for (let $ = 0; $ < K.length; $++) {
|
14026
14026
|
const ee = K.get($);
|
14027
|
-
if (ee.hidden)
|
14027
|
+
if (ee.hidden) We(ee.numGlyphs, j);
|
14028
14028
|
else {
|
14029
|
-
const ne =
|
14029
|
+
const ne = W[$];
|
14030
14030
|
if (ne) for (let le = 0; le < ee.numGlyphs; le++) c.ak(j, ne.shiftedAnchor, ne.angle);
|
14031
|
-
else
|
14031
|
+
else We(ee.numGlyphs, j);
|
14032
14032
|
}
|
14033
14033
|
}
|
14034
14034
|
u.icon.dynamicLayoutVertexBuffer.updateData(j);
|
@@ -14039,7 +14039,7 @@ uniform ${k} ${A} u_${R};
|
|
14039
14039
|
return n.iconsInText && t ? "symbolTextAndIcon" : u ? "symbolSDF" : "symbolIcon";
|
14040
14040
|
}
|
14041
14041
|
function nn(u, t, n, o, a, h, g, y, b, w, k, A) {
|
14042
|
-
const R = u.context, F = R.gl, N = u.transform, G = Ys(), j = y === "map",
|
14042
|
+
const R = u.context, F = R.gl, N = u.transform, G = Ys(), j = y === "map", W = b === "map", K = y !== "viewport" && n.layout.get("symbol-placement") !== "point", $ = j && !W && !K, ee = !W && K, ne = !n.layout.get("symbol-sort-key").isConstant();
|
14043
14043
|
let le = !1;
|
14044
14044
|
const _e = u.depthModeForSublayer(0, dt.ReadOnly), be = n._unevaluatedLayout.hasValue("text-variable-anchor") || n._unevaluatedLayout.hasValue("text-variable-anchor-offset"), ze = [], Le = G.getCircleRadiusCorrection(N);
|
14045
14045
|
for (const we of o) {
|
@@ -14047,21 +14047,21 @@ uniform ${k} ${A} u_${R};
|
|
14047
14047
|
if (!Ne) continue;
|
14048
14048
|
const tt = a ? Ne.text : Ne.icon;
|
14049
14049
|
if (!tt || !tt.segments.get().length || !tt.hasVisibleVertices) continue;
|
14050
|
-
const Pe = tt.programConfigurations.get(n.id), Ce = a || Ne.sdfIcons, Qe = a ? Ne.textSizeData : Ne.iconSizeData, Rt =
|
14050
|
+
const Pe = tt.programConfigurations.get(n.id), Ce = a || Ne.sdfIcons, Qe = a ? Ne.textSizeData : Ne.iconSizeData, Rt = W || N.pitch !== 0, at = u.useProgram(ma(Ce, a, Ne), Pe), pt = c.ah(Qe, N.zoom), Bt = u.style.map.terrain && u.style.map.terrain.getTerrainData(we);
|
14051
14051
|
let gi, lr, Ft, Ri, Ci = [0, 0], _i = null;
|
14052
14052
|
if (a) lr = Se.glyphAtlasTexture, Ft = F.LINEAR, gi = Se.glyphAtlasTexture.size, Ne.iconsInText && (Ci = Se.imageAtlasTexture.size, _i = Se.imageAtlasTexture, Ri = Rt || u.options.rotating || u.options.zooming || Qe.kind === "composite" || Qe.kind === "camera" ? F.LINEAR : F.NEAREST);
|
14053
14053
|
else {
|
14054
14054
|
const jt = n.layout.get("icon-size").constantOr(0) !== 1 || Ne.iconsNeedLinear;
|
14055
14055
|
lr = Se.imageAtlasTexture, Ft = Ce || u.options.rotating || u.options.zooming || jt || Rt ? F.LINEAR : F.NEAREST, gi = Se.imageAtlasTexture.size;
|
14056
14056
|
}
|
14057
|
-
const yi = nt(Se, 1, u.transform.zoom), cr = ee ? we.posMatrix : fa, kn = Qr(cr,
|
14057
|
+
const yi = nt(Se, 1, u.transform.zoom), cr = ee ? we.posMatrix : fa, kn = Qr(cr, W, j, u.transform, yi), Co = Tr(cr, W, j, u.transform, yi), Xn = Tr(we.posMatrix, W, j, u.transform, yi), An = G.translatePosition(u.transform, Se, h, g), Eo = be && Ne.hasTextData(), Ga = n.layout.get("icon-text-fit") !== "none" && Eo && Ne.hasIconData();
|
14058
14058
|
if (K) {
|
14059
14059
|
const jt = u.style.map.terrain ? (Ha, ni) => u.style.map.terrain.getElevation(we, Ha, ni) : null, Kn = n.layout.get("text-rotation-alignment") === "map";
|
14060
|
-
V(Ne, we.posMatrix, u, a, kn,
|
14060
|
+
V(Ne, we.posMatrix, u, a, kn, Xn, W, w, Kn, G, we.toUnwrapped(), N.width, N.height, An, jt);
|
14061
14061
|
}
|
14062
14062
|
const hi = we.posMatrix, hr = a && be || Ga, an = K || hr ? fa : kn, Jn = Co, xi = Ce && n.paint.get(a ? "text-halo-width" : "icon-halo-width").constantOr(1) !== 0;
|
14063
14063
|
let vi;
|
14064
|
-
vi = Ce ? Ne.iconsInText ? jc(Qe.kind, pt, $,
|
14064
|
+
vi = Ce ? Ne.iconsInText ? jc(Qe.kind, pt, $, W, K, hr, u, hi, an, Jn, An, gi, Ci, Le) : Tl(Qe.kind, pt, $, W, K, hr, u, hi, an, Jn, An, a, gi, !0, Le) : Sl(Qe.kind, pt, $, W, K, hr, u, hi, an, Jn, An, a, gi, Le);
|
14065
14065
|
const oi = { program: at, buffers: tt, uniformValues: vi, atlasTexture: lr, atlasTextureIcon: _i, atlasInterpolation: Ft, atlasInterpolationIcon: Ri, isSDF: Ce, hasHalo: xi };
|
14066
14066
|
if (ne && Ne.canOverlap) {
|
14067
14067
|
le = !0;
|
@@ -14097,14 +14097,14 @@ uniform ${k} ${A} u_${R};
|
|
14097
14097
|
const y = u.context.gl, b = "fill-pattern", w = n.paint.get(b), k = w && w.constantOr(1), A = n.getCrossfadeParameters();
|
14098
14098
|
let R, F, N, G, j;
|
14099
14099
|
g ? (F = k && !n.getPaintProperty("fill-outline-color") ? "fillOutlinePattern" : "fillOutline", R = y.LINES) : (F = k ? "fillPattern" : "fill", R = y.TRIANGLES);
|
14100
|
-
const
|
14100
|
+
const W = w.constantOr(null);
|
14101
14101
|
for (const K of o) {
|
14102
14102
|
const $ = t.getTile(K);
|
14103
14103
|
if (k && !$.patternsLoaded()) continue;
|
14104
14104
|
const ee = $.getBucket(n);
|
14105
14105
|
if (!ee) continue;
|
14106
14106
|
const ne = ee.programConfigurations.get(n.id), le = u.useProgram(F, ne), _e = u.style.map.terrain && u.style.map.terrain.getTerrainData(K);
|
14107
|
-
k && (u.context.activeTexture.set(y.TEXTURE0), $.imageAtlasTexture.bind(y.LINEAR, y.CLAMP_TO_EDGE), ne.updatePaintBuffers(A)), Hi(ne, b,
|
14107
|
+
k && (u.context.activeTexture.set(y.TEXTURE0), $.imageAtlasTexture.bind(y.LINEAR, y.CLAMP_TO_EDGE), ne.updatePaintBuffers(A)), Hi(ne, b, W, $, n);
|
14108
14108
|
const be = _e ? K : null, ze = u.translatePosMatrix(be ? be.posMatrix : K.posMatrix, $, n.paint.get("fill-translate"), n.paint.get("fill-translate-anchor"));
|
14109
14109
|
if (g) {
|
14110
14110
|
G = ee.indexBuffer2, j = ee.segments2;
|
@@ -14117,12 +14117,12 @@ uniform ${k} ${A} u_${R};
|
|
14117
14117
|
function mo(u, t, n, o, a, h, g) {
|
14118
14118
|
const y = u.context, b = y.gl, w = "fill-extrusion-pattern", k = n.paint.get(w), A = k.constantOr(1), R = n.getCrossfadeParameters(), F = n.paint.get("fill-extrusion-opacity"), N = k.constantOr(null);
|
14119
14119
|
for (const G of o) {
|
14120
|
-
const j = t.getTile(G),
|
14121
|
-
if (!
|
14122
|
-
const K = u.style.map.terrain && u.style.map.terrain.getTerrainData(G), $ =
|
14120
|
+
const j = t.getTile(G), W = j.getBucket(n);
|
14121
|
+
if (!W) continue;
|
14122
|
+
const K = u.style.map.terrain && u.style.map.terrain.getTerrainData(G), $ = W.programConfigurations.get(n.id), ee = u.useProgram(A ? "fillExtrusionPattern" : "fillExtrusion", $);
|
14123
14123
|
A && (u.context.activeTexture.set(b.TEXTURE0), j.imageAtlasTexture.bind(b.LINEAR, b.CLAMP_TO_EDGE), $.updatePaintBuffers(R)), Hi($, w, N, j, n);
|
14124
14124
|
const ne = u.translatePosMatrix(G.posMatrix, j, n.paint.get("fill-extrusion-translate"), n.paint.get("fill-extrusion-translate-anchor")), le = n.paint.get("fill-extrusion-vertical-gradient"), _e = A ? no(ne, u, le, F, G, R, j) : ro(ne, u, le, F);
|
14125
|
-
ee.draw(y, y.gl.TRIANGLES, a, h, g, Dt.backCCW, _e, K, n.id,
|
14125
|
+
ee.draw(y, y.gl.TRIANGLES, a, h, g, Dt.backCCW, _e, K, n.id, W.layoutVertexBuffer, W.indexBuffer, W.segments, n.paint, u.transform.zoom, $, u.style.map.terrain && W.centroidVertexBuffer);
|
14126
14126
|
}
|
14127
14127
|
}
|
14128
14128
|
function _a(u, t, n, o, a, h, g) {
|
@@ -14130,11 +14130,11 @@ uniform ${k} ${A} u_${R};
|
|
14130
14130
|
if (!w) return;
|
14131
14131
|
const k = u.useProgram("hillshade"), A = u.style.map.terrain && u.style.map.terrain.getTerrainData(t);
|
14132
14132
|
y.activeTexture.set(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, w.colorAttachment.get()), k.draw(y, b.TRIANGLES, a, h, g, Dt.disabled, ((R, F, N, G) => {
|
14133
|
-
const j = N.paint.get("hillshade-shadow-color"),
|
14133
|
+
const j = N.paint.get("hillshade-shadow-color"), W = N.paint.get("hillshade-highlight-color"), K = N.paint.get("hillshade-accent-color");
|
14134
14134
|
let $ = N.paint.get("hillshade-illumination-direction") * (Math.PI / 180);
|
14135
14135
|
N.paint.get("hillshade-illumination-anchor") === "viewport" && ($ -= R.transform.angle);
|
14136
14136
|
const ee = !R.options.moving;
|
14137
|
-
return { u_matrix: G ? G.posMatrix : R.transform.calculatePosMatrix(F.tileID.toUnwrapped(), ee), u_image: 0, u_latrange: Gi(0, F.tileID), u_light: [N.paint.get("hillshade-exaggeration"), $], u_shadow: j, u_highlight:
|
14137
|
+
return { u_matrix: G ? G.posMatrix : R.transform.calculatePosMatrix(F.tileID.toUnwrapped(), ee), u_image: 0, u_latrange: Gi(0, F.tileID), u_light: [N.paint.get("hillshade-exaggeration"), $], u_shadow: j, u_highlight: W, u_accent: K };
|
14138
14138
|
})(u, n, o, A ? t : null), A, o.id, u.rasterBoundsBuffer, u.quadTriangleIndexBuffer, u.rasterBoundsSegments);
|
14139
14139
|
}
|
14140
14140
|
function bn(u, t, n, o, a, h) {
|
@@ -14181,10 +14181,10 @@ uniform ${k} ${A} u_${R};
|
|
14181
14181
|
o.activeTexture.set(a.TEXTURE0);
|
14182
14182
|
const R = t.getTileByID(n.key).latestRawTileData, F = Math.floor((R && R.byteLength || 0) / 1024), N = t.getTile(n).tileSize, G = 512 / Math.min(N, 512) * (n.overscaledZ / u.transform.zoom) * 0.5;
|
14183
14183
|
let j = n.canonical.toString();
|
14184
|
-
n.overscaledZ !== n.canonical.z && (j += ` => ${n.overscaledZ}`), function(
|
14185
|
-
|
14186
|
-
const $ =
|
14187
|
-
ne.clearRect(0, 0, $.width, $.height), ne.shadowColor = "white", ne.shadowBlur = 2, ne.lineWidth = 1.5, ne.strokeStyle = "white", ne.textBaseline = "top", ne.font = "bold 36px Open Sans, sans-serif", ne.fillText(K, 5, 5), ne.strokeText(K, 5, 5),
|
14184
|
+
n.overscaledZ !== n.canonical.z && (j += ` => ${n.overscaledZ}`), function(W, K) {
|
14185
|
+
W.initDebugOverlayCanvas();
|
14186
|
+
const $ = W.debugOverlayCanvas, ee = W.context.gl, ne = W.debugOverlayCanvas.getContext("2d");
|
14187
|
+
ne.clearRect(0, 0, $.width, $.height), ne.shadowColor = "white", ne.shadowBlur = 2, ne.lineWidth = 1.5, ne.strokeStyle = "white", ne.textBaseline = "top", ne.font = "bold 36px Open Sans, sans-serif", ne.fillText(K, 5, 5), ne.strokeText(K, 5, 5), W.debugOverlayTexture.update($), W.debugOverlayTexture.bind(ee.LINEAR, ee.CLAMP_TO_EDGE);
|
14188
14188
|
}(u, `${j} ${F}kB`), g.draw(o, a.TRIANGLES, y, b, Et.alphaBlended, Dt.disabled, rn(h, c.aN.transparent, G), null, k, u.debugBuffer, u.quadTriangleIndexBuffer, u.debugSegments), g.draw(o, a.LINE_STRIP, y, b, w, Dt.disabled, rn(h, c.aN.red), A, k, u.debugBuffer, u.tileBorderIndexBuffer, u.debugSegments);
|
14189
14189
|
}
|
14190
14190
|
function ks(u, t, n) {
|
@@ -14298,14 +14298,14 @@ uniform ${k} ${A} u_${R};
|
|
14298
14298
|
(k.type === "custom" || A.length) && this.renderLayer(this, h[k.source], k, A);
|
14299
14299
|
}
|
14300
14300
|
if (this.context.bindFramebuffer.set(null), this.context.clear({ color: n.showOverdrawInspector ? c.aN.black : c.aN.transparent, depth: 1 }), this.clearStencil(), !((o = this.style.stylesheet) === null || o === void 0) && o.sky && function(w, k) {
|
14301
|
-
const A = w.context, R = A.gl, F = ((K, $, ee) => ({ u_sky_color: K.properties.get("sky-color"), u_horizon_color: K.properties.get("horizon-color"), u_horizon: ($.height / 2 + $.getHorizon()) * ee, u_sky_horizon_blend: K.properties.get("sky-horizon-blend") * $.height / 2 * ee }))(k, w.style.map.transform, w.pixelRatio), N = new dt(R.LEQUAL, dt.ReadWrite, [0, 1]), G = $t.disabled, j = w.colorModeForRenderPass(),
|
14301
|
+
const A = w.context, R = A.gl, F = ((K, $, ee) => ({ u_sky_color: K.properties.get("sky-color"), u_horizon_color: K.properties.get("horizon-color"), u_horizon: ($.height / 2 + $.getHorizon()) * ee, u_sky_horizon_blend: K.properties.get("sky-horizon-blend") * $.height / 2 * ee }))(k, w.style.map.transform, w.pixelRatio), N = new dt(R.LEQUAL, dt.ReadWrite, [0, 1]), G = $t.disabled, j = w.colorModeForRenderPass(), W = w.useProgram("sky");
|
14302
14302
|
if (!k.mesh) {
|
14303
14303
|
const K = new c.aX();
|
14304
14304
|
K.emplaceBack(-1, -1), K.emplaceBack(1, -1), K.emplaceBack(1, 1), K.emplaceBack(-1, 1);
|
14305
14305
|
const $ = new c.aY();
|
14306
14306
|
$.emplaceBack(0, 1, 2), $.emplaceBack(0, 2, 3), k.mesh = new Nl(A.createVertexBuffer(K, _s.members), A.createIndexBuffer($), c.a0.simpleSegment(0, 0, K.length, $.length));
|
14307
14307
|
}
|
14308
|
-
|
14308
|
+
W.draw(A, R.TRIANGLES, N, G, j, Dt.disabled, F, void 0, "sky", k.mesh.vertexBuffer, k.mesh.indexBuffer, k.mesh.segments);
|
14309
14309
|
}(this, this.style.sky), this._showOverdrawInspector = n.showOverdrawInspector, this.depthRangeFor3D = [0, 1 - (t._order.length + 2) * this.numSublayers * this.depthEpsilon], !this.renderToTexture) for (this.renderPass = "opaque", this.currentLayer = a.length - 1; this.currentLayer >= 0; this.currentLayer--) {
|
14310
14310
|
const w = this.style._layers[a[this.currentLayer]], k = h[w.source], A = g[w.source];
|
14311
14311
|
this._renderTileClippingMasks(w, A), this.renderLayer(this, k, w, A);
|
@@ -14319,10 +14319,10 @@ uniform ${k} ${A} u_${R};
|
|
14319
14319
|
if (this.options.showTileBoundaries) {
|
14320
14320
|
const w = function(k, A) {
|
14321
14321
|
let R = null;
|
14322
|
-
const F = Object.values(k._layers).flatMap((
|
14323
|
-
(!R || R.getSource().maxzoom <
|
14322
|
+
const F = Object.values(k._layers).flatMap((W) => W.source && !W.isHidden(A) ? [k.sourceCaches[W.source]] : []), N = F.filter((W) => W.getSource().type === "vector"), G = F.filter((W) => W.getSource().type !== "vector"), j = (W) => {
|
14323
|
+
(!R || R.getSource().maxzoom < W.getSource().maxzoom) && (R = W);
|
14324
14324
|
};
|
14325
|
-
return N.forEach((
|
14325
|
+
return N.forEach((W) => j(W)), R || G.forEach((W) => j(W)), R;
|
14326
14326
|
}(this.style, this.transform.zoom);
|
14327
14327
|
w && function(k, A, R) {
|
14328
14328
|
for (let F = 0; F < R.length; F++) yt(k, A, R[F]);
|
@@ -14355,8 +14355,8 @@ uniform ${k} ${A} u_${R};
|
|
14355
14355
|
for (const G of F) {
|
14356
14356
|
const j = g.getTerrainData(G.tileID);
|
14357
14357
|
y.activeTexture.set(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, R.texture);
|
14358
|
-
const
|
14359
|
-
N.draw(y, b.TRIANGLES, k, $t.disabled, w, Dt.backCCW,
|
14358
|
+
const W = { u_matrix: h.transform.calculatePosMatrix(G.tileID.toUnwrapped()), u_terrain_coords_id: (255 - g.coordsIndex.length) / 255, u_texture: 0, u_ele_delta: g.getMeshFrameDelta(h.transform.zoom) };
|
14359
|
+
N.draw(y, b.TRIANGLES, k, $t.disabled, w, Dt.backCCW, W, j, "terrain", A.vertexBuffer, A.indexBuffer, A.segments), g.coordsIndex.push(G.tileID.key);
|
14360
14360
|
}
|
14361
14361
|
y.bindFramebuffer.set(null), y.viewport.set([0, 0, h.width, h.height]);
|
14362
14362
|
}(this, this.style.map.terrain));
|
@@ -14367,8 +14367,8 @@ uniform ${k} ${A} u_${R};
|
|
14367
14367
|
(function(h, g, y, b, w) {
|
14368
14368
|
if (h.renderPass !== "translucent") return;
|
14369
14369
|
const k = $t.disabled, A = h.colorModeForRenderPass();
|
14370
|
-
(y._unevaluatedLayout.hasValue("text-variable-anchor") || y._unevaluatedLayout.hasValue("text-variable-anchor-offset")) && function(R, F, N, G, j,
|
14371
|
-
const ne = F.transform, le = Ys(), _e = j === "map", be =
|
14370
|
+
(y._unevaluatedLayout.hasValue("text-variable-anchor") || y._unevaluatedLayout.hasValue("text-variable-anchor-offset")) && function(R, F, N, G, j, W, K, $, ee) {
|
14371
|
+
const ne = F.transform, le = Ys(), _e = j === "map", be = W === "map";
|
14372
14372
|
for (const ze of R) {
|
14373
14373
|
const Le = G.getTile(ze), we = Le.getBucket(N);
|
14374
14374
|
if (!we || !we.text || !we.text.segments.get().length) continue;
|
@@ -14386,7 +14386,7 @@ uniform ${k} ${A} u_${R};
|
|
14386
14386
|
if (h.renderPass !== "translucent") return;
|
14387
14387
|
const w = y.paint.get("circle-opacity"), k = y.paint.get("circle-stroke-width"), A = y.paint.get("circle-stroke-opacity"), R = !y.layout.get("circle-sort-key").isConstant();
|
14388
14388
|
if (w.constantOr(1) === 0 && (k.constantOr(1) === 0 || A.constantOr(1) === 0)) return;
|
14389
|
-
const F = h.context, N = F.gl, G = h.depthModeForSublayer(0, dt.ReadOnly), j = $t.disabled,
|
14389
|
+
const F = h.context, N = F.gl, G = h.depthModeForSublayer(0, dt.ReadOnly), j = $t.disabled, W = h.colorModeForRenderPass(), K = [];
|
14390
14390
|
for (let $ = 0; $ < b.length; $++) {
|
14391
14391
|
const ee = b[$], ne = g.getTile(ee), le = ne.getBucket(y);
|
14392
14392
|
if (!le) continue;
|
@@ -14399,7 +14399,7 @@ uniform ${k} ${A} u_${R};
|
|
14399
14399
|
R && K.sort(($, ee) => $.sortKey - ee.sortKey);
|
14400
14400
|
for (const $ of K) {
|
14401
14401
|
const { programConfiguration: ee, program: ne, layoutVertexBuffer: le, indexBuffer: _e, uniformValues: be, terrainData: ze } = $.state;
|
14402
|
-
ne.draw(F, N.TRIANGLES, G, j,
|
14402
|
+
ne.draw(F, N.TRIANGLES, G, j, W, Dt.disabled, be, ze, y.id, le, _e, $.segments, y.paint, h.transform.zoom, ee);
|
14403
14403
|
}
|
14404
14404
|
})(t, n, o, a);
|
14405
14405
|
break;
|
@@ -14410,15 +14410,15 @@ uniform ${k} ${A} u_${R};
|
|
14410
14410
|
(function(F, N, G) {
|
14411
14411
|
const j = F.gl;
|
14412
14412
|
F.activeTexture.set(j.TEXTURE1), F.viewport.set([0, 0, N.width / 4, N.height / 4]);
|
14413
|
-
let
|
14414
|
-
if (
|
14413
|
+
let W = G.heatmapFbo;
|
14414
|
+
if (W) j.bindTexture(j.TEXTURE_2D, W.colorAttachment.get()), F.bindFramebuffer.set(W.framebuffer);
|
14415
14415
|
else {
|
14416
14416
|
const K = j.createTexture();
|
14417
|
-
j.bindTexture(j.TEXTURE_2D, K), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_WRAP_S, j.CLAMP_TO_EDGE), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_WRAP_T, j.CLAMP_TO_EDGE), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_MIN_FILTER, j.LINEAR), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_MAG_FILTER, j.LINEAR),
|
14417
|
+
j.bindTexture(j.TEXTURE_2D, K), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_WRAP_S, j.CLAMP_TO_EDGE), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_WRAP_T, j.CLAMP_TO_EDGE), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_MIN_FILTER, j.LINEAR), j.texParameteri(j.TEXTURE_2D, j.TEXTURE_MAG_FILTER, j.LINEAR), W = G.heatmapFbo = F.createFramebuffer(N.width / 4, N.height / 4, !1, !1), function($, ee, ne, le) {
|
14418
14418
|
var _e, be;
|
14419
14419
|
const ze = $.gl, Le = (_e = $.HALF_FLOAT) !== null && _e !== void 0 ? _e : ze.UNSIGNED_BYTE, we = (be = $.RGBA16F) !== null && be !== void 0 ? be : ze.RGBA;
|
14420
14420
|
ze.texImage2D(ze.TEXTURE_2D, 0, we, ee.width / 4, ee.height / 4, 0, ze.RGBA, Le, null), le.colorAttachment.set(ne);
|
14421
|
-
}(F, N, K,
|
14421
|
+
}(F, N, K, W);
|
14422
14422
|
}
|
14423
14423
|
})(w, h, y), w.clear({ color: c.aN.transparent });
|
14424
14424
|
for (let F = 0; F < b.length; F++) {
|
@@ -14426,8 +14426,8 @@ uniform ${k} ${A} u_${R};
|
|
14426
14426
|
if (g.hasRenderableParent(N)) continue;
|
14427
14427
|
const G = g.getTile(N), j = G.getBucket(y);
|
14428
14428
|
if (!j) continue;
|
14429
|
-
const
|
14430
|
-
K.draw(w, k.TRIANGLES, dt.disabled, A, R, Dt.disabled, Zi(N.posMatrix, G, $, y.paint.get("heatmap-intensity")), null, y.id, j.layoutVertexBuffer, j.indexBuffer, j.segments, y.paint, h.transform.zoom,
|
14429
|
+
const W = j.programConfigurations.get(y.id), K = h.useProgram("heatmap", W), { zoom: $ } = h.transform;
|
14430
|
+
K.draw(w, k.TRIANGLES, dt.disabled, A, R, Dt.disabled, Zi(N.posMatrix, G, $, y.paint.get("heatmap-intensity")), null, y.id, j.layoutVertexBuffer, j.indexBuffer, j.segments, y.paint, h.transform.zoom, W);
|
14431
14431
|
}
|
14432
14432
|
w.viewport.set([0, 0, h.width, h.height]);
|
14433
14433
|
} else h.renderPass === "translucent" && (h.context.setColorMode(h.colorModeForRenderPass()), function(w, k) {
|
@@ -14435,7 +14435,7 @@ uniform ${k} ${A} u_${R};
|
|
14435
14435
|
if (!F) return;
|
14436
14436
|
A.activeTexture.set(R.TEXTURE0), R.bindTexture(R.TEXTURE_2D, F.colorAttachment.get()), A.activeTexture.set(R.TEXTURE1);
|
14437
14437
|
let N = k.colorRampTexture;
|
14438
|
-
N || (N = k.colorRampTexture = new It(A, k.colorRamp, R.RGBA)), N.bind(R.LINEAR, R.CLAMP_TO_EDGE), w.useProgram("heatmapTexture").draw(A, R.TRIANGLES, dt.disabled, $t.disabled, w.colorModeForRenderPass(), Dt.disabled, ((G, j,
|
14438
|
+
N || (N = k.colorRampTexture = new It(A, k.colorRamp, R.RGBA)), N.bind(R.LINEAR, R.CLAMP_TO_EDGE), w.useProgram("heatmapTexture").draw(A, R.TRIANGLES, dt.disabled, $t.disabled, w.colorModeForRenderPass(), Dt.disabled, ((G, j, W, K) => {
|
14439
14439
|
const $ = c.H();
|
14440
14440
|
c.aQ($, 0, G.width, G.height, 0, 0, 1);
|
14441
14441
|
const ee = G.context.gl;
|
@@ -14449,7 +14449,7 @@ uniform ${k} ${A} u_${R};
|
|
14449
14449
|
if (h.renderPass !== "translucent") return;
|
14450
14450
|
const w = y.paint.get("line-opacity"), k = y.paint.get("line-width");
|
14451
14451
|
if (w.constantOr(1) === 0 || k.constantOr(1) === 0) return;
|
14452
|
-
const A = h.depthModeForSublayer(0, dt.ReadOnly), R = h.colorModeForRenderPass(), F = y.paint.get("line-dasharray"), N = y.paint.get("line-pattern"), G = N.constantOr(1), j = y.paint.get("line-gradient"),
|
14452
|
+
const A = h.depthModeForSublayer(0, dt.ReadOnly), R = h.colorModeForRenderPass(), F = y.paint.get("line-dasharray"), N = y.paint.get("line-pattern"), G = N.constantOr(1), j = y.paint.get("line-gradient"), W = y.getCrossfadeParameters(), K = G ? "linePattern" : F ? "lineSDF" : j ? "lineGradient" : "line", $ = h.context, ee = $.gl;
|
14453
14453
|
let ne = !0;
|
14454
14454
|
for (const le of b) {
|
14455
14455
|
const _e = g.getTile(le);
|
@@ -14461,8 +14461,8 @@ uniform ${k} ${A} u_${R};
|
|
14461
14461
|
const Qe = _e.imageAtlas, Rt = Qe.patternPositions[tt.to.toString()], at = Qe.patternPositions[tt.from.toString()];
|
14462
14462
|
Rt && at && ze.setConstantPatternPositions(Rt, at);
|
14463
14463
|
}
|
14464
|
-
const Pe = Ne ? le : null, Ce = G ? vl(h, _e, y,
|
14465
|
-
if (G) $.activeTexture.set(ee.TEXTURE0), _e.imageAtlasTexture.bind(ee.LINEAR, ee.CLAMP_TO_EDGE), ze.updatePaintBuffers(
|
14464
|
+
const Pe = Ne ? le : null, Ce = G ? vl(h, _e, y, W, Pe) : F ? bl(h, _e, y, F, W, Pe) : j ? so(h, _e, y, be.lineClipsArray.length, Pe) : bs(h, _e, y, Pe);
|
14465
|
+
if (G) $.activeTexture.set(ee.TEXTURE0), _e.imageAtlasTexture.bind(ee.LINEAR, ee.CLAMP_TO_EDGE), ze.updatePaintBuffers(W);
|
14466
14466
|
else if (F && (Se || h.lineAtlas.dirty)) $.activeTexture.set(ee.TEXTURE0), h.lineAtlas.bind($);
|
14467
14467
|
else if (j) {
|
14468
14468
|
const Qe = be.gradients[y.id];
|
@@ -14523,7 +14523,7 @@ uniform ${k} ${A} u_${R};
|
|
14523
14523
|
case "raster":
|
14524
14524
|
(function(h, g, y, b) {
|
14525
14525
|
if (h.renderPass !== "translucent" || y.paint.get("raster-opacity") === 0 || !b.length) return;
|
14526
|
-
const w = h.context, k = w.gl, A = g.getSource(), R = h.useProgram("raster"), F = h.colorModeForRenderPass(), [N, G] = A instanceof Rr ? [{}, b] : h.stencilConfigForOverlap(b), j = G[G.length - 1].overscaledZ,
|
14526
|
+
const w = h.context, k = w.gl, A = g.getSource(), R = h.useProgram("raster"), F = h.colorModeForRenderPass(), [N, G] = A instanceof Rr ? [{}, b] : h.stencilConfigForOverlap(b), j = G[G.length - 1].overscaledZ, W = !h.options.moving;
|
14527
14527
|
for (const K of G) {
|
14528
14528
|
const $ = h.depthModeForSublayer(K.overscaledZ - j, y.paint.get("raster-opacity") === 1 ? dt.ReadWrite : dt.ReadOnly, k.LESS), ee = g.getTile(K);
|
14529
14529
|
ee.registerFadeDuration(y.paint.get("raster-fade-duration"));
|
@@ -14531,7 +14531,7 @@ uniform ${k} ${A} u_${R};
|
|
14531
14531
|
let be, ze;
|
14532
14532
|
const Le = y.paint.get("raster-resampling") === "nearest" ? k.NEAREST : k.LINEAR;
|
14533
14533
|
w.activeTexture.set(k.TEXTURE0), ee.texture.bind(Le, k.CLAMP_TO_EDGE, k.LINEAR_MIPMAP_NEAREST), w.activeTexture.set(k.TEXTURE1), ne ? (ne.texture.bind(Le, k.CLAMP_TO_EDGE, k.LINEAR_MIPMAP_NEAREST), be = Math.pow(2, ne.tileID.overscaledZ - ee.tileID.overscaledZ), ze = [ee.tileID.canonical.x * be % 1, ee.tileID.canonical.y * be % 1]) : ee.texture.bind(Le, k.CLAMP_TO_EDGE, k.LINEAR_MIPMAP_NEAREST), ee.texture.useMipmap && w.extTextureFilterAnisotropic && h.transform.pitch > 20 && k.texParameterf(k.TEXTURE_2D, w.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT, w.extTextureFilterAnisotropicMax);
|
14534
|
-
const we = h.style.map.terrain && h.style.map.terrain.getTerrainData(K), Se = we ? K : null, Ne = Se ? Se.posMatrix : h.transform.calculatePosMatrix(K.toUnwrapped(),
|
14534
|
+
const we = h.style.map.terrain && h.style.map.terrain.getTerrainData(K), Se = we ? K : null, Ne = Se ? Se.posMatrix : h.transform.calculatePosMatrix(K.toUnwrapped(), W), tt = Nc(Ne, ze || [0, 0], be || 1, _e, y);
|
14535
14535
|
A instanceof Rr ? R.draw(w, k.TRIANGLES, $, $t.disabled, F, Dt.disabled, tt, we, y.id, A.boundsBuffer, h.quadTriangleIndexBuffer, A.boundsSegments) : R.draw(w, k.TRIANGLES, $, N[K.overscaledZ], F, Dt.disabled, tt, we, y.id, h.rasterBoundsBuffer, h.quadTriangleIndexBuffer, h.rasterBoundsSegments);
|
14536
14536
|
}
|
14537
14537
|
})(t, n, o, a);
|
@@ -14544,12 +14544,12 @@ uniform ${k} ${A} u_${R};
|
|
14544
14544
|
if (h.isPatternMissing(G)) return;
|
14545
14545
|
const j = !G && w.a === 1 && k === 1 && h.opaquePassEnabledForLayer() ? "opaque" : "translucent";
|
14546
14546
|
if (h.renderPass !== j) return;
|
14547
|
-
const
|
14547
|
+
const W = $t.disabled, K = h.depthModeForSublayer(0, j === "opaque" ? dt.ReadWrite : dt.ReadOnly), $ = h.colorModeForRenderPass(), ee = h.useProgram(G ? "backgroundPattern" : "background"), ne = b || F.coveringTiles({ tileSize: N, terrain: h.style.map.terrain });
|
14548
14548
|
G && (A.activeTexture.set(R.TEXTURE0), h.imageManager.bind(h.context));
|
14549
14549
|
const le = y.getCrossfadeParameters();
|
14550
14550
|
for (const _e of ne) {
|
14551
14551
|
const be = b ? _e.posMatrix : h.transform.calculatePosMatrix(_e.toUnwrapped()), ze = G ? ra(be, k, h, G, { tileID: _e, tileSize: N }, le) : oo(be, k, w), Le = h.style.map.terrain && h.style.map.terrain.getTerrainData(_e);
|
14552
|
-
ee.draw(A, R.TRIANGLES, K,
|
14552
|
+
ee.draw(A, R.TRIANGLES, K, W, $, Dt.disabled, ze, Le, y.id, h.tileExtentBuffer, h.quadTriangleIndexBuffer, h.tileExtentSegments);
|
14553
14553
|
}
|
14554
14554
|
})(t, 0, o, a);
|
14555
14555
|
break;
|
@@ -14624,11 +14624,11 @@ uniform ${k} ${A} u_${R};
|
|
14624
14624
|
return c.b1(y, y, [b, b, 1 / y[3], b]);
|
14625
14625
|
}), g = [[0, 1, 2], [6, 5, 4], [0, 3, 7], [2, 1, 5], [3, 2, 6], [0, 4, 5]].map((y) => {
|
14626
14626
|
const b = function(R, F) {
|
14627
|
-
var N = F[0], G = F[1], j = F[2],
|
14628
|
-
return
|
14627
|
+
var N = F[0], G = F[1], j = F[2], W = N * N + G * G + j * j;
|
14628
|
+
return W > 0 && (W = 1 / Math.sqrt(W)), R[0] = F[0] * W, R[1] = F[1] * W, R[2] = F[2] * W, R;
|
14629
14629
|
}([], function(R, F, N) {
|
14630
|
-
var G = F[0], j = F[1],
|
14631
|
-
return R[0] = j * ee -
|
14630
|
+
var G = F[0], j = F[1], W = F[2], K = N[0], $ = N[1], ee = N[2];
|
14631
|
+
return R[0] = j * ee - W * $, R[1] = W * K - G * ee, R[2] = G * $ - j * K, R;
|
14632
14632
|
}([], Ut([], h[y[0]], h[y[1]]), Ut([], h[y[2]], h[y[1]]))), w = -((k = b)[0] * (A = h[y[1]])[0] + k[1] * A[1] + k[2] * A[2]);
|
14633
14633
|
var k, A;
|
14634
14634
|
return b.concat(w);
|
@@ -14831,7 +14831,7 @@ uniform ${k} ${A} u_${R};
|
|
14831
14831
|
const g = this.pointCoordinate(this.getCameraPoint()), y = c.Z.fromLngLat(this.center), b = Math.pow(2, a), w = [b * g.x, b * g.y, 0], k = [b * y.x, b * y.y, 0], A = Sn.fromInvProjectionMatrix(this.invModelViewProjectionMatrix, this.worldSize, a);
|
14832
14832
|
let R = t.minzoom || 0;
|
14833
14833
|
!t.terrain && this.pitch <= 60 && this._edgeInsets.top < 0.1 && (R = a);
|
14834
|
-
const F = t.terrain ? 2 / Math.min(this.tileSize, t.tileSize) * this.tileSize : 3, N = ($) => ({ aabb: new xo([$ * b, 0, 0], [($ + 1) * b, b, 0]), zoom: 0, x: 0, y: 0, wrap: $, fullyVisible: !1 }), G = [], j = [],
|
14834
|
+
const F = t.terrain ? 2 / Math.min(this.tileSize, t.tileSize) * this.tileSize : 3, N = ($) => ({ aabb: new xo([$ * b, 0, 0], [($ + 1) * b, b, 0]), zoom: 0, x: 0, y: 0, wrap: $, fullyVisible: !1 }), G = [], j = [], W = a, K = t.reparseOverscaled ? h : a;
|
14835
14835
|
if (this._renderWorldCopies) for (let $ = 1; $ <= 3; $++) G.push(N(-$)), G.push(N($));
|
14836
14836
|
for (G.push(N(0)); G.length > 0; ) {
|
14837
14837
|
const $ = G.pop(), ee = $.x, ne = $.y;
|
@@ -14842,9 +14842,9 @@ uniform ${k} ${A} u_${R};
|
|
14842
14842
|
le = we === 2;
|
14843
14843
|
}
|
14844
14844
|
const _e = t.terrain ? w : k, be = $.aabb.distanceX(_e), ze = $.aabb.distanceY(_e), Le = Math.max(Math.abs(be), Math.abs(ze));
|
14845
|
-
if ($.zoom ===
|
14846
|
-
const we =
|
14847
|
-
j.push({ tileID: new c.S($.zoom ===
|
14845
|
+
if ($.zoom === W || Le > F + (1 << W - $.zoom) - 2 && $.zoom >= R) {
|
14846
|
+
const we = W - $.zoom, Se = w[0] - 0.5 - (ee << we), Ne = w[1] - 0.5 - (ne << we);
|
14847
|
+
j.push({ tileID: new c.S($.zoom === W ? K : $.zoom, $.wrap, $.zoom, ee, ne), distanceSq: Gr([k[0] - 0.5 - ee, k[1] - 0.5 - ne]), tileDistanceToCamera: Math.sqrt(Se * Se + Ne * Ne) });
|
14848
14848
|
} else for (let we = 0; we < 4; we++) {
|
14849
14849
|
const Se = (ee << 1) + we % 2, Ne = (ne << 1) + (we >> 1), tt = $.zoom + 1;
|
14850
14850
|
let Pe = $.aabb.quadrant(we);
|
@@ -14967,7 +14967,7 @@ uniform ${k} ${A} u_${R};
|
|
14967
14967
|
}
|
14968
14968
|
a && (b = c.b3(c.O(a[0]) * h, 0, h), w = c.b3(c.O(a[1]) * h, 0, h), w < b && (w += h), w - b < R && (A = R / (w - b)));
|
14969
14969
|
const { x: N, y: G } = this.project.call({ worldSize: h }, t);
|
14970
|
-
let j,
|
14970
|
+
let j, W;
|
14971
14971
|
const K = Math.max(A || 0, k || 0);
|
14972
14972
|
if (K) {
|
14973
14973
|
const $ = new c.P(A ? (w + b) / 2 : N, k ? (y + g) / 2 : G);
|
@@ -14975,7 +14975,7 @@ uniform ${k} ${A} u_${R};
|
|
14975
14975
|
}
|
14976
14976
|
if (this.latRange) {
|
14977
14977
|
const $ = F / 2;
|
14978
|
-
G - $ < g && (
|
14978
|
+
G - $ < g && (W = g + $), G + $ > y && (W = y - $);
|
14979
14979
|
}
|
14980
14980
|
if (a) {
|
14981
14981
|
const $ = (b + w) / 2;
|
@@ -14984,8 +14984,8 @@ uniform ${k} ${A} u_${R};
|
|
14984
14984
|
const ne = R / 2;
|
14985
14985
|
ee - ne < b && (j = b + ne), ee + ne > w && (j = w - ne);
|
14986
14986
|
}
|
14987
|
-
if (j !== void 0 ||
|
14988
|
-
const $ = new c.P(j ?? N,
|
14987
|
+
if (j !== void 0 || W !== void 0) {
|
14988
|
+
const $ = new c.P(j ?? N, W ?? G);
|
14989
14989
|
o.center = this.unproject.call({ worldSize: h }, $).wrap();
|
14990
14990
|
}
|
14991
14991
|
return o;
|
@@ -15004,7 +15004,7 @@ uniform ${k} ${A} u_${R};
|
|
15004
15004
|
c.K(a, a, [this.width / 2, -this.height / 2, 1]), c.J(a, a, [1, -1, 0]), this.labelPlaneMatrix = a, a = c.ao(new Float64Array(16)), c.K(a, a, [1, -1, 1]), c.J(a, a, [-1, -1, 0]), c.K(a, a, [2 / this.width, 2 / this.height, 1]), this.glCoordMatrix = a;
|
15005
15005
|
const h = this.cameraToCenterDistance + this._elevation * this._pixelPerMeter / Math.cos(this._pitch), g = Math.min(this.elevation, this.minElevationForCurrentTile), y = h - g * this._pixelPerMeter / Math.cos(this._pitch), b = g < 0 ? y : h, w = Math.PI / 2 + this._pitch, k = this._fov * (0.5 + t.y / this.height), A = Math.sin(k) * b / Math.sin(c.ad(Math.PI - w - k, 0.01, Math.PI - 0.01)), R = this.getHorizon(), F = 2 * Math.atan(R / this.cameraToCenterDistance) * (0.5 + t.y / (2 * R)), N = Math.sin(F) * b / Math.sin(c.ad(Math.PI - w - F, 0.01, Math.PI - 0.01)), G = Math.min(A, N);
|
15006
15006
|
this.farZ = 1.01 * (Math.cos(Math.PI / 2 - this._pitch) * G + b), this.nearZ = this.height / 50, a = new Float64Array(16), c.b6(a, this._fov, this.width / this.height, this.nearZ, this.farZ), a[8] = 2 * -t.x / this.width, a[9] = 2 * t.y / this.height, this.projectionMatrix = c.af(a), c.K(a, a, [1, -1, 1]), c.J(a, a, [0, 0, -this.cameraToCenterDistance]), c.b7(a, a, this._pitch), c.ae(a, a, this.angle), c.J(a, a, [-n, -o, 0]), this.mercatorMatrix = c.K([], a, [this.worldSize, this.worldSize, this.worldSize]), c.K(a, a, [1, 1, this._pixelPerMeter]), this.pixelMatrix = c.L(new Float64Array(16), this.labelPlaneMatrix, a), c.J(a, a, [0, 0, -this.elevation]), this.modelViewProjectionMatrix = a, this.invModelViewProjectionMatrix = c.at([], a), this.fogMatrix = new Float64Array(16), c.b6(this.fogMatrix, this._fov, this.width / this.height, h, this.farZ), this.fogMatrix[8] = 2 * -t.x / this.width, this.fogMatrix[9] = 2 * t.y / this.height, c.K(this.fogMatrix, this.fogMatrix, [1, -1, 1]), c.J(this.fogMatrix, this.fogMatrix, [0, 0, -this.cameraToCenterDistance]), c.b7(this.fogMatrix, this.fogMatrix, this._pitch), c.ae(this.fogMatrix, this.fogMatrix, this.angle), c.J(this.fogMatrix, this.fogMatrix, [-n, -o, 0]), c.K(this.fogMatrix, this.fogMatrix, [1, 1, this._pixelPerMeter]), c.J(this.fogMatrix, this.fogMatrix, [0, 0, -this.elevation]), this.pixelMatrix3D = c.L(new Float64Array(16), this.labelPlaneMatrix, a);
|
15007
|
-
const j = this.width % 2 / 2,
|
15007
|
+
const j = this.width % 2 / 2, W = this.height % 2 / 2, K = Math.cos(this.angle), $ = Math.sin(this.angle), ee = n - Math.round(n) + K * j + $ * W, ne = o - Math.round(o) + K * W + $ * j, le = new Float64Array(a);
|
15008
15008
|
if (c.J(le, le, [ee > 0.5 ? ee - 1 : ee, ne > 0.5 ? ne - 1 : ne, 0]), this.alignedModelViewProjectionMatrix = le, a = c.at(new Float64Array(16), this.pixelMatrix), !a) throw new Error("failed to invert matrix");
|
15009
15009
|
this.pixelMatrixInverse = a, this._posMatrixCache = {}, this._alignedPosMatrixCache = {}, this._fogMatrixCache = {};
|
15010
15010
|
}
|
@@ -16020,10 +16020,10 @@ uniform ${k} ${A} u_${R};
|
|
16020
16020
|
if (a.type === "blur") return void this.stop(!0);
|
16021
16021
|
this._updatingCamera = !0;
|
16022
16022
|
const g = a.type === "renderFrame" ? void 0 : a, y = { needsRenderFrame: !1 }, b = {}, w = {}, k = a.touches, A = k ? this._getMapTouches(k) : void 0, R = A ? se.touchPos(this._map.getCanvas(), A) : se.mousePos(this._map.getCanvas(), a);
|
16023
|
-
for (const { handlerName: G, handler: j, allowed:
|
16023
|
+
for (const { handlerName: G, handler: j, allowed: W } of this._handlers) {
|
16024
16024
|
if (!j.isEnabled()) continue;
|
16025
16025
|
let K;
|
16026
|
-
this._blockedByActive(w,
|
16026
|
+
this._blockedByActive(w, W, G) ? j.reset() : j[h || a.type] && (K = j[h || a.type](a, R, A), this.mergeHandlerResult(y, b, K, G, g), K && K.needsRenderFrame && this._triggerRenderFrame()), (K || j.isActive()) && (w[G] = j);
|
16027
16027
|
}
|
16028
16028
|
const F = {};
|
16029
16029
|
for (const G in this._previousActiveHandlers) w[G] || (F[G] = g);
|
@@ -16062,8 +16062,8 @@ uniform ${k} ${A} u_${R};
|
|
16062
16062
|
n.touchZoomRotate = new Oa(o, G, N, b), this._add("touchRotate", N, ["touchPan", "touchZoom"]), this._add("touchZoom", G, ["touchPan", "touchRotate"]), t.interactive && t.touchZoomRotate && n.touchZoomRotate.enable(t.touchZoomRotate);
|
16063
16063
|
const j = n.scrollZoom = new Ba(n, () => this._triggerRenderFrame());
|
16064
16064
|
this._add("scrollZoom", j, ["mousePan"]), t.interactive && t.scrollZoom && n.scrollZoom.enable(t.scrollZoom);
|
16065
|
-
const
|
16066
|
-
this._add("keyboard",
|
16065
|
+
const W = n.keyboard = new La(n);
|
16066
|
+
this._add("keyboard", W), t.interactive && t.keyboard && n.keyboard.enable(), this._add("blockableMapEvent", new Ta(n));
|
16067
16067
|
}
|
16068
16068
|
_add(t, n, o) {
|
16069
16069
|
this._handlers.push({ handlerName: t, handler: n, allowed: o }), this._handlersById[t] = n;
|
@@ -16237,7 +16237,7 @@ uniform ${k} ${A} u_${R};
|
|
16237
16237
|
a.padding = { top: we, bottom: we, right: we, left: we };
|
16238
16238
|
}
|
16239
16239
|
a.padding = c.e(h, a.padding);
|
16240
|
-
const g = this.transform, y = g.padding, b = new he(t, n), w = g.project(b.getNorthWest()), k = g.project(b.getNorthEast()), A = g.project(b.getSouthEast()), R = g.project(b.getSouthWest()), F = c.ba(-o), N = w.rotate(F), G = k.rotate(F), j = A.rotate(F),
|
16240
|
+
const g = this.transform, y = g.padding, b = new he(t, n), w = g.project(b.getNorthWest()), k = g.project(b.getNorthEast()), A = g.project(b.getSouthEast()), R = g.project(b.getSouthWest()), F = c.ba(-o), N = w.rotate(F), G = k.rotate(F), j = A.rotate(F), W = R.rotate(F), K = new c.P(Math.max(N.x, G.x, W.x, j.x), Math.max(N.y, G.y, W.y, j.y)), $ = new c.P(Math.min(N.x, G.x, W.x, j.x), Math.min(N.y, G.y, W.y, j.y)), ee = K.sub($), ne = (g.width - (y.left + y.right + a.padding.left + a.padding.right)) / ee.x, le = (g.height - (y.top + y.bottom + a.padding.top + a.padding.bottom)) / ee.y;
|
16241
16241
|
if (le < 0 || ne < 0) return void c.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");
|
16242
16242
|
const _e = Math.min(g.scaleZoom(g.scale * Math.min(ne, le)), a.maxZoom), be = c.P.convert(a.offset), ze = new c.P((a.padding.left - a.padding.right) / 2, (a.padding.top - a.padding.bottom) / 2).rotate(c.ba(o)), Le = be.add(ze).mult(g.scale / g.zoomScale(_e));
|
16243
16243
|
return { center: g.unproject(w.add(A).div(2).sub(Le)), zoom: _e, bearing: o };
|
@@ -16271,14 +16271,14 @@ uniform ${k} ${A} u_${R};
|
|
16271
16271
|
let F = a.centerPoint.add(R);
|
16272
16272
|
const N = a.pointLocation(F), { center: G, zoom: j } = a.getConstrained(c.N.convert(t.center || N), (o = t.zoom) !== null && o !== void 0 ? o : h);
|
16273
16273
|
this._normalizeCenter(G, a);
|
16274
|
-
const
|
16274
|
+
const W = a.project(N), K = a.project(G).sub(W), $ = a.zoomScale(j - h);
|
16275
16275
|
let ee, ne;
|
16276
16276
|
t.around && (ee = c.N.convert(t.around), ne = a.locationPoint(ee));
|
16277
16277
|
const le = { moving: this._moving, zooming: this._zooming, rotating: this._rotating, pitching: this._pitching };
|
16278
16278
|
return this._zooming = this._zooming || j !== h, this._rotating = this._rotating || g !== w, this._pitching = this._pitching || k !== y, this._padding = !a.isPaddingEqual(A), this._easeId = t.easeId, this._prepareEase(n, t.noMoveStart, le), this.terrain && this._prepareElevation(G), this._ease((_e) => {
|
16279
16279
|
if (this._zooming && (a.zoom = c.z.number(h, j, _e)), this._rotating && (a.bearing = c.z.number(g, w, _e)), this._pitching && (a.pitch = c.z.number(y, k, _e)), this._padding && (a.interpolatePadding(b, A, _e), F = a.centerPoint.add(R)), this.terrain && !t.freezeElevation && this._updateElevation(_e), ee) a.setLocationAtPoint(ee, ne);
|
16280
16280
|
else {
|
16281
|
-
const be = a.zoomScale(a.zoom - h), ze = j > h ? Math.min(2, $) : Math.max(0.5, $), Le = Math.pow(ze, 1 - _e), we = a.unproject(
|
16281
|
+
const be = a.zoomScale(a.zoom - h), ze = j > h ? Math.min(2, $) : Math.max(0.5, $), Le = Math.pow(ze, 1 - _e), we = a.unproject(W.add(K.mult(_e * Le)).mult(be));
|
16282
16282
|
a.setLocationAtPoint(a.renderWorldCopies ? we.wrap() : we, F);
|
16283
16283
|
}
|
16284
16284
|
this._applyUpdatedTransform(a), this._fireMoveEvents(n);
|
@@ -16345,9 +16345,9 @@ uniform ${k} ${A} u_${R};
|
|
16345
16345
|
let F = a.centerPoint.add(R);
|
16346
16346
|
const N = a.pointLocation(F), { center: G, zoom: j } = a.getConstrained(c.N.convert(t.center || N), (o = t.zoom) !== null && o !== void 0 ? o : h);
|
16347
16347
|
this._normalizeCenter(G, a);
|
16348
|
-
const
|
16348
|
+
const W = a.zoomScale(j - h), K = a.project(N), $ = a.project(G).sub(K);
|
16349
16349
|
let ee = t.curve;
|
16350
|
-
const ne = Math.max(a.width, a.height), le = ne /
|
16350
|
+
const ne = Math.max(a.width, a.height), le = ne / W, _e = $.mag();
|
16351
16351
|
if ("minZoom" in t) {
|
16352
16352
|
const Ce = c.ad(Math.min(t.minZoom, h, j), a.minZoom, a.maxZoom), Qe = ne / a.zoomScale(Ce - h);
|
16353
16353
|
ee = Math.sqrt(Qe / _e * 2);
|
@@ -16569,7 +16569,7 @@ uniform ${k} ${A} u_${R};
|
|
16569
16569
|
return Object.values(this._tiles).filter((n) => n.timeAdded >= t);
|
16570
16570
|
}
|
16571
16571
|
}
|
16572
|
-
class
|
16572
|
+
class Wl {
|
16573
16573
|
constructor(t, n, o) {
|
16574
16574
|
this.painter = t, this.sourceCache = new $a(n), this.options = o, this.exaggeration = typeof o.exaggeration == "number" ? o.exaggeration : 1, this.qualityFactor = 2, this.meshSize = 128, this._demMatrixCache = {}, this.coordsIndex = [], this._coordsTextureSize = 1024;
|
16575
16575
|
}
|
@@ -16579,8 +16579,8 @@ uniform ${k} ${A} u_${R};
|
|
16579
16579
|
const g = this.getTerrainData(t), y = (h = g.tile) === null || h === void 0 ? void 0 : h.dem;
|
16580
16580
|
if (!y) return 0;
|
16581
16581
|
const b = function(N, G, j) {
|
16582
|
-
var
|
16583
|
-
return N[0] = j[0] *
|
16582
|
+
var W = G[0], K = G[1];
|
16583
|
+
return N[0] = j[0] * W + j[4] * K + j[12], N[1] = j[1] * W + j[5] * K + j[13], N;
|
16584
16584
|
}([], [n / a * c.X, o / a * c.X], g.u_terrain_matrix), w = [b[0] * y.dim, b[1] * y.dim], k = Math.floor(w[0]), A = Math.floor(w[1]), R = w[0] - k, F = w[1] - A;
|
16585
16585
|
return y.get(k, A) * (1 - R) * (1 - F) + y.get(k + 1, A) * R * (1 - F) + y.get(k, A + 1) * (1 - R) * F + y.get(k + 1, A + 1) * R * F;
|
16586
16586
|
}
|
@@ -16703,7 +16703,7 @@ uniform ${k} ${A} u_${R};
|
|
16703
16703
|
}
|
16704
16704
|
}
|
16705
16705
|
const kr = { background: !0, fill: !0, line: !0, raster: !0, hillshade: !0 };
|
16706
|
-
class
|
16706
|
+
class Xl {
|
16707
16707
|
constructor(t, n) {
|
16708
16708
|
this.painter = t, this.terrain = n, this.pool = new Rs(t.context, 30, n.sourceCache.tileSize * n.qualityFactor);
|
16709
16709
|
}
|
@@ -16882,9 +16882,9 @@ uniform ${k} ${A} u_${R};
|
|
16882
16882
|
const y = se.createNS("http://www.w3.org/2000/svg", "g");
|
16883
16883
|
y.setAttributeNS(null, "transform", "translate(3.0, 29.0)"), y.setAttributeNS(null, "fill", "#000000");
|
16884
16884
|
const b = [{ rx: "10.5", ry: "5.25002273" }, { rx: "10.5", ry: "5.25002273" }, { rx: "9.5", ry: "4.77275007" }, { rx: "8.5", ry: "4.29549936" }, { rx: "7.5", ry: "3.81822308" }, { rx: "6.5", ry: "3.34094679" }, { rx: "5.5", ry: "2.86367051" }, { rx: "4.5", ry: "2.38636864" }];
|
16885
|
-
for (const
|
16885
|
+
for (const W of b) {
|
16886
16886
|
const K = se.createNS("http://www.w3.org/2000/svg", "ellipse");
|
16887
|
-
K.setAttributeNS(null, "opacity", "0.04"), K.setAttributeNS(null, "cx", "10.5"), K.setAttributeNS(null, "cy", "5.80029008"), K.setAttributeNS(null, "rx",
|
16887
|
+
K.setAttributeNS(null, "opacity", "0.04"), K.setAttributeNS(null, "cx", "10.5"), K.setAttributeNS(null, "cy", "5.80029008"), K.setAttributeNS(null, "rx", W.rx), K.setAttributeNS(null, "ry", W.ry), y.appendChild(K);
|
16888
16888
|
}
|
16889
16889
|
const w = se.createNS("http://www.w3.org/2000/svg", "g");
|
16890
16890
|
w.setAttributeNS(null, "fill", this._color);
|
@@ -17004,7 +17004,7 @@ uniform ${k} ${A} u_${R};
|
|
17004
17004
|
}
|
17005
17005
|
}
|
17006
17006
|
const ko = { positionOptions: { enableHighAccuracy: !1, maximumAge: 0, timeout: 6e3 }, fitBoundsOptions: { maxZoom: 15 }, trackUserLocation: !1, showAccuracyCircle: !0, showUserLocation: !0 };
|
17007
|
-
let Hn = 0,
|
17007
|
+
let Hn = 0, Wn = !1;
|
17008
17008
|
const Ql = { maxWidth: 100, unit: "metric" };
|
17009
17009
|
function Za(u, t, n) {
|
17010
17010
|
const o = n && n.maxWidth || 100, a = u._container.clientHeight / 2, h = u.unproject([0, a]), g = u.unproject([o, a]), y = h.distanceTo(g);
|
@@ -17120,7 +17120,7 @@ uniform ${k} ${A} u_${R};
|
|
17120
17120
|
const n = this._map._getUIString("GeolocateControl.LocationNotAvailable");
|
17121
17121
|
this._geolocateButton.title = n, this._geolocateButton.setAttribute("aria-label", n), this._geolocationWatchID !== void 0 && this._clearWatch();
|
17122
17122
|
} else {
|
17123
|
-
if (t.code === 3 &&
|
17123
|
+
if (t.code === 3 && Wn) return;
|
17124
17124
|
this._setErrorState();
|
17125
17125
|
}
|
17126
17126
|
this._watchState !== "OFF" && this.options.showUserLocation && this._dotElement.classList.add("maplibregl-user-location-dot-stale"), this.fire(new c.k("error", t)), this._finish();
|
@@ -17160,7 +17160,7 @@ uniform ${k} ${A} u_${R};
|
|
17160
17160
|
}().then((t) => this._finishSetupUI(t)), this._container;
|
17161
17161
|
}
|
17162
17162
|
onRemove() {
|
17163
|
-
this._geolocationWatchID !== void 0 && (window.navigator.geolocation.clearWatch(this._geolocationWatchID), this._geolocationWatchID = void 0), this.options.showUserLocation && this._userLocationDotMarker && this._userLocationDotMarker.remove(), this.options.showAccuracyCircle && this._accuracyCircleMarker && this._accuracyCircleMarker.remove(), se.remove(this._container), this._map.off("zoom", this._onZoom), this._map = void 0, Hn = 0,
|
17163
|
+
this._geolocationWatchID !== void 0 && (window.navigator.geolocation.clearWatch(this._geolocationWatchID), this._geolocationWatchID = void 0), this.options.showUserLocation && this._userLocationDotMarker && this._userLocationDotMarker.remove(), this.options.showAccuracyCircle && this._accuracyCircleMarker && this._accuracyCircleMarker.remove(), se.remove(this._container), this._map.off("zoom", this._onZoom), this._map = void 0, Hn = 0, Wn = !1;
|
17164
17164
|
}
|
17165
17165
|
_isOutOfMapMaxBounds(u) {
|
17166
17166
|
const t = this._map.getMaxBounds(), n = u.coords;
|
@@ -17198,7 +17198,7 @@ uniform ${k} ${A} u_${R};
|
|
17198
17198
|
case "ACTIVE_LOCK":
|
17199
17199
|
case "ACTIVE_ERROR":
|
17200
17200
|
case "BACKGROUND_ERROR":
|
17201
|
-
Hn--,
|
17201
|
+
Hn--, Wn = !1, this._watchState = "OFF", this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"), this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"), this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"), this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"), this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"), this.fire(new c.k("trackuserlocationend"));
|
17202
17202
|
break;
|
17203
17203
|
case "BACKGROUND":
|
17204
17204
|
this._watchState = "ACTIVE_LOCK", this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"), this._lastKnownPosition && this._updateCamera(this._lastKnownPosition), this.fire(new c.k("trackuserlocationstart")), this.fire(new c.k("userlocationfocus"));
|
@@ -17221,7 +17221,7 @@ uniform ${k} ${A} u_${R};
|
|
17221
17221
|
if (this._watchState === "OFF" && this._geolocationWatchID !== void 0) this._clearWatch();
|
17222
17222
|
else if (this._geolocationWatchID === void 0) {
|
17223
17223
|
let u;
|
17224
|
-
this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"), this._geolocateButton.setAttribute("aria-pressed", "true"), Hn++, Hn > 1 ? (u = { maximumAge: 6e5, timeout: 0 },
|
17224
|
+
this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"), this._geolocateButton.setAttribute("aria-pressed", "true"), Hn++, Hn > 1 ? (u = { maximumAge: 6e5, timeout: 0 }, Wn = !0) : (u = this.options.positionOptions, Wn = !1), this._geolocationWatchID = window.navigator.geolocation.watchPosition(this._onSuccess, this._onError, u);
|
17225
17225
|
}
|
17226
17226
|
} else window.navigator.geolocation.getCurrentPosition(this._onSuccess, this._onError, this.options.positionOptions), this._timeoutId = setTimeout(this._finish, 1e4);
|
17227
17227
|
return !0;
|
@@ -17507,7 +17507,7 @@ uniform ${k} ${A} u_${R};
|
|
17507
17507
|
const o = this.style._layers[n];
|
17508
17508
|
o.type === "hillshade" && o.source === u.source && c.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.");
|
17509
17509
|
}
|
17510
|
-
this.terrain = new
|
17510
|
+
this.terrain = new Wl(this.painter, t, u), this.painter.renderToTexture = new Xl(this.painter, this.terrain), this.transform.minElevationForCurrentTile = this.terrain.getMinTileElevationForLngLatZoom(this.transform.center, this.transform.tileZoom), this.transform.elevation = this.terrain.getElevationForLngLatZoom(this.transform.center, this.transform.tileZoom), this._terrainDataCallback = (n) => {
|
17511
17511
|
n.dataType === "style" ? this.terrain.sourceCache.freeRtt() : n.dataType === "source" && n.tile && (n.sourceId !== u.source || this._elevationFreeze || (this.transform.minElevationForCurrentTile = this.terrain.getMinTileElevationForLngLatZoom(this.transform.center, this.transform.tileZoom), this.transform.elevation = this.terrain.getElevationForLngLatZoom(this.transform.center, this.transform.tileZoom)), this.terrain.sourceCache.freeRtt(n.tile.tileID));
|
17512
17512
|
}, this.style.on("data", this._terrainDataCallback);
|
17513
17513
|
} else this.terrain && this.terrain.sourceCache.destruct(), this.terrain = null, this.painter.renderToTexture && this.painter.renderToTexture.destruct(), this.painter.renderToTexture = null, this.transform.minElevationForCurrentTile = 0, this.transform.elevation = 0;
|
@@ -17934,7 +17934,7 @@ uniform ${k} ${A} u_${R};
|
|
17934
17934
|
})(u, t);
|
17935
17935
|
}), T.clearPrewarmedResources = function() {
|
17936
17936
|
const u = $i;
|
17937
|
-
u && (u.isPreloaded() && u.numActive() === 1 ? (u.release(
|
17937
|
+
u && (u.isPreloaded() && u.numActive() === 1 ? (u.release(Wr), $i = null) : console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"));
|
17938
17938
|
}, T.getMaxParallelImageRequests = function() {
|
17939
17939
|
return c.a.MAX_PARALLEL_IMAGE_REQUESTS;
|
17940
17940
|
}, T.getRTLTextPluginStatus = function() {
|
@@ -17948,7 +17948,7 @@ uniform ${k} ${A} u_${R};
|
|
17948
17948
|
}, T.importScriptInWorkers = function(u) {
|
17949
17949
|
return cs().broadcast("IS", u);
|
17950
17950
|
}, T.prewarm = function() {
|
17951
|
-
fn().acquire(
|
17951
|
+
fn().acquire(Wr);
|
17952
17952
|
}, T.setMaxParallelImageRequests = function(u) {
|
17953
17953
|
c.a.MAX_PARALLEL_IMAGE_REQUESTS = u;
|
17954
17954
|
}, T.setRTLTextPlugin = function(u, t) {
|
@@ -17963,8 +17963,8 @@ uniform ${k} ${A} u_${R};
|
|
17963
17963
|
return q;
|
17964
17964
|
});
|
17965
17965
|
})(_p);
|
17966
|
-
var
|
17967
|
-
const as = /* @__PURE__ */ Xm
|
17966
|
+
var Xm = _p.exports;
|
17967
|
+
const as = /* @__PURE__ */ Wm(Xm);
|
17968
17968
|
function Jm(f) {
|
17969
17969
|
const v = [
|
17970
17970
|
{
|
@@ -18090,7 +18090,7 @@ function Qm(f) {
|
|
18090
18090
|
const v = f.type || "point";
|
18091
18091
|
return v === "polygon" ? Jm(f) : v === "line" ? Km(f) : Ym(f);
|
18092
18092
|
}
|
18093
|
-
const
|
18093
|
+
const Xd = ["#69D2E7", "yellow", "#FE4365", "#125B9A", "#41B3A2", "#D7C3F1", "#F1D3CE"], eg = ["ma-star", "ma-water", "ma-swimming", "fa-home", "fa-search", "fa-trash", "fa-check"], Jd = {};
|
18094
18094
|
async function Kd(f, v, I = "api") {
|
18095
18095
|
const C = await fetch(`${I}/gis-layer/${f}/${v}`), { rows: L } = await C.json();
|
18096
18096
|
return L;
|
@@ -18100,7 +18100,7 @@ async function qh(f, v, I, C) {
|
|
18100
18100
|
const L = JSON.parse(JSON.stringify(f)), q = L.colorAttr ? await Kd(v, L.colorAttr, C) : null;
|
18101
18101
|
q == null || q.forEach((c, pe) => {
|
18102
18102
|
var fe, xe;
|
18103
|
-
c.color = c.color || ((fe = L.colorSet) == null ? void 0 : fe[c.id]) || ((xe = L.colorSet) == null ? void 0 : xe[pe]) ||
|
18103
|
+
c.color = c.color || ((fe = L.colorSet) == null ? void 0 : fe[c.id]) || ((xe = L.colorSet) == null ? void 0 : xe[pe]) || Xd[pe % Xd.length], c.icon = L.icon ? L.icon.split("+")[0] + "+" + c.color.replace("#", "") + ".png" : null;
|
18104
18104
|
});
|
18105
18105
|
const T = L.iconAttr ? await Kd(v, L.iconAttr, C) : null;
|
18106
18106
|
if (T == null || T.forEach((c, pe) => {
|
@@ -18638,10 +18638,10 @@ function ep(f, v, I) {
|
|
18638
18638
|
return L = Cp(L), !I && q ? "[" + L + "]" : L;
|
18639
18639
|
}).join(I ? "." : "") : v;
|
18640
18640
|
}
|
18641
|
-
function
|
18641
|
+
function Wg(f) {
|
18642
18642
|
return me.isArray(f) && !f.some(Kh);
|
18643
18643
|
}
|
18644
|
-
const
|
18644
|
+
const Xg = me.toFlatObject(me, {}, null, function(v) {
|
18645
18645
|
return /^is[A-Z]/.test(v);
|
18646
18646
|
});
|
18647
18647
|
function zc(f, v, I) {
|
@@ -18670,7 +18670,7 @@ function zc(f, v, I) {
|
|
18670
18670
|
if (je && !Oe && typeof je == "object") {
|
18671
18671
|
if (me.endsWith(Ke, "{}"))
|
18672
18672
|
Ke = C ? Ke : Ke.slice(0, -2), je = JSON.stringify(je);
|
18673
|
-
else if (me.isArray(je) &&
|
18673
|
+
else if (me.isArray(je) && Wg(je) || (me.isFileList(je) || me.endsWith(Ke, "[]")) && (gt = me.toArray(je)))
|
18674
18674
|
return Ke = Cp(Ke), gt.forEach(function(He, Vt) {
|
18675
18675
|
!(me.isUndefined(He) || He === null) && v.append(
|
18676
18676
|
// eslint-disable-next-line no-nested-ternary
|
@@ -18681,7 +18681,7 @@ function zc(f, v, I) {
|
|
18681
18681
|
}
|
18682
18682
|
return Kh(je) ? !0 : (v.append(ep(Oe, Ke, q), fe(je)), !1);
|
18683
18683
|
}
|
18684
|
-
const ae = [], se = Object.assign(
|
18684
|
+
const ae = [], se = Object.assign(Xg, {
|
18685
18685
|
defaultVisitor: xe,
|
18686
18686
|
convertValue: fe,
|
18687
18687
|
isVisitable: Kh
|
@@ -19283,7 +19283,7 @@ function Bp(f, v) {
|
|
19283
19283
|
return f && !v_(v) ? b_(f, v) : v;
|
19284
19284
|
}
|
19285
19285
|
const op = (f) => f instanceof ir ? { ...f } : f;
|
19286
|
-
function
|
19286
|
+
function Xs(f, v) {
|
19287
19287
|
v = v || {};
|
19288
19288
|
const I = {};
|
19289
19289
|
function C(fe, xe, ae) {
|
@@ -19348,7 +19348,7 @@ function Ws(f, v) {
|
|
19348
19348
|
}), I;
|
19349
19349
|
}
|
19350
19350
|
const Fp = (f) => {
|
19351
|
-
const v =
|
19351
|
+
const v = Xs({}, f);
|
19352
19352
|
let { data: I, withXSRFToken: C, xsrfHeaderName: L, xsrfCookieName: q, headers: T, auth: c } = v;
|
19353
19353
|
v.headers = T = ir.from(T), v.url = Mp(Bp(v.baseURL, v.url), f.params, f.paramsSerializer), c && T.set(
|
19354
19354
|
"Authorization",
|
@@ -19658,22 +19658,22 @@ const cp = (f) => `- ${f}`, M_ = (f) => me.isFunction(f) || f === null || f ===
|
|
19658
19658
|
},
|
19659
19659
|
adapters: eu
|
19660
19660
|
};
|
19661
|
-
function
|
19661
|
+
function Wh(f) {
|
19662
19662
|
if (f.cancelToken && f.cancelToken.throwIfRequested(), f.signal && f.signal.aborted)
|
19663
19663
|
throw new Yo(null, f);
|
19664
19664
|
}
|
19665
19665
|
function hp(f) {
|
19666
|
-
return
|
19666
|
+
return Wh(f), f.headers = ir.from(f.headers), f.data = Hh.call(
|
19667
19667
|
f,
|
19668
19668
|
f.transformRequest
|
19669
19669
|
), ["post", "put", "patch"].indexOf(f.method) !== -1 && f.headers.setContentType("application/x-www-form-urlencoded", !1), Np.getAdapter(f.adapter || yl.adapter)(f).then(function(C) {
|
19670
|
-
return
|
19670
|
+
return Wh(f), C.data = Hh.call(
|
19671
19671
|
f,
|
19672
19672
|
f.transformResponse,
|
19673
19673
|
C
|
19674
19674
|
), C.headers = ir.from(C.headers), C;
|
19675
19675
|
}, function(C) {
|
19676
|
-
return Lp(C) || (
|
19676
|
+
return Lp(C) || (Wh(f), C && C.response && (C.response.data = Hh.call(
|
19677
19677
|
f,
|
19678
19678
|
f.transformResponse,
|
19679
19679
|
C.response
|
@@ -19759,7 +19759,7 @@ class Gs {
|
|
19759
19759
|
}
|
19760
19760
|
}
|
19761
19761
|
_request(v, I) {
|
19762
|
-
typeof v == "string" ? (I = I || {}, I.url = v) : I = v || {}, I =
|
19762
|
+
typeof v == "string" ? (I = I || {}, I.url = v) : I = v || {}, I = Xs(this.defaults, I);
|
19763
19763
|
const { transitional: C, paramsSerializer: L, headers: q } = I;
|
19764
19764
|
C !== void 0 && tu.assertOptions(C, {
|
19765
19765
|
silentJSONParsing: os.transitional(os.boolean),
|
@@ -19818,14 +19818,14 @@ class Gs {
|
|
19818
19818
|
return xe;
|
19819
19819
|
}
|
19820
19820
|
getUri(v) {
|
19821
|
-
v =
|
19821
|
+
v = Xs(this.defaults, v);
|
19822
19822
|
const I = Bp(v.baseURL, v.url);
|
19823
19823
|
return Mp(I, v.params, v.paramsSerializer);
|
19824
19824
|
}
|
19825
19825
|
}
|
19826
19826
|
me.forEach(["delete", "get", "head", "options"], function(v) {
|
19827
19827
|
Gs.prototype[v] = function(I, C) {
|
19828
|
-
return this.request(
|
19828
|
+
return this.request(Xs(C || {}, {
|
19829
19829
|
method: v,
|
19830
19830
|
url: I,
|
19831
19831
|
data: (C || {}).data
|
@@ -19835,7 +19835,7 @@ me.forEach(["delete", "get", "head", "options"], function(v) {
|
|
19835
19835
|
me.forEach(["post", "put", "patch"], function(v) {
|
19836
19836
|
function I(C) {
|
19837
19837
|
return function(q, T, c) {
|
19838
|
-
return this.request(
|
19838
|
+
return this.request(Xs(c || {}, {
|
19839
19839
|
method: v,
|
19840
19840
|
headers: C ? {
|
19841
19841
|
"Content-Type": "multipart/form-data"
|
@@ -19993,29 +19993,29 @@ Object.entries(iu).forEach(([f, v]) => {
|
|
19993
19993
|
function jp(f) {
|
19994
19994
|
const v = new Gs(f), I = xp(Gs.prototype.request, v);
|
19995
19995
|
return me.extend(I, Gs.prototype, v, { allOwnKeys: !0 }), me.extend(I, v, null, { allOwnKeys: !0 }), I.create = function(L) {
|
19996
|
-
return jp(
|
19996
|
+
return jp(Xs(f, L));
|
19997
19997
|
}, I;
|
19998
19998
|
}
|
19999
|
-
const
|
20000
|
-
|
20001
|
-
|
20002
|
-
|
20003
|
-
|
20004
|
-
|
20005
|
-
|
20006
|
-
|
20007
|
-
|
20008
|
-
|
19999
|
+
const Xt = jp(yl);
|
20000
|
+
Xt.Axios = Gs;
|
20001
|
+
Xt.CanceledError = Yo;
|
20002
|
+
Xt.CancelToken = au;
|
20003
|
+
Xt.isCancel = Lp;
|
20004
|
+
Xt.VERSION = $p;
|
20005
|
+
Xt.toFormData = zc;
|
20006
|
+
Xt.AxiosError = ht;
|
20007
|
+
Xt.Cancel = Xt.CanceledError;
|
20008
|
+
Xt.all = function(v) {
|
20009
20009
|
return Promise.all(v);
|
20010
20010
|
};
|
20011
|
-
|
20012
|
-
|
20013
|
-
|
20014
|
-
|
20015
|
-
|
20016
|
-
|
20017
|
-
|
20018
|
-
|
20011
|
+
Xt.spread = D_;
|
20012
|
+
Xt.isAxiosError = L_;
|
20013
|
+
Xt.mergeConfig = Xs;
|
20014
|
+
Xt.AxiosHeaders = ir;
|
20015
|
+
Xt.formToJSON = (f) => Dp(me.isHTMLForm(f) ? new FormData(f) : f);
|
20016
|
+
Xt.getAdapter = Np.getAdapter;
|
20017
|
+
Xt.HttpStatusCode = iu;
|
20018
|
+
Xt.default = Xt;
|
20019
20019
|
const R_ = (f, v = 300) => {
|
20020
20020
|
let I;
|
20021
20021
|
return function(...L) {
|
@@ -20169,7 +20169,7 @@ function Hp(f, v = {}) {
|
|
20169
20169
|
I[0] > C[0] && (I[0] = C[0]), I[1] > C[1] && (I[1] = C[1]), I[2] < C[0] && (I[2] = C[0]), I[3] < C[1] && (I[3] = C[1]);
|
20170
20170
|
}), I;
|
20171
20171
|
}
|
20172
|
-
function
|
20172
|
+
function Wp(f, v = {}) {
|
20173
20173
|
const I = Hp(f), C = (I[0] + I[2]) / 2, L = (I[1] + I[3]) / 2;
|
20174
20174
|
return Up([C, L], v.properties, v);
|
20175
20175
|
}
|
@@ -20249,7 +20249,7 @@ const F_ = {
|
|
20249
20249
|
}, O_ = { class: "vs-map-slot-layers z-10 select-none" }, V_ = ["onClick"], N_ = ["src"];
|
20250
20250
|
function $_(f, v, I, C, L, q) {
|
20251
20251
|
return it(), mt("div", O_, [
|
20252
|
-
(it(!0), mt(ls, null,
|
20252
|
+
(it(!0), mt(ls, null, Wo(I.baseLayers, (T, c) => (it(), mt("div", {
|
20253
20253
|
key: T.id,
|
20254
20254
|
class: Zs(["vs-map-slot-layers__layer relative", { focused: T.id == I.selectedLayer }]),
|
20255
20255
|
onClick: (pe) => q.toggleLayerVisibility(T.id)
|
@@ -20281,10 +20281,10 @@ const j_ = /* @__PURE__ */ Ki(F_, [["render", $_], ["__scopeId", "data-v-8959e54
|
|
20281
20281
|
Z_,
|
20282
20282
|
G_
|
20283
20283
|
];
|
20284
|
-
function
|
20284
|
+
function W_(f, v) {
|
20285
20285
|
return it(), mt("svg", q_, H_);
|
20286
20286
|
}
|
20287
|
-
const Rc = /* @__PURE__ */ Ki(U_, [["render",
|
20287
|
+
const Rc = /* @__PURE__ */ Ki(U_, [["render", W_]]), X_ = {}, J_ = {
|
20288
20288
|
width: "24",
|
20289
20289
|
height: "24",
|
20290
20290
|
viewBox: "0 0 24 24",
|
@@ -20313,7 +20313,7 @@ const Rc = /* @__PURE__ */ Ki(U_, [["render", X_]]), W_ = {}, J_ = {
|
|
20313
20313
|
function ty(f, v) {
|
20314
20314
|
return it(), mt("svg", J_, ey);
|
20315
20315
|
}
|
20316
|
-
const iy = /* @__PURE__ */ Ki(
|
20316
|
+
const iy = /* @__PURE__ */ Ki(X_, [["render", ty]]), ry = {
|
20317
20317
|
components: { closeIcon: Rc, layersIcon: iy },
|
20318
20318
|
mixins: [gl],
|
20319
20319
|
props: {
|
@@ -20365,7 +20365,7 @@ function dy(f, v, I, C, L, q) {
|
|
20365
20365
|
])
|
20366
20366
|
]),
|
20367
20367
|
default: _r(() => [
|
20368
|
-
|
20368
|
+
Xo(" Додаткові шари ")
|
20369
20369
|
]),
|
20370
20370
|
_: 1
|
20371
20371
|
})) : ci("", !0),
|
@@ -20389,13 +20389,13 @@ function dy(f, v, I, C, L, q) {
|
|
20389
20389
|
])
|
20390
20390
|
]),
|
20391
20391
|
default: _r(() => [
|
20392
|
-
|
20392
|
+
Xo(" Приховати панель ")
|
20393
20393
|
]),
|
20394
20394
|
_: 1
|
20395
20395
|
})) : ci("", !0)
|
20396
20396
|
]),
|
20397
20397
|
Hs(Re("div", cy, [
|
20398
|
-
(it(!0), mt(ls, null,
|
20398
|
+
(it(!0), mt(ls, null, Wo(I.layers, (fe) => (it(), mt("div", {
|
20399
20399
|
key: fe.id,
|
20400
20400
|
class: "flex items-center gap-2 text-sm"
|
20401
20401
|
}, [
|
@@ -20472,7 +20472,7 @@ function Sy(f, v, I, C, L, q) {
|
|
20472
20472
|
xy
|
20473
20473
|
]),
|
20474
20474
|
default: _r(() => [
|
20475
|
-
|
20475
|
+
Xo(" Згорнути панель ")
|
20476
20476
|
]),
|
20477
20477
|
_: 1
|
20478
20478
|
})) : ci("", !0),
|
@@ -20492,14 +20492,14 @@ function Sy(f, v, I, C, L, q) {
|
|
20492
20492
|
])
|
20493
20493
|
]),
|
20494
20494
|
default: _r(() => [
|
20495
|
-
|
20495
|
+
Xo(" Приховати панель ")
|
20496
20496
|
]),
|
20497
20497
|
_: 1
|
20498
20498
|
})) : ci("", !0)
|
20499
20499
|
])
|
20500
20500
|
]),
|
20501
20501
|
Re("div", vy, [
|
20502
|
-
(it(!0), mt(ls, null,
|
20502
|
+
(it(!0), mt(ls, null, Wo(I.compareLayers, (pe) => (it(), mt("div", {
|
20503
20503
|
key: pe.id,
|
20504
20504
|
class: "flex items-center py-1"
|
20505
20505
|
}, [
|
@@ -20689,7 +20689,7 @@ function Oy(f, v, I, C, L, q) {
|
|
20689
20689
|
])
|
20690
20690
|
]),
|
20691
20691
|
default: _r(() => [
|
20692
|
-
|
20692
|
+
Xo(" Порівняти шари ")
|
20693
20693
|
]),
|
20694
20694
|
_: 1
|
20695
20695
|
}, 8, ["class", "onClick"])) : ci("", !0),
|
@@ -20718,34 +20718,34 @@ const Vy = /* @__PURE__ */ Ki(Dy, [["render", Oy]]), Ny = {
|
|
20718
20718
|
}, Uy = { key: 1 }, qy = { class: "legend-item flex items-center gap-2" }, Zy = { class: "ml-1 text-[0.875rem]" }, Gy = { class: "legend-item" }, Hy = {
|
20719
20719
|
key: 0,
|
20720
20720
|
class: "flex justify-start items-center gap-2"
|
20721
|
-
},
|
20722
|
-
function
|
20721
|
+
}, Wy = { class: "ml-1 text-[0.875rem]" };
|
20722
|
+
function Xy(f, v, I, C, L, q) {
|
20723
20723
|
var T;
|
20724
20724
|
return it(), mt("div", $y, [
|
20725
20725
|
I.title ? (it(), mt("div", jy, Mr(I.title), 1)) : ci("", !0),
|
20726
20726
|
(T = I.strokes) != null && T.length ? (it(), mt("div", Uy, [
|
20727
|
-
(it(!0), mt(ls, null,
|
20727
|
+
(it(!0), mt(ls, null, Wo(I.strokes, (c) => (it(), mt("div", qy, [
|
20728
20728
|
Re("div", {
|
20729
20729
|
class: "w-[15px] h-[4px]",
|
20730
|
-
style:
|
20730
|
+
style: Xh({
|
20731
20731
|
background: `repeating-linear-gradient(to right, ${c.color}, ${c.color} 5px, transparent 5px, transparent 8px)`
|
20732
20732
|
})
|
20733
20733
|
}, null, 4),
|
20734
20734
|
Re("div", Zy, Mr(q.capitalizeFirstLetter(c.text)), 1)
|
20735
20735
|
]))), 256))
|
20736
20736
|
])) : ci("", !0),
|
20737
|
-
(it(!0), mt(ls, null,
|
20737
|
+
(it(!0), mt(ls, null, Wo(I.colors, (c) => (it(), mt("div", Gy, [
|
20738
20738
|
c.id > 0 ? (it(), mt("div", Hy, [
|
20739
20739
|
Re("div", {
|
20740
20740
|
class: "w-[15px] h-[15px] rounded-[50%] min-w-[15px]",
|
20741
|
-
style:
|
20741
|
+
style: Xh({ backgroundColor: c.color })
|
20742
20742
|
}, null, 4),
|
20743
|
-
Re("div",
|
20743
|
+
Re("div", Wy, Mr(q.capitalizeFirstLetter(c.text)), 1)
|
20744
20744
|
])) : ci("", !0)
|
20745
20745
|
]))), 256))
|
20746
20746
|
]);
|
20747
20747
|
}
|
20748
|
-
const Jy = /* @__PURE__ */ Ki(Ny, [["render",
|
20748
|
+
const Jy = /* @__PURE__ */ Ki(Ny, [["render", Xy]]), Ky = {
|
20749
20749
|
components: {
|
20750
20750
|
MapSlotLayers: j_,
|
20751
20751
|
MapLegend: Jy,
|
@@ -20753,6 +20753,9 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20753
20753
|
MapCompare: Vy
|
20754
20754
|
},
|
20755
20755
|
props: {
|
20756
|
+
polygonOpacity: { type: Number, default: () => 0 },
|
20757
|
+
polygonStrokeWidth: { type: Number, default: () => 4 },
|
20758
|
+
dashedLine: { type: Boolean, default: () => !1 },
|
20756
20759
|
colorAttr: null,
|
20757
20760
|
strokeAttr: null,
|
20758
20761
|
zoom: { type: Array, default: () => 8 },
|
@@ -20815,7 +20818,7 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20815
20818
|
}), this.isSelectObj = !0;
|
20816
20819
|
return;
|
20817
20820
|
}
|
20818
|
-
const c =
|
20821
|
+
const c = Wp(T).geometry.coordinates;
|
20819
20822
|
(I = this.map) == null || I.fitBounds([c, c], {
|
20820
20823
|
maxZoom: this.zoom,
|
20821
20824
|
padding: 30
|
@@ -20856,7 +20859,7 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20856
20859
|
try {
|
20857
20860
|
const {
|
20858
20861
|
data: { rows: v }
|
20859
|
-
} = await
|
20862
|
+
} = await Xt.get(`/api/data/${this.table}/${this.colorAttr}`), I = v.reduce(
|
20860
20863
|
(C, L, q) => L != null && L.id ? [
|
20861
20864
|
...C,
|
20862
20865
|
L.id.toString(),
|
@@ -20874,7 +20877,7 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20874
20877
|
try {
|
20875
20878
|
const {
|
20876
20879
|
data: { rows: f }
|
20877
|
-
} = await
|
20880
|
+
} = await Xt.get(`/api/data/${this.table}/${this.strokeAttr}`), v = f.reduce((I, C, L) => C != null && C.id ? [
|
20878
20881
|
...I,
|
20879
20882
|
{
|
20880
20883
|
id: C.id.toString(),
|
@@ -20907,7 +20910,7 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20907
20910
|
"source-layer": this.table,
|
20908
20911
|
paint: {
|
20909
20912
|
"fill-color": v,
|
20910
|
-
"fill-opacity": 0.
|
20913
|
+
"fill-opacity": this.polygonOpacity ?? 0.1,
|
20911
20914
|
"fill-outline-color": [
|
20912
20915
|
"case",
|
20913
20916
|
["==", ["feature-state", "hover"], !0],
|
@@ -20948,12 +20951,10 @@ const Jy = /* @__PURE__ */ Ki(Ny, [["render", Wy]]), Ky = {
|
|
20948
20951
|
{
|
20949
20952
|
id: `${this.table}-stroke`,
|
20950
20953
|
type: "line",
|
20951
|
-
"source-layer": this.table,
|
20952
|
-
filter: ["all", ["==", ["geometry-type"], "Polygon"]],
|
20953
20954
|
paint: {
|
20954
|
-
"line-color": f,
|
20955
|
-
"line-width": 2.5,
|
20956
|
-
"line-dasharray": [2, 2]
|
20955
|
+
"line-color": this.dashedLine ? f : v,
|
20956
|
+
"line-width": this.polygonStrokeWidth ?? 2.5,
|
20957
|
+
...this.dashedLine && { "line-dasharray": [2, 2] }
|
20957
20958
|
}
|
20958
20959
|
}
|
20959
20960
|
]
|
@@ -20993,7 +20994,7 @@ function Qy(f, v, I, C, L, q) {
|
|
20993
20994
|
id: "maplibre-map",
|
20994
20995
|
ref: "maplibreMap",
|
20995
20996
|
class: "w-full compare_main_map",
|
20996
|
-
style:
|
20997
|
+
style: Xh({ height: I.height })
|
20997
20998
|
}, null, 4),
|
20998
20999
|
Hs(Ji(T, {
|
20999
21000
|
colors: L.colors,
|
@@ -21116,7 +21117,7 @@ const T0 = /* @__PURE__ */ Ki(g0, [["render", S0]]), I0 = {
|
|
21116
21117
|
this.$emit("update:visible", !1), this.$emit("onClose");
|
21117
21118
|
}
|
21118
21119
|
}
|
21119
|
-
},
|
21120
|
+
}, Xp = (f) => (fp("data-v-37405773"), f = f(), mp(), f), P0 = { class: "vsTailwind ui-dialog__wrapper" }, k0 = { class: "w-full h-full fixed top-0 start-0 z-[80] bg-black bg-opacity-50" }, A0 = { class: "py-2.5 px-4 flex justify-between items-center border-b" }, C0 = { class: "font-medium text-gray-800" }, E0 = /* @__PURE__ */ Xp(() => /* @__PURE__ */ Re("span", { class: "sr-only" }, "Close", -1)), M0 = /* @__PURE__ */ Xp(() => /* @__PURE__ */ Re("svg", {
|
21120
21121
|
class: "flex-shrink-0 w-4 h-4",
|
21121
21122
|
xmlns: "http://www.w3.org/2000/svg",
|
21122
21123
|
width: "24",
|
@@ -21296,7 +21297,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21296
21297
|
return;
|
21297
21298
|
}
|
21298
21299
|
f && this.selectedId && this.closeObjCard(), this.polyline = this.regionSelectValue.encoded_geom, this.getData();
|
21299
|
-
const I = ((L = this.regionSelectValue) == null ? void 0 : L.geom) ||
|
21300
|
+
const I = ((L = this.regionSelectValue) == null ? void 0 : L.geom) || Ws.toGeoJSON(this.regionSelectValue.encoded_geom), C = this.map.getSource("region-search-id");
|
21300
21301
|
if (this.currentBbox = Hp(I), C)
|
21301
21302
|
C.setData({
|
21302
21303
|
type: "Feature",
|
@@ -21363,7 +21364,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21363
21364
|
polyline: this.polyline
|
21364
21365
|
};
|
21365
21366
|
f.filter = this.filtersParam;
|
21366
|
-
const { data: v } = await
|
21367
|
+
const { data: v } = await Xt.get(`/api/data/${this.table}`, { params: f });
|
21367
21368
|
this.tableData = v == null ? void 0 : v.rows, this.total = v.filtered, this.filtered = v.filtered;
|
21368
21369
|
} catch (f) {
|
21369
21370
|
console.error(f.message);
|
@@ -21402,7 +21403,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21402
21403
|
async getFilter() {
|
21403
21404
|
var f;
|
21404
21405
|
try {
|
21405
|
-
const { data: v } = await
|
21406
|
+
const { data: v } = await Xt.get(`/api/filter/${this.table}`);
|
21406
21407
|
this.filters = (f = v == null ? void 0 : v.list) == null ? void 0 : f.map((I) => ({
|
21407
21408
|
...I,
|
21408
21409
|
label: (I == null ? void 0 : I.label) || (I == null ? void 0 : I.ua),
|
@@ -21488,7 +21489,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21488
21489
|
async getObjectData(f) {
|
21489
21490
|
var v, I;
|
21490
21491
|
try {
|
21491
|
-
const { data: C } = await
|
21492
|
+
const { data: C } = await Xt.get(`/api/data/${this.table}/${f}`);
|
21492
21493
|
this.selectRow((v = C == null ? void 0 : C.rows) == null ? void 0 : v[0]), ((I = C == null ? void 0 : C.rows) == null ? void 0 : I.lenght) < 1 && this.deletePulsePoint();
|
21493
21494
|
} catch (C) {
|
21494
21495
|
console.error(C.message);
|
@@ -21522,7 +21523,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21522
21523
|
}), this.isSelectObj = !0;
|
21523
21524
|
return;
|
21524
21525
|
}
|
21525
|
-
const ut =
|
21526
|
+
const ut = Wp(se).geometry.coordinates;
|
21526
21527
|
(fe = this.map) == null || fe.fitBounds([ut, ut], {
|
21527
21528
|
maxZoom: 15,
|
21528
21529
|
padding: 30
|
@@ -21634,7 +21635,7 @@ const B0 = /* @__PURE__ */ Ki(I0, [["render", R0], ["__scopeId", "data-v-3740577
|
|
21634
21635
|
}), O0 = { class: "ml-3 pt-[20px]" }, V0 = { class: "w-full gap-5 flex justify-between mb-[6px] pr-3" }, N0 = { class: "flex items-center gap-2 max-h-[38px] pt-[4px]" }, $0 = { class: "custom-filter-list" }, j0 = {
|
21635
21636
|
key: 0,
|
21636
21637
|
class: "font-medium text-[10px] min-w-[16px] py-0.5 px-[5px] bg-gray-800 text-white leading-3 rounded-full"
|
21637
|
-
}, U0 = ["title"], q0 = /* @__PURE__ */ Re("span", { class: "sr-only" }, "Відкрити мапу", -1), Z0 = { class: "flex" }, G0 = { class: "py-[15px] pb-[24px] pl-2" }, H0 = { class: "font-bold text-2xl mr-[10px]" },
|
21638
|
+
}, U0 = ["title"], q0 = /* @__PURE__ */ Re("span", { class: "sr-only" }, "Відкрити мапу", -1), Z0 = { class: "flex" }, G0 = { class: "py-[15px] pb-[24px] pl-2" }, H0 = { class: "font-bold text-2xl mr-[10px]" }, W0 = { class: "text-sm text-stone-500 font-medium" }, X0 = /* @__PURE__ */ Re("span", { class: "text-sm text-stone-500 font-medium" }, " об'єктів", -1), J0 = {
|
21638
21639
|
class: "wrapperTable flex flex-col",
|
21639
21640
|
style: { height: "calc(100vh - 302px)" }
|
21640
21641
|
}, K0 = {
|
@@ -21709,7 +21710,7 @@ function px(f, v, I, C, L, q) {
|
|
21709
21710
|
]])
|
21710
21711
|
}, [
|
21711
21712
|
Ji(pe),
|
21712
|
-
|
21713
|
+
Xo(" Фільтри "),
|
21713
21714
|
f.activeFiltersCount >= 1 ? (it(), mt("span", j0, Mr(f.activeFiltersCount), 1)) : ci("", !0)
|
21714
21715
|
], 2)
|
21715
21716
|
]),
|
@@ -21737,12 +21738,12 @@ function px(f, v, I, C, L, q) {
|
|
21737
21738
|
}, [
|
21738
21739
|
Re("h1", G0, [
|
21739
21740
|
Re("span", H0, Mr(f.title), 1),
|
21740
|
-
Re("span",
|
21741
|
-
|
21741
|
+
Re("span", W0, Mr(f.total), 1),
|
21742
|
+
X0
|
21742
21743
|
]),
|
21743
21744
|
Re("div", J0, [
|
21744
21745
|
f.activeFilters ? (it(), mt("div", K0, [
|
21745
|
-
(it(!0), mt(ls, null,
|
21746
|
+
(it(!0), mt(ls, null, Wo(f.activeFilters, (ot, He, Vt) => (it(), mt("span", {
|
21746
21747
|
class: "mb-[10px] py-1 ps-3 pe-1 inline-flex items-center bg-white border border-gray-200 text-gray-800 text-xs rounded-full",
|
21747
21748
|
key: Vt
|
21748
21749
|
}, [
|